Prozesse - Entwicklung und Verbesserung

Gute Prozesse zahlen sich aus. Oder anders gesagt: Sind die Entwicklungsprozesse überladen und inkonsistent, verursacht dies ein Vielfaches an Kosten, weil in den einzelnen Projekten versucht wird, danach zu entwickeln. Überhöhte Anforderungen können nur halbherzig erfüllt werden und bieten damit einen geringen Mehrwert. Passen zum Beispiel die Spezifikationsprozesse der linken Seite des V-Zyklus nicht zu der rechten Seite, den Testprozessen, können diese nicht prozess-konform umgesetzt werden. Schnell entstehen 'Parallel-Welten'. Es gibt einerseits die Entwicklungsprozesse und andererseits die tatsächliche Entwicklung.

Nach den folgenden Grundsätzen arbeiten wir:

Softwaretest - vom Konzept bis zum Testmanagement

Letztendlich zählt doch nur eins: Der Kunde ist zufrieden, weil er fristgerecht ein Produkt bekommt, das so funktioniert wie er es wünscht und das keine sichtbaren Fehler aufweist. Das ganze natürlich für einen akzeptablen Preis. Sämtliche Prozesse und Aktivitäten dienen diesem Ziel.

Das Testing stellt sicher, dass ein Produkt das tut, was es tun soll und nichts anderes. Damit ist der Test einer der wichtigsten Bestandteile der Entwicklung. Selbstverständlich kann der Test nicht isoliert betrachtet werden. Woher weiß man denn, was das Produkt tun soll und was nicht? Bereits bei den Prozessen für das Requirements Engineering und dem Design muss darauf geachtet werden, dass die Basis für den Test ausreichend ist.

Betrachtet man zum Beispiel die Anforderungen der ISO 26262 an den Integrationstest, so wird man schnell feststellen, dass diese schwer exakt umsetzbar sind und nur bedingt dem anfangs artikulierten Ziel dienen:

Softwarequalität - Ideal und Machbarkeit

Weder hoch angesiedelte Idealvorstellungen an die Softwarequalität noch die vollständige Freiheit bei der Wahl der Qualitätsziele führen zur bestmöglichen Qualität.

Die aus Automotive SPICE®, der ISO 26262 und den eigenen Prozessen hergeleiteten Anforderungen sind häufig nicht zu einhundert Prozent umsetzbar. Schnell driften die Qualitätsanforderungen und die realen Projektgegebenheiten auseinander. Überlässt man die Definition der Qualitätsziele vollständig der Entwicklung, wie zum Beispiel bei der Definition of Done von SCRUM, sind die gesteckten Ziele eventuell nicht mehr vereinbar mit den ursprünglichen Anforderungen.

Der Mittelweg der Qualitätssicherung muss es also sein, die hohen Anforderungen an die Qualität nicht aus den Augen zu verlieren und dennoch flexibel zu sein und sich darauf zu konzentrieren, was aktuell machbar ist.

Automotive und agile Methoden

Der klassische Ansatz nach dem V-Zyklus garantiert durch die Vereinheitlichung der Arbeitsweisen die Erfüllung von Standards wie Automotive SPICE® und der funktionalen Sicherheit. Der agile Ansatz von SCRUM sorgt für eine effiziente, sich selbst verbessernde Arbeitsweise, durch rege Kommunikation und starke Fokussierung auf stetige Lieferung funktionsfähiger Software.