Baseline. Zwischenstand der Arbeitsergebnisse festhalten.
Was bedeuten Baselines in der Software-Entwicklung? Welche Vorteile haben sie? Und wie ziehen Sie eine Baseline?
Mit einer Baseline sichern Sie einen Zwischenstand Ihrer Arbeitsergebnisse, wie z.B. Ihrer Anforderungen, Dokumente oder Testfälle. Das bedeutet: Sie "frieren" die Versionen dieser Elemente zu einem Zeitpunkt ein und versionieren die Gesamtheit dieser Elemente durch eine Baseline.
Daher ziehen Sie Baselines z.B. für Meilensteine oder Releases, auf Basis denen Sie die Entwicklung weiterführen oder zu denen Sie ggf. zurückkehren können.
Was ist eine Baseline in der Software-Entwicklung?
Der Begriff Baseline stammt aus dem Konfigurationsmanagement. Das Konfigurationsmanagement beschreibt Tätigkeiten, um Konfigurationen zu leiten und zu lenken. Eine Konfiguration repräsentiert eine Gesamtheit von Arbeitsergebnissen, die das Produkt beschreiben. Eine Baseline (auch Referenzkonfiguration oder Basislinie genannt) entspricht dann laut IEEE einer:
“Spezifikation oder [einem] Produkt, das formal einem Review unterzogen worden ist und dem alle Verantwortlichen zugestimmt haben und das danach als Basis für die weitere Entwicklung fungiert und nur durch formal definierte Änderungsprozesse verändert werden kann.” (aus dem Englischen übersetzt)
Einfacher ausgedrückt: Wenn Sie eine Baseline ziehen, machen Sie zu einem bestimmten Zeitpunkt eine unveränderliche “Momentaufnahme” Ihrer Arbeit bzw. des Produkts.
Baselines im Software-Konfigurationsmanagement
Konfigurationsmanagement gibt es auch in der Software-Entwicklung. Software-Konfigurationsmanagement ist eine Methode, um die Entwicklung einer Software und Änderungen an Software-Systemen und Produkten während des gesamten Lebenszyklus zu kontrollieren. Sie stellt u.a. sicher, dass
- jede Änderung an der Software zugestimmt und dokumentiert wird,
- Veränderungen nicht „verloren“ gehen,
- das Wer und Was einer Änderung dokumentiert wird und
- jederzeit zu einer vorherigen Version der Software zurückgekehrt werden kann.
Sie entwickeln dann Software von Baseline zu Baseline. In diesem Fall entspricht eine Baseline häufig einem Meilenstein oder Release: alle Arbeitsergebnisse, die zu diesem Release gehören, werden in ihrer aktuellen Version “eingefroren” – also zum Beispiel existierende Anforderungen, Testfälle oder Dokumente. Basierend auf diesem unveränderlichen Stand von Release 1 entwickeln Sie dann das Release 2.
Baselines im Anforderungsmanagement
Baselines finden Sie auch häufig im Anforderungsmanagement bzw. Requirements Management. Dort machen Sie aber nur eine Momentaufnahme Ihrer Anforderungen. Diesen Zwischenstand können Sie dann nutzen, um die Qualität der Anforderungen zusammen mit Ihren Stakeholdern zu prüfen, einem anderen Team zu übergeben oder eine Grundlage für die Designentwicklung zu haben. Vor allem die Qualitätsprüfung der Anforderungen ist wichtig, um einen sogenannten Scope Creep zu verhindern:
Stakeholder ändern ihre Wünsche und Ziele im Verlauf des Projekts, sodass neue Anforderungen hinzukommen. Dadurch verschiebt sich der Zeitplan des Projekts und die Kosten erhöhen sich. Wenn Sie regelmäßig Baselines Ihrer Anforderungen ziehen, dann können Sie auch regelmäßig das Feedback der Stakeholder einholen und die Anforderungen mit ihnen abklären. Ein weiterer Vorteil: Wenn Sie aus Versehen eine Anforderung löschen, lässt sich jederzeit zum Stand der Baseline zurückkehren.
Lesen Sie hier, um mehr über Requirements Management mit Tool zu erfahren »
Definition von Baseline:
Eine Baseline ist ein Zwischenergebnis Ihrer Arbeitsergebnisse, das Sie zu einem bestimmten Zeitpunkt erzeugt bzw. gesichert und freigegeben haben. Sie dient vor allem dazu, einen unveränderlichen Referenzpunkt für das Change Management zu schaffen.
Ziehen Sie Baselines mit Tool
Probieren Sie es aus. 30 Tage kostenlos.
Mit objectiF RM – für Ihr Requirements Management »
Beispiele von Baselines
- Initiale Anforderungsspezifikation ist abgeschlossen
- Design ist abgeschlossen
- Integrationstest ist abgeschlossen
- Akzeptanztest ist abgeschlossen
- Release 1 ist abgeschlossen
- Software ist in Betrieb genommen worden
Vorteile von Baselines
- Liefert “eingefrorene” Zwischenstände der Arbeitsergebnisse, die sich als Bezugspunkte z.B. für den Vergleich von Plan und Ist verwenden lassen
- Erleichtert Projektkontrolle und –überwachung
- Schafft (gesicherte) Versionen von einer Gesamtheit an Arbeitsergebnissen, zu der jederzeit zurückgekehrt werden kann
- Verhindert Scope Creep der Anforderungen
- Schafft einheitliches Verständnis der Stakeholder über Artefakte wie Anforderungen
Namenskonvention für Baselines
Um Baselines eindeutig bestimmbar zu machen, brauchen Sie eine Namenskonvention – also eine Regel, wie Sie die Baselines nennen. Vor allem für die Wiederherstellung von Versionen spielt diese Namenskonvention eine wichtige Rolle. Baselines im Sinne von Releases folgen oftmals dem 3-Nummern-Schema wie zum Beispiel 1.2.0, wobei:
- die erste Ziffer einem wichtigen, externen Release (an Kunden),
- die zweite Ziffer einem untergeordneten, internen Release (unter Entwicklern),
- die dritte Ziffer einer kleinen Revision (durch einen Entwickler)
entspricht.
Baselines ziehen – Beispiel im Requirements Management
Wie zuvor angesprochen, können Sie eine Baseline Ihrer Anforderungen ziehen, bevor Sie diese einem Abnahme-Review vorlegen. Die eigentliche und wichtigere Anforderungsbaseline, die auch der Definition nach IEEE folgt, ziehen Sie jedoch nach diesem Review. Denn diese Baseline ist dann von allen Beteiligten akzeptiert und gilt als erste Basis, um mit der Entwicklung, zum Beispiel bezüglich des Systems, fortzuschreiten.
Um die Baseline der Anforderungen erfolgreich ziehen zu können, sollten Sie u.a. Folgendes sicherstellen:
- Die wichtigsten Risiken bezüglich der Anforderungen wurden identifiziert und festgehalten.
- Maßnahmen zur Risikoabwehr und Vermeidung wurden identifiziert.
- Das Produkt, das durch die Anforderungen definiert wird, ist umsetzbar.
- Methoden und Vorgehen zur Verifizierung und Validierung wurden für jede Anforderung definiert (zum Beispiel Akzeptanzkriterien und Testfälle)
So ziehen Sie eine Baseline mit objectiF RM
In objectiF RM ziehen Sie eine Baseline in nur 2 Schritten:
- Sie legen eine Elementgruppe an.
- Sie erstellen eine Revision dieser Gruppe.
In einer Elementgruppe legen Sie alle Arbeitsergebnisse ab, für die Sie die Baseline ziehen möchten. Wichtig: Hier landen nicht die Original-Ergebnisse, sondern nur Referenzen darauf. Somit bleiben die ursprünglichen Elemente dort, wo Sie sie abgelegt haben.
Im nächsten Schritt erstellen Sie eine Revision der Elementgruppe und geben dieser einen passenden Namen, zum Beispiel “Release 2”. Sie haben die Baseline damit gezogen. Alle Elemente der Gruppe erhalten nun automatisch eine Version in ihrer Historie, die mit dem Namen der Baseline versehen ist.