Wann ist ein Systementwurf gut?
Korrektheit
Ein Systementwurf ist korrekt, wenn das Analysemodell dem Systementwurf zugeordnet werden kann.
Kann jedes Subsystem auf eine funktionale oder nicht-funktionale Anforderung zurückverfolgt werden?
Kann jedes Entwurfsziel auf eine nicht-funktionale Anforderung zurückverfolgt werden?
Gibt es für jeden Akteur eine Zugangskontrolle?
Vollständigkeit
Ein Systementwurf ist vollständig, wenn jede Anforderung für den Systementwurf berücksichtigt wird.
Wurde das Anwendungsfalldiagramm verwendet, um fehlende Funktionen im Systementwurf zu entdecken?
Wurden alle Anwendungsfälle jeweils einem Kontrollobjekt zugewiesen?
Wurden alle Aspekte des Systementwurfs (Plattform, Datenspeicherung, Zugangskontrolle, Komponenten) behandelt?
Sind alle Subsysteme definiert?
Konsistenz
Ein Systementwurf ist konsistent, wenn er keine Widersprüche in sich trägt.
Sind gegenüberstehende Entwurfsziele priorisiert?
Verletzt ein Entwurfsentscheidung eine nicht-funktionale Anforderung?
Implementierbarkeit
Ein Systementwurf ist realistisch, wenn das System implementiert werden kann
Sind Leistungs- und Zuverlässigkeitsanforderungen im Rahmen der zerlegung in Subsysteme überprüft?
Können Probleme bei nebenläufigen Zugriff auf Objekte oder Subsysteme ausgeschlossen werden ( Deadlocks)?
Lesbarkeit
Ein Systementwurf ist lesbar, wenn nicht am Systementwurf beteiligte Entwickler den Entwurf verstehen können:
Sind die Namen der Subsysteme (fachlich) nachvollziehbar?
Entwurfsentscheidungen als Sensitivity Points, Trade-offs oder Risiken einordnen.
No Comments