SlideShare ist ein Scribd-Unternehmen logo
1 von 66
Downloaden Sie, um offline zu lesen
Qualität als Treiber 
1| 64 
Projekte. Beratung. Spezialisten. 
Qualität als Treiber: Wie Qualitätsanforderungen die Architektur steuern 
IKS-Thementag 
25.11.2014 
Autor:Christoph Schmidt-Casdorf
Qualität als Treiber 
2| 64 
Agenda
Qualität als Treiber 
3| 64 
Qualität und Qualitätsmerkmale 
Qualitätsmerkmale| Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 4 | 64 
Qualitätsmerkmale 
Qualität ist als solche nicht ermittelbar 
 Es können nur Eigenschaften eines Produktes/Prozesses bewertet werden 
Qualitätsmerkmale definieren 
 Objektiv bestimmbare (und qualitätsrelevante) Eigenschaften 
 des Produkts/Software 
 Alle Qualitätsmerkmale zusammen machen Qualität aus 
 ISO 9126 * definiert eine Hierarchie von Qualitätsmerkmalen 
 Es gibt auch andere Hierarchien 
* es existiert Nachfolger ist ISO/EIC 25010:211 (SQuaRE) 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
5| 64 
Architektur 
Design 
Technologie 
Code 
Architektur 
Design 
Technologie 
Code 
Funktionalität 
Testbarkeit 
Wartbarkeit 
Usability 
Zuverlässigkeit 
Modifizierbarkeit 
Performanz 
Sicherheit 
Quelle : http://www.dadalos-d.org/frieden/images/eisberg-modell.jpg 
Release- management 
Deployment 
Ressourceneffizienz 
Kompatibilität 
Portabilität 
Äußere Qualität 
Innere 
Qualität
Qualität als Treiber 6 | 64 
Qualitätsmerkmale 
Mit Qualitätsmerkmalen lässt sich Qualität beschreiben 
Die Architektur muss 
 die Anforderungen an Qualitätsmerkmale erfassen 
 diese Anforderungen in Architekturentscheidungen umsetzen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
7| 64 
Architektur 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
8| 64 
Definitionen von Architektur 
„Softwarearchitektur ist die Menge der hauptsächlichen/wesentlichen Architekturentscheidung eines Systems. 
gemäß [Jacobson99] 
„Die Softwarearchitektur eines Systems ist die Menge an Strukturen, die benötigt wird, um das System beurteilen zu können. 
Sie umfasst Softwareelemente, die sichtbaren Eigenschaften dieser Elemente und deren Beziehungen untereinander.“ 
gemäß [Brass12] 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 9 | 64 
Strukturen 
Ein System kann unterschiedliche Strukturen haben 
 Strukturen können sich auf das statische Design, das Laufzeitverhalten usw. beziehen 
 Keine einzelne Struktur kann die Architektur definieren 
Strukturen der Architektur werden als Sichten (View) repräsentiert 
 Alle modernen Architekturansätze unterstützen das Konzept von Views 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 10 | 64 
Architektursichten/-perspektiven 
Perspektive definiert die Anforderung an den Informationsgehalt 
Perspektiven helfen, Komplexität aufzuteilen 
Perspektiven helfen, Aspekte auszublenden (perspektivische Abstraktion) 
Perspektiven helfen, den Standpunkt des Adressaten einzunehmen 
Summe der Perspektiven vermittelt eine Gesamtsicht 
Sicht ist Ausprägung/Anwendung einer Perspektive in der aktuellen 
Architektur 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
11| 64 
Architektursichten-/perspektiven 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 12 | 64 
Sichten der Software-Architektur 
[Arc42] definiert Standardsichten 
 Kontextsicht, Bausteinsicht, Laufzeitsicht, Verteilungssicht 
 Notation auf Basis von UML 
 Weitere Sichten siehe [Brass12], [FMC] 
Es dürfen auch eigene Sichten entworfen werden 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
13| 64 
Verfeinerunginnerhalbvon Sichten 
siehe [Arc42] 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 14 | 64 
Architekturdokumentation 
ist Basis jeder Kommunikation zwischen Stakeholdern 
ist Mittel, um in das System einzuführen 
ist Referenz, um das System in Richtung Implementierung zu überführen 
befasst sich mit der Dokumentation der relevanten Views 
 fügt Informationen hinzu, welche die Beziehung der Views dokumentiert 
 Architekturentscheidungen bestimmen Views 
hält alle relevanten Entscheidungen nach 
 Alle wesentlichen Entscheidungen müssen nachvollziehbar sein 
 Die Grundlagen aller Entscheidungen müssen dokumentiert sein 
[Arc42] stellt ein Template bereit 
 IKS Gmbh nimmt dieses als Basis eigener Architekturdokumentationen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 15 | 64 
Architektur 
Architektur ist Dekomposition 
 Iterative Verfeinerung der Strukturen 
Kunst ist 
 die richtige Zerlegung, 
 den richtigen Abstraktionsgrad und 
 die richtige Form der Dokumentation 
zu finden. 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
16| 64 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
17| 64 
Die Softwarearchitektur ist verantwortlich, dass ein System die geforderten Qualitätsmerkmale erfüllt. Wo kommen die QMeher? Warum? Wie wird dies sichergestelltund geprüft? Wie kann das gelingen ? 
Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 18 | 64 
Softwarearchitektur und Qualitätsmerkmale 
Warum ist Softwarewarearchitektur für Qualitätsmerkmale verantwortlich? 
Erreichen von Qualitätsmerkmalen bedingt (i.d.R.) weitreichende 
Architekturentscheidungen 
 Qualitätsmerkmale beeinflussen daher entscheidend Softwarestrukturen 
Qualitätsmerkmale sind (die) entscheidende(n) Einflussfaktoren der 
Architektur 
 Architektur hat daher Eigeninteresse, diese so exakt wie möglich zu kennen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 19 | 64 
Softwarearchitektur und Qualitätsmerkmale 
Architektur hat aus Sicht der fachlichen Funktionalität keine 
Qualitätsmerkmale im Fokus 
 Struktur des Systems nur aus Sicht der Fachlichkeit adressiert keine 
Qualitätsmerkmale 
 Qualitätsmerkmale der Architektur müssen explizit behandelt werden 
Wir setzen im Weiteren nicht-funktionale Anforderungen (NFA) mit 
Qualitätsmerkmalen gleich 
 Funktionalität ist (formal) auch eine Qualitätsmerkmal 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 20 | 64 
Softwarearchitektur und Qualitätsmerkmale 
Softwarearchitektur ist nur bedingt für Erfassung und Prüfung von 
Qualitätsmerkmalen zuständig 
Diese Zuständigkeiten führen immer zu Diskussionen 
Dennoch sollte die Architektur alle Tätigkeiten rund um Qualitätsmerkmale 
koordinieren 
 Nicht erfüllte Qualitätsmerkmale werden i.d.R. der Architektur zur Last gelegt 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
21| 64 
Qualitätsmerkmale erfassen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
22| 64 
Anforderungen an Qualitätsmerkmale 
Das System soll fehlertolerant sein 
Das System muss leicht zu ändern sein 
Wie müssen Qualitätsmerkmale gut formuliert sein ? 
Das System muss stabil sein 
Das System muss performant sein 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
23| 64 
Beispiel einer Anforderung an Qualität 
In der Wartungsphase des Systems wird eine Änderung an der Rules Engine des Systems vorgenommen. 
Diese Änderungen muss innerhalb eines Tages fertig implementiert sein. 
Unter welchen Umständen? 
Was wird getan? 
Mit welcher Reaktion des Systems? 
Wie ist das Ergebnis zu messen/zu bewerten? 
Welcher Teil des Systems ist betroffen? 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
24| 64 
Beispiel eines Qualitätsszenarios 
Reaktion auf Auslöser 
Auslöser 
Quelle –wer löst aus 
Betroffene Artefakte 
Messung nach erfolgter Reaktion 
Umstände/ Kontext 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
25| 64 
Schablone eines Qualitätsszenarios 
Beschreibung 
Auslöser (stimulus) 
Beschreibt eine spezifische Zusammenarbeit des auslösenden Aktors/Stakeholder mit dem System 
Quelle des Auslösers (source) 
beschreibt, woherder Auslöserkommt 
Systembestandteil (artifact) 
beschreibt, welcherBestandteildes Systems vomAuslöserbetroffenist 
Umgebung (environment) 
beschreibtdie Bedingung, unterder derAuslöserauftritt 
Antwort (response) 
beschreibtdie Reaktiondes Systems auf den Auslöser 
Antwortmetrik (responsemeasure) 
beschreibt, wiedie Antwortgemessenoder bewertetwerdenkann. 
siehe [Brass12] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
26| 64 
Wie erhalte ich Qualitätsszenarien? 
Qualiätsszenariensind Schablonen/Muster, um Anforderungen an Qualitätsmerkmale zu dokumentieren. 
Wie finde ich die Anforderungen an Qualitätsmerkmale? 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
27| 64 
Qualitätsmerkmale sind systemspezifisch 
System Properties Web siehe [IBM14] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 28 | 64 
Wie erhalte ich Qualitätsszenarien? 
Workshop, um Qualitätsmerkmale des Systems zu finden 
Teilnehmer sind Stakeholder 
 Alle, die Anforderungen an Qualitätsmerkmale haben 
 I.d.R. bevor die Architektur erstellt wird 
Quellen für Qualitätsmerkmale 
 Geschäftsziele bilden Grundlage für Qualitätsmerkmale 
 Fachliche Anforderungen enthalten häufig Qualitätsmerkmale 
 Rahmenbedingungen beeinflussen häufig Qualitätsmerkmale 
 Architekturplan/Architekturskizze bilden Diskussionsbasis 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 29 | 64 
Wie erhalte ich Qualitätsszenarien? 
Besonderheiten: 
Teilnehmer haben sich i.d.R. nicht mit der Thematik beschäftigt 
 und müssen daher besonders eingeführt werden 
Problembereich ist umrissen 
 Qualitätsmerkmale sind z.B. durch ISO 9126 definiert 
 „Walking the System Properties Web“ 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
30| 64 
„Walking the System Properties Web“ 
siehe [IBM14] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 31 | 64 
Ergebnis eines Workshops 
Liste der Qualitätsszenarien 
 Priorisiert 
 Abgestimmt 
 Allgemein akzeptiert 
I.d.R. Folgetermine, um 
 Zielkonflikte aufzulösen (tradeoffs) 
 Lösungen zu bewerten 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 32 | 64 
Quality Attribute Workshop 
Formales Verfahren um Qualitätsmerkmale zu finden 
 [Brass12], in leichtgewichtiger Variante in [IBM14] 
Beschreibt im Wesentlichen einen Findungsworkshops 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 33 | 64 
Dokumentation von Anforderungen an 
Qualitätsmerkmale 
Formal nach Schablone eines Qualitätsszenarios 
Was darf nicht fehlen? 
 Exakte Abnahmekriterien 
 Definition des Abnahmesystems 
 Wer nimmt ab? 
 Je höher das Qualitätsmerkmal priorisiert ist, desto wichtiger sind exakte Kriterien 
 Auswirkungen der Abnahme 
 Wer ist für das Abnahmesystem verantwortlich? 
 Frühzeitig in den Projektplan aufnehmen 
Qualitätsbaum 
 Priorisiert die Qualitätsmerkmale und -szenarien 
 bewerte die Komplexität 
 Liefert Überblick über Qualitätsmerkmale und -szenarien 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
34| 64 
Qualitätsbaum 
Qualitätsszenarien 
Qualitätsmerkmale 
(Komplexität,Priorität) 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 35 | 64 
Dokumentation von Qualitätsanforderungen 
Qualitätsszenarien müssen dokumentiert sein 
 [Arc42] sieht separates Kapitel vor 
Priorisierung der Qualitätsszenarien muss dokumentiert sein 
 Qualitätsbaum 
Evtl. Kompromisse müssen als Architekturentscheidung dokumentiert sein 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
36| 64 
Qualitätsmerkmale erfassen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
37| 64 
Qualitätsmerkmale erreichen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| 
Qualität verifizieren | Abschluss
Qualität als Treiber 38 | 64 
Umsetzung der Qualitätsmerkmale 
Vorrausetzung 
 Abgestimmte, priorisierte Liste an Qualitätsszenarien 
 inkl. Qualitätsbaum 
 Architekturrelevante funktionale Anforderungen 
 Rahmenbedingungen 
Aufgabe 
 Architekturentscheidungen zu treffen, so dass das System die geforderten 
Qualitätsmerkmale erfüllt 
 Das ist eine technologisch sehr anspruchsvolle Aufgabe 
Wir wollen Ihnen einen Eindruck möglicher Lösungsansätze bieten. 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
39| 64 
Um eine Architektur zu erstellen, ist es sinnvoll, bestehende Lösungen zu nutzen.[Brass12] 
Wo sind die Lösungen, die uns helfen, Qualitätsmerkmale umzusetzen? 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| 
Qualität verifizieren | Abschluss
Qualität als Treiber 40 | 64 
Was würde helfen? 
Katalog von möglichen Architekturentscheidungen 
 Architekturentscheidungen, welche spezielle Qualitätsmerkmale unterstützen 
Vorgehensweise, um aus den getroffenen Architekturentscheidungen eine 
Gesamtarchitektur zu schaffen 
 In welcher Reihenfolge geht man die Qualitätsszenarien an? 
 Wie löst man Zielkonflikte zwischen den einzelnen Qualitätsmerkmalen? 
 Wie fügen sich die einzelnen Lösungen in die Gesamtarchitektur ein? 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 41 | 64 
tactics 
tactics sind Architekturentscheidungen, welche auf ein spezielles 
Qualitätsmerkmal wirken 
tactics sind bewährte Design-Entscheidungen 
 ausgerichtet an einzelnen Qualitätsmerkmalen 
 beinhalten nicht die Wahl der technischen Umsetzung 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
42| 64tacticsfür Verfügbarkeit 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| 
Qualität verifizieren | Abschluss
Qualität als Treiber 43 | 64 
tactics 
tactics sind in [Brass12] gut erläutert und es ist beschrieben, unter welchen 
Umständen sie anzuwenden sind 
 Welche Qualitätsmerkmale sie adressieren 
 Welche Modelle zugrunde liegen 
 Queuing Model, Scheduling Model etc. 
[Brass12] hat Kataloge von tactics erarbeitet für 
 Testbarkeit 
 Verfügbarkeit (aka Fehlertoleranz) 
 Interoperabilität 
 Performance (aka Effizienz) 
 Sicherheit 
 Benutzbarkeit 
 u.v.m 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 44 | 64 
Architekturmuster 
Architekturmuster sind allgemeine Architekturstrukturen 
 Abgestimmt 
 Allgemeingültige Lösungen 
Architekturmuster 
 sind nicht hinsichtlich ihrer Wirkung auf Qualitätsmerkmale strukturiert 
 adressieren mehrere Qualitätsmerkmale 
 die bekanntesten sind Layer Pattern, Client-Server Pattern 
 Reflection, Microkernel, Broker ,…* 
* weitere siehe [Buschmann 1996], [Brass12] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 45 | 64 
Bewährte Lösungen - tactics und Architekturmuster 
Architekturmuster umfassen tactics 
 tactics sind die Bausteine des Designs, auf denen Architekturmuster aufsetzen 
 Welche tactics werden in welchen Architekturmuster in welcher Form berücksichtigt? 
 Den Zusammenhang kann man nachlesen [Brass12] 
tactics verfeinern Architekturmuster 
 Architekturmuster ist gewählt 
 tactics können eingesetzt werden, um nachträglich Qualitätsmerkmale zu erreichen 
Architekturmuster und tactics repräsentieren konzeptuelle Werkzeuge im 
„Werkzeugkasten des Architekten“. 
 Gute Handwerker halten ihren Werkzeugkasten aufgeräumt und up to date. 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 46 | 64 
Attribute Driven Design (ADD) 
Ausgangslage für eine Gesamtarchitektur 
Architekturrelevante funktionalen Anforderungen ([Brass12]) 
(Architekturrelevanten) Qualitätsszenarien 
Rahmenbedingungen 
siehe [Brass12] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 47 | 64 
Attribute Driven Design (ADD) 
Methodische Verfeinerung der Architektur unter Berücksichtigung der 
Qualitätsmerkmale 
 Siehe [Brass12] 
Vorgehen im Attribute Driven Design 
 Systemteil wird bestimmt 
 Relevante Anforderungen werden bestimmt 
 Architekturentscheidungen werden getroffen 
 Priorisierung wird ausgewertet 
 Neue Strukturen werden dokumentiert 
 Architektursichten1) werden erstellt/ergänzt 
 Hier sollte ein Review durchgeführt werden 
1) [Brass12] trennt zwischen Architekturentwürfen in ADD und der nachgelagerten, eigentlichen Dokumentation 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 48 | 64 
Attribute Driven Design (ADD) 
Architektur ist iterative Dekomposition 
Kunst ist 
 die richtige Zerlegung (in der richtigen Reihenfolge) und 
 den richtigen Abstraktionsgrad 
zu finden. 
Attribute Driven Design unterstützt Sie dabei. 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
49| 64 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| 
Qualität verifizieren | Abschluss
Qualität als Treiber 
50| 64 
Qualität verifizieren 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren| Abschluss
Qualität als Treiber 51 | 64 
Architektur bewerten 
Architekturbewertung 
 Während der Erstellung der Architektur 
 Attribute Driven Design (ADD) enthält Reviewphase 
 Auf Basis einer bestehenden Architektur 
Ziel: Bewertung der Architekturentscheidungen vor dem Hintergrund 
 der Qualitätsszenarien 
 der Geschäftsziele 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 52 | 64 
ATAM 
Architecture Tradeoff Analysis Method® (ATAM) 
 setzt auf bestehender Architektur auf 
 oft auch auf bestehendem System 
 Das Evaluationsteam ist (i.d.R.) extern (bzgl. des Projektteams) 
soll Risiken der Architekturentscheidungen aufdecken 
 aber auch sogenannte non-risks 
soll negative Trends des Systems Architekturentscheidungen zuordnen 
soll tradeoffs erkennen 
 Entscheidungen, die mehr als eine Qualitätsmerkmal betreffen 
 Konsequenzen aus diesem Zielkonflikt 
siehe [Brass12], [Kazman00], [Northrop11] 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 53 | 64 
ATAM 
ATAM ist eine Review-Verfahren, dass 
 auf die Entdeckung von Risiken ausgelegt ist 
 relativ kurzläufig, relativ leichtgewichtig ist 
 gibt es auch als „lightweight“ Variante 
Vorrausetzungen 
 Architektur muss vorhanden sein 
 Fehlende Qualitätsszenarien werden im Prozess ermittelt 
 Architekt muss mitarbeiten und bereit sein, die Architektur zu präsentieren 
 Stakeholder müssen die Geschäftsziele vorstellen können 
In ATAM werden die Architekturartefakte und Präsentationen einem Review 
unterzogen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 54 | 64 
Ergebnisse von ATAM 
ATAM ermittelt 
 Architekturansätze 
 Qualitätsszenarien 
 Qualitätsbaum 
 Risiken 
 tradeoffs 
ATAM stellt dar 
 inwieweit die vorliegende Architektur die Anforderungen an (Qualitätsmerkmale) 
erfüllt 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 55 | 64 
Wann wird ATAM eingesetzt? 
Theoretisch ist der beste Moment für ATAM direkt nachdem die Architekur 
entworfen wurde 
 Es gibt keinen oder wenig Code 
Tatsächlich wird ATAM auch häufig in folgenden Situationen eingesetzt: 
 Bewertung der Architektur eines bestehenden Systems 
 Bewertung von Architekturalternativen 
 Bewertung der Architektur vor großen Updates 
 Entscheidung, ob ein System neuentwickelt oder angepasst wird 
 Entscheidung “make or buy” 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 
56| 64 
Überblick 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 57 | 64 
Für alle vorgestellte Verfahren gilt : 
Es zeigt eine Idee für die Vorgehensweise 
Es bringt auch Erfolg, wenn es nicht-formal angewendet werden 
 Das Ziel dahinter ist wichtig 
Versuchen Sie es 
 Es hilft, die Qualitätsmerkmale Ihres Systems besser in den Griff zu bekommen 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 58 | 64 
Architektur ist Schlüssel zur Qualität eines Systems 
Unterstützen Sie den Architekten in seinem Bemühen um Qualität 
 Integrieren Sie die Architektur in Ihren Entwicklungsprozess 
Verorten Sie die (System-)Qualität in der Architektur 
 Nehmen Sie diese in die Pflicht 
Es gibt Unterstützung 
 Qualitätsmerkmale erfassen – Qualitätsszenarios und QAW 
 Qualitätsmerkmale erreichen – tactics, Architekturmuster und ADD 
 Qualität verifizieren – ATAM 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 59 | 64 
Referenzen 
[Arc42] 
http://www.arc42.de/ 
[Brass12] 
Software Architecture in Practice (3rd Edition), Brass, Clements, Kazman 
Addison-Wesley ISBN-13: 000-0321815734 
[Buschmann 1996] 
Buschmann, F.; Meunier, R.; Rohnert, H.; Sommerlad, P.; & Stal, M. Pattern- 
Oriented Software 
Architecture: A System of Patterns. Chichester, NY: Wiley, 1996 (ISBN: 978-0- 
471-95869-7). 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 60 | 64 
Referenzen 
[FMC] 
http://www.fmc-modeling.org/ 
[IBM14] 
Facilitating the Mini-Quality Attributes Workshop 
http://resources.sei.cmu.edu/asset_files/Presentation/2014_017_101_89563. 
pdf 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 61 | 64 
Weiterführende Literatur 
[Bachmann et al ] 
Understanding Architectural Patterns in Terms of Tactics and Models 
http://www.sei.cmu.edu/library/abstracts/news-at-sei/architect200708.cfm 
[Bachmann et al ] 
Modifiability Tactics 
http://www.sei.cmu.edu/reports/07tr002.pdf 
[Brown] 
Software Architecture for Developers – Simon Brown 
https://leanpub.com/software-architecture-for-developers 
[Clement10] 
Relating Business Goals to Architecturally Significant Requirements for 
Software Systems 
http://www.sei.cmu.edu/reports/10tn018.pdf 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 62 | 64 
Weiterführende Literatur 
[Kazman00] 
ATAM : Method for Architecture Evaluation 
http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=5177 
[MS-ArchGuide] 
MircoSoft Architecute Guide 
http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20- 
%20Quality%20Attributes 
[Nord09] 
A Structured Approach for Reviewing Architecture Documentation 
http://repository.cmu.edu/sei/280 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 63 | 64 
Weiterführende Literatur 
[Nothop11] 
Identifying Architectural Risks using the Architecture Tradeoff Analysis 
Method (ATAM ) 
Linda Nothop OOP 2011 
http://www.sigs.de/download/oop_2011/downloads/files/Mi6- 
4_Northrop_ATAM%20OOP.pdf 
[STARKE12] 
Quality Driven Software Architecture ; Gernot Starke 
https://www.innoq.com/de/articles/2012/04/quality-driven-software-architecture/ 
[WIKIPEDIA] 
http://de.wikipedia.org/wiki/Softwarearchitektur 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
Qualität als Treiber 64 | 64 
Weiterführende Literatur 
[Wojcik 2006] 
Wojcik, R.; Bachmann, F.; Bass, L.; Clements, P.; Merson, P.; Nord, R.; Wood, B. 
Attribute-Driven Design (ADD), Version 2.0, 
http://www.sei.cmu.edu/library/abstracts/reports/06tr023.c 
[Wood] 
A Practical Example for ADD 
http://www.sei.cmu.edu/reports/07tr005.pdf 
Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | 
Qualität verifizieren | Abschluss
WWW.IKS-GMBH.COM
Qualität als Treiber 
66| 64 
Projekte. Beratung. Spezialisten.

Weitere ähnliche Inhalte

Andere mochten auch

System Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureSystem Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureAdnan Masood
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architectureHimanshu
 

Andere mochten auch (19)

Visual Scenario Management for Excel
Visual Scenario Management for ExcelVisual Scenario Management for Excel
Visual Scenario Management for Excel
 
Mehr Softwarequalität: Technische Schulden (IKS-Thementag: 05.05.2015)
Mehr Softwarequalität: Technische Schulden (IKS-Thementag: 05.05.2015)Mehr Softwarequalität: Technische Schulden (IKS-Thementag: 05.05.2015)
Mehr Softwarequalität: Technische Schulden (IKS-Thementag: 05.05.2015)
 
FAQs zur Technik
FAQs zur TechnikFAQs zur Technik
FAQs zur Technik
 
App-Projekte richtig steuern
App-Projekte richtig steuernApp-Projekte richtig steuern
App-Projekte richtig steuern
 
"RCP-Hilfe-System" - Ein Artikel im Eclipse Magazin 6/2010
"RCP-Hilfe-System" - Ein Artikel im Eclipse Magazin 6/2010"RCP-Hilfe-System" - Ein Artikel im Eclipse Magazin 6/2010
"RCP-Hilfe-System" - Ein Artikel im Eclipse Magazin 6/2010
 
Mehr Softwarequalitä: Usability
Mehr Softwarequalitä: UsabilityMehr Softwarequalitä: Usability
Mehr Softwarequalitä: Usability
 
Einfuehrung in mongo_db_iks
Einfuehrung in mongo_db_iksEinfuehrung in mongo_db_iks
Einfuehrung in mongo_db_iks
 
Apps als motor zur digitalen transformation
Apps als motor zur digitalen transformationApps als motor zur digitalen transformation
Apps als motor zur digitalen transformation
 
iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb
iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb
iks auf der Jax 2010: Provisioning unter OSGi für Test und Betrieb
 
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetproTest-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
Test-Automation mit Selenium WebDriver - ein Artikel der iks im dotnetpro
 
Mehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-CleancodingMehr Softwarequalität: Team-Cleancoding
Mehr Softwarequalität: Team-Cleancoding
 
Micro, Nano, Mono - Microservices verständlich erklärt.
Micro, Nano, Mono  - Microservices verständlich erklärt.Micro, Nano, Mono  - Microservices verständlich erklärt.
Micro, Nano, Mono - Microservices verständlich erklärt.
 
Mehr Softwarequalität: Technische Schulden
Mehr Softwarequalität: Technische SchuldenMehr Softwarequalität: Technische Schulden
Mehr Softwarequalität: Technische Schulden
 
Agiles Arbeiten - Mythen, Trends und Best Practices
Agiles Arbeiten  - Mythen, Trends und Best PracticesAgiles Arbeiten  - Mythen, Trends und Best Practices
Agiles Arbeiten - Mythen, Trends und Best Practices
 
Ist Ihr Unternehmen reif für Microservices?
Ist Ihr Unternehmen reif für Microservices?Ist Ihr Unternehmen reif für Microservices?
Ist Ihr Unternehmen reif für Microservices?
 
System Quality Attributes for Software Architecture
System Quality Attributes for Software ArchitectureSystem Quality Attributes for Software Architecture
System Quality Attributes for Software Architecture
 
Storytelling der Zukunft
Storytelling der ZukunftStorytelling der Zukunft
Storytelling der Zukunft
 
Quality attributes in software architecture
Quality attributes in software architectureQuality attributes in software architecture
Quality attributes in software architecture
 
Service goes green
Service goes greenService goes green
Service goes green
 

Ähnlich wie Mehr Softwarequalität: Qualität als Treiber

ROSIK Stammtisch „Clean Architecture“
ROSIK Stammtisch „Clean Architecture“ROSIK Stammtisch „Clean Architecture“
ROSIK Stammtisch „Clean Architecture“QAware GmbH
 
Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungChristian Baranowski
 
02_Entwurf_Entwicklung_v7.0.pdf
02_Entwurf_Entwicklung_v7.0.pdf02_Entwurf_Entwicklung_v7.0.pdf
02_Entwurf_Entwicklung_v7.0.pdfpushpamariappan1
 
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Marc Bless
 
GMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPGMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPSERKEM GmbH
 
GMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPGMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPSERKEM GmbH
 
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...Aberla
 
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?René Spengler
 
German UPA Konferenz - Der IxD Baukasten
German UPA Konferenz - Der IxD BaukastenGerman UPA Konferenz - Der IxD Baukasten
German UPA Konferenz - Der IxD BaukastenUSECON
 
Certified Professional for Software Architecture - Advanced Level
Certified Professional for Software Architecture - Advanced LevelCertified Professional for Software Architecture - Advanced Level
Certified Professional for Software Architecture - Advanced LevelFutureNetworkCert
 
QS von IT-Consulting bis Software Development
QS von IT-Consulting bis Software DevelopmentQS von IT-Consulting bis Software Development
QS von IT-Consulting bis Software Developmentadesso AG
 
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Markus Unterauer
 
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-CodequalitätFotiosKaramitsos
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungChristian Baranowski
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Florian Wolters
 
Clean Architecture
Clean ArchitectureClean Architecture
Clean ArchitectureQAware GmbH
 
Agilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der SoftwareentwicklungAgilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der Softwareentwicklungrico.fritzsche
 
KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?Matthias Feit
 

Ähnlich wie Mehr Softwarequalität: Qualität als Treiber (20)

ROSIK Stammtisch „Clean Architecture“
ROSIK Stammtisch „Clean Architecture“ROSIK Stammtisch „Clean Architecture“
ROSIK Stammtisch „Clean Architecture“
 
Einführung in die Software-Qualitätssicherung
Einführung in die Software-QualitätssicherungEinführung in die Software-Qualitätssicherung
Einführung in die Software-Qualitätssicherung
 
02_Entwurf_Entwicklung_v7.0.pdf
02_Entwurf_Entwicklung_v7.0.pdf02_Entwurf_Entwicklung_v7.0.pdf
02_Entwurf_Entwicklung_v7.0.pdf
 
Präsentation RUP
Präsentation RUPPräsentation RUP
Präsentation RUP
 
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
Wir erledigen alles sofort - Warum Qualität, Risikomanagement, Usability und...
 
GMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPGMP Systemvalidierung in SAP
GMP Systemvalidierung in SAP
 
GMP Systemvalidierung in SAP
GMP Systemvalidierung in SAPGMP Systemvalidierung in SAP
GMP Systemvalidierung in SAP
 
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...
ESEconf2011 - Trost Joachim: "Tool supported technical Code and Design Qualit...
 
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
ASQF Dresden: Benötigen wir mit SCRUM noch einen Testmanager?
 
German UPA Konferenz - Der IxD Baukasten
German UPA Konferenz - Der IxD BaukastenGerman UPA Konferenz - Der IxD Baukasten
German UPA Konferenz - Der IxD Baukasten
 
Certified Professional for Software Architecture - Advanced Level
Certified Professional for Software Architecture - Advanced LevelCertified Professional for Software Architecture - Advanced Level
Certified Professional for Software Architecture - Advanced Level
 
QS von IT-Consulting bis Software Development
QS von IT-Consulting bis Software DevelopmentQS von IT-Consulting bis Software Development
QS von IT-Consulting bis Software Development
 
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
Software Quality Lab - Beratung und Training für mehr Qualität und Effizienz ...
 
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
2023-08_RPA-ChapterEvent_Überprüfung-der-Codequalität
 
Einführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software EntwicklungEinführung Vorgehensmodelle und Agile Software Entwicklung
Einführung Vorgehensmodelle und Agile Software Entwicklung
 
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
Automatisiertes Testen von Software in C++ (mit dem Test Framework Google Test)
 
Clean Architecture
Clean ArchitectureClean Architecture
Clean Architecture
 
Agilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der SoftwareentwicklungAgilität und Qualitätskriterien in der Softwareentwicklung
Agilität und Qualitätskriterien in der Softwareentwicklung
 
"Design & Generate": Standard ERP Systeme nach Mass
"Design & Generate": Standard ERP Systeme nach Mass"Design & Generate": Standard ERP Systeme nach Mass
"Design & Generate": Standard ERP Systeme nach Mass
 
KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?KPIs vs. UX – ist User Experience messbar?
KPIs vs. UX – ist User Experience messbar?
 

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH

Mehr von IKS Gesellschaft für Informations- und Kommunikationssysteme mbH (20)

Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingtEs wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
Es wird Zeit KI zu nutzen - Wie es mit Azure KI Services und .NET MAUI gelingt
 
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
Thementag 2023 06 Dieses Mal machen wir alles richtig - 9 Hacks für wandelbar...
 
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdfThementag 2023 04 Lindern, heilen oder gar fit machen.pdf
Thementag 2023 04 Lindern, heilen oder gar fit machen.pdf
 
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
Thementag 2023 05 Wer zu spät kommt, den bestraft das Leben - Modernisierung ...
 
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdfThementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
Thementag 2023 01 Mut zur Modernisierung - ein Praxisbeispiel.pdf
 
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdfThementag 2023 03 Einführung in die Softwaremodernisierung.pdf
Thementag 2023 03 Einführung in die Softwaremodernisierung.pdf
 
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdfThementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
Thementag 2022 01 Verpassen Sie nicht den Anschluss.pdf
 
Thementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdfThementag 2022 04 ML auf die Schiene gebracht.pdf
Thementag 2022 04 ML auf die Schiene gebracht.pdf
 
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdfThementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
Thementag 2022 03 Ein Modell ist trainiert - und jetzt.pdf
 
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdfThementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
Thementag 2022 02 Der Deutschen Bahn in die Karten geschaut.pdf
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
Erste Schritte in die neue Welt-So gelingt der Einstieg in Big Data und Machi...
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
Erste Schritte in die neue Welt - So gelingt der Einstieg in Big Data und Mac...
 
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
Darf es ein bisschen mehr sein - Konzepte Strategien zur Bewältigung großer u...
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?Big Data und Machine Learning - Wer braucht das schon!?
Big Data und Machine Learning - Wer braucht das schon!?
 
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine LearningDaten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
Daten / Information / Wissen - Möglichkeiten und Grenzen des Machine Learning
 
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
Darf es ein bisschen mehr sein - Konzepte und Strategien zur Bewältigung groß...
 

Mehr Softwarequalität: Qualität als Treiber

  • 1. Qualität als Treiber 1| 64 Projekte. Beratung. Spezialisten. Qualität als Treiber: Wie Qualitätsanforderungen die Architektur steuern IKS-Thementag 25.11.2014 Autor:Christoph Schmidt-Casdorf
  • 2. Qualität als Treiber 2| 64 Agenda
  • 3. Qualität als Treiber 3| 64 Qualität und Qualitätsmerkmale Qualitätsmerkmale| Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 4. Qualität als Treiber 4 | 64 Qualitätsmerkmale Qualität ist als solche nicht ermittelbar  Es können nur Eigenschaften eines Produktes/Prozesses bewertet werden Qualitätsmerkmale definieren  Objektiv bestimmbare (und qualitätsrelevante) Eigenschaften  des Produkts/Software  Alle Qualitätsmerkmale zusammen machen Qualität aus  ISO 9126 * definiert eine Hierarchie von Qualitätsmerkmalen  Es gibt auch andere Hierarchien * es existiert Nachfolger ist ISO/EIC 25010:211 (SQuaRE) Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 5. Qualität als Treiber 5| 64 Architektur Design Technologie Code Architektur Design Technologie Code Funktionalität Testbarkeit Wartbarkeit Usability Zuverlässigkeit Modifizierbarkeit Performanz Sicherheit Quelle : http://www.dadalos-d.org/frieden/images/eisberg-modell.jpg Release- management Deployment Ressourceneffizienz Kompatibilität Portabilität Äußere Qualität Innere Qualität
  • 6. Qualität als Treiber 6 | 64 Qualitätsmerkmale Mit Qualitätsmerkmalen lässt sich Qualität beschreiben Die Architektur muss  die Anforderungen an Qualitätsmerkmale erfassen  diese Anforderungen in Architekturentscheidungen umsetzen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 7. Qualität als Treiber 7| 64 Architektur Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 8. Qualität als Treiber 8| 64 Definitionen von Architektur „Softwarearchitektur ist die Menge der hauptsächlichen/wesentlichen Architekturentscheidung eines Systems. gemäß [Jacobson99] „Die Softwarearchitektur eines Systems ist die Menge an Strukturen, die benötigt wird, um das System beurteilen zu können. Sie umfasst Softwareelemente, die sichtbaren Eigenschaften dieser Elemente und deren Beziehungen untereinander.“ gemäß [Brass12] Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 9. Qualität als Treiber 9 | 64 Strukturen Ein System kann unterschiedliche Strukturen haben  Strukturen können sich auf das statische Design, das Laufzeitverhalten usw. beziehen  Keine einzelne Struktur kann die Architektur definieren Strukturen der Architektur werden als Sichten (View) repräsentiert  Alle modernen Architekturansätze unterstützen das Konzept von Views Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 10. Qualität als Treiber 10 | 64 Architektursichten/-perspektiven Perspektive definiert die Anforderung an den Informationsgehalt Perspektiven helfen, Komplexität aufzuteilen Perspektiven helfen, Aspekte auszublenden (perspektivische Abstraktion) Perspektiven helfen, den Standpunkt des Adressaten einzunehmen Summe der Perspektiven vermittelt eine Gesamtsicht Sicht ist Ausprägung/Anwendung einer Perspektive in der aktuellen Architektur Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 11. Qualität als Treiber 11| 64 Architektursichten-/perspektiven Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 12. Qualität als Treiber 12 | 64 Sichten der Software-Architektur [Arc42] definiert Standardsichten  Kontextsicht, Bausteinsicht, Laufzeitsicht, Verteilungssicht  Notation auf Basis von UML  Weitere Sichten siehe [Brass12], [FMC] Es dürfen auch eigene Sichten entworfen werden Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 13. Qualität als Treiber 13| 64 Verfeinerunginnerhalbvon Sichten siehe [Arc42] Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 14. Qualität als Treiber 14 | 64 Architekturdokumentation ist Basis jeder Kommunikation zwischen Stakeholdern ist Mittel, um in das System einzuführen ist Referenz, um das System in Richtung Implementierung zu überführen befasst sich mit der Dokumentation der relevanten Views  fügt Informationen hinzu, welche die Beziehung der Views dokumentiert  Architekturentscheidungen bestimmen Views hält alle relevanten Entscheidungen nach  Alle wesentlichen Entscheidungen müssen nachvollziehbar sein  Die Grundlagen aller Entscheidungen müssen dokumentiert sein [Arc42] stellt ein Template bereit  IKS Gmbh nimmt dieses als Basis eigener Architekturdokumentationen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 15. Qualität als Treiber 15 | 64 Architektur Architektur ist Dekomposition  Iterative Verfeinerung der Strukturen Kunst ist  die richtige Zerlegung,  den richtigen Abstraktionsgrad und  die richtige Form der Dokumentation zu finden. Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 16. Qualität als Treiber 16| 64 Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 17. Qualität als Treiber 17| 64 Die Softwarearchitektur ist verantwortlich, dass ein System die geforderten Qualitätsmerkmale erfüllt. Wo kommen die QMeher? Warum? Wie wird dies sichergestelltund geprüft? Wie kann das gelingen ? Qualitätsmerkmale | Architektur| Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 18. Qualität als Treiber 18 | 64 Softwarearchitektur und Qualitätsmerkmale Warum ist Softwarewarearchitektur für Qualitätsmerkmale verantwortlich? Erreichen von Qualitätsmerkmalen bedingt (i.d.R.) weitreichende Architekturentscheidungen  Qualitätsmerkmale beeinflussen daher entscheidend Softwarestrukturen Qualitätsmerkmale sind (die) entscheidende(n) Einflussfaktoren der Architektur  Architektur hat daher Eigeninteresse, diese so exakt wie möglich zu kennen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 19. Qualität als Treiber 19 | 64 Softwarearchitektur und Qualitätsmerkmale Architektur hat aus Sicht der fachlichen Funktionalität keine Qualitätsmerkmale im Fokus  Struktur des Systems nur aus Sicht der Fachlichkeit adressiert keine Qualitätsmerkmale  Qualitätsmerkmale der Architektur müssen explizit behandelt werden Wir setzen im Weiteren nicht-funktionale Anforderungen (NFA) mit Qualitätsmerkmalen gleich  Funktionalität ist (formal) auch eine Qualitätsmerkmal Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 20. Qualität als Treiber 20 | 64 Softwarearchitektur und Qualitätsmerkmale Softwarearchitektur ist nur bedingt für Erfassung und Prüfung von Qualitätsmerkmalen zuständig Diese Zuständigkeiten führen immer zu Diskussionen Dennoch sollte die Architektur alle Tätigkeiten rund um Qualitätsmerkmale koordinieren  Nicht erfüllte Qualitätsmerkmale werden i.d.R. der Architektur zur Last gelegt Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 21. Qualität als Treiber 21| 64 Qualitätsmerkmale erfassen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 22. Qualität als Treiber 22| 64 Anforderungen an Qualitätsmerkmale Das System soll fehlertolerant sein Das System muss leicht zu ändern sein Wie müssen Qualitätsmerkmale gut formuliert sein ? Das System muss stabil sein Das System muss performant sein Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 23. Qualität als Treiber 23| 64 Beispiel einer Anforderung an Qualität In der Wartungsphase des Systems wird eine Änderung an der Rules Engine des Systems vorgenommen. Diese Änderungen muss innerhalb eines Tages fertig implementiert sein. Unter welchen Umständen? Was wird getan? Mit welcher Reaktion des Systems? Wie ist das Ergebnis zu messen/zu bewerten? Welcher Teil des Systems ist betroffen? Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 24. Qualität als Treiber 24| 64 Beispiel eines Qualitätsszenarios Reaktion auf Auslöser Auslöser Quelle –wer löst aus Betroffene Artefakte Messung nach erfolgter Reaktion Umstände/ Kontext Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 25. Qualität als Treiber 25| 64 Schablone eines Qualitätsszenarios Beschreibung Auslöser (stimulus) Beschreibt eine spezifische Zusammenarbeit des auslösenden Aktors/Stakeholder mit dem System Quelle des Auslösers (source) beschreibt, woherder Auslöserkommt Systembestandteil (artifact) beschreibt, welcherBestandteildes Systems vomAuslöserbetroffenist Umgebung (environment) beschreibtdie Bedingung, unterder derAuslöserauftritt Antwort (response) beschreibtdie Reaktiondes Systems auf den Auslöser Antwortmetrik (responsemeasure) beschreibt, wiedie Antwortgemessenoder bewertetwerdenkann. siehe [Brass12] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 26. Qualität als Treiber 26| 64 Wie erhalte ich Qualitätsszenarien? Qualiätsszenariensind Schablonen/Muster, um Anforderungen an Qualitätsmerkmale zu dokumentieren. Wie finde ich die Anforderungen an Qualitätsmerkmale? Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 27. Qualität als Treiber 27| 64 Qualitätsmerkmale sind systemspezifisch System Properties Web siehe [IBM14] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 28. Qualität als Treiber 28 | 64 Wie erhalte ich Qualitätsszenarien? Workshop, um Qualitätsmerkmale des Systems zu finden Teilnehmer sind Stakeholder  Alle, die Anforderungen an Qualitätsmerkmale haben  I.d.R. bevor die Architektur erstellt wird Quellen für Qualitätsmerkmale  Geschäftsziele bilden Grundlage für Qualitätsmerkmale  Fachliche Anforderungen enthalten häufig Qualitätsmerkmale  Rahmenbedingungen beeinflussen häufig Qualitätsmerkmale  Architekturplan/Architekturskizze bilden Diskussionsbasis Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 29. Qualität als Treiber 29 | 64 Wie erhalte ich Qualitätsszenarien? Besonderheiten: Teilnehmer haben sich i.d.R. nicht mit der Thematik beschäftigt  und müssen daher besonders eingeführt werden Problembereich ist umrissen  Qualitätsmerkmale sind z.B. durch ISO 9126 definiert  „Walking the System Properties Web“ Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 30. Qualität als Treiber 30| 64 „Walking the System Properties Web“ siehe [IBM14] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 31. Qualität als Treiber 31 | 64 Ergebnis eines Workshops Liste der Qualitätsszenarien  Priorisiert  Abgestimmt  Allgemein akzeptiert I.d.R. Folgetermine, um  Zielkonflikte aufzulösen (tradeoffs)  Lösungen zu bewerten Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 32. Qualität als Treiber 32 | 64 Quality Attribute Workshop Formales Verfahren um Qualitätsmerkmale zu finden  [Brass12], in leichtgewichtiger Variante in [IBM14] Beschreibt im Wesentlichen einen Findungsworkshops Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 33. Qualität als Treiber 33 | 64 Dokumentation von Anforderungen an Qualitätsmerkmale Formal nach Schablone eines Qualitätsszenarios Was darf nicht fehlen?  Exakte Abnahmekriterien  Definition des Abnahmesystems  Wer nimmt ab?  Je höher das Qualitätsmerkmal priorisiert ist, desto wichtiger sind exakte Kriterien  Auswirkungen der Abnahme  Wer ist für das Abnahmesystem verantwortlich?  Frühzeitig in den Projektplan aufnehmen Qualitätsbaum  Priorisiert die Qualitätsmerkmale und -szenarien  bewerte die Komplexität  Liefert Überblick über Qualitätsmerkmale und -szenarien Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 34. Qualität als Treiber 34| 64 Qualitätsbaum Qualitätsszenarien Qualitätsmerkmale (Komplexität,Priorität) Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 35. Qualität als Treiber 35 | 64 Dokumentation von Qualitätsanforderungen Qualitätsszenarien müssen dokumentiert sein  [Arc42] sieht separates Kapitel vor Priorisierung der Qualitätsszenarien muss dokumentiert sein  Qualitätsbaum Evtl. Kompromisse müssen als Architekturentscheidung dokumentiert sein Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 36. Qualität als Treiber 36| 64 Qualitätsmerkmale erfassen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen| Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 37. Qualität als Treiber 37| 64 Qualitätsmerkmale erreichen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| Qualität verifizieren | Abschluss
  • 38. Qualität als Treiber 38 | 64 Umsetzung der Qualitätsmerkmale Vorrausetzung  Abgestimmte, priorisierte Liste an Qualitätsszenarien  inkl. Qualitätsbaum  Architekturrelevante funktionale Anforderungen  Rahmenbedingungen Aufgabe  Architekturentscheidungen zu treffen, so dass das System die geforderten Qualitätsmerkmale erfüllt  Das ist eine technologisch sehr anspruchsvolle Aufgabe Wir wollen Ihnen einen Eindruck möglicher Lösungsansätze bieten. Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 39. Qualität als Treiber 39| 64 Um eine Architektur zu erstellen, ist es sinnvoll, bestehende Lösungen zu nutzen.[Brass12] Wo sind die Lösungen, die uns helfen, Qualitätsmerkmale umzusetzen? Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| Qualität verifizieren | Abschluss
  • 40. Qualität als Treiber 40 | 64 Was würde helfen? Katalog von möglichen Architekturentscheidungen  Architekturentscheidungen, welche spezielle Qualitätsmerkmale unterstützen Vorgehensweise, um aus den getroffenen Architekturentscheidungen eine Gesamtarchitektur zu schaffen  In welcher Reihenfolge geht man die Qualitätsszenarien an?  Wie löst man Zielkonflikte zwischen den einzelnen Qualitätsmerkmalen?  Wie fügen sich die einzelnen Lösungen in die Gesamtarchitektur ein? Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 41. Qualität als Treiber 41 | 64 tactics tactics sind Architekturentscheidungen, welche auf ein spezielles Qualitätsmerkmal wirken tactics sind bewährte Design-Entscheidungen  ausgerichtet an einzelnen Qualitätsmerkmalen  beinhalten nicht die Wahl der technischen Umsetzung Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 42. Qualität als Treiber 42| 64tacticsfür Verfügbarkeit Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| Qualität verifizieren | Abschluss
  • 43. Qualität als Treiber 43 | 64 tactics tactics sind in [Brass12] gut erläutert und es ist beschrieben, unter welchen Umständen sie anzuwenden sind  Welche Qualitätsmerkmale sie adressieren  Welche Modelle zugrunde liegen  Queuing Model, Scheduling Model etc. [Brass12] hat Kataloge von tactics erarbeitet für  Testbarkeit  Verfügbarkeit (aka Fehlertoleranz)  Interoperabilität  Performance (aka Effizienz)  Sicherheit  Benutzbarkeit  u.v.m Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 44. Qualität als Treiber 44 | 64 Architekturmuster Architekturmuster sind allgemeine Architekturstrukturen  Abgestimmt  Allgemeingültige Lösungen Architekturmuster  sind nicht hinsichtlich ihrer Wirkung auf Qualitätsmerkmale strukturiert  adressieren mehrere Qualitätsmerkmale  die bekanntesten sind Layer Pattern, Client-Server Pattern  Reflection, Microkernel, Broker ,…* * weitere siehe [Buschmann 1996], [Brass12] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 45. Qualität als Treiber 45 | 64 Bewährte Lösungen - tactics und Architekturmuster Architekturmuster umfassen tactics  tactics sind die Bausteine des Designs, auf denen Architekturmuster aufsetzen  Welche tactics werden in welchen Architekturmuster in welcher Form berücksichtigt?  Den Zusammenhang kann man nachlesen [Brass12] tactics verfeinern Architekturmuster  Architekturmuster ist gewählt  tactics können eingesetzt werden, um nachträglich Qualitätsmerkmale zu erreichen Architekturmuster und tactics repräsentieren konzeptuelle Werkzeuge im „Werkzeugkasten des Architekten“.  Gute Handwerker halten ihren Werkzeugkasten aufgeräumt und up to date. Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 46. Qualität als Treiber 46 | 64 Attribute Driven Design (ADD) Ausgangslage für eine Gesamtarchitektur Architekturrelevante funktionalen Anforderungen ([Brass12]) (Architekturrelevanten) Qualitätsszenarien Rahmenbedingungen siehe [Brass12] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 47. Qualität als Treiber 47 | 64 Attribute Driven Design (ADD) Methodische Verfeinerung der Architektur unter Berücksichtigung der Qualitätsmerkmale  Siehe [Brass12] Vorgehen im Attribute Driven Design  Systemteil wird bestimmt  Relevante Anforderungen werden bestimmt  Architekturentscheidungen werden getroffen  Priorisierung wird ausgewertet  Neue Strukturen werden dokumentiert  Architektursichten1) werden erstellt/ergänzt  Hier sollte ein Review durchgeführt werden 1) [Brass12] trennt zwischen Architekturentwürfen in ADD und der nachgelagerten, eigentlichen Dokumentation Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 48. Qualität als Treiber 48 | 64 Attribute Driven Design (ADD) Architektur ist iterative Dekomposition Kunst ist  die richtige Zerlegung (in der richtigen Reihenfolge) und  den richtigen Abstraktionsgrad zu finden. Attribute Driven Design unterstützt Sie dabei. Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 49. Qualität als Treiber 49| 64 Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen| Qualität verifizieren | Abschluss
  • 50. Qualität als Treiber 50| 64 Qualität verifizieren Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren| Abschluss
  • 51. Qualität als Treiber 51 | 64 Architektur bewerten Architekturbewertung  Während der Erstellung der Architektur  Attribute Driven Design (ADD) enthält Reviewphase  Auf Basis einer bestehenden Architektur Ziel: Bewertung der Architekturentscheidungen vor dem Hintergrund  der Qualitätsszenarien  der Geschäftsziele Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 52. Qualität als Treiber 52 | 64 ATAM Architecture Tradeoff Analysis Method® (ATAM)  setzt auf bestehender Architektur auf  oft auch auf bestehendem System  Das Evaluationsteam ist (i.d.R.) extern (bzgl. des Projektteams) soll Risiken der Architekturentscheidungen aufdecken  aber auch sogenannte non-risks soll negative Trends des Systems Architekturentscheidungen zuordnen soll tradeoffs erkennen  Entscheidungen, die mehr als eine Qualitätsmerkmal betreffen  Konsequenzen aus diesem Zielkonflikt siehe [Brass12], [Kazman00], [Northrop11] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 53. Qualität als Treiber 53 | 64 ATAM ATAM ist eine Review-Verfahren, dass  auf die Entdeckung von Risiken ausgelegt ist  relativ kurzläufig, relativ leichtgewichtig ist  gibt es auch als „lightweight“ Variante Vorrausetzungen  Architektur muss vorhanden sein  Fehlende Qualitätsszenarien werden im Prozess ermittelt  Architekt muss mitarbeiten und bereit sein, die Architektur zu präsentieren  Stakeholder müssen die Geschäftsziele vorstellen können In ATAM werden die Architekturartefakte und Präsentationen einem Review unterzogen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 54. Qualität als Treiber 54 | 64 Ergebnisse von ATAM ATAM ermittelt  Architekturansätze  Qualitätsszenarien  Qualitätsbaum  Risiken  tradeoffs ATAM stellt dar  inwieweit die vorliegende Architektur die Anforderungen an (Qualitätsmerkmale) erfüllt Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 55. Qualität als Treiber 55 | 64 Wann wird ATAM eingesetzt? Theoretisch ist der beste Moment für ATAM direkt nachdem die Architekur entworfen wurde  Es gibt keinen oder wenig Code Tatsächlich wird ATAM auch häufig in folgenden Situationen eingesetzt:  Bewertung der Architektur eines bestehenden Systems  Bewertung von Architekturalternativen  Bewertung der Architektur vor großen Updates  Entscheidung, ob ein System neuentwickelt oder angepasst wird  Entscheidung “make or buy” Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 56. Qualität als Treiber 56| 64 Überblick Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 57. Qualität als Treiber 57 | 64 Für alle vorgestellte Verfahren gilt : Es zeigt eine Idee für die Vorgehensweise Es bringt auch Erfolg, wenn es nicht-formal angewendet werden  Das Ziel dahinter ist wichtig Versuchen Sie es  Es hilft, die Qualitätsmerkmale Ihres Systems besser in den Griff zu bekommen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 58. Qualität als Treiber 58 | 64 Architektur ist Schlüssel zur Qualität eines Systems Unterstützen Sie den Architekten in seinem Bemühen um Qualität  Integrieren Sie die Architektur in Ihren Entwicklungsprozess Verorten Sie die (System-)Qualität in der Architektur  Nehmen Sie diese in die Pflicht Es gibt Unterstützung  Qualitätsmerkmale erfassen – Qualitätsszenarios und QAW  Qualitätsmerkmale erreichen – tactics, Architekturmuster und ADD  Qualität verifizieren – ATAM Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 59. Qualität als Treiber 59 | 64 Referenzen [Arc42] http://www.arc42.de/ [Brass12] Software Architecture in Practice (3rd Edition), Brass, Clements, Kazman Addison-Wesley ISBN-13: 000-0321815734 [Buschmann 1996] Buschmann, F.; Meunier, R.; Rohnert, H.; Sommerlad, P.; & Stal, M. Pattern- Oriented Software Architecture: A System of Patterns. Chichester, NY: Wiley, 1996 (ISBN: 978-0- 471-95869-7). Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 60. Qualität als Treiber 60 | 64 Referenzen [FMC] http://www.fmc-modeling.org/ [IBM14] Facilitating the Mini-Quality Attributes Workshop http://resources.sei.cmu.edu/asset_files/Presentation/2014_017_101_89563. pdf Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 61. Qualität als Treiber 61 | 64 Weiterführende Literatur [Bachmann et al ] Understanding Architectural Patterns in Terms of Tactics and Models http://www.sei.cmu.edu/library/abstracts/news-at-sei/architect200708.cfm [Bachmann et al ] Modifiability Tactics http://www.sei.cmu.edu/reports/07tr002.pdf [Brown] Software Architecture for Developers – Simon Brown https://leanpub.com/software-architecture-for-developers [Clement10] Relating Business Goals to Architecturally Significant Requirements for Software Systems http://www.sei.cmu.edu/reports/10tn018.pdf Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 62. Qualität als Treiber 62 | 64 Weiterführende Literatur [Kazman00] ATAM : Method for Architecture Evaluation http://resources.sei.cmu.edu/library/asset-view.cfm?assetid=5177 [MS-ArchGuide] MircoSoft Architecute Guide http://apparchguide.codeplex.com/wikipage?title=Chapter%207%20- %20Quality%20Attributes [Nord09] A Structured Approach for Reviewing Architecture Documentation http://repository.cmu.edu/sei/280 Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 63. Qualität als Treiber 63 | 64 Weiterführende Literatur [Nothop11] Identifying Architectural Risks using the Architecture Tradeoff Analysis Method (ATAM ) Linda Nothop OOP 2011 http://www.sigs.de/download/oop_2011/downloads/files/Mi6- 4_Northrop_ATAM%20OOP.pdf [STARKE12] Quality Driven Software Architecture ; Gernot Starke https://www.innoq.com/de/articles/2012/04/quality-driven-software-architecture/ [WIKIPEDIA] http://de.wikipedia.org/wiki/Softwarearchitektur Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 64. Qualität als Treiber 64 | 64 Weiterführende Literatur [Wojcik 2006] Wojcik, R.; Bachmann, F.; Bass, L.; Clements, P.; Merson, P.; Nord, R.; Wood, B. Attribute-Driven Design (ADD), Version 2.0, http://www.sei.cmu.edu/library/abstracts/reports/06tr023.c [Wood] A Practical Example for ADD http://www.sei.cmu.edu/reports/07tr005.pdf Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  • 66. Qualität als Treiber 66| 64 Projekte. Beratung. Spezialisten.