Versionierung wird oftmals unterschätzt und stiefmütterlich behandelt. Im allgemeinen findet das Muster: Major-Minor-Patch Anwendung, wobei kleine Änderungen den Patchlevel hochzählen, bei mittleren kompatiblen Änderungen eine neue Minor erstellt wird und nur bei besonderen Auslieferungen oder inkompatiblen Änderungen die Major Number anzupassen ist.

 

Oftmals wird dies allerdings für unterschiedliche Projekten anders gehandhabt und bei einem Geflecht von Modulen entsteht dann die bekannte “Dependency Hell”.

 

Als ich bei der Firma IDS war, wurde dies anders gehandhabt. Alle Module hatten die eine gemeinsame Version und so wusste man stets was zusammen gehört. Dies ist besonders praktisch, wenn viele Kunden während der Wartung auch den gleichen Sofwarestand bekommen.

 

In Surround wollen wir einen ähnlichen Weg einschlagen. Da es nur eine handvoll Module (OSGI Bundles) geben wird, fällt es auch leicht für alle diese eine gemeinsame Versionsnummer zu wählen.

 

Abweichend vom obigen Schema gilt allerdings folgende Nummerierung
In der Backlog Story Map werden die einzelnen “Backlog Module” durchnummeriert:
Klappe 1, Szene 1 die Erste Aufnahme
  1. in der Backlog Storymap werden die einzelnen Kategorien nach der Priorität durchnummeriert, z.B. Klappe 1 für Modelling
  2. Die Story, welche bearbeitet wird, ergibt die Nummer für die Szene.
  3. Die Aufnahme spiegelt einen schrittweise erfassten Moment in der Versionsverwaltung da.

 

Da die Stories fest nach Plan umgesetzt werden, ergibt sich dann ein Film von der Anfängen bis hin zur ersten Vorführung des Surround Studios.

 

Einzelne Produkte können mehrere Szenen umfassen. Falls Änderungen am Backlog erfolgen müssen, sollten diese sinnvoll in die Story Map eingebracht werden. Wobei neue Backlogmodule allerdings nicht einfach dazwischen gefummelt werden können. Aber das Drehbuch zu unserem Film wird sich während der Abarbeitung sicher noch ändern, so daß neue Szenen entstehen können. Allerdings werden wir das bisher gedrehte nicht raus schneiden. Alles was wir im Kasten haben kann auch verwendet werden.

 

So und nun zur Ersten Aufnahme:
1 – Modelling
1 – as developer I want to design my domain classes using a rich type system with the most common types
1 – place a base (class)