Agilität, Snapshots und
Continuous Delivery

Dr. Halil-Cem Gürsoy
Tw @hgutwit
G+ https://plus.google.com/+HalilCemGürsoy
1...
Der Referent
Über 10 Jahre Software-Entwicklung
„Software Architect“ @ adesso AG
Verteilte, skalierbare Systeme
Continuous...
12.11.13
Agilität, Snapshots und Continuous Delivery
http://www.flickr.com/photos/enor/517787281/
12.11.13
Agilität, Snapshots und Continuous Delivery
http://www.flickr.com/photos/lizandcormac/372399658/
Scrum

Quelle: scrumalliance.org

12.11.13

Agilität, Snapshots und Continuous Delivery
„Our highest priority is to satisfy the
customer through early and
continuous delivery of valuable
software.“
http://agile...
„Our highest priority is to satisfy the
customer through early and
continuous delivery of valuable
software.“
http://agile...
Warum SNAPSHOT‘s?
Entwickler-Version
Stabile Versionen erkennen
Releases sind aufwendig
Interaktion zwischen Teams

12.11....
Auswirkungen
Release-Vorbereitungen
Merge Feature Branches („Done“)
Integration von Release-Modulen
Release-Management
Dok...
Das Maven-Modell
„Super-Simplified“

Build
SNAPSHOT

Deliver /
Go Live

12.11.13

Test

Build RELEASE

Agilität, Snapshots...
SNAPSHOT != Releasable

12.11.13

Agilität, Snapshots und Continuous Delivery
Der Release
„The Maven Release Plugin Way“ (tm)
Alles in SCM? SNAPSHOT-Abhängigkeiten?
Compile & Test
Ändere POM auf neue ...
„The Maven Release Plugin Way“ (tm)
3 x Clean & Compile & Test
2 x POM Transformation
2 x SCM Commit
3 SCM Revisionen

12....
„Mavenized“ Build-Pipeline

Continuous
Build

Deploy
artifacts

Release
Build

Inspect
Build

Prepare
artifacts

Productio...
12.11.13
Agilität, Snapshots und Continuous Delivery
http://www.flickr.com/photos/myklroventine/3400039653/
Lösung?

12.11.13

Agilität, Snapshots und Continuous Delivery
CD Build-Pipeline

Developer
Build

Developer
Test

Candidate
Build

Prepare
artifacts

Deploy
artifacts

Promote
artifact...
Jason van Zyl
„Unfortunately, but naturally, users tend
to think that the release plugin
embodies all best practices for M...
Lösungen
CD-Pipeline =
immer RELASE-Versionen!

1.1.0-2652-245

12.11.13

Agilität, Snapshots und Continuous Delivery
Lösungen
CD-Pipeline =
immer RELASE-Versionen!

1.1.0-2652-245
SCM Revision

12.11.13

Agilität, Snapshots und Continuous ...
Lösungen
CD-Pipeline =
immer RELASE-Versionen!

1.1.0-2652-245
Build Number

12.11.13

Agilität, Snapshots und Continuous ...
Lösung
Codehaus Versions Plugin
mvn versions:set –DnewVersion=$NEWVER

Codehaus Build Helper Plugin



<goals>





<goal>...
Lösung
Codehaus Versions Plugin
<execution>
<id>setnewversion</id>
<phase>validate</phase>
<goals>
<goal>set</goal>
</goal...
Promote
„Promote“ Artefakte
Release vs Staging
Repository

12.11.13

Agilität, Snapshots und Continuous Delivery

http://w...
Housekeeping
Staging-Repositories
Artifactory Pro
Nexus Professional
Apache Archiva (manuell)

Maven/Jenkins Plugin‘s
REST...
Nach-“Lese“
Maven Mailing List
http://maven.40175.n5.nabble.com/Continuous-Delivery-and-Maven-td3245370.html

Lucas Ward -...
12.11.13
Agilität, Snapshots und Continuous Delivery
http://www.flickr.com/photos/an_untrained_eye/6630719431/
Vielen Dank für Ihre Aufmerksamkeit.

www.adesso.de
info@adesso.de
Upcoming SlideShare
Loading in …5
×

Agilität, Snapshots und Continuous Delivery

1,442 views
1,337 views

Published on

Präsentation von der Continuous Lifecycle 2013 von Dr. Halil-Cem Gürsoy.

Published in: Technology, Business
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
1,442
On SlideShare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
5
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Agilität, Snapshots und Continuous Delivery

  1. 1. Agilität, Snapshots und Continuous Delivery Dr. Halil-Cem Gürsoy Tw @hgutwit G+ https://plus.google.com/+HalilCemGürsoy 12.11.13
  2. 2. Der Referent Über 10 Jahre Software-Entwicklung „Software Architect“ @ adesso AG Verteilte, skalierbare Systeme Continuous Delivery Artikel und Konferenzen 12.11.13 Agilität, Snapshots und Continuous Delivery
  3. 3. 12.11.13 Agilität, Snapshots und Continuous Delivery http://www.flickr.com/photos/enor/517787281/
  4. 4. 12.11.13 Agilität, Snapshots und Continuous Delivery http://www.flickr.com/photos/lizandcormac/372399658/
  5. 5. Scrum Quelle: scrumalliance.org 12.11.13 Agilität, Snapshots und Continuous Delivery
  6. 6. „Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.“ http://agilemanifesto.org/principles.html 12.11.13 Agilität, Snapshots und Continuous Delivery
  7. 7. „Our highest priority is to satisfy the customer through early and continuous delivery of valuable software.“ http://agilemanifesto.org/principles.html 12.11.13 Agilität, Snapshots und Continuous Delivery
  8. 8. Warum SNAPSHOT‘s? Entwickler-Version Stabile Versionen erkennen Releases sind aufwendig Interaktion zwischen Teams 12.11.13 Agilität, Snapshots und Continuous Delivery
  9. 9. Auswirkungen Release-Vorbereitungen Merge Feature Branches („Done“) Integration von Release-Modulen Release-Management Dokumentation 12.11.13 Agilität, Snapshots und Continuous Delivery
  10. 10. Das Maven-Modell „Super-Simplified“ Build SNAPSHOT Deliver / Go Live 12.11.13 Test Build RELEASE Agilität, Snapshots und Continuous Delivery
  11. 11. SNAPSHOT != Releasable 12.11.13 Agilität, Snapshots und Continuous Delivery
  12. 12. Der Release „The Maven Release Plugin Way“ (tm) Alles in SCM? SNAPSHOT-Abhängigkeiten? Compile & Test Ändere POM auf neue Release-Version SCM-Info in POM anpassen Compile & Test Commit in SCM SCM Tag Ändere POM auf neue –SNAPSHOT Version Commit in SCM Compile & Test 12.11.13 Agilität, Snapshots und Continuous Delivery
  13. 13. „The Maven Release Plugin Way“ (tm) 3 x Clean & Compile & Test 2 x POM Transformation 2 x SCM Commit 3 SCM Revisionen 12.11.13 Agilität, Snapshots und Continuous Delivery
  14. 14. „Mavenized“ Build-Pipeline Continuous Build Deploy artifacts Release Build Inspect Build Prepare artifacts Production 12.11.13 Agilität, Snapshots und Continuous Delivery Deploy artifacts
  15. 15. 12.11.13 Agilität, Snapshots und Continuous Delivery http://www.flickr.com/photos/myklroventine/3400039653/
  16. 16. Lösung? 12.11.13 Agilität, Snapshots und Continuous Delivery
  17. 17. CD Build-Pipeline Developer Build Developer Test Candidate Build Prepare artifacts Deploy artifacts Promote artifacts 12.11.13 Agilität, Snapshots und Continuous Delivery Production
  18. 18. Jason van Zyl „Unfortunately, but naturally, users tend to think that the release plugin embodies all best practices for Maven with respect to releases, but in practice many people accept it's flaws.“ http://www.lucasward.net/2010/11/maven-and-continuous-delivery.html?showComment=1289373353091#c7316536994911982893 12.11.13 Agilität, Snapshots und Continuous Delivery
  19. 19. Lösungen CD-Pipeline = immer RELASE-Versionen! 1.1.0-2652-245 12.11.13 Agilität, Snapshots und Continuous Delivery
  20. 20. Lösungen CD-Pipeline = immer RELASE-Versionen! 1.1.0-2652-245 SCM Revision 12.11.13 Agilität, Snapshots und Continuous Delivery
  21. 21. Lösungen CD-Pipeline = immer RELASE-Versionen! 1.1.0-2652-245 Build Number 12.11.13 Agilität, Snapshots und Continuous Delivery
  22. 22. Lösung Codehaus Versions Plugin mvn versions:set –DnewVersion=$NEWVER Codehaus Build Helper Plugin <goals> <goal>parse-version</goal> </goals> 12.11.13 Agilität, Snapshots und Continuous Delivery
  23. 23. Lösung Codehaus Versions Plugin <execution> <id>setnewversion</id> <phase>validate</phase> <goals> <goal>set</goal> </goals> <configuration> <generateBackupPoms>false</generateBackupPoms> <newVersion>${parsedVersion.majorVersion}. ${parsedVersion.minorVersion}.${parsedVersion. incrementalVersion}-${NEWVER} </newVersion> </configuration> </execution> 12.11.13 Agilität, Snapshots und Continuous Delivery
  24. 24. Promote „Promote“ Artefakte Release vs Staging Repository 12.11.13 Agilität, Snapshots und Continuous Delivery http://www.flickr.com/photos/mac_filko/5491781178/
  25. 25. Housekeeping Staging-Repositories Artifactory Pro Nexus Professional Apache Archiva (manuell) Maven/Jenkins Plugin‘s REST-Schnittstellen 12.11.13 Agilität, Snapshots und Continuous Delivery
  26. 26. Nach-“Lese“ Maven Mailing List http://maven.40175.n5.nabble.com/Continuous-Delivery-and-Maven-td3245370.html Lucas Ward - Maven and Continuous Delivery http://www.lucasward.net/2010/11/maven-and-continuous-delivery.html Kief Morris - The Conflict Between Continuous Delivery and Traditional Agile http://kief.com/the-conflict-between-continuous-delivery-and-traditional-agile.html Axel Fontaine – The Final Nail in the Coffin http://axelfontaine.com/blog/final-nail.html 12.11.13 Agilität, Snapshots und Continuous Delivery
  27. 27. 12.11.13 Agilität, Snapshots und Continuous Delivery http://www.flickr.com/photos/an_untrained_eye/6630719431/
  28. 28. Vielen Dank für Ihre Aufmerksamkeit. www.adesso.de info@adesso.de

×