Systematiscge QS von Anfoderungen, Architekturen und Prozessen
Was wird alles geprüft, bewertet und verbessert?
SW-Systeme
SW-Prozesse
Anforderungen
Architekturen
7.1 QS von Anforderungen
Ziel?
Zeitpunkt
Prüfungsrichtungen
Potenzielle Konflikte und ihre Ursachen
Aktivitäten zum Prüfen und Abstimmen von Anforerungen
Freigabe der Anforderung
Nach Ermittlung der fachlichen Anforderung und nach Erstellung der technischen Spezifikation
fachlich, handwerklich und abgestimmt
Konflikte
widersprechende Anforderungen von unterschiedlichen SH mit wiedersprechenden Zielen
widersprechende Anforderungen und Ansichten SH
Gründe:
unterschiedliches Verständnis von Begriffen, Zuständigkeiten und Motivation
1. Prüfkriterien festlegen
Prüfprinzipien und Prüftechniken auswählen
Prüfung durchführen und Ergebnisse dokumentieren
Abstimmen der Anforderungen/ Konflikmanagement
7.2 QS von Architekturen
Welche Prüfziele gibt es?
Was sind von ihnen abhängig?
Ziele
Prüfung auf Einhaltung Architekturbeschreibung
ex ante: vor der Implementierung auf Basis der Architekturbeschreibung
ex post: während/ nach Implementierung
Art und Zeitpunkt der Technik
Bewertung von Architekturen vor der Implementierung (ex ante)
Was ist der Zweck?
Was wird bewertet?
Welche Techniken werden verwendet?
—> Wie wird sie eingesetzt?
Beurteilung der Eignung einer Architektur für ein System, bevor es umgesetzt wird.
Bewertung, ob die Qualitätseigenschaften (z. B. Performance, Sicherheit) und Randbedingungen erfüllt werden. Diese haben den größten Einfluss auf die Architekturwahl.
Szenariobasierte Architekturanalyse, oft mit der ATAM (Architecture Tradeoff Analysis Method).
—> Die Architektur wird anhand konkreter Anwendungsszenarien des Systems bewertet. Es wird geprüft, ob die Architektur die geforderten Qualitätseigenschaften unterstützt.
Phasen und Aktivitäten von ATAM
Was umfasst due Architecture Tradeoff Analysis?
Skizziere die Methode
2.1 Nenne die Ziele der Phasen
2.2 Erläutere die jeweiligen Schritte
Bewertung von Architekurdefinition und FInden möglicher Alternativen
2.1 Phase 1: Vorbereitung & Präsentation
Ziel: Gemeinsames Verständnis der Anforderungen und des Architekturentwurfs herstellen.
Phase 2: Untersuchung & Analyse
Ziel: Architekturvarianten identifizieren und grob auf ihre Eignung prüfen.
Phase 3: Test
Ziel: Die beste Architekturvariante durch detaillierte Analyse finden und Kompromisse dokumentieren.
Phase 4: Berichterstattung
Ziel: Alle Entscheidungen und Ergebnisse nachvollziehbar dokumentieren.
Schritt 1: Vorstellung der ATAM-Vorgehensweise an alle Beteiligten.
Schritt 2: Klärung der wichtigsten Anforderungen (Business Driver) für das System, um ein gemeinsames Verständnis zu schaffen.
Schritt 3: Präsentation der aktuellen Basisarchitektur, um den Stand der Dinge zu zeigen und offene Fragen zu klären.
Phase 2: Untersuchung und Analyse
Schritt 4: Erstellung verschiedener Architekturvarianten basierend auf der Basisarchitektur.
Schritt 5: Entwicklung und Priorisierung von Anwendungsszenarien, die die geforderten Qualitätseigenschaften beschreiben ("Utility Tree" = Menge der Szenarien mit Qualitätseigenschaften).
Schritt 6: Grobe Prüfung der Architekturvarianten, um festzustellen, wie gut sie die Szenarien erfüllen, und Erstellung einer priorisierten Liste.
Schritt 7: Verfeinerung und Erweiterung der Szenarien aus Schritt 5, unter Einbeziehung aller Stakeholder.
Schritt 8: Detaillierte Analyse der Architekturvarianten anhand der verfeinerten Szenarien, um die am besten geeignete Variante zu finden und Kompromisse (Trade-offs) zu identifizieren.
Schritt 9: Zusammenfassung und Dokumentation aller Erkenntnisse und Entscheidungen aus den vorherigen Schritten, um die Nachvollziehbarkeit der Architekturentscheidungen sicherzustellen.
Bewertung von Architekturen nach der Implementierung (ex post)
Zweck?
Technik?
Sicherstellen, dass die tatsächliche Software den Vorgaben der Architekturdefinition entspricht.
Architecture Compliance Checking.
Ein Softwaremodell wird aus dem Programmcode erstellt (z.B. ein UML-Diagramm) und mit dem ursprünglichen Architekturentwurf verglichen. Abweichungen müssen bewertet und behoben werden.
7.3 QS von SW-Prozessen
Qualitätsattribute für SW-Prozesse
Welche Möglichkeiten einer Prozessanalyse für eine Änderungsnotwendigkeit gibt es?
Befragung der Stakeholder
Bewerten des SW-Prozesses durch Stakehaolder anhand Qualitätskriterien
(Verstädnlichkeit, Standardisierung, SIchtbarkeit, Messbarkeit, Stabilität)
Reifegradmodelle des Capability Model Integration (CMMI)
Zweck
Wozu dient das Stufenmodell?
Unterscheide die Stufen
Wie sollte sich der Reifegrad entwickeln?
Rahmenwerk für Prozessverbesserungen
Beurteilung des Reifegrades von Software - und Managementprozessen
Stufe 1 – Initial: Es gibt keine Prozessdefinition; die Aktivitäten finden ad hoc statt bzw. werden chaotisch durchgeführt. Der Prozess ist in der Regel nicht wiederholbar.
Stufe 2 – Geführt: Der Prozess ist wiederholbar. Umfang und Ergebnis der zu erledigenden Aktivitäten ist den Teammitgliedern bekannt. Es gibt aber keinen detaillierten Prozess, der Aktivitäten, Rollen, Ergebnisse und deren Abhängigkeiten explizit definiert.
Stufe 3 – Definiert: Es gibt einen definierten Prozess, in dem Aktivitäten, Rollen und Ergebnisse verbindlich dokumentiert sind. Der Prozess enthält konkrete Methoden und Vorgehensweisen zu den einzelnen Software Engineering Aktivitäten.
Stufe 4 – Quantitativ geführt: Die Prozessqualität kann über Messung quantitativer Prozesseigenschaften festgestellt und gesteuert werden. Über erhobene Kennzahlen zu Aktivitäten der Prozesse sowie zu den erzeugten Ergebnissen können Havarien identifiziert und entsprechend gegengesteuert werden.
Stufe 5 – Prozessoptimierung: Prozess- und Produktmessungen werden kontinuierlich erhoben und zur Prozessverbesserung eingesetzt. Je nach Messwert kann der Prozess auf den aktuellen Bedarf hin angepasst werden.
stufenweise von einem niedrigen zu einem höheren Grad
Vorgehen zur Prozessverbesserung
Ist der Prozess endgültig?
Für was dient die Prozessverbesserung als Werkzeug?
Erläutere den Prozessvernesserungsprozess
Nein, es ist ein zyklischer Prozess
Prinzip der ständigen Verbesserung des TQM
Verbesserungsbedarf erkennen & Vorschläge entwickeln: Zunächst werden Schwachstellen im aktuellen Prozess identifiziert und Verbesserungsideen gesammelt.
Vorschläge priorisieren: Die gesammelten Vorschläge werden bewertet, um ihre Umsetzbarkeit zu prüfen und die nächsten Schritte festzulegen.
Änderungs- und Schulungsplan erstellen: Es wird ein detaillierter Plan erstellt, der festhält, wann, wie und von wem die Änderungen umgesetzt werden. Zudem wird ein Schulungsplan entwickelt, um die betroffenen Mitarbeiter auf die neuen Abläufe vorzubereiten.
Prozessänderungen einführen & anpassen: Die geplanten Änderungen werden umgesetzt, und begleitend dazu werden Dokumente, Werkzeuge und Vorgehensweisen angepasst.
Anpassungsphase: Nach der Einführung werden die Änderungen beobachtet und bei Bedarf feinjustiert, um sicherzustellen, dass sie in der Praxis funktionieren und vom Team angenommen werden.
Stabilität erreichen: Wenn die Anpassungen abgeschlossen sind, ist der Prozess stabil, und der Zyklus kann von Neuem beginnen.
Last changed10 days ago