Use Cases und die Organisationsstruktur

Erstellt am 3 April 2019
von Schreibe einen Kommentar

Use-Case-Diagramme sind ein bekanntes Mittel, um den Scope eines Systems festzulegen. Aber auch bei der Gestaltung der Struktur Ihrer Produktentwicklungsorganisation können Use Cases helfen.

Hier sehen wir ein Use-Case-Diagramm, das die Use Cases eines Online-Flugbuchungssystems zeigt:

Use Case Diagramm eines Online-Flugbuchungssystems

Wie Sie sehen können, zeigt das Diagramm die Ziele, die die Nutzer haben: Ein Endkunde möchte einen Flug buchen. Das Diagramm zeigt nicht die Schritte, um zu diesem Ziel zu gelangen. Das wäre beispielsweise die Suche nach einem Flug.

Ein agiles Team sollte unabhängig von anderen Teams Wert liefern. Ein Use Case stellt solch einen unabhängigen Wertumfang dar. Denn wenn agile Teams für ganze Use Cases verantwortlich sind, ist die Notwendigkeit der Kommunikation mit anderen Teams sehr begrenzt.

Der Use Case Flug buchen ist beispielsweise für sich genommen wertvoll. Was heißt das? Nun, er ist direkt aus dem Bedürfnis der Benutzer abgeleitet, von A nach B zu gelangen. Deshalb ist er ein eigenständiges Verkaufsargument für die Software.

Probieren Sie in der Praxis aus, Teams nach Use Cases zu schneiden, und lassen Sie es mich wissen, wie es funktoniert hat!

Das Zusammenspiel von Use Cases und User Stories habe ich in einem anderen Blogbeitrag erläutert.Wenn Sie mehr über Use Cases in der agilen Produktentwicklung erfahren wollen, besuchen Sie unser HOOD CARS-Training.

Was ist „digitagil“?

Erstellt am 27 März 2019
von Schreibe einen Kommentar
Commodore SR36


„Digitagil“ setzt sich aus zwei Wörtern zusammen. Beginnen wir mit dem ersten:

Man könnte die Marktflutung mit Taschenrechnern und Digitaluhren in den 1970er Jahren als Beginn der Digitalisierung begreifen. Die aus dem Schutt und der Asche der Weltkriege zu „Pflugscharen“ umgemünzten digitaltechnischen Halbleitertechnologien begannen ihren zivilen Siegeszug.
Mit ihnen entwickelte sich auch die Softwaretechnik. Auch die Softwarelösungen wurden immer anspruchsvoller.

Die militaristisch geprägte Kultur

Leider waren aber auch Organisation- und Vorgehensmodelle eng mit militärisch geprägter Befehlskultur gekoppelt, bzw. sind es zumindest teilweise noch heute.
Natürlich machen bei Unfällen, Feuern und Katastropheneinsätzen, wie eben im Krieg, strenge und geregelte Vorgehensweisen Sinn. Sie helfen bei der Bewältigung und Eindämmung der Auswirkungen.
Dass man aber bei Unternehmensaufbau, Firmenführung und der Organisation von Projekten auf diese Muster setzte, ist wohl eher einer unreflektierten Kulturprägung zuzuschreiben. Die damit erkaufte Effektivität rechtfertigt den Verlust an menschlichen Werten nicht.

Ethische digitale Menschen

Glücklicherweise schwingt mit der zivilen Nutzung der Digitaltechnik auch immer mehr eine humane und zivile Gestaltung der Zusammenarbeit mit. Das agile Manifest ist sozusagen einer der vielen Meilensteine auf diesem Weg.
Der moderne nativ „digitale“ Mensch hat wohl auch immer mehr den Anspruch, das die von ihm genutzten Lösungen von zivil zusammenarbeitenden Menschen geschaffen werden. Die ethische Seite einer Produkterstellung spielt doch eine Rolle und lässt im Extremfall selbst das preisgünstigste Produkt im Regal stehen.

Agile Steuerung und Hinrichtungs-Exempel

Was für Fleisch-, Milch und Obstwaren gilt, können wir auch für Software in Betracht ziehen. Natürlich müssen wir das subtiler betrachten.
Man findet bei Software Entwicklern eher gut bezahlte Ingenieure und akademisch ausgebildetes Personal, denn entrechtete Lohnsklaven, die für einen Hungerlohn pflücken oder schlachten.

Trotzdem sind manchmal Code-Experten in „militärisch“ strukturierten Organisationen die unterste ausführende Schicht, bzw. werden als Fremdkräfte oder Dienstleister mit schlechter Lobby, von einer unteren Management-Schicht „gesteuert“.
Selbst die Steuerung wird auch gerne als Dienstleistung, manchmal als „agile“, ausgelagert. Leider kann das hin und wieder ein Nährboden für Mobbing und Hinrichtungsexempel für in Ungnade gefallene Mitarbeiter sein. Diese exklusiv denkende Management-Schule tut sich aber immer schwerer, da Inklusion und aktives Einbeziehen aller Stakeholder heute das Gebot der Stunde ist.

Das Werk während der Entstehung begutachten

Tatsächlich ernten Unternehmen, die man im William E.Schneider Unternehmens-Kultur-Modell wohl als Kontroll-Kultur, mit angehängter Kompetenz-Unterkultur, begreifen kann, bei der Anwendung „agiler“ Scrum Techniken die niedrig hängenden Früchte.
Sie müssen sich selbst „zwingen“ frühe System-Stände zu verlangen. Die Schmerzgrenze ist aber schnell erreicht. Beispielsweise dann, wenn man ultra-beschäftigte Manager im Unternehmen damit zu „nerven“ beginnt, sie sollten das „Werk“ schon mal während der Entstehung begutachten.
Old School-Manager lassen sich nur bei Grundsteinlegung und Eröffnung feiern. Das laufende Geschäft lässt anderes nicht zu.

Leider muss man auch sagen, dass diese Unternehmen gut daran tun, nicht von heute auf morgen die Kulturrevolution auszurufen. Im Buch von William E. Schneider lassen sich einige Schauergeschichten dazu nachlesen.

Der Servant Leader und das Mitarbeiterwohl

Trotzdem kann man den Weg wagen, oder sich gut informieren bevor man sich bindet. Denn mit wem und wo man arbeitet, ist für viele auch der Schlüssel zu Wohlbefinden und Gesundheit. Die „Servant Leader“ sind aber nur spärlich gestreut. Unternehmen die das Mitarbeiterwohl als höchstes Ziel nicht nur definieren, sondern durch das gesamte Kollegiat leben, gibt es auch nicht so viele.

Der digitagile Mensch wird folgende Messlatte anwenden und kritisch hinterfragen. Für die Unternehmens-Umgestaltung kann es als Leitlinie stehen:

Für „digitagile“ Code Crafter ist natürlich der schnellste Check, ob man bei der richtigen Firma ist, immer die Frage, wann der Chef den letzten Commit gemacht hat 😉

BEYOND RE

Erstellt am 15 März 2019
von Schreibe einen Kommentar

Kennt Ihr die russischen Matroschka Puppen? Diese unterschiedlich großen, bemalten Holzpuppen stecken ineinander. Unter der ersten Puppe befindet sich eine zweite. Öffnen wir die zweite dann kommt ein drittes, noch kleineres Modell zum Vorschein. Diese Puppen stehen sinnbildlich für die Familie.
Es gibt Vorfahren, Nachfahren und Mütter. Die Ahnen und ihre Vorgängerinnen sind elementarer Bestandteil ihres Seins. Damit stehen die Matroschka-Puppen für Tradition und Beständigkeit, sowie dafür, dass es immer weiter geht.

BEYOND RE – das war das Motto der gerade vergangenen REConf 2019. Es findet sich in den Matroschka Puppen wieder. Das „klassische Requirements Engineering“ ist die größte Puppe. „Beyond“, also wenn wir weiter gehen, kommen immer kleinere,  schlankere, wendigere, iterativere Versionen zum Vorschein. Hinter RE ist also wieder RE, nur „kleiner“, „wendiger“, „leaner“, „agiler„,  „digitaler“, „KI-iger“, „nicer“oder „kanbaniger“.

Um im Bild der Familie zu bleiben: Die Nachfahren profitieren von den Erfahrungen der Vorfahren. Neue Umstände, Zwänge und Nöte sorgen aber dafür, dass die Erfahrungen mit den neuen Herausforderungen in Einklang gebracht werden. Somit bleibt die nächste „Generation RE“ zukunftsfähig, auch wenn man das dann vielleicht gar nicht mehr „RE“ nennen will. „BEYOND RE“ steht dafür, dass sich das Anforderungsmanagement ständig an unsere disruptive, agile, dynamische Welt anpasst.

Die Keynotes der REConf, viele der Vorträge, die Sponsoren und Aussteller gingen in dieser Woche „Beyond RE“. Mit kreativen, innovativen, agilen und digitalen Ansätzen haben wir die eingetretenen Pfade verlassen.
Das Motto für die REConf 2020 vom 22.-27.03. steht auch schon: „RE- Eine Frage der Kultur?“
Wir freuen uns auf ein Wiedersehen mit Euch!

Die 3 größten User-Story-Mythen

Erstellt am 27 Februar 2019
von Schreibe einen Kommentar
User Story Mythen

In meiner Arbeit mit agilen Teams und als Trainer höre ich immer wieder Aussagen über User Stories, die von der ursprünglichen Intention abweichen und in der Praxis Probleme verursachen. Zeit, mit ein paar der häufigsten Mythen aufzuräumen.

Mythos #1: In Scrum wird eine Anforderung als User-Story dokumentiert.

Das kann man so machen, muss man aber nicht. Der Scrum Guide lässt völlig offen, wie Backlog Items zu dokumentieren sind. Ich persönlich mag User Stories, weil sie die Perspektive vom System auf den Nutzer verschieben. Aber vorgeschrieben ist das nicht.

Mythos #2: Wenn man User-Stories schreibt, dann muss man ein bestimmtes Template benutzen.

Wahrscheinlich denken Sie an: Als <Nutzer> möchte ich <Funktion> damit <Erfülltes Bedürfnis>.
Das Konzept der User Story hatte ursprünglich nichts mit diesem Template zu tun. Mike Cohn hat das Template dann später populär gemacht. Es ist genauso möglich, User Stories informell zu dokumentieren und auf das Template zu verzichten.

Mythos #3: User Stories werden mit Story Points geschätzt.

Als Scrum Master habe ich Teams beobachtet, die sich mit Diskussionen um Story Points, Schätzungen und Velocity verrückt gemacht haben.

Es gibt eine einfache Alternative. Das Team vereinbart kleine Stories. So 1-2 Umsetzungstage für das Team. Dann zählt es nach dem Sprint die Stories, die es fertiggestellt hat. Schon hat man die Velocity.


Sie sehen: Der Umgang mit User Stories ist in der Praxis gar nicht so schwierig. Wie setzen Sie User Stories in der Praxis ein? Ich freue mich über einen Kommentar!


Veranstaltungstipp

Die perfekte Gelegenheit zum weiteren Aufräumen der Mythen finden Sie in knapp zwei Wochen auf der REConf 2019 vom 11.-15. März in München.




RE – mit oder ohne agil?

Erstellt am 20 Februar 2019
von Schreibe einen Kommentar

Nun bin ich nun schon ein paar Monate als „HOODlerin“ unterwegs und habe viel über unsere Arbeit im Requirements Engineering und der Agilität erfahren. Heute widme ich mich der Frage, wie es ausschaut, wenn wir die beiden Disziplinen miteinander kombinieren. Was ändert sich also, wenn wir RE agil machten? Wird das Anforderungsmanagement besser oder „nur“ agil? Dazu habe ich meine Experten-Kollegen bei ihrer Arbeit beobachtet und befragt, und teile nun mein Ergebnis ganz unverholen mit euch.

Agilität mit Coach

Agil zu werden bedeutet, laut einer Definition, sich selbst in Frage zu stellen. Im RE geht es darum die richtigen Fragen zu stellen. Das gehört für mich jetzt erstmal nicht zwangsläufig zusammen.
Weshalb Agilität in Unternehmen eingeführt wird, hat aber einen wirtschaftlichen Grund. Das Unternehmen kann sich im Ergebnis schneller und flexibler mit seinen Produkten und Dienstleistungen den Marktbedürfnissen anpassen.

Die Einführung agiler Arbeitsweisen geschieht oft durch Coaching der interdisziplinären Teams von außen. Das agile Coaching verbessert die Zusammenarbeit, die Kommunikation und gibt dem Team Methoden zur Hand, mit komplexen Aufgaben produktiv umzugehen. Gleichzeitig fördert der Coach auch ein neues, agiles Mindset in seinem Team: Regeln brechen, eigene Regeln aufstellen, ständiges Hinterfragen, freies Denken und natürlich auch freies Artikulieren der Gedanken sind dabei wichtige Bestandteile. Mit einem solchen Mindset können ganz neue Lösungen entstehen. Denn der Raum ist angstfrei und lebendig. Es herrscht Spaß und Veränderungsfreude. Die einstigen Probleme, die beispielsweise aus hierarchischen Strukturen, unzureichender Kommunikation, oder Angst, „sich zu weit aus dem Fenster zu lehnen“ stammen, werden an der Wurzel gepackt.

Mit diesem neuen Mindset ändert sich beispielsweise auch die Art mit Fehlern umzugehen. Sie werden als Chance, und damit als etwas Gutes, aus dem man lernen kann, betrachtet.
Neben all den Vorteilen kann das neue Mindset allerdings im restlichen, noch nicht agilen Teil des Unternehmens, als Nachteil wahrgenommen werden: Die agilen Kollegen passen nun nicht mehr so recht in eine ansonsten hierarchische Unternehmensstruktur.

Requirements Engineering mit einem Consultant

Beim Requirements Engineering (RE) legen wir fest, welchen Anforderungen ein Produkt oder auch ein Prozess standhalten muss. Beispielsweise schaut man in der Software Entwicklung, welche Funktionen die Software in welcher Qualität haben soll. Was wünschen sich die Anwender und andere Stakeholder? Um das zu wissen, bindet man den Stakeholder früh und kontinuierlich in den Entwicklungsprozess ein. Im laufenden Prozess werden aus den anfänglichen Vermutungen der Entwickler klar dokumentierte Anforderungen. Die Chance steigt, dass die Software am Ende des Entwicklungsprozesses sowohl dem Anwender, also dem Auftraggeber, als auch dem Entwickler gefällt. Dadurch, dass die Anforderungen klar dokumentiert sind, sind alle Mitwirkenden im Bilde und Unstimmigkeiten werden schnell offensichtlich. In dem gesamten Prozess steht den Teams oft ein unterstützender externer RE Consultant zur Seite.

Anforderungen gut zu schreiben ist eine Kunst. Diese Kunst wird auch oft bei uns in den Trainings geübt. Anforderungen und Dokumentation müssen vollständig, prüfbar und widerspruchsfrei sein.

Daneben gilt es die richtigen Ermittlungstechniken wie bspw. Interviews, Fragebogen und Produktanalyse zu wählen. Passt alles, wird das Risiko für Fehlentwicklungen drastisch reduziert und führt im besten Fall, vorausgesetzt die Idee ist gut, zu einem guten Produkt.

Wie sieht nun die Mischung aus agil und RE aus?

Wenn man sich nun diese beiden Disziplinen Agile und RE ansieht ist es ganz klar: Wenn RE gut funktioniert, dann ist es wahrscheinlich meistens sogar schon agil. Es besteht ein offenes Klima, in der die Teams gut zusammenarbeiten. Denn das Geheimnis liegt, wie so oft, in der Kommunikation.

Beim agilen Arbeiten kommunizieren Entwickler- und das Anwenderteam kontinuierlich. Die Teams prüfen täglich, hinterfragen, testen, und werfen auch mal alles um, wenn das für ein besseres Ergebnis notwendig ist. Regeln sind da, um gebrochen zu werden. Dieser Spruch passt in diesem Kontext besser denn je.
Die agile Vorgehensweise und das Mindset, das dies alles möglich macht, führt am Ende zu einem besseren Produkt und einer kürzeren Produktentwicklungszeit. Das ist schließlich wieder ganz im Sinne des Unternehmens.

Also einmal RE mit agil bitte!

Veranstaltungstipp

Die perfekte Gelegenheit zum Networken in der RE-Community bietet übrigens die REConf 2019 vom 11.-15.März in München. Komm vorbei. Ein Tag oder fünf, alles ist möglich.

Was ist Empirisches Requirements Engineering?

Erstellt am 6 Februar 2019
von Schreibe einen Kommentar

Als Apple das iPhone 2007 veröffentlichte, löste es eine Revolution auf dem Mobilfunkmarkt aus. Steve Jobs wurde als innovatives Genie gefeiert.

Heute haben alle Smartphones Touchscreens. Damit kann man niemanden mehr begeistern. Innovation bedeuetet, am Puls der Zeit zu bleiben. Und ein Augenmerk auf die Kundenbedürfnisse zu haben.

Genau darum geht es in der agilen Entwicklung laut Jeff Sutherland, Vater von Scrum, dem erfolgreichsten agilen Framework:

Innovation is what agile is all about.

Quelle: Embracing Agile, https://hbr.org/2016/05/embracing-agile

Kern von Scrum ist die Entwicklung in Sprints von wenigen Wochen. Am Ende des Sprints steht ein „Produkt-Inkrement“. Zum Beispiel fertig entwickelte, getestete und dokumentierte Software.

So kann das Team regelmäßig Feedback einholen. Die wichtigsten Stakeholder sind die externen Kunden. Durch das Einarbeiten ihres Feedbacks maximiert man ihre Zufriedenheit.

Empirisches Requirements Engineering heißt: Das Team vereinbart erst am Anfang des Sprints die umzusetzenden Anforderungen. Basierend auf aktuellem Wissen.

Man versucht nicht, Entwicklungsumfänge Monate im Voraus detailliert zu planen. Fachkonzepte, Lastenhefte oder Pflichtenhefte sind passé.

Stattdessen akzeptiert man, dass Anforderungen veralten. Während der Entwicklung gewinnt das Team neue Erkenntnisse über Kundenbedürfnisse. Und über die technologische Umsetzung. Details von Anforderungen werden erst kurz vor der Umsetzung festgelegt.

Empirisches Requirements Engineering: Die 3 Planungsebenen

Heißt das, man muss jede Planung aufgeben, die über einen Zwei-Wochen-Horizont hinausgeht? Nein!  Nur: je weiter man in die Zukunft plant, desto gröber wird die Planung. Dadurch wird die Planung robuster gegen Änderungen.

In der Praxis haben sich drei Planungsebenen für ein Produkt bewährt:

  • Man muss das große Ganze im Blick behalten. Eine Produktvision ist der Nordstern für die Entwicklung. Sie adressiert die Kundenbedürfnisse und gibt die Richtung vor. Sie sorgt für Motivation, als Team an einem Strang zu ziehen.
  • Die Planung der Lieferung kann mehrere Sprints umfassen. In der Softwareentwicklung wird auch von Releaseplanung gesprochen. Wichtig ist, dass man auf Details der Anforderungen weitgehend verzichtet. Eine gut geeignete Praktik ist Story Mapping.
  • Die Planung des Sprints erfolgt in Scrum mit Hilfe der Backlogs. Das Team legt die Details der Anforderungen fest. Also zum Beispiel die Akzeptanzkriterien von User Stories. Auch während des Sprints kann das Team Anforderungen noch detaillieren.

Wenn Sie mehr über Empirisches RE wissen wollen, treffen wir uns im CARS-Kurs. Mehr zur Wandlung der Märkte lesen Sie in diesem Blogbeitrag.


Aufgeschriebene Anforderungen sind oft schlecht formulierte Wünsche!

Erstellt am 31 Januar 2019
von Schreibe einen Kommentar
Wer schreibt der bleibt … auf seinen Wünschen sitzen.

Mit Speed ins Requirements Engineering einsteigen

Erstellt am 23 Januar 2019
von Schreibe einen Kommentar

Sie wollen fundiert, gleichzeitig tief ins Requirements Engineering einsteigen? Und das in kürzester Zeit? Oder einer Ihrer Kollegen? Dann gibt es dazu die ideale Gelegenheit auf der REConf in München: Starten Sie mit meinem neugestalteten RE-Einsteiger-WorkshopAnforderungen sind Kommunikation – RE Basics“ am 11.3.2019 nachmittags. Danach bieten sich Ihnen noch zwei weitere Tage, um hochkarätige Keynotes und Vorträge zu verschiedensten Themen des RE anzuhören, sowie sich mit Kollegen und Experten auszutauschen und zu vergnügen.

Anforderungen sind Kommunikation – RE Basics

Anforderungen sind Kommunikation

Starting Agile Development of Systems – The Top 5 Questions

Erstellt am 15 Januar 2019
von Schreibe einen Kommentar

There is an increasing interest in developing hardware and systems in an agile way. In October 2018, the participants of the Agile Systems Conference in Munich (ASK) discussed some of the most interesting questions within an Open Space.

Agile Development of Hardware and Systems

Agile Systems Engineering (agile SE) is a hot topic in the development community. One the one hand, many people doubt if agile development is possible not only for software but also for hardware and systems. On the other hand, companies like WIKISPEED, SAAB, MAGURA, BLUNK Electronic etc. already build cars, aircrafts, e-mobility components and printed circuit boards in an agile way and with great success.

Open Space Results

The ASK offered an Open Space to discuss questions and topics of participants. The following top 5 questions were discussed. The results reflect approaches when starting agile SE:

Epics sind tot

Erstellt am 2 Januar 2019
von Schreibe einen Kommentar

Was wurde nicht schon alles für tot erklärt? Schon vor Jahren wurde Test Driven Development beerdigt. Merkwürdigerweise verbreitet es sich trotzdem immer weiter. Natürlich ist auch Agil tot. Obwohl  selbst traditionsreiche Unternehmen mittlerweile mit Scrum in Berührung gekommen ist.
Totgesagte leben länger, sind aber immer gut für eine schmissige Überschrift.
In diesem Sinne. Werden Sie Zeuge, wie ich Epics als agile Praktik zerstöre.