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.


