DER AGILE ENTWICKLER, VERSION 1.2 OBJEKTspektrum Information Days, 27. 29. April 2010
SCRUM ÜBERBLICK
VORHIN AUF TWITTER 30.06.2010 3
FLACCID SCRUM There's a mess about a few projects recently. It works out like this: They want to use an agile process, and pick Scrum They adopt the Scrum practices, and maybe even the principles After a while progress is slow because the code base is a mess What's happened is that they haven't paid enough attention to the internal quality of their software. -- Martin Fowler, Januar 2009 30.06.2010 4
STEILE LERNKURVE By early 2009, More organizations were using Agile processes than waterfall processes However, less than 50% of those using Scrum were developing in incremental iterations, which are the heartbeat of Scrum. One of the biggest challenges of using Scrum has always been the steep learning curve for the developers on the Scrum team. -- Ken Schwaber, März 2010 30.06.2010 5
ITERATIV & INKREMENTELL Iterativ Inkrementell 30.06.2010 6
NEW NEW PRODUCT DEVELOPMENT GAME Stop running the relay race and take up rugby! Sechs Regeln für ein erfolgreiches Entwicklungs-Team Quelle: Harvard Business Review im Januar 1986, von Takeuchi und Nonaka 30.06.2010 7
DIE DREI ROLLEN IN SCRUM Product Owner Scrum Master Certified Scrum Product Owner Certified Scrum Master Team Member? 30.06.2010 8
PROFESSIONAL SCRUM DEVELOPER Professionelles Engineering Professionelles Vorgehen Professioneller Umgang Der Agile Entwickler 30.06.2010 9
SPRINT COMMITMENT ABGEBEN Team braucht die richtigen Werkzeuge und Methoden User Stories verstehen und bewerten können Story Points Planning Poker Team braucht Orientierung, um ein Commitment abzugeben Velocity 30.06.2010 10
SPRINT COMMITMENT EINHALTEN Daily Scrum Task Board Burn Down Impediments 30.06.2010 11
WAS IST FERTIG? Software kann am Sprintende produktiv gehen (Sammlung mehrerer Sprintergebnisse in einem Release) Formulierung einer Definition of Done Gemeinsames Verständnis zwischen Team und Kunde / Product Owner Granularität auf Story-Ebene Vorlage zur Taskfindung in der Sprint Planning Checklist zur Qualitätskontrolle 30.06.2010 12
TECHNICAL DEPT Metapher von Ward Cunningham Technische Schulden Reduziert immer weiter die Velocity Schulden müssen abgebaut werden! 30.06.2010 13
PROFESSIONAL SCRUM DEVELOPER Professionelles Engineering Professionelles Vorgehen Professioneller Umgang Der Agile Entwickler 30.06.2010 14
BUILD MANAGEMENT Code im Team verwalten Lifecycle-Management Compile, Test, Package, Install, Abhängigkeiten verwalten Die Jar-Hölle vermeiden Einheitliche Konventionen Schnelles Setup des Arbeitsplatzes 30.06.2010 15
CONTINUOUS INTEGRATION 30.06.2010 16
RELEASE MANAGEMENT Wie bekomme ich nur das in mein Release, was auch Done ist? Tip: Neue verteilte Versionskontrollsysteme wie Mercurial oder Git unterstützen das lokale Arbeiten von Entwicklern und vereinfachen das Mergen 30.06.2010 17
RELEASE MANAGEMENT Wie kann ich auf Knopfdruck ein Release erstellen? Release-Build Versionierung Paketierung Migration Deployment Dokumentation Wie lange brauchen Sie, um diese Schritte heute durchzuführen? 30.06.2010 18
TEST-DRIVEN-DEVELOPMENT Wie schreibe ich richtige Unit-Tests? Test-Driven-Design Design by Contract Refactoring Law of Demeter Cyclomatic Complexity Tools JUnit DBUnit für Datenbank Tests Mocking (Mockito, easymock) Coverage (Cobertura) Test Design und Refactoring 30.06.2010 19
AKZEPTANZTESTS Wie schreibe und automatisiere ich Akzeptanztests? Keine GUI Skripte -> instabil Behaviour Driven, ATDD, Executable Specs Tools Robotframework Fitnesse 30.06.2010 20
CODE QUALITY Static Code Analysis Clean Code Code Documentation 30.06.2010 21
DOMAIN DRIVEN UND EMERGENT DESIGN Einheitliche Sprache Module Inversion of Control... 30.06.2010 22
PROFESSIONAL SCRUM DEVELOPER Professionelles Engineering Professionelles Vorgehen Professioneller Umgang Der Agile Entwickler 30.06.2010 23
PROFESSIONELLER UMGANG Selbstmanagement...? Verantwortung übernehmen Konfliktfähigkeit Kommunikation Kritikfähigkeit (Feedback) Kompromissfähigkeit I.d.R. sind Sozialkompetenz und Führungstrainings dem Management vorbehalten! 30.06.2010 24
PROFESSIONAL SCRUM DEVELOPER Kurse finden Sie auf www.scrum.org codecentric ist einer der Program Development Parter von scrum.org 30.06.2010 25
MEET THE EXPERTS: DER AGILE JUNI BEI CODECENTRIC 30.06.2010 26
FRAGEN? Mirko Novakovic Kölner Landstraße 11 40591 Düsseldorf tel +49 (0) 211.9 94 14 0 fax +49 (0) 211.9 94 14 44 Mirko.Novakovic@codecentric.de www.codecentric.de www.mbg-online.de blog.codecentric.de www.meettheexperts.de 30.06.2010 27
FRAGEN? Andreas Ebbert-Karroum Merscheider Straße 1 42699 Solingen tel +49 (0) 212.23 36 28 25 fax +49 (0) 212.23 36 28 79 Andreas.Ebbert-Karroum@codecentric.de www.codecentric.de www.mbg-online.de blog.codecentric.de www.meettheexperts.de 30.06.2010 28