Kontakt
About

Komplexität meistern: Die Bedeutung einer agilen Toolchain am Beispiel der Konzeptentwicklung

Der Ablauf einer agilen Toolchain und welche Programme wir dafür benutzen
  • Ognjen Manojlovic
    Ognjen Manojlovic
    Sunday, April 21, 2024
Die Entwicklung eines neuen Produkts oder Dienstes in einem komplexen Umfeld erfordert einen systematischen Ansatz. Ein gut durchdachtes Konzept dient als solide Grundlage und definiert Zweck, Ziele und Funktionalitäten. Die Verwendung moderner agiler Tools unterstützt nicht nur den Konzeptionsprozess, sondern erleichtert auch die Zusammenarbeit und Nachverfolgung während der Umsetzung. Die kontinuierliche Pflege und Anpassung des Konzepts sowie die effektive Umsetzung der Anforderungen sind entscheidend für den Erfolg in einer sich ständig wandelnden digitalen Landschaft.

Einleitung

Die Herausforderungen, die mit der Entwicklung eines neuen Services oder Produkts in einem komplexen Umfeld einhergehen, erfordern einen gezielten und systematischen Ansatz. Der Schlüssel zum Erfolg liegt in einem gut definierten Konzept, das als solide Grundlage für die Entwicklung und Bereitstellung des Dienstes fungiert. In diesem Blogpost werden wir die essenzielle Bedeutung eines klaren Konzepts im Kontext der Einführung eines neuen Services oder Produkts untersuchen. Wir werfen einen Blick auf die zentralen Schritte bei der Konzepterstellung, die effektive Steuerung des Entwicklungsprozesses in einer komplexen Umgebung und dabei die Vorteile moderner agiler Werkzeuge.
Konzept
Ein sorgfältig ausgearbeitetes Konzept verleiht der Einführung eines neuen Dienstes eine klare Richtung und definiert einen deutlichen Schwerpunkt. Es skizziert den Zweck, die Ziele, die Vision und den Umfang. Dies bedeutet jedoch nicht, dass das Endprodukt im Gesamtumfang mit allen dazugehörigen Funktionalitäten ins Detail beschrieben werden muss. Ganz im Gegenteil. Die Details werden im Rahmen der agilen Entwicklung festgelegt, abgestimmt und umgesetzt. Das Konzept dient lediglich als Grundlage für das Product Backlog und beschreibt die groben Funktionalitäten des Produkts. Die klare Definition von Zielen und gewünschten Ergebnissen ermöglicht es den Entwicklungsteams, sich gezielt auf die Bereitstellung des beabsichtigten Nutzens zu konzentrieren. Fehlt jedoch ein klares Konzept, kann der Implementierungsprozess leicht die Richtung verlieren. Dies führt nicht nur zu Verwirrung und Verzögerungen, sondern auch zu einer ineffizienten Nutzung von Ressourcen. Das Konzept fungiert als Leitfaden, der alle Beteiligten auf dem gleichen Wissensstand hält und die Umsetzung gezielt vorantreibt.
Ein wesentlicher Punkt dabei ist die Flexibilität des Konzepts. Im Verlauf der Umsetzung können sich Anpassungen als notwendig erweisen, sei es nach der Entwicklung eines Minimum Viable Products (MVP) oder im Rahmen von Nutzerbefragungen und Testphasen.
MVP
Die Erstellung eines Konzepts ist keine einmalige Aufgabe, sondern erfordert eine kontinuierliche Pflege und Verfeinerung. Ein Product Owner trägt normalerweise die Verantwortung, das Konzept stets auf dem neuesten Stand zu halten und Anpassungen auf Basis von Markttrends, Benutzerfeedback und sich entwickelnden Anforderungen vorzunehmen. Eine enge Zusammenarbeit mit den Entwicklungsteams gewährleistet, dass alle Anforderungen effektiv umgesetzt werden. Durch regelmäßige Besprechungen, Fortschrittsberichte und Feedback-Sitzungen kann der Stand der Umsetzung genau verfolgt und potenzielle Herausforderungen frühzeitig erkannt und bewältigen werden. Diese iterative und agile Herangehensweise an die Konzeptpflege ermöglicht eine dynamische Anpassung an Veränderungen und stellt sicher, dass das entwickelte Produkt stets den aktuellen Anforderungen und Erwartungen entspricht.
Die Struktur eines Konzeptdokuments umfasst in der Regel die übergeordneten Ideen, Ziele sowie funktionale und nichtfunktionale Anforderungen an das Produkt. Obwohl die spezifische Struktur je nach Organisation und Kontext variieren kann, wird im Folgenden ein allgemeiner Rahmen für die Strukturierung vorgestellt:
  1. Einleitung: Dieser Abschnitt führt in das Konzept ein, gibt einen Überblick über den Inhalt und die Ziele des Dokuments.
  2. Hintergrund: Hier werden die historischen, organisatorischen oder kontextuellen Aspekte beleuchtet, die zur Entstehung des Konzepts geführt haben.
  3. Zielpublikum – Personas: Die Definition des Zielpublikums, inklusive der Erstellung von Personas, hilft dabei, die Bedürfnisse und Anforderungen der Nutzer besser zu verstehen.
  4. Prozessbeschreibungen: Dieser Abschnitt umfasst detaillierte Beschreibungen der Prozesse, die im Rahmen des Projekts oder Produkts ablaufen sollen.
  5. Hauptmerkmale und Funktionalität: Hier werden die funktionalen und nicht-funktionalen Anforderungen definiert, die die Grundlage für die Entwicklung und Umsetzung bilden.
  6. Benutzererfahrung – UX: Die Benutzererfahrung steht im Fokus dieses Abschnitts, und es werden Strategien zur Gewährleistung einer positiven Nutzerinteraktion festgelegt.
  7. Umfang und Beschränkungen – Scope/Out of Scope: Klar definierte Grenzen des Projekts werden hier festgelegt, um den Umfang und die damit verbundenen Beschränkungen deutlich zu machen.
  8. Risiken: Eine Analyse der potenziellen Risiken, die während der Umsetzung auftreten können, sowie entsprechende Maßnahmen zur Risikominderung.
  9. Zeitplan: Hier wird ein Zeitplan für die Umsetzung des Projekts oder Produkts erstellt, der Meilensteine und Zeitrahmen für die einzelnen Phasen festlegt.
  10. Budget- und Ressourcenplan: Dieser Abschnitt beinhaltet die Planung der finanziellen Ressourcen sowie der benötigten personellen und technischen Ressourcen für die erfolgreiche Realisierung des Konzepts.
Die klare Strukturierung nach diesen Punkten schafft einen umfassenden Überblick über das Konzept und dient als Leitfaden für alle Beteiligten während des gesamten Entwicklungsprozesses.
In den nachfolgenden Abschnitten werden wir tiefer in die Phasen der Konzepterstellung eintauchen sowie Werkzeuge betrachten, die den agilen Konzepterstellungs- und Entwicklungsprozess in einer komplexen Umgebung erfolgreich lenken können.

Agile Toolchain

Moderne agile Tools sind eine essenzielle Komponente für das Management komplexer Projekte und agiler Entwicklungsteams. Eine gut konzipierte agile Toolchain vereint eine Vielzahl von Tools und Technologien, die auf agilen Prinzipien basieren. Sie verbessert die Zusammenarbeit, Transparenz und Produktivität von der Ideenfindung und Konzepterstellung bis zur Implementierung und Dokumentation erheblich. Agil bedeutet in diesem Kontext, dass die Tools online verfügbar sind und den API-first-Ansatz verfolgen. Das heißt, die Tools sind über eine API ansprechbar, können miteinander verbunden und integriert werden. Darüber hinaus ermöglichen sie eine einfache Kollaboration verschiedener Teams in unterschiedlichen Regionen. Schließlich helfen agile Tools dabei, schnell auf Änderungen zu reagieren und das Gesamtbild im Auge zu behalten.
Besonders bei der Konzepterstellung und der anschließenden Umsetzung spielt der Einsatz einer modernen Toolchain eine bedeutende Rolle. In diesem Blogpost werde ich eine bewährte Toolchain vorstellen, die ich in verschiedenen Konzept- und Umsetzungsprojekten erfolgreich eingesetzt habe. Diese Toolchain besteht aus verschiedenen Werkzeugen, von denen jedes für spezifische Phasen optimal geeignet ist.

Ideenfindung, Brainstorming und Workshops

Die Anwendung kollaborativer und agiler Tools während der Ideenfindung stellt eine wesentliche Bereicherung für den kreativen Prozess dar und trägt maßgeblich zur Entwicklung innovativer Ideen bei. Unterschiedliche Tools ermöglichen die Erstellung von Sticky Notes, Mind Maps, grafischen Prototypen oder kollaborativen Whiteboards zur Erfassung und Strukturierung von Ideen. In dieser Phase setze ich vor allem auf die Tools Miro und Figma, die sich besonders bewährt haben. Beide bieten nicht nur eine effiziente Unterstützung bei der Moderation von Workshops, sondern fördern auch das gemeinsame und kollaborative Arbeiten.
Miro ist ein digitales Whiteboard-Tool, das das Brainstorming sowie die Visualisierung und Zusammenarbeit zwischen den Teammitgliedern erleichtert. Insbesondere bei der Moderation von Workshops erweist sich Miro als äußerst nützlich, da es allen Teilnehmern die Möglichkeit bietet, in Echtzeit auf einem gemeinsamen Whiteboard zu arbeiten.
Figma hingegen präsentiert sich als webbasiertes Design- und Prototyping-Tool, spezialisiert auf die Erstellung von Benutzeroberflächen (UI) und User Experience (UX) Designs. Als kollaborative Plattform ermöglicht Figma Designern, Entwicklern und anderen Stakeholdern eine simultane Zusammenarbeit in Echtzeit an Designprojekten.
Die Ergebnisse aus den Workshops und Brainstorming Session müssen am Ende des Tages formalisiert werden. D.h. Notizen, Prozessbeschreibungen, Anforderungen oder Architekturskizzen müssen mit dafür geeigneten Werkzeugen aufbereitet werden und ggf. zum Review bereitgestellt werden.
In dieser ersten Phase ist es von großer Bedeutung, die Ideen, Ergebnisse, getroffenen Entscheidungen sowie die nächsten Schritte der Workshops in einem geeigneten Werkzeug zu erfassen, zu dokumentieren und mit den Stakeholdern sowie Entscheidungsträgern zu teilen.

Prozesse und Architektur

Die Modellierung von Geschäfts- und Fachprozessen spielt eine entscheidende Rolle, um Abläufe zu verstehen, zu verbessern und zu automatisieren. Die modellierten Prozesse bilden ebenfalls die Grundlage für den Aufbau eines Services oder Einführung eines neuen Produkts. Prozessbilder sind unentbehrlich, um Bottlenecks frühzeitig zu identifizieren und zu beseitigen. Ein weitverbreiteter Standard für die Prozessmodellierung ist BPMN (Business Process Model and Notation).
Die Modellierung von Geschäfts- und Fachprozessen kann durch Tools wie Signavio erleichtert werden. Signavio ermöglicht die Erstellung visueller Modelle unter Verwendung standardisierter Notationen wie BPMN. Das Tool bietet eine benutzerfreundliche Weboberfläche mit Drag-and-Drop-Funktionen, die das einfache Erstellen und Anpassen von Prozessmodellen erleichtern.
Zusätzlich zur Prozessmodellierung unterstützt Signavio die Verwendung von ArchiMate, einer weit verbreiteten Modellierungssprache für die Unternehmensarchitektur. Diese Unterstützung ermöglicht es Benutzern, die Funktionalität von ArchiMate innerhalb der Signavio-Plattform zu nutzen. Durch die Integration von ArchiMate können Unternehmen ihre Unternehmensarchitektur modellieren, analysieren und visualisieren, was zu einem verbesserten Verständnis, besserer Abstimmung und fundierteren Entscheidungen führt.
Da Signavio jedoch mit erheblichen Lizenzkosten verbunden ist, bieten sich für diesen Zweck auch verschiedene preisgünstige oder kostenfreie Alternativen wie Camunda oder Archi an.

Anforderungs- und Workmanagement

Die Anforderungserhebung zielt darauf ab, Produktanforderungen zu identifizieren, zu dokumentieren und nach Prioritäten zu ordnen. Ein tiefgreifendes Verständnis der Bedürfnisse und Erwartungen der Interessengruppen ist hierbei entscheidend. Durch den Einsatz bewährter Techniken wie Interviews, Workshops und Umfragen können Anforderungen effektiv erfasst und analysiert werden.
Für die Dokumentation und das Management von Anforderungen bietet sich die Nutzung von Jira und Confluence an. Die während der Konzepterstellung entstehenden Anforderungen sollten im besten Fall als Jira Issues erfasst werden. Auf diese Weise können diese im Verlauf der Entwicklung oder als Product Backlogs effektiv genutzt bzw. wiederverwendet werden. Confluence fungiert als zentraler Wissenshub für die Dokumentation und projektbezogene Informationen. In der Regel ist es wünschenswert, ein Konzept zu haben, das für alle zugänglich, stets auf dem neuesten Stand und leicht verständlich ist. Daher empfiehlt sich die Integration von Jira Issues bzw. Anforderungen in Confluence, um diese als Fließtext einfach lesen zu können, ohne jedes Jira Ticket separat sichten zu müssen. Eine alternative Möglichkeit, die Anforderungen in strukturierter Form darzustellen, ist die Verwendung von Structure. Structure ist ein Jira-Plugin, das es dem Nutzer ermöglicht, die Issues hierarchisch, in einer “ordnerähnlichen” Struktur, zu organisieren. Das Plugin bietet zudem eine Vielzahl weiterer nützlicher Funktionen, die in Jira nicht standardmäßig vorhanden sind.

Roadmapping

Jira unterstützt das Roadmapping und die Zeitplanung mit der Standardfunktionalität "Timeline" sowie der Erweiterung "Plans". Diese Tools ermöglichen eine übersichtliche zeitliche Darstellung von Vorgängen, insbesondere in einem Multiprojekt-Kontext.
Die Funktion "Timeline" ist in allen Jira-Plänen, sowohl in der Cloud- als auch in der Data-Center-Version, verfügbar. Jira Plans ist derzeit ausschließlich für Jira Premium-Kunden erhältlich. Während die Timeline-Funktionalität sich auf ein Jira-Projekt beschränkt, fungiert Jira Plans als Portfolio-Werkzeug und ermöglicht die Darstellung mehrerer Projekte auf einer gemeinsamen Zeitachse.
Bestehende Anforderungen, die bereits in Jira erfasst wurden, können auf einer Zeitleiste platziert werden, um einen ersten Entwurf einer Roadmap für die Produktentwicklung zu erstellen. Diese Roadmap bietet dem Produktmanagement und der Entwicklung einen klaren Überblick über bevorstehende Aktivitäten und hilft dabei, alle Details im Blick zu behalten. Die Roadmap ist dabei ein dynamisches Produkt, das kontinuierlich im Ausarbeitungs- und Entwicklungsprozess angepasst wird.
Die im Konzept identifizierten Anforderungen können weiter in kleinere Einheiten, oft in Form von User Stories für die Entwicklung, aufgeschlüsselt werden. Durch die in Jira verfügbaren Verlinkungen ist es einfach, die Beziehungen zwischen einzelnen Vorgängen nachzuvollziehen und deren Entstehung nachzuverfolgen.
Darüber hinaus können die für die Umsetzung geschätzten Kosten, Aufwände und benötigten Ressourcen in den einzelnen Vorgängen erfasst werden, sodass diese Informationen jederzeit auf der Roadmap sichtbar sind.
Insgesamt handelt es sich um eine äußerst nützliche Funktionalität, die zweifellos einen erheblichen Beitrag zur effektiven Umsetzungsplanung leistet.
Agile Roadmap + Apps

Fazit

Die Erstellung eines Konzepts für ein neues digitales Produkt in einer komplexen Umgebung erfordert einen klar definierten Ansatz und effektives Management. Durch aktive Beteiligung an der Erstellung des Konzepts, Stakeholder-Management und Anforderungsmanagement wird eine solide Grundlage für die erfolgreiche Umsetzung gelegt. Die klare Definition von Zweck, Zielen und Funktionalitäten in der Konzeptphase ermöglicht nicht nur eine gezielte Entwicklung, sondern schafft auch Transparenz und Einigkeit unter den Beteiligten. Die Verwendung moderner agiler Tools unterstützt nicht nur den Konzeptionsprozess, sondern erleichtert auch die Zusammenarbeit, Kommunikation und Nachverfolgung während der gesamten Umsetzung. In der Pflege des Konzepts und der Implementierung der Anforderungen liegt die Schlüsselrolle des Projekt- oder Produktmanagements, um sicherzustellen, dass das Endprodukt den Erwartungen entspricht und flexibel auf Veränderungen reagieren kann. Insgesamt ist die systematische Herangehensweise, auch in einer agilen Welt, an die Konzeptentwicklung und -umsetzung entscheidend für den Erfolg eines Vorhabens in einer sich ständig wandelnden digitalen Landschaft.