Konstruktive Qualitätssicherungs-Maßnahmen in ReSy-Einführungsprojekten
Konstruktive Qualitätssicherungs-Maßnahmen (QS-Maßnahmen) dienen der Fehlervermeidung bei der Erstellung von Projektergebnissen. Dieser Artikel gibt einen Einblick in einige ausgewählte konstruktive QS-Maßnahmen, die sich in ReSy-Einführungsprojekten hervorragend bewährt haben.
Konkret betrachten wir die Themen
- Qualitätssteigerung durch Etablierung eines Projektvorgehensmodells basierend auf agilen Prinzipien
- Fehlervermeidung durch Kommunikation
- Nachhaltiger und zielgerichteter Aufbau von fachlichem und technischen Know-how im Projektteam
Vorgehensmodell in ReSy-Einführungsprojekten
Das von Convista präferierte Vorgehensmodell für ReSy-Einführungsprojekte ist angelehnt an Scrum und enthält die aus diesem Vorgehensmodell bekannten Elemente wie User Story, Sprint, Review, Planning, Refinement, Experten-Refinement und Retrospektive.
Da eine vollumfängliche Darstellung dieses – von uns präferierten – Vorgehensmodells den Rahmen dieses Artikels bei weitem sprengen würde, beschränken wir uns auf:
- die Darstellung der wesentlichen Unterschiede zu Scrum (das wir als bekannt voraussetzen)
- auf Aspekte, die wir unter Qualitätsgesichtspunkten für besonders wichtig erachten
- oder die unser Vorgehensmodell in besonderem Maße betont.
Einer dieser Punkte ist der allen agilen Vorgehensmodellen inhärente kontinuierliche Verbesserungsprozess (KVP), den wir im Abschnitt „Qualitätssteigerung durch Methodik“ detailliert beleuchten.
Fehlervermeidung durch Kommunikation
Schon das Prinzip #6 des agilen Manifests besagt:
The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
Dem ist eigentlich nichts mehr hinzuzufügen, außer die Antwort auf die Frage, wie eine fehlervermeidende Kommunikation im Entwicklungsteam am besten gefördert werden kann? In ReSy-Einführungsprojekten nutzen wir hierzu unter anderem Maßnahmen wie Architekturgespräche mit erfahrenen Software-Architekten, Pair programming und Code Reviews vor und während der Umsetzung von hinreichend komplexen neuen Anforderungen (User Stories). Die Code-Reviews konzentrieren sich dabei auf das technische Design von neu umgesetzten Funktionen und nicht auf die formale Code-Qualität. Letztere kann besser durch den Einsatz von Werkzeugen zur statischen Code-Analyse gefördert werden, in ReSy-Einführungsprojekten setzen wir hierzu aktuell SonarCube ein.
Know-How-Aufbau im Projektteam
Der nachhaltige und zielgerichtete Aufbau von Know-How im Projektteam wird erfahrungsgemäß nicht durch eine nur einmalige intensive Einarbeitung von neuen Projektmitarbeitern erreicht. Ein solcher Aufbau erfordert vielmehr eine kontinuierliche Erweiterung der Kompetenzen aller Projektmitarbeitenden, und zwar bewusst und immer wieder auch außerhalb von deren individuellen Know-how-Schwerpunkten. Ein diesbezüglich in ReSy-Einführungsprojekten viel genutztes Element sind sogenannte „Boot-Camps“, in denen regelmäßig projektinterne Experten für ein Spezialthema vor dem gesamten Projektteam über ihr Spezialthema referieren.
Speziell in ReSy-Einführungsprojekten legen wir zudem besonderen Wert darauf, dass das Entwicklungsteam sich nicht nur technisches Expertenwissen und Produkt-Know-how zu ReSy aneignet, sondern auch versicherungsfachliches Know-how mit Schwerpunkt Restschuld-Versicherung. Letzteres soll das Team in die Lage versetzen, mögliche Unklarheiten und Lücken in neuen fachlichen Anforderungen (User Stories) selbständig zu erkennen und mit den zuständigen Fachanalysten zu klären – anstatt sämtliche Fachvorgaben mehr oder weniger unreflektiert umzusetzen. Daher umfassen die bereits beschriebenen „Boot-Camps“ oftmals auch eine Kombination aus fachlich detaillierten Informationen und technischen Umsetzungshinweisen.
Qualitätssteigerung durch Methodik
Über die qualitätssteigernden Effekte von iterativ-inkrementellen Vorgehensmodellen sind schon viele Bücher geschrieben worden, daher setzen wir diese Effekte als bekannt voraus und konzentrieren uns und auf einen besonders relevanten Aspekt: den kontinuierlichen Verbesserungsprozess.
Um das Potenzial des Ansatzes „Qualitätssteigerung durch Methodik“ auszuschöpfen, müssen unserer Einschätzung nach alle Projektmitarbeitenden die Idee des kontinuierlichen Verbesserungsprozesses verinnerlichen und in alle Projektaktivitäten einfließen lassen.
Ein Beispiel
Ein gutes Beispiel hierfür ist das Experten Refinement. Dieses dient primär dem Ziel, die zur Umsetzung einer neuen Anforderung (User Story) durchzuführenden Entwicklungsaktivitäten (Tasks) vollständig zu identifizieren und zu dokumentieren. Die an einem Experten-Refinement beteiligten technischen und fachlichen Experten sollten dabei immer auch analysieren, ob sich die bereits existierende Code Basis zur Umsetzung der jeweiligen User Story und zur Umsetzung von erwartbaren zukünftigen Erweiterungen (Folge-Anforderungen) eignet. Sofern dies nicht der Fall ist, sollten sie geeignete Refactoring-Tasks identifizieren und einplanen, auch wenn diese den unmittelbaren Umsetzungsaufwand für die User Story erhöhen. Im Extrem-Fall kann sogar eine eigene Vorarbeiten-Story nur für die identifizierten Refactoring-Tasks notwendig werden.
Den Umsetzungsaufwand einer User Story schätzt das gesamte Entwicklungsteam im nachfolgenden Refinement. Eine Schätzung durch das gesamte Entwicklungsteam empfiehlt sich, da häufig Entwickler eine User Story umsetzen, die nicht am Experten-Refinement dieser User Story beteiligt waren. Die angenommene Entwicklungsgeschwindigkeit muss dies im Sinne einer Mischkalkulation über alle User Stories berücksichtigen.
Optimierung des Vorgehensmodells
Der kontinuierliche Verbesserungsprozess sollte nicht nur eine Optimierung der erstellten Projektergebnisse zum Ziel haben, sondern auch die Optimierung des Projekt-Vorgehensmodells als solches. Hierzu nutzen wir in ReSy-Einführungsprojekten die in verschiedenen agilen Vorgehensmodellen vorgesehene Möglichkeit von regelmäßigen Retrospektiven.
Im Gegensatz zu dem in diesem Punkt recht „dogmatischen“ Vorgehensmodell Scrum, das eine Selbstinfragestellung bzw. Selbstoptimierung des Vorgehensmodells als solches eigentlich nicht vorsieht, haben wir bei der enowa gute Erfahrungen damit gemacht, wenn erfahrene (!) agile Teams durchaus auch mal das Vorgehensmodell als solches diskutieren und ggfs. an die speziellen Erfordernisse des jeweiligen Projekts anpassen (Tailoring des Vorgehensmodells). In ReSy-Einführungsprojekten sind diese Anpassungen, in der Regel, durch das vergleichsweise große Projektteam und durch die hohe Komplexität der fachlichen Anforderungen bedingt.
User Stories in ReSy-Einführungsprojekten
Aufgrund der hohen fachlichen Komplexität der Anforderungen hat sich in ReSy-Einführungsprojekten die Erstellung von User Stories bewährt, die umfangreicher und detaillierter ausgearbeitet sind, als dies gemäß Scrum-Modell vorgesehen ist. User Stories in ReSy-Einführungsprojekten enthalten beispielsweise einen Abschnitt „Motivation„, der üblicherweise der Beschreibung der umzusetzenden Anforderungen vorangestellt wird und die fachliche Motivation für die User Story kurz erläutert. Das Projektteam kann den Abschnitt Motivation oftmals schon zeitlich vor der Finalisierung der User Story erstellen. Das ermöglicht eine frühzeitige Beurteilung des Business Values der User Story. Er erleichtert zudem die Prüfung der User Story durch Fachbereichsmitarbeiter, die nicht an den Fachanalyse-Workshops für diese User Story teilgenommen haben. Ein weiterer positiver Seiteneffekt von User Stories mit einem solchen einleitenden Abschnitt ist, dass diese langfristig den fachlichen Background des Entwicklungsteams um das Wissen erweitern, wie und warum Anwender bestimmte Systemfeatures in der Praxis nutzen.
Ebenfalls bewährt hat sich die verpflichtende Erstellung von separaten Dialogentwürfen, die der User Story als Anhang beigefügt werden, sofern eine User Story signifikante Anpassungen der Anwenderschnittstelle erfordert. Gleiches gilt für die verpflichtende Erstellung von separaten Schnittstellenbeschreibungen, sofern die User Story Anpassungen an einer Umsystem-Schnittstelle erfordert. Dialogentwürfe und Schnittstellenbeschreibungen können dabei oftmals durch Anpassung/Erweiterung von bereits existierenden Anhängen anderer User Stories erstellt werden.
User Stories sollten aber auch in ReSy-Einführungsprojekten nicht zu groß geschnitten werden. Der Grund: Fachexperten/Fachbereichen können kleine Inkremente zu bereits bestehender Systemfunktionalität deutlich leichter und zuverlässiger hinsichtlich Korrektheit und Nutzen einschätzen/beurteilen als vollumfängliche Spezifikationen von großen und komplexen Software-Komponenten.
Üblicherweise orientieren wir uns beim Schnitt von User Stories an der groben Zielvorgabe, dass diese von einem Entwickler in einem zweiwöchigen Sprint umsetzbar sein sollten. Neue Anforderungen, deren Umsetzung größere Eingriffe in das System erfordern, werden daher möglichst so auf mehrere User Stories verteilt, dass jede dieser User Stories nach deren Umsetzung als Teil eines neuen Releases der Kundendistribution sinnvoll getestet werden kann, auch wenn ein vollumfänglicher Test der neuen Funktionalität erst nach Fertigstellung weiterer User Stories möglich ist.
Sämtliche User Stories legt das Projektteam zentral in Jira ab („single point of truth“). Dort können in Form von Kommentaren zusätzliche Bemerkungen erfasst werden. Erlaubt ist dabei alles, was nützlich ist. Ein typisches Anwendungsbeispiel für solche Kommentare sind Hinweise auf projektfremde Zu- oder Vorarbeiten wie die Umsystem-seitige Erweiterung einer von ReSy genutzten Schnittstelle.
Fazit und Ausblick
Zukünftige Fehler zu vermeiden, ist erfahrungsgemäß kostengünstiger, als bereits begangene Fehler nachgelagert zu finden und zu korrigieren. Daher sind zusätzliche konstruktive QS-Maßnahmen unter Kosten/Nutzen-Aspekten oftmals effizienter als zusätzliche analytische QS-Maßnahmen. Analytische QS-Maßnahmen verlieren dadurch aber natürlich nicht ihre Berechtigung und sind auch in ReSy-Einführungsprojekten unverzichtbarer Bestandteil des Qualitätsmanagements. Was es bei analytischen QS-Maßnahmen zu beachten gibt und welche sinnvoll sind, erfahren Sie im Blog-Artikel „Analytische Qualitätssicherungs-Maßnahmen in ReSy-Einführungsprojekten“
Autoren
Cornelia Burko – Management IT Consultant
Mit Blick sowohl auf technische als auch organisatorische Themen unterstützt Cornelia Burko das Competence Center „Versicherungs-Methodik und IT“ im Geschäftsbereich Versicherung. Ihr aktueller Schwerpunkte ist dabei das Testmanagement mit Fokus auf die Testautomatisierung sowohl in klassischen als auch in agilen Projekten.
Dr. Claus Ziegler – Senior Management Consultant
Dr. Claus Ziegler ist verantwortlich für die versicherungsfachliche Funktionalität des Bestandsführungssystems ReSy. Mit seinen über 30 Jahren Berufserfahrung detailliert und konsolidiert er die fachlichen Anforderungen der ReSy-Bestandskunden und berät das ReSy-Entwicklungsteam beim technischen Design von zugehörigen Lösungen.