Case Study:
SprintDoc
Agile Dokumentationsmethodik und -werkzeug für Softwareprojekte
Kunde
Das Projekt SprintDoc war ein vom Bundesministerium für Bildung und Forschung (BMBF) gefördertes Forschungsvorhaben im Rahmen der Initiative „KMU-innovativ: IKT” (Förderkennzeichen 01IS15005A-D). Das Konsortium bestand aus CosmoCode als Konsortialführer und zentralem Entwicklungspartner sowie dem Lehrstuhl Logistische Systeme am Institut für Logistik und Materialflusstechnik der Otto-von-Guericke-Universität Magdeburg als Forschungspartner. Als Pilotanwender waren die Thorsis Technologies GmbH und die WIZMO GmbH beteiligt, die das Methoden- und Werkzeugset in realen Softwareprojekten erprobten.
Projekt
In agilen Softwareprojekten liegt der Fokus auf der schnellen Bereitstellung lauffähiger Software durch enge Zusammenarbeit mit dem Kunden. Der Nachteil besteht jedoch darin, dass Erfahrungswissen aus Projekten überwiegend in den Köpfen einzelner Teammitglieder verbleibt. Beim Wechsel von Mitarbeitern, der Übergabe von Projekten oder dem Ausscheiden von Fachkräften entsteht so ein erhebliches Wissensverlustpotential. Bestehende agile Planungswerkzeuge wie JIRA oder Redmine verwalten zwar Anforderungen und Aufgaben in Product- und Sprint-Backlogs, bieten jedoch keine Funktionen für die strukturierte Sicherung und den Rückgriff auf Projekterfahrungen.
Ziel des Projekts war die Entwicklung einer agilen Dokumentationsmethodik und eines darauf abgestimmten Softwarewerkzeugs, mit denen Erfahrungswissen aus Softwareprojekten systematisch gesichert und für nachfolgende oder parallele Projekte bereitgestellt werden kann. Die Methodik sollte sich nahtlos in den Scrum-Prozess integrieren und den Dokumentationsaufwand so gering wie möglich halten. Das Werkzeug musste dabei struktur- und kontextflexibel, intuitiv bedienbar und in bestehende Arbeitsumgebungen integriert sein.
Eine begleitende empirische Studie mit 99 Softwareentwicklern belegte den Handlungsbedarf: Kommunikative Tätigkeiten beanspruchten 35 % der gesamten Arbeitszeit, während nur 3 % auf Dokumentation entfielen. Kollegen waren die primäre Informationsquelle, und die vorhandene Dokumentation beschränkte sich weitgehend auf Quellcode und Anforderungen.
Umsetzung
CosmoCode entwickelte als Konsortialführer und Hauptentwickler das Werkzeug „SprintDoc” auf Basis des im Vorgängerprojekt ICKE 2.0 entstandenen strukturierten Wikis ICKEwiki, das seinerseits auf DokuWiki aufbaut. Die Umsetzung erfolgte agil nach Scrum in 12 Sprint-Zyklen mit anschließenden zwei finalen Sprints, wobei nach jeweils drei Sprints Umsetzungsmeilensteine an die Pilotanwender ausgeliefert und evaluiert wurden.
Kernstück des Werkzeugs war ein System aus zehn vordefinierten Dokumentationsmustern (Patterns) für typische Artefakte agiler Projekte, darunter Server, Feature, Komponente, Projekt, Testfall und Anforderung. Diese Muster konnten hierarchisch organisiert werden und bildeten so eine modulare, vorlagenbasierte Dokumentation anstelle unstrukturierter Ad-hoc-Texte. Ergänzend wurde eine Skalierungsmorphologie entwickelt, die anhand von Projektmerkmalen wie Größe und Komplexität automatisch den passenden Dokumentationsumfang vorschlug.
Für den Mehrmandantenbetrieb setzte CosmoCode auf Wiki-Farming mittels des eigens entwickelten Farmer-Plugins und des FarmSync-Plugins: Eine zentrale Farmer-Installation vererbte Konfiguration, Plugins, Templates und Benutzerverwaltung an beliebig viele untergeordnete Instanzen, die über eigene Subdomains erreichbar waren. Dadurch konnte der Administrationsaufwand bei der Betreuung mehrerer Projekte und Kunden erheblich reduziert werden.
Die Integration in bestehende Entwicklungsumgebungen umfasste Schnittstellen zu JIRA und Redmine sowie Empfehlungen für GitLab-basierte Scrum-Workflows mit Feature-Branching, Merge-Request-basiertem Code-Review und CI/CD-Pipelines. Das Werkzeug wurde als webbasierte Cloud-Lösung konzipiert, um die unternehmensübergreifende Zusammenarbeit in verteilten Teams zu ermöglichen.
Die im Projekt entwickelte Dokumentationsmethodik strukturierte den Dokumentationsprozess entlang von zehn Leitfragen, die von der Motivation über Zielgruppe und Inhalte bis hin zu Werkzeugen und Zeitpunkten reichten. Die Dissertation des wissenschaftlichen Projektleiters Stefan Voigt zum Thema „Entwicklung eines integrierten Konzeptes für die Dokumentation in agilen Softwareprojekten” wurde 2017 beim Fraunhofer Verlag publiziert und fasst die wissenschaftlichen Ergebnisse des Projekts zusammen.
We can also implement your project!
Do you want to implement a similar project? Or do you have a completely different idea? Talk to us and we will find the best solution together.