Dokumentation von Anforderungen mit Code Based Modeling

Erstellt am 9 Juni 2015
von Schreibe einen Kommentar

Die Motivation
Kennen Sie die folgenden Situationen?

  • Wenn es auf ein Release zugeht, werden Good Practices wie das präzise Beschreiben der Anforderungen über Bord geworfen und alle Aufmerksamkeit auf das Fertigstellen der Software gelenkt.
  • Die Anforderungsdokumentation ist nach einiger Zeit nicht mehr auf dem aktuellen Stand, sie hinkt der Software hinterher.
  • Wenn die ursprünglichen Entwickler nicht mehr verfügbar sind oder viele Teams am selben Produkt arbeiten, wird es zusehends schwieriger herauszufinden, welche Teile der Software angepasst werden müssen um eine bestimmte Funktionalität zu ändern.

Diese Probleme resultieren häufig daraus, dass es kein einheitliches Konzept gibt, wie Anforderungen systematisch und möglichst direkt im Code abgebildet werden.

Ausbreitung

Erstellt am 19 August 2014
von Schreibe einen Kommentar
This entry is part 5 of 5 in the series Ein Weg zur agilen Organisation

Wie breitet sich „Agilität“ in einem Unternehmen aus?

Um diese Frage zu konkretisieren, möchte ich Antworten auf folgende Fragen geben:Ausbreitung_Bertil_20140819

1) Wie sollte sich die Arbeit in mehreren agilen Entwicklungsteams gestalten?

2) Warum sollten sich agile Werte und Prinzipien auch auf andere Organisationsbereiche, die nicht direkt Teil der Entwicklung sind, ausbreiten?

3) Welche Maßnahmen sind sinvoll, um eine Ausbreitung wahrscheinlicher zu machen?

Verinnerlichung

Erstellt am 27 Mai 2014
von Schreibe einen Kommentar
This entry is part 4 of 5 in the series Ein Weg zur agilen Organisation

Das agile Manifest ist über 10 Jahre alt. Ich bin Anhänger der Werte und Prinzipien, die in diesem Manifest beschrieben wurden. Für mich gehört zu einem Prozess der Verinnerlichung dieser Werte und Prinzipien allerdings mehr als der Glaube an die Ko­ry­phäen, die sich damals darauf geeinigt haben.

Ich finde, dass man sich auch mit Gegenargumenten auseinandersetzen und für die eigenen Positionen gute Begründungen finden sollte. Dazu folgendes, nicht ganz ernst gemeintes Gedankenexperiment.

Experimente

Erstellt am 4 Februar 2014
von Schreibe einen Kommentar
This entry is part 3 of 5 in the series Ein Weg zur agilen Organisation

Die Bereitschaft zu experimentieren

Die grundlegende Voraussetzung, um in einer Organisation erfolgreich agil entwickeln zu können, sehe ich in der Bereitschaft der Stakeholder, zusammen zu experimentieren.
Mit experimentieren meine ich:

  • Hypothesen aufstellen,
  • in kontrolliertem Rahmen etwas ausprobieren,
  • Hypothesen überprüfen,
  • aus dem Ergebnis Schlüsse ziehen.

Übertragen auf die Produktentwicklung heißt dies unter anderem, folgende Hypothesen zu überprüfen und daraus während der laufenden Entwicklung Schlüsse zu ziehen:

Warum überhaupt agiler werden ?

Erstellt am 29 Oktober 2013
von Schreibe einen Kommentar
This entry is part 2 of 5 in the series Ein Weg zur agilen Organisation

In meinem letzten Blogeintrag habe ich definiert, was für mich eine agile Organisation charakterisiert:
Eine Organisation, die kurzfristig auf unvorhergesehene Änderungen in der Organisationsumwelt (z.B. von Kundenbedürfnissen) oder in der Organisation selbst reagieren kann, indem sie Produkte oder Dienstleistungen neu entwickelt oder bei mindestens gleichbleibender Qualität anpasst.

Ich sehe einen Hauptgrund dafür, agiler werden zu wollen, also in einer Steigerung der Anpassungsfähigkeit einer Organisation an unvorhergesehe Umstände, nicht in einer Steigerung der Leistungsfähigkeit, wie sie zum Beispiel von manchen Scrum Gurus propagiert wird.

Ein Weg zur agilen Organisation

Erstellt am 26 August 2013
von 2 Kommentare
This entry is part 1 of 5 in the series Ein Weg zur agilen Organisation

Ich denke, dass verschiedene typische Zustände einer Organisation beobachtet werden können, wenn sie sich auf dem Weg von einer traditionellen in eine agile Organisation befindet. Meine Meinung ist, dass jeder der folgenden Zustände einen substantiellen Fortschritt in Richtung einer agilen Organisation darstellt :

WegZurAgilenOrga

Bevor ich die Zustände vorstelle: was meine ich mit einer agilen Organisation?

Use Cases und User Stories – Verbündete oder Feinde?

Erstellt am 15 Mai 2013
von 4 Kommentare

Sind Use Cases und User Stories dasselbe?

Und wenn nein, was sind dann die Unterschiede? Kann man sie in der Praxis miteinander verbinden, oder sollte man sich lieber für eine Seite entscheiden?
Zunächst: dasselbe sind sie nicht.

Werkzeuge für „Specification by Example“

Erstellt am 26 Februar 2013
von Schreibe einen Kommentar
This entry is part 2 of 3 in the series Anforderung und Implementierung

Im ersten Teil dieser Artikel-Serie habe ich beschrieben, wie man mit der Technik „Specification by Example“ die Kluft zwischen Anforderungs- und Test-Spezifikation überwinden kann. Die Kluft wird überwunden, indem man in einer auch für Nicht-Entwickler verständlichen Sprache Tests spezifiziert und diese dann unmittelbar mit Unit-Tests verbindet.

In diesem Artikel gebe ich Beispiele zur Werkzeugunterstützung von „Specification by Example“. Die Werkzeuge in diesem Bereich unterscheiden sich hauptsächlich in der Grammatik der Spezifikationssprachen und den unterstützten Programmiersprachen, die Grundidee ist aber immer ähnlich. Ich verwende im Folgenden ein Beispiel für das Werkzeug JBehave. Eine Liste mit Links zu Webseiten finden Sie am Ende des Artikels.