Entwurfsverifizierungs- und Validierungsprozess
โก Intelligente Zusammenfassung
Die Designverifizierung bestรคtigt, dass das Designergebnis den dokumentierten Designvorgaben entspricht, wรคhrend die Designvalidierung sicherstellt, dass das fertige Produkt die tatsรคchlichen Bedรผrfnisse der Nutzer erfรผllt. Beide Prozesse laufen wรคhrend des gesamten Entwicklungsprozesses, nicht erst am Ende.
Designรผberprรผfung
Designรผberprรผfung Die Verifizierung ist eine Methode, um durch Prรผfung und Nachweis zu bestรคtigen, dass die Ausgabe eines entwickelten Softwareprodukts den Eingabespezifikationen entspricht. Ziel der Verifizierung wรคhrend der Softwareentwicklung ist es, sicherzustellen, dass das entwickelte Softwareprodukt den Spezifikationen entspricht.
Als Design-Input gelten alle physikalischen und leistungsbezogenen Anforderungen, die als Grundlage fรผr das Design dienen. Das Design-Output ist das Ergebnis jeder Designphase und des gesamten Designaufwands. In regulierten Branchen wie der Medizintechnik bildet das finale Design-Output die Grundlage fรผr die Gerรคtedokumentation. Daher findet sich die Terminologie der Designkontrolle so hรคufig in der Verifizierungsdokumentation.
In der Praxis vergleicht die Verifizierung zwei Dokumentensรคtze: die ursprรผnglichen Spezifikationen, Normen und Vorgaben mit den resultierenden Zeichnungen, dem Code und den Testanweisungen. Jede Abweichung zwischen ihnen stellt einen Verifizierungsbefund dar.
Design-Validierung
Die Verifizierung beweist die interne Konsistenz. Die Validierung stellt die schwierigere Frage, ob die Spezifikation รผberhaupt das richtige Produkt beschrieben hat.
Design-Validierung Die Designvalidierung ist ein Prozess zur Bewertung des Softwareprodukts anhand der genauen Anforderungen von Endnutzern oder Stakeholdern. Ziel der Designvalidierung ist es, das Softwareprodukt nach der Entwicklung zu testen, um zu bestรคtigen, dass es diese Anforderungen in der jeweiligen Nutzerumgebung erfรผllt.
Bei der Validierung geht es darum, die Konsistenz und Vollstรคndigkeit eines Designs im Hinblick auf die Nutzerbedรผrfnisse nachzuweisen. In dieser Phase wird eine Version des Produkts entwickelt und anhand der Nutzeranforderungen validiert.
Das Banner unten kennzeichnet die beiden Hรคlften der Aktivitรคt, so wie sie รผblicherweise in Konstruktionsunterlagen dargestellt werden.
Das nachfolgende Diagramm zeigt den Designvalidierungsprozess selbst, von den Benutzerbedรผrfnissen bis zum validierten Produkt.
Ziel ist es, anhand objektiver Beweise nachzuweisen, dass das Produkt die dokumentierten Nutzerbedรผrfnisse erfรผllt. Objektive Beweise sind schlichtweg physische Belege fรผr das Ergebnis โ beispielsweise ein Bild, eine Textdatei, eine Audiodatei oder ein unterzeichneter Bericht โ, die belegen, dass das Verfahren tatsรคchlich durchgefรผhrt wurde.
Anhand dieser objektiven Nachweise wird im Prozess fortlaufend geprรผft, ob das Produkt die vordefinierten Anforderungen erfรผllt. Dies umfasst Testaktivitรคten, Inspektionen, Analysen und รคhnliche Verfahren, weshalb die Validierung รผblicherweise auf diesen Nachweisen basiert. Systemtests und User Acceptance Testing anstatt auf Ebene der einzelnen Einheiten zu รผberprรผfen.
Unterschied zwischen Designverifizierung und Validierung
Es gibt immer wieder Missverstรคndnisse zwischen Verifizierung und Validierung. Es handelt sich um unterschiedliche Aktivitรคten, die beide in jeder Phase des Entwicklungsprozesses durchgefรผhrt werden und nicht erst zu einem einzelnen Meilenstein.
| Designรผberprรผfung | Design-Validierung |
|---|---|
| Die Designverifizierung wird dort eingesetzt, wo das tatsรคchliche Designergebnis mit dem erwarteten Designergebnis รผbereinstimmen sollte, das die Spezifikationen des Produkts erfรผllt. | Die Validierung des Designs dient dazu, sicherzustellen, dass das endgรผltige Design den Erwartungen der Nutzer entspricht. |
| Die Designverifizierung fragt: Haben Sie das Produkt richtig gestaltet? | Die Designvalidierung fragt: Haben Sie das richtige Produkt entworfen? |
| Die Designverifizierung umfasst die Einheit und die Primรคrebene. Integrationstests. | Die Designvalidierung umfasst sekundรคre oder รผbergeordnete Integrations- und Systemebenentests. |
| Bestimmte Aspekte der Designvalidierung kรถnnen wรคhrend der Designverifizierung durchgefรผhrt werden, die Designverifizierung ist jedoch kein Ersatz fรผr die Designvalidierung. | Die Designvalidierung folgt einer erfolgreichen Designverifizierung. |
| Die Designverifizierung kann an einem einzelnen Modul oder am kompletten System unter beliebigen Bedingungen durchgefรผhrt werden. | Die Designvalidierung muss unter einer spezifizierten Bedingung gemรคร den Benutzeranforderungen durchgefรผhrt werden. |
| Die Designverifizierung kann statische Verfahren nutzen. Sie umfasst Systeminspektionen, Analysen und formale Verifizierungsaktivitรคten. | Die Designvalidierung umfasst den Abschlussbericht der Testergebnisse, der geprรผft, genehmigt und unterzeichnet wird. Diese Dokumente werden zur spรคteren Verwendung archiviert. |
Eine nรผtzliche Abkรผrzung: Die Verifizierung erfolgt meist statische Arbeit anhand von Dokumenten, wobei die Validierung hauptsรคchlich dynamisches Testen gegen eine Laufformation.
Entwurfsverifizierungsprozess
Der Verifizierungsprozess lรคuft in fรผnf Phasen ab, und jede Phase erzeugt ein Artefakt, von dem die nรคchste Phase abhรคngt.
Identifizierung und Vorbereitung:
- Wรคhrend der Spezifikationsentwicklung werden parallel Verifizierungsaktivitรคten identifiziert. So kann der Entwickler sicherstellen, dass die Spezifikation tatsรคchlich รผberprรผfbar ist, damit der Testingenieur detaillierte Testplรคne und -verfahren erstellen kann. Jede รnderung der Spezifikation muss kommuniziert werden.
- Ermitteln Sie den besten Ansatz zur Durchfรผhrung der Verifizierung und definieren Sie die Messmethoden, erforderlichen Ressourcen, Werkzeuge und Einrichtungen.
- Der fertige Verifizierungsplan wird mit dem Designteam besprochen, um mรถgliche Probleme aufzudecken, bevor der Plan endgรผltig festgelegt wird.
Planung:
- Die Planung der Verifizierung ist eine parallele Aktivitรคt der Kern- und Entwicklungsteams. Sie findet wรคhrend des gesamten Projektlebenszyklus statt und wird bei jeder รnderung der Designvorgaben aktualisiert.
- Wรคhrend dieser Phase wird die zu testende Software oder das zu testende System im Umfang dokumentiert.
- Ein vorlรคufiger Testplan wird erstellt und anschlieรend verfeinert. Der Plan erfasst die kritischen Meilensteine, die das Projektrisiko reduzieren.
- Werkzeuge, Testumgebung und Entwicklungsstrategie werden ausgewรคhlt, und die Anforderungen, die durch Inspektion oder Analyse bestรคtigt werden sollen, werden identifiziert.
Entwickelnping:
- Testfall Die Entwicklung fรคllt zusammen mit der SDLC-Methodik Das Projektteam hat die Umsetzung vorgenommen. In dieser Phase werden verschiedene Testmethoden identifiziert.
- Die Designvorgaben mรผssen so entwickelt werden, dass selbst einfachste Verifizierungsaktivitรคten eindeutig und รผberprรผfbar sind.
- Die Verifizierungszeit wird verkรผrzt, wenn รคhnliche Konzepte nacheinander verifiziert werden, da die Ausgabe eines Tests als Eingabe fรผr einen nachfolgenden Test wiederverwendet werden kann.
- TracEs werden Verknรผpfungen zwischen Testfรคllen und den entsprechenden Designeingaben hergestellt, um sicherzustellen, dass jede Anforderung getestet wird und dass die Designausgabe den Designeingaben entspricht.
Ausfรผhrung:
- Die wรคhrend der Entwicklungsphase erstellten Testverfahren werden gemรคร dem Testplan ausgefรผhrt und wรคhrend der Verifizierungsaktivitรคt strikt eingehalten.
- Falls ungรผltige Ergebnisse auftreten oder ein Verfahren geรคndert werden muss, mรผssen die รnderungen dokumentiert und formell genehmigt werden.
- Jedes gefundene Problem wird wie รผblich als Defekt protokolliert. Fehlermanagementprozess.
- A tracEabilitรคtsmatrix wird erstellt, um zu รผberprรผfen, ob alle im Verifizierungstestplan aufgefรผhrten Designeingaben getestet wurden, und um die Erfolgsquote zu ermitteln.
Berichte:
- Diese Aktivitรคt wird am Ende jeder Phase der Verifizierungsausfรผhrung durchgefรผhrt.
- Der Designverifizierungsbericht enthรคlt eine detaillierte Zusammenfassung der Verifizierungsergebnisse, einschlieรlich Konfigurationsmanagement, den Ergebnissen fรผr jede Testart und den wรคhrend der Verifizierungsaktivitรคt festgestellten Problemen.
- Eine Designverifizierung tracDer Machbarkeitsbericht wird anhand der Anforderungen und der entsprechenden Testergebnisse erstellt, um zu bestรคtigen, dass alle Anforderungen getestet wurden und entsprechende Ergebnisse erfasst wurden.
- Jede Abweichung wird dokumentiert und angemessen behandelt.
- RevNach Abschluss der Designverifizierungsaktivitรคten werden รberprรผfungen durchgefรผhrt und die Ergebnisse formell genehmigt.
Entwurfsvalidierungsprozess
Die Validierung folgt keiner starren Abfolge. Stattdessen greift sie auf eine kleine Auswahl akzeptierter Methoden zurรผck, und ein Projekt verwendet normalerweise mehr als eine davon.
- Vergleich mit gleichwertigen Konstruktionen. Manche Konstruktionen lassen sich validieren, indem man sie mit รคhnlichen Gerรคten fรผr einen รคhnlichen Zweck vergleicht. Dies ist insbesondere relevant bei der Validierung von Konfigurationsรคnderungen an bestehender Infrastruktur oder von Standardkonstruktionen, die in ein neues System oder eine neue Anwendung integriert werden.
- Vorfรผhrung und Inspektion. Eine oder beide Methoden kรถnnen verwendet werden, um Anforderungen und andere Funktionalitรคten des Produkts zu validieren.
- Analysis. Das Design kann mittels mathematischer Modellierung oder einer Simulation analysiert werden, die die erforderliche Funktionalitรคt nachbildet.
- Testen. Am endgรผltigen Entwurf werden Tests durchgefรผhrt, um die Funktionsfรคhigkeit des Systems gemรคร den Spezifikationen zu bestรคtigen. Funktionsprรผfung und nicht-funktionale Tests den Benutzeranforderungen entsprechen.
- Dokumentation. Der Testplan, die Durchfรผhrung und die Ergebnisse sollten dokumentiert und als Teil der Konstruktionsunterlagen aufbewahrt werden. Die Validierung umfasst letztendlich die gesammelten Ergebnisse aller Validierungsaktivitรคten.
- รquivalenzbegrรผndung. Werden bei der abschlieรenden Designvalidierung gleichwertige Produkte verwendet, muss der Hersteller die รhnlichkeit und etwaige Unterschiede zur ursprรผnglichen Produktion dokumentieren.
Beispiel
Ein kurzes, ausgearbeitetes Beispiel verdeutlicht den Unterschied.
- Nehmen wir ein einfaches Produkt: eine wasserdichte Uhr.
- Im Produktanforderungsdokument kรถnnte beispielsweise stehen: โDie Uhr muss beim Schwimmen wasserdicht sein.โ Das ist die Nutzeranforderung, und daran werden die Validierungsergebnisse gemessen.
- Die Designspezifikation kรถnnte beispielsweise festlegen, dass โdie Uhr auch dann funktionieren sollte, wenn der Benutzer lรคngere Zeit schwimmtโ. Dies ist die Designvorgabe, und anhand derer die รberprรผfung erfolgt.
- Die Testergebnisse sollten bestรคtigen, dass die Uhr diese Anforderungen erfรผllt. Falls nicht, werden so lange รberarbeitungen durchgefรผhrt, bis sie diese erfรผllt.
Beachten Sie, wie eine Uhr die Verifizierung bestehen, aber dennoch die Validierung nicht erfรผllen kann. Wenn die Spezifikation ein lรคngeres Schwimmen als fรผnfzehn Minuten definiert und Schwimmer in der Realitรคt eine Stunde im Wasser bleiben, entspricht die Ausgabe des Designs zwar perfekt den Eingaben, aber der Benutzer scheitert trotzdem.
Vorteile der Designvalidierung und -verifizierung
Die folgenden Vorteile ergeben sich daraus, dass beide Aktivitรคten kontinuierlich und nicht nur als abschlieรende Maรnahme durchgefรผhrt werden.
- Die Entwรผrfe kรถnnen kontinuierlich รผberwacht werden, wodurch es mรถglich ist, die vom Benutzer definierten Anforderungen in jeder Phase zu erfรผllen.
- Die Validierung des Designs verdeutlicht den Unterschied zwischen der tatsรคchlichen Funktionsweise und der erwarteten Funktionsweise.
- Durch die Dokumentation der Validierungsverfahren wird die Funktionalitรคt spรคter leicht verstรคndlich, insbesondere bei รnderungen oder Erweiterungen.
- Die Entwicklungszeit wird kontinuierlich verkรผrzt und die Produktivitรคt verbessert sich, was dazu beitrรคgt, das Produkt wie erwartet zu liefern.
- Der Prozess definiert den Umfang und die Reichweite jeder anzuwendenden Validierungsmethode.
- Die Validierung kann anhand detaillierter Konstruktionsdaten erfolgen, die die Anforderungen des Endnutzers reprรคsentieren.
- Jegliche Abweichung zwischen dem Ergebnis und den Benutzeranforderungen wird erfasst und geht nicht verloren.
- รnderungen an einem validierten Design lรถsen eine erneute Validierung aus, sodass der Datensatz nie vom Produkt abweicht.
- Die Dokumentation aller Aktivitรคten wรคhrend des Validierungsprozesses ist der einzige hinreichende Beweis dafรผr, dass das Design den Benutzeranforderungen entspricht.
Die รberprรผfung und Validierung des Designs sollten daher am besten innerhalb des grรถรeren Projekts geplant werden. Lebenszyklus von Softwaretests und gegenรผber dem anderen abgebildet Arten von Softwaretests, anstatt als separate Compliance-รbung behandelt zu werden.


