Mehr Softwarequalität: Qualität als Treiber (IKS-Thementag: 05.05.2015)

749 Aufrufe

Veröffentlicht am

Individualsoftware soll viele explizite und implizite Qualitätsanforderungen verschiedener Stakeholder erfüllen. In unserer halbtägigen Veranstaltung beleuchten wir aus Sicht des Managements unterschiedliche Aspekte rund um dieses Thema.

Weitere Vorträge, die wir auch gern in Ihrem Unternehmen halten, finden Sie unter: https://www.iks-gmbh.com/impulsvortraege

Veröffentlicht in: Technologie
0 Kommentare
0 Gefällt mir
Statistik
Notizen
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

Keine Downloads
Aufrufe
Aufrufe insgesamt
749
Auf SlideShare
0
Aus Einbettungen
0
Anzahl an Einbettungen
3
Aktionen
Geteilt
0
Downloads
4
Kommentare
0
Gefällt mir
0
Einbettungen 0
Keine Einbettungen

Keine Notizen für die Folie

Mehr Softwarequalität: Qualität als Treiber (IKS-Thementag: 05.05.2015)

  1. 1. Qualität als Treiber 1 | 64 Projekte. Beratung. Spezialisten. Qualität als Treiber: Wie Qualitätsanforderungen die Architektur steuern IKS-Thementag 05.05.2015 Autor: Christoph Schmidt-Casdorff
  2. 2. Qualität als Treiber 2 | 64 Agenda
  3. 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. 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. 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. 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. 7. Qualität als Treiber 7 | 64 Architektur Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  8. 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. 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. 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. 11. Qualität als Treiber 11 | 64 Architektursichten-/perspektiven Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  12. 12. Qualität als Treiber 12 | 64 Sichten der Softwarearchitektur [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. 13. Qualität als Treiber 13 | 64 Verfeinerung innerhalb von Sichten siehe [Arc42] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  14. 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 nimmt dieses als Basis eigener Architekturdokumentationen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  15. 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. 16. Qualität als Treiber 16 | 64 Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  17. 17. Qualität als Treiber 17 | 64 Die Softwarearchitektur ist verantwortlich, dass ein System die geforderten Qualitätsmerkmale erfüllt. Wo kommen die QMe her? Warum? Wie wird dies sichergestellt und geprüft? Wie kann das gelingen ? Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  18. 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. 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. 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. 21. Qualität als Treiber 21 | 64 Qualitätsmerkmale erfassen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  22. 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. 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. 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 ReaktionUmstände/ Kontext Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  25. 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, woher der Auslöser kommt Systembestandteil (artifact) beschreibt, welcher Bestandteil des Systems vom Auslöser betroffen ist Umgebung (environment) beschreibt die Bedingung, unter der der Auslöser auftritt Antwort (response) beschreibt die Reaktion des Systems auf den Auslöser Antwortmetrik (response measure) beschreibt, wie die Antwort gemessen oder bewertet werden kann. siehe [Brass12] Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  26. 26. Qualität als Treiber 26 | 64 Wie erhalte ich Qualitätsszenarien? Qualiätsszenarien sind 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. 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. 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. 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. 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. 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. 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. 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. 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. 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. 36. Qualität als Treiber 36 | 64 Qualitätsmerkmale erfassen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  37. 37. Qualität als Treiber 37 | 64 Qualitätsmerkmale erreichen Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen |Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  38. 38. Qualität als Treiber 38 | 64 Umsetzung der Qualitätsmerkmale Voraussetzung  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. 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. 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. 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. 42. Qualität als Treiber 42 | 64 tactics für Verfügbarkeit Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen |Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  43. 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. 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. 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. 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. 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. 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. 49. Qualität als Treiber 49 | 64 Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen |Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  50. 50. Qualität als Treiber 50 | 64 Qualität verifizieren Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  51. 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. 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. 53. Qualität als Treiber 53 | 64 ATAM ATAM ist ein Review-Verfahren, dass  auf die Entdeckung von Risiken ausgelegt ist  relativ kurzläufig, relativ leichtgewichtig ist  gibt es auch als „lightweight“ Variante Voraussetzungen  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. 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. 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. 56. Qualität als Treiber 56 | 64 Überblick Qualitätsmerkmale | Architektur | Qualitätsmerkmale erfassen | Qualitätsmerkmale erreichen | Qualität verifizieren | Abschluss
  57. 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. 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. 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. 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. 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. 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. 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. 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
  65. 65. WWW.IKS-GMBH.COM
  66. 66. Qualität als Treiber 66 | 64 Projekte. Beratung. Spezialisten.

×