Architektur agiles vorgehen seacon 2013

433 views

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
433
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
4
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Architektur agiles vorgehen seacon 2013

  1. 1. © OPITZ CONSULTING GmbH 2013 Seite 1Vom Zusammenhang zwischen Architekturen und agilem VorgehenDr. Ralf Sigmund, Solution ArchitectOPITZ CONSULTINGVom Zusammenhang zwischenArchitekturen und agilem VorgehenHamburg, 17. Mai 2013Dont supersize me!
  2. 2. © OPITZ CONSULTING GmbH 2013 Seite 2Vom Zusammenhang zwischen Architekturen und agilem VorgehenAgenda1. Das Projekt bei der freenet GmbH2. Also agil? Konsequenzen für die Architektur und die Plattformauswahl3. Architekturentscheidungen Systematisch treffen und dokumentieren4. Fazit Welche Plattform war für freenet die richtige?
  3. 3. © OPITZ CONSULTING GmbH 2013 Seite 3Vom Zusammenhang zwischen Architekturen und agilem Vorgehen1 Das Projekt Wasabi bei der freenet GmbH
  4. 4. © OPITZ CONSULTING GmbH 2013 Seite 4Vom Zusammenhang zwischen Architekturen und agilem VorgehenE-Commerce bei freenetCustomer FrontendCustomer DatabaseBonitätWirksystemeBilling SAPCallcenterMail-GatewayBusiness Intelligence
  5. 5. © OPITZ CONSULTING GmbH 2013 Seite 5Vom Zusammenhang zwischen Architekturen und agilem VorgehenProzessorientiertes Vorgehen Produktwelten mail, singles Vertragsabschluss Upgrade Kündigung <<Subprozess>> Provisionierung
  6. 6. © OPITZ CONSULTING GmbH 2013 Seite 6Vom Zusammenhang zwischen Architekturen und agilem VorgehenProjektzieleAutomatisierungVereinfachungSaaSagil
  7. 7. © OPITZ CONSULTING GmbH 2013 Seite 7Vom Zusammenhang zwischen Architekturen und agilem VorgehenBPMN 2.0 ist agil ;-)
  8. 8. © OPITZ CONSULTING GmbH 2013 Seite 8Vom Zusammenhang zwischen Architekturen und agilem VorgehenProzessmodelleStrategischesProzessmodellOperativesProzessmodellTechnischesProzessmodellBusinessIT
  9. 9. © OPITZ CONSULTING GmbH 2013 Seite 9Vom Zusammenhang zwischen Architekturen und agilem VorgehenTransparenzModell EngineMonitoringTransparenz
  10. 10. © OPITZ CONSULTING GmbH 2013 Seite 10Vom Zusammenhang zwischen Architekturen und agilem Vorgehen2 Also agil?
  11. 11. © OPITZ CONSULTING GmbH 2013 Seite 11Vom Zusammenhang zwischen Architekturen und agilem VorgehenawarenessWissens-silosProblemespäterkanntLangeZyklen:-(
  12. 12. © OPITZ CONSULTING GmbH 2013 Seite 12Vom Zusammenhang zwischen Architekturen und agilem Vorgehendesire ProduktivitätEngagement,ZufriedenheitFasterTime toMarketHöhereQualität
  13. 13. © OPITZ CONSULTING GmbH 2013 Seite 13Vom Zusammenhang zwischen Architekturen und agilem Vorgehenagil: if it ain’t perfect keep improvingnicht agil: if it ain’t broke do not fix itmotif
  14. 14. © OPITZ CONSULTING GmbH 2013 Seite 14Vom Zusammenhang zwischen Architekturen und agilem Vorgehen1975 Fred BrooksAll repairs tend to destroystructure, increase entropy anddisorder. Less and less effort isspent fixing original design flaws,more and more time fixing flawsintroduced by earlier fixes.Sooner or later, fixing ceases togain any ground. Also usable, thesystem has worn out as a basefor progress. Machine,configuration and requirementchanges eventually dictateground-up redesign.Modifikationen(Bugs, neue Features)EntopieAber Entropie / Unordnung
  15. 15. © OPITZ CONSULTING GmbH 2013 Seite 15Vom Zusammenhang zwischen Architekturen und agilem VorgehenSimplicity is the ultimate sophistication.Leonardo da VinciSimple made easyRich Hickey
  16. 16. © OPITZ CONSULTING GmbH 2013 Seite 16Vom Zusammenhang zwischen Architekturen und agilem VorgehenAgileEmergent DesignRefactoringTest Driven DevelopmentAutomated TestsExcellent technical Practice
  17. 17. © OPITZ CONSULTING GmbH 2013 Seite 17Vom Zusammenhang zwischen Architekturen und agilem VorgehenabilityAls Teamdenken, selbstverantwortlichseinCollective codeownershipExcellenttechnicalpracticeEmergentDesign
  18. 18. © OPITZ CONSULTING GmbH 2013 Seite 18Vom Zusammenhang zwischen Architekturen und agilem VorgeheneasyWizardsBPELZero Coding
  19. 19. © OPITZ CONSULTING GmbH 2013 Seite 19Vom Zusammenhang zwischen Architekturen und agilem Vorgeheneasy ???Refactoring?Merging?Codebasis lesen und verstehen?
  20. 20. © OPITZ CONSULTING GmbH 2013 Seite 20Vom Zusammenhang zwischen Architekturen und agilem VorgehenZeitProduktivitätRich Hickey http://www.infoq.com/presentations/Simple-Made-Easyeasysimplesimple versus easy
  21. 21. © OPITZ CONSULTING GmbH 2013 Seite 21Vom Zusammenhang zwischen Architekturen und agilem VorgehenExkurs - Komposition
  22. 22. © OPITZ CONSULTING GmbH 2013 Seite 22Vom Zusammenhang zwischen Architekturen und agilem VorgehenVerflechtung durch Zustand
  23. 23. © OPITZ CONSULTING GmbH 2013 Seite 23Vom Zusammenhang zwischen Architekturen und agilem VorgehenAgiles Vorgehen erfordert zwingend exzellentetechnische PraxisContinuoustestingRefactorSimpleSystemMichael Feathers definiertLegacy Code als “Codeohne automatisierteTests”.
  24. 24. © OPITZ CONSULTING GmbH 2013 Seite 24Vom Zusammenhang zwischen Architekturen und agilem Vorgehen3 Architekturentscheidungen• Systematisch treffen und dokumentieren
  25. 25. © OPITZ CONSULTING GmbH 2013 Seite 25Vom Zusammenhang zwischen Architekturen und agilem VorgehenQualität ist orthogonal zu FunktionalitätFunktionalität - User Stories“als Kunde mit einem Basic Vertragwenn ich ein Upgarde auf einen PAID-Vertrag durchführeund die Bonitätsprüfung erfolgreich war,dann wird das Mailbox-Volumen auf 100GB erhöht.”Qualität“die Anbindung einer neuen Reseller-Marke istmit einem Aufwand von 20 PT implementierbar”
  26. 26. © OPITZ CONSULTING GmbH 2013 Seite 26Vom Zusammenhang zwischen Architekturen und agilem VorgehenGeschäftsziele
  27. 27. © OPITZ CONSULTING GmbH 2013 Seite 27Vom Zusammenhang zwischen Architekturen und agilem Vorgehenplanen entwickeln testen releasen betreibenZeitGeschäftsqualität - Time to Market
  28. 28. © OPITZ CONSULTING GmbH 2013 Seite 28Vom Zusammenhang zwischen Architekturen und agilem VorgehenTime to marketCost andbenefitProjected lifetimeRolloutscheduleGeschäftsqualitäten
  29. 29. © OPITZ CONSULTING GmbH 2013 Seite 29Vom Zusammenhang zwischen Architekturen und agilem VorgehenArchitektur SystemGeschäfts-QualitätQualitätQualitäten wirken sich aufeinander ausQualität
  30. 30. © OPITZ CONSULTING GmbH 2013 Seite 30Vom Zusammenhang zwischen Architekturen und agilem VorgehenAnalysis scheitert an SystemenAnalysis SystemdenkenStoriesEpicsMMFs, MVPs Emergent Design Architektur
  31. 31. © OPITZ CONSULTING GmbH 2013 Seite 31Vom Zusammenhang zwischen Architekturen und agilem VorgehenSystemFunkt-ionalitätZuver-lässigkeitBenutz-barkeitEffizienzWartbar-keitÜbertrag-barkeitQualität in Software Systemen
  32. 32. © OPITZ CONSULTING GmbH 2013 Seite 32Vom Zusammenhang zwischen Architekturen und agilem VorgehenISO 9126ISO/IEC 25012:2008
  33. 33. © OPITZ CONSULTING GmbH 2013 Seite 33Vom Zusammenhang zwischen Architekturen und agilem VorgehenAlle Qualitäten sind erstrebenswert
  34. 34. © OPITZ CONSULTING GmbH 2013 Seite 34Vom Zusammenhang zwischen Architekturen und agilem VorgehenAber, Tradeoffs sind unvermeidlich
  35. 35. © OPITZ CONSULTING GmbH 2013 Seite 35Vom Zusammenhang zwischen Architekturen und agilem VorgehenArchitecture Tradeoff Analysis Methodhttp://www.sei.cmu.edu/reports/00tr004.pdfLightweight Architecture AlternativeAssessment Methodhttp://technogility.sjcarriere.com/2009/05/11/its-pronounced-like-lamb-not-like-lame/Qualitätsmerkmale und Tradeoffs methodischangehenSzenarien RisikenSensitivitypointsTradeoffsAttributeRequirementsArchitektur-ansätzeAnalyse
  36. 36. © OPITZ CONSULTING GmbH 2013 Seite 36Vom Zusammenhang zwischen Architekturen und agilem VorgehenQuelle:Stimulus: Antwort:Antwort-Maßzahl:Artefakt:Umgebung:Software Architecture in Practice (2nd Ed.)Qualitäts-Attribute in Szenarien konkretisieren
  37. 37. © OPITZ CONSULTING GmbH 2013 Seite 37Vom Zusammenhang zwischen Architekturen und agilem VorgehenQuelle:Stimulus: Antwort:Antwort-Maßzahl:Artefakt:ProzessUmgebung:System-ExternUnerwarteteNachricht(ein Fehler) Normaler BetriebOperatorinformieren,Verarbeitungfortführen Keine AusfallzeitEin Szenario zur Verfügbarkeit
  38. 38. © OPITZ CONSULTING GmbH 2013 Seite 38Vom Zusammenhang zwischen Architekturen und agilem VorgehenQuelle:QA /ProduktionArtefakt:Prozesse /Codebasis /DeliverablesStimulus: Antwort:Antwort-Maßzahl:Umgebung:Fehler in derProzesslogikKorrektur inProduktionohneSeiteneffekt In 5 StundenSystem > 200 FTEImplementierungModifizierbarkeit – Korrektur von Fehlern
  39. 39. © OPITZ CONSULTING GmbH 2013 Seite 39Vom Zusammenhang zwischen Architekturen und agilem VorgehenQuelle:Architektagiles TeamArtefakt:Prozesse /Codebasis /DeliverablesStimulus: Antwort:Antwort-Maßzahl:Umgebung:SystemvereinfachenRefactoringVerbesserteCode-Strukturerreicht ohneSeiteneffekt In einemSprinttagSystem > 200FTEImplementierungModifizierbarkeit – Refactoring
  40. 40. © OPITZ CONSULTING GmbH 2013 Seite 40Vom Zusammenhang zwischen Architekturen und agilem VorgehenModfizierbarkeit – Refactoring – Testbarkeithttps://github.com/sistar/camunda-fox-demo-app-oc
  41. 41. © OPITZ CONSULTING GmbH 2013 Seite 41Vom Zusammenhang zwischen Architekturen und agilem VorgehenQuelle:AnalystArtefakt:Prozesse /Codebasis /DeliverablesStimulus: Antwort:Antwort-Maßzahl:Umgebung:Änderung einerGeschäftsregelÄnderungdurchgeführtohneSeiteneffekt Ohne Beteiligungdes Entwickler-TeamsAnalyst kenntBPMN 2.0, Rules.Kennt nichttechnischeDetailsBenutzbarkeit – Zero Coding
  42. 42. © OPITZ CONSULTING GmbH 2013 Seite 42Vom Zusammenhang zwischen Architekturen und agilem VorgehenQualität / UtilityEffizienz AntwortzeitFrontend - EineCluster-Node beinormaler Last <2sFunktionalität SicherheitKein Zugriff aufinterne Daten durchFrontendZuverlässigkeit RobustheitKein Ausfall beifalschem Aufrufdurch FrontendWartbarkeitModifizierbarkeitFehler-Korrektur derProzesslogik in 5hRefactoringVerbesserte CodeStruktur in einemSprinttagTestbarkeitTestgetriebeneEntwicklungProzess Unit Test < 1MinuteBenutzbarkeit ErlernbarkeitBusiness / ITgemeinsamesProzessmodellZero Coding -Änderung vonGeschäftsregel ohneEntwicklerteamQualitätsszenarien als Utility Tree
  43. 43. © OPITZ CONSULTING GmbH 2013 Seite 43Vom Zusammenhang zwischen Architekturen und agilem VorgehenQualität / UtilityEffizienz AntwortzeitFrontend - EineCluster-Node beinormaler Last <2sFunktionalität SicherheitKein Zugriff aufinterne Daten durchFrontendZuverlässigkeit RobustheitKein Ausfall beifalschem Aufrufdurch FrontendWartbarkeitModifizierbarkeitFehler-Korrektur derProzesslogik in 5hRefactoringVerbesserte CodeStruktur in einemSprinttagTestbarkeitTestgetriebeneEntwicklungProzess Unit Test < 1MinuteBenutzbarkeit ErlernbarkeitBusiness / ITgemeinsamesProzessmodellZero Coding -Änderung vonGeschäftsregel ohneEntwicklerteamRanking im Utility TreeRanked Attribute Weights:-> 0,262-> 0,461-> 0,163-> 0,094-> 0,045-> 0,75-> 0,25121->0,752->0,250,260,460,160,050,0170,0230,030,011->0,752->0,25
  44. 44. © OPITZ CONSULTING GmbH 2013 Seite 44Vom Zusammenhang zwischen Architekturen und agilem VorgehenPriorisierte Liste der QualitätsszenarienSicherheit / Kein Zugriff auf interne Daten durch FrontendEffizienz / Antwortzeit Frontend - Eine Cluster-Node bei normaler Last <2sRobustheit Kein Ausfall bei falschem Aufruf durch FrontendWartbarkeit / Fehler-Korrektur der Prozesslogik in 5hTestbarkeit / Testgetriebene Entwicklung Prozess Unit Test < 1 MinuteErlernbarkeit / Business / IT gemeinsames ProzessmodellErlernbarkeit / Zero Coding - Änderung von Geschäftsregel ohne Entwicklerteam
  45. 45. © OPITZ CONSULTING GmbH 2013 Seite 45Vom Zusammenhang zwischen Architekturen und agilem VorgehenSensitivity PointsSicherheit / Kein Zugriff auf interne Daten durch FrontendEffizienz / Antwortzeit Frontend - Eine Cluster-Node bei normaler Last <2sRobustheit Kein Ausfall bei falschem Aufruf durch FrontendWartbarkeit / Fehler-Korrektur der Prozesslogik in 5hTestbarkeit / Testgetriebene Entwicklung Prozess Unit Test < 1 MinuteErlernbarkeit / Business / IT gemeinsames ProzessmodellErlernbarkeit / Zero Coding - Änderung von Geschäftsregel ohne Entwicklerteam
  46. 46. © OPITZ CONSULTING GmbH 2013 Seite 46Vom Zusammenhang zwischen Architekturen und agilem VorgehenAssesment (exemplarisch)Szenario Gewicht CamundaBPMOracleBPMTestgetriebeneEntwicklungProzess UnitTest < 1 Minute0,023 Exzellent (4)0,092Mäßig (1)0,023Zero CodingÄnderung vonGeschäftsregelohneEntwicklerteam0,01 Mäßig (1)0,01Exzellent (4)0,04Architekturalternativen0,102 0,063Summe
  47. 47. © OPITZ CONSULTING GmbH 2013 Seite 47Vom Zusammenhang zwischen Architekturen und agilem Vorgehen4 Fazit
  48. 48. © OPITZ CONSULTING GmbH 2013 Seite 48Vom Zusammenhang zwischen Architekturen und agilem VorgehenIt depends…ZeitProduktivitäteasysimpleZeitProduktivitätCode zentrischTool-/PlattformzentrischStandardOrganisatorischKlare Ziele undAnforderungenIndividuellZentral fürWertschöpfungagil
  49. 49. © OPITZ CONSULTING GmbH 2013 Seite 52Vom Zusammenhang zwischen Architekturen und agilem VorgehenDanke! Fragen und Antwortenralf.sigmund@opitz-consulting.comTwitter: @sistar Xing Ralf Sigmund

×