Modernes Management von Software-Projekten Frank Düsterbeck @fduesterbeck WARUM? (De)-Motivation Komplexität heutiger Software schwer beherrschbar Anforderungsdynamik Heutzutage schwer beherrschbar Quelle: Carl Dichter and Chris Tynes, JavaWorld.com, 06/01/97 Quelle: Wikipedia rap gwt tabris eclipse maven jubulasecurity jira netweaver java spring jsfjboss ant junithpqcbugzilla redmine birt aspectj cucumber vaadinejb jenkins uml selenium javascript postgresql testcomplete subversion user stories html5php githibernate testopia oracle usability bpmn css hybris mysql codedui fitnesse tfsclean code typo3asp mvc design rup bdd wf sql server atdd asp.net xp sharepoint c# scrum tpllinq nunit apps dms kanban c++ wpf wcfazure prince2 migration iis visual studio SOFTWARE (-ENTWICKLUNG) IST KOMPLEX Komplexität - Cynefin Dave Snowden Komplex Emergent Practice Probe Sense Respond Kompliziert Good Practice Sense Analyze Respond Verwirrung ! Einfach Chaotisch Novel Practice Act Sense Respond Best Practice Sense Categorize Respond KO M P L E X I TÄT R E D U Z I E R E N KO M P L E X I TÄT B E H E R R S C H E N DAS AGILE QUIZ Auf komplexe Sachverhalte mit komplexen Methoden zu reagieren ist falsch, weil... ...sich dadurch??? die Komplexität weiter erhöht! DAS AGILE QUIZ WAS BRAUCHT MAN UM SOFTWARE MIT Probe Sense Respond ZU ENTWICKELN? PROZESSRAHMEN Inspect & Adapt Probe Sense Respond Scrum KO M P L E X I TÄT B E H E R R S C H E N PLANUNG DER PLAN WAS IST DAS? Was will ich erreichen? Vision Produkt Was muss ich wann tun? 1. 2. 3. 4. Handlungsschritt Handlungsschritt Handlungsschritt … Was brauch ich? 1. 2. 3. 4. Mittel Menschen Geld … ENTSCHEIDUNGSGRUNDLAGE WELCHE PLÄNE BRAUCHT MAN? (oder welche werden gefordert?) WELCHE FRAGEN SOLLEN BEANTWORTET WERDEN? (oder welche Bedürfnisse befriedigt?) DER PRODUKTPLAN DIE BASIS? WERT SCHAFFEN SCHNELL FLEXIBEL HOCHWERTIG GÜNSTIG Was will ich erreichen? Vision / Produkt ? Vision Erstellung eines Produktes Ergebnis des Produktes Welche Veränderung soll erzielt werden? Nutzen des Produktes Welche Verbesserung soll aus Ergebnis resultieren? Zielgruppe Wer soll mit dem Produkt arbeiten? Business Case Ziel des Projektes Produktplanung PRODUCT BACKLOG Epos 19 Epos 12 Epos 31 Epos 9 Epos 4 Epos 7 Epos 2 User Story 4 User Story 33 User Story 14 User Story 3 User Story 13 User Story 6 User Story 2 User Story 1 User Story 5 Status Ready KO M P L E X I TÄT R E D U Z I E R E N DER RELEASEPLAN Wann krieg ich was? Release Sprint Thema: … Ziel: … DIE BASIS? SCHÄTZEN!!! DER KEGEL DER UNSICHERHEIT Barry Boehm Schätzunsicherheit 4x 2x 1,5x 1,25x 1x 0,8x 0,67x 0,5x 0,25x Zeit Gib mir mal einen Daumen. Wir haben grob geschätzt! Das Projekt hat nen Aufwand von 15 bis 240 Tagen. Das ist mir viel zu unsicher. Dann müssen wir genauer schätzen. Entscheide lieber ungefähr richtig, als genau falsch! KO M P L E X I TÄT E R H Ö H E N DAS AGILE QUIZ Wie viele Windows Lizenzen brauchen wir? 240 DAS AGILE QUIZ Reales Brutto ENTWERFEN CODIEREN DOKUMENTIEREN ORGANISIEREN DoD REFAKTORIEREN TESTEN REVIEWEN WASTE / PRIVATE DINGE TUN ABSTIMMEN BESPRECHEN FORTBILDEN Ideales Netto 1. 2. 3. Bin ich schlecht! Ich schätz nur meine idealen Nettozeiten. Große Mengen kann ich gar nicht und komplexe Dinge krieg ich auch nicht auf die Reihe. Und eigentlich kann ich eh nur vergleichen. 1 2 3 5 8 13 20 40 100 Meter sind 100 Meter egal wer sie läuft KO M P L E X I TÄT B E H E R R S C H E N 1 2 3 5 8 13 20 40 User Story 13 User Story 1 Team Estimation Game User Story 33 User Story 4 User Story 2 User Story 5 User Story 6 User Story 14 User Story 3 Epos 9 Epos 31 Epos 2 Epos 7 Epos 4 Epos 12 Epos 19 KO M P L E X I TÄT R E D U Z I E R E N OK und weiter? Wie geht jetzt die Releaseplanung? Wir gehen erstmal davon aus, dass wir so 12 Story Points pro Sprint schaffen und messen was wir wirklich hinkriegen. … Velocity Empirisches Management 20 15 1 2 15 5 Velocity = 11,5 10 3 4 6 8 5 0 KO M P L E X I TÄT B E H E R R S C H E N RELEASETERMIN FIX FUNKTIONSUMFANG FIX KW 41 BESSER! (DIE ESSENZ IST GELIEFERT) Geht nicht KW 42 KW 43 Könnte klappen KW 44 Geht KW 45 Und das soll jetzt genauer sein als herkömmliches Schätzen und Planen? Klar! Das genau ist empirisches Management! Klassisch Preisindikation Angebot Lastenheft Plichtenheft CR Umsetzung Umsetzung Preisindikation Agil Product Backlog Umsetzung Welches Angebot ist genauer? Welches kostet mehr? CR Eins ist noch sehr wichtig um mit Unsicherheiten bei der Releaseplanung umzugehen. Was denn? Wir schneiden keinen Elefanten in Scheiben! KO M P L E X I TÄT B E H E R R S C H E N STORY MAPPING Story Mapping DER RESSOURCENPLAN Und was soll das kosten? 𝐾𝑜𝑠𝑡𝑒𝑛𝑆𝑃 𝐾𝑜𝑠𝑡𝑒𝑛𝑆𝑝𝑟𝑖𝑛𝑡 = 𝑉𝑒𝑙𝑜𝑐𝑖𝑡𝑦 Projektbudget und -dauer mit Puffer (Soll) Kosten Test Programmierung Anforderungen Entwurf Projektbudget und -dauer (Soll) Wartungsbudget (Soll) Zeit Projektbudget und -dauer (Ist) Kosten Wartungsbudget (Ist) Zeit Kosten Projektbudget und -dauer (Soll) Wartungsbudget (Soll) Zeit Kosten Projektbudget und -dauer (Ist) Wartungsbudget (Ist) Zeit Kosten Zeit FAZIT DER WERT TREIBT KO M P L E X I TÄT G E R E C H T W E R D E N NICHT DER PLAN TREFFE ENTSCHEIDUNGEN AUF BASIS DES BEKANNTEN KO M P L E X I TÄT G E R E C H T W E R D E N NICHT AUF BASIS DES UNBEKANNTEN Und äh … … wo bleibt mein Gantt? DAS AGILE QUIZ “Wer A sagt, der muss ... ...nicht B sagen. Er ???kann auch erkennen, dass A falsch war.“ (Bertolt Brecht) DAS AGILE QUIZ FRANK DÜSTERBECK @fduesterbeck [email protected]