Top-Fragen
Zeitleiste
Chat
Kontext
Cleanroom Software Engineering
Softwareentwicklungsprozess Aus Wikipedia, der freien Enzyklopädie
Remove ads
Der Cleanroom Software Engineering Process (zu Deutsch Reinraum-Softwareentwicklungs-Prozess) ist ein Softwareentwicklungsprozess, mit dem Software mit einem zertifizierbaren Maß an Zuverlässigkeit erstellt werden soll. Der Reinraumprozess wurde ursprünglich von Harlan Mills und mehreren seiner Kollegen entwickelt, darunter Alan Hevner von IBM.[1] Der Schwerpunkt des Reinraumprozesses liegt eher auf der Fehlervermeidung als auf der Fehlerbeseitigung. Der Name „Reinraum“ wurde gewählt, um an die in der Elektronikindustrie verwendeten Reinräume zu erinnern, um die Einführung von Defekten bei der Herstellung von Halbleitern zu verhindern. Das Reinraumverfahren wurde erstmals Mitte bis Ende der 1980er Jahre eingesetzt. Demonstrationsprojekte innerhalb des Militärs begannen Anfang der neunziger Jahre.[2] Jüngste Arbeiten zum Reinraumprozess haben die Verschmelzung von Reinräumen mit den automatisierten Verifizierungsfunktionen untersucht, die durch in CSP ausgedrückte Spezifikationen bereitgestellt werden.[3]
Remove ads
Grundprinzipien
Zusammenfassung
Kontext
Die Grundprinzipien des Reinraumprozesses sind
- Softwareentwicklung basierend auf formale Methoden
- Die Unterstützung durch Softwaretools, die auf einigen mathematischen Formalismen basieren, einschließlich Model Checking, Processkalkül, sowie Petri-Netze. Die Box-Struktur-Methode[4] kann ein solches Mittel zum Spezifizieren und Entwerfen eines Softwareprodukts sein.[5] Die Überprüfung, ob das Design die Spezifikation korrekt implementiert, erfolgt durch Teamüberprüfung, häufig mit Unterstützung von Softwaretools.
- Inkrementelle Implementierung unter statistische Qualitätskontrolle
- Die Reinraumentwicklung verwendet einen iterativen Ansatz, bei dem das Produkt in Schritten entwickelt wird, um die implementierte Funktionalität schrittweise zu Erhöhen. Die Qualität jedes Inkrements wird anhand vorab festgelegter Standards gemessen, um sicherzustellen, dass der Entwicklungsprozess akzeptabel verläuft. Wenn die Qualitätsstandards nicht eingehalten werden, werden die Tests für das aktuelle Inkrement abgebrochen und die Entwurfsphase wieder aufgenommen.
- Statistisch fundierte Tests
- Softwaretests im Reinraumprozess werden als statistisches Experiment durchgeführt. Basierend auf der formalen Spezifikation wird eine repräsentative Teilmenge von Software-Eingabe- / Ausgabe-Trajektorien ausgewählt und getestet. Diese Stichprobe wird dann statistisch analysiert, um eine Schätzung der Zuverlässigkeit der Software und ein Maß an Vertrauen in diese Schätzung zu erhalten.
Remove ads
Literatur
- Allan M. Stavely: Toward zero-defect programming. Addison-Wesley, Reading, Mass. 1999, ISBN 0-201-38595-3.
- Stacy J. Prowell: Cleanroom software engineering : technology and process. Addison-Wesley, Reading, Mass. 1999, ISBN 0-201-85480-5.
- J. H. Poore, Carmen J. Trammell: Cleanroom software engineering : a reader. Blackwell, Oxford, UK 1996, ISBN 1-85554-654-X.
Einzelnachweise
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads