Dienstag, 17. April 2007

Die ersten Schritte in einem Scrum Projekt

Das Product und Sprint Backlog sind definiert, das Team ist aufgestellt, der erste Sprint hat begonnen - wie geht es los?

Eine Frage, die nach jedem erfolgreichen Projektgewinn gestellt wird und zunächst immer ein bischen Unruhe und Nervosität hervorruft - mit Scrum alles kein Problem! Konzentrieren wir uns auf die wichtigen Aufgaben zuerst.

  1. Projektinfrastruktur
    Zunächst wird die Projektinfrastruktur festgelegt und eine zuständige Person definiert. Dazu gehören TargetProcess, Team Emailadresse, Wiki und diverse andere Kommunikations-Tools.
  2. Applikationsdesign
    Nach gründlichem Studium der Offerte und des Product-Backlogs wissen wir, wohin die Reise gehen soll. Das Fernziel "Amsterdam" ist bekannt, doch wir möchten im ersten Sprint mit einem Beta-Release nur bis "Madrid" fahren. Wir sind in Neapel! Der Application Architect arbeitet einen Architekturvorschlag, das Team trifft sich, diskutiert und verabschiedet diesen. Dabei steht Sprint 1 im Vordergrund, auch wenn das Fernziel durch die Architektur getragen werden soll. Beim Applikationsdesign wird das Layering definiert.
  3. Packaging
    Aus der Architektur und dem Layering wird die Maven Projektstruktur abgeleitet und von einer Person umgesetzt. Darüber hinaus werden pro Projekt die Package Richtlinien definiert und pro Layer eine Zuständigkeit vergeben.
  4. Design/Wireframes
    Das Design und die Wireframes sind vom Kunden verabschiedet. Der Form-Flow/Story Boards ebenfalls. Ein HTML Prototyp für die Features von Sprint 1 wird bereits umgesetzt und Selenium Tests für alle Features am Prototyp aufgezeichnet.
  5. Domain Model
    Durch die Wireframes kann das Domain Model für die Features von Sprint 1 begonnen werden. Auch hier wird das Model nur für "Madrid" entworfen, vom Team verabschiedet und von einer zustänidgen Person umgesetzt.
  6. Entwicklungsumgebung
    Nachdem die Maven Projektstruktur bekannt ist, kann die Entwicklungsumgebung von einer Person aufgesetzt werden. Es wird eine Anleitung für alle Team Mitglieder geschrieben.
  7. Done Definiton - das Team definiert, wann eine User Story Done ist.
Alle Beschlüsse und Entscheidungsgrundlagen werden im Projekt Wiki dokumentiert. Der Product Owner überführt aus der Offerte Fachbegriffe in ein Projekt-Glossar. Darüber hinaus verlinkt er alle relevanten Dokumente.

Die Umgebung für automatisiert Tests und CruiseControl werden vom Team nicht hoch priorisiert - werden auf Sprint Ende verschoben. Wichtig ist, dass man so schnell als möglich Features entwicklen kann. Es werden zwar Selenium Tests geschrieben, aber noch nicht automatisieret.

So, das Ziel ist, alle hier genannten Punkte binnen 4 Arbeitstagen abzuarbeiten - das ist die Arbeit des Teams für die ersten Tage im Projekt.

Keine Kommentare: