Agiles Development

Unser aktuelles Projekt wird agil entwickelt. Wir sind so agil, dass wir unsere Specs bekommen, wenn wir den Code schon committen haben. Gleichzeitig müssen wir auch noch refactoren, damit die Specs mit dem alten Code können. Macht ja nichts. Nur dumm, dass wir refactoren, fixen und releasen gleichzeitig müssen. Natürlich haben wir dabei auch interne Abhängigkeiten. Unsere Kollegen von “The Java Company“, brauchen dann unsere fertigen Pakete. Dank Buzzwordpolitik und immer mehr Agilität, müssen Releases dann auch gleich geliefert werden, ohne Vorlauf oder Feature Freeze.

Na dadurch kommt es natürlich, dass wir branchen, mergen, branchen, mergen und hoffen das wir keine Abhängigkeit vergessen haben. Aber nebenbei braucht unser Rosenheimcop noch die Refactoring Änderungen, dummerweise aber gleichzeitig auch den alten Code. Also patch und diff ausgepackt und von Branch zu Branch geschoben und commited.

Nein mal im Ernst. Endlich mal ein Fall bei dem dezentrale Systeme Sinn machen und deutlich weniger Schmerzen bereiten. Jeder Entwickler kann selbst bestimmen welche Abhängigkeiten er hat und wie er sie auflöst, indem er von jemand anderes pulled. Wenn ein Paket released werden muss, dann gibt es auch keine Commit-Stops mehr oder keine Verschieben weil die Tests nicht laufen. Dann fliegt das Feature raus. Da man sich aussuchen kann von welchen Entwicklern man die Features übernimmt, und diese auch selbst entscheiden können, welche Features es in den Hauptzweig schaffen, ist man einfach flexibler und schneller. Da kann man nur Looser und unseren Italiener mit nerven. Immer mit der Nadel durch’s Chitin. Agil und DVCS passen irgendwie.

Besser mal wieder die Robe ablegen und im Geheimen infiltrieren.

Leave a Reply