Teil 1/2: Was ist ein Software-Entwicklungsplan?

Planst Du noch, oder entwickelst Du schon?

Es wird viel diskutiert warum man überhaupt einen Software Entwicklungsplan benötigt. Fast keiner käme auf Idee ein größeres Projekt ohne einen Plan zu starten. Wer baut ein Haus ohne Plan? Wer fährt in den Urlaub ohne ein Plan? Es gibt genügend Beispiele, wo sich jeder von uns einen Plan macht um ein gewisses Ziel zu erreichen, schriftlich oder nur im Kopf!

Der Software Entwicklungsplan ist eines der zentralen Dokumente in der Entwicklung einer Software. Wie der Name schon sagt, handelt es sich um einen Plan.
Ein Plan / eine Planung ist laut Wikipedia (https://de.wikipedia.org/wiki/Plan) „die Vorstellung einer zukünftigen Handlungsabfolge“. Damit wird auch deutlich gemacht, wann ein Plan erstellt wird.
Zu Beginn eines Projektes und nicht am Ende, um die normativen Anforderungen zu erfüllen !

In einem  Plan wird somit beschrieben wie, das heißt mit welchen Aktivitäten und mit welchen Mitteln ein bestimmtes Ziel erreicht werden soll.

Was machen Sie, wenn Sie feststellen die Rahmenbedingungen oder das Ziel Ihrer Reise hat sich verändert? Richtig, sie aktualisieren Ihren Plan und passen Ihn an die Gegebenheiten an.

Nicht anders ist es bei einem Software-Entwicklungsplan. Erstellen Sie zu Beginn eines Projektes die erste Version und scheuen Sie sich nicht, den Plan anzupassen, wenn es notwendig ist.

Das verlangt auch die 62304 in Kapitel 5.1.2 „Aktualisierung des Software-Entwicklungsplans“.

Ich habe es oft erlebt, dass ein Plan einmalig erstellt und nie aktualisiert wurde. Ist man nun am Ende des Projektes angekommen und möchte prüfen, ob alles gemäß Plan erledigt wurde, stellt man fest, dass Dinge die geplant waren nicht umgesetzt wurden.

Auf Nachfrage werden einem viele Gründe genannt, warum während dem Projekt anders vorgegangen wurde. Diese Gründe sind oft absolut sinnvoll, leider hat keiner daran gedacht auch den Plan zu aktualisieren.

Denken Sie also daran: Ein Plan ist nicht in Stein gemeißelt, es ist ein lebendes Dokument. Wenn ein Update notwendig ist, dann ist es so, machen Sie es!

Der Software-Entwicklungsplan soll dazu dienen, professionell, geplant und strukturiert eine Software-Entwicklung zu betreiben und diese zu steuern und zu überprüfen. Es geht also darum sich frühzeitig zu überlegen wie die Software entwickelt werden soll, dies entsprechend zu steuern und auch sicherzustellen, dass am Ende eines Projektes auch alles erledigt worden ist.

Der Software-Entwicklungsplan beschreibt also das konkrete Vorgehen für ein Projekt.

Zu Beginn der Reise (des Projektes) wird der Kurs bestimmt der genommen werden soll. Während der Fahrt wird der Kurs ständig überprüft. Entweder wird der Kurs des Schiffes korrigiert, wenn man von der geplanten Route abweicht, oder aber die geplante Route (der Plan) wird korrigiert, wenn sich die Rahmenbedingungen ändern, z.B. ein Sturm zieht auf.

Die 62304 drückt in Kapitel B.5.1 auch noch mal deutlich aus, was Sie als Sinn einer Planung sieht:

„Planung der Aufgaben  der Software-Entwicklung um die durch Software verursachten Risiken zu minimieren.“

Ebenso soll der Plan als Kommunikationsmittel für die Mitglieder des Entwicklungsteams dienen und so dabei helfen, dass eine entsprechende Software-Qualität erreicht wird.

Die 62304 lässt dem Hersteller auch viele Freiheiten, ob es einen Software-Entwicklungsplan für alle Projekte gibt, oder aber für jedes Projekt einen separaten Plan. Sie müssen es entscheiden!

Die Detaillierung hängt am Risiko. Das heißt, es wird erwartet, wenn Sie Software mit hohem Risiko entwickeln, dann sollte die Planung sehr detailliert und genau sein umso das Risiko zu minimieren.

Sie können es wieder mit der Planung einer Seereise vergleichen. Planen Sie durch den Nordatlantik zu fahren, nah an Eisbergen vorbei, so sollten Sie viel detaillierter und genauer planen, als wenn Sie von Italien nach Griechenland fahren.

Der Software-Entwicklungsplan hat noch einen anderen schönen Effekt.

Werden Sie nicht auch häufiger vom Management gefragt, wo stehen wir im Projekt, sind wir auf dem richtigen Weg?

Schlecht, wenn Sie keinen konkreten Plan haben, woher wollen Sie dann wissen wo Sie stehen und das auch kommunizieren?

Mit einem Software-Entwicklungsplan können Sie glänzen, Sie zeigen die geplanten Aktivitäten, sie signalisieren damit, dass Sie Ihr Projekt im Griff haben und Sie können auch nachvollziehbar aufzeigen, was geplant war und wo Sie aktuell stehen !

Ihr Management wird begeistert sein, über so viel Struktur und Überblick!

 

Nachdem nun hoffentlich klar ist, was ein Software-Entwicklungsplan ist und warum man diesen benötigt (nicht nur aus normativen Anforderungen), werde ich im 2. Teil des Beitrages beschreiben, wie ein Software-Entwicklungsplan konkret aussehen kann.

Kontaktieren Sie uns!

Autor

  • (Gast) Heiko Schmidt

    Heiko Schmidt war als Team Manager Software / Verification bei der Maquet Cardiopulmonary GmbH tätig. Hier hat er die Entwicklung von Software für Medizinprodukte, wie Herz-Lungen-Maschinen oder Hypo-/Hyperthermiegeräte und viele andere entwickelt. Heute arbeitet Heiko Schmidt bei der Robert Bosch GmbH Reutlingen als Qualitätsmanager Software/IT.

Auch interessant:

Umgang mit Legacy Software nach IEC62304

Haben Sie schon mal etwas geerbt? Ein Erbe oder ein Vermächtnis kann durchaus etwas Positives sein. Ein anderes Wort macht da schon nachdenklicher: Hinterlassenschaft! Der Begriff Hinterlassenschaft ist im Gegensatz zu Vermächtnis schon deutlich wertfreier und zeigt an, dass da nicht unbedingt etwas Positives hinterlassen wurde. Und was hat das…
Getagged mit: , , , ,