Malich | Qualität von Softwaresystemen | E-Book | www2.sack.de
E-Book

E-Book, Deutsch, 229 Seiten

Malich Qualität von Softwaresystemen

Ein pattern-basiertes Wissensmodell zur Unterstützung des Entwurfs und der Bewertung von Softwarearchitekturen
2008
ISBN: 978-3-8349-9726-5
Verlag: Gabler Verlag
Format: PDF
Kopierschutz: 1 - PDF Watermark

Ein pattern-basiertes Wissensmodell zur Unterstützung des Entwurfs und der Bewertung von Softwarearchitekturen

E-Book, Deutsch, 229 Seiten

ISBN: 978-3-8349-9726-5
Verlag: Gabler Verlag
Format: PDF
Kopierschutz: 1 - PDF Watermark



Stefan Malich entwickelt ein pattern-basiertes Wissensmodell, mit dem die Beziehungen zwischen den Entwurfsentscheidungen bezüglich der Softwarearchitektur und den daraus entstehenden Auswirkungen auf die Qualität des Systems ermittelt und dokumentiert werden können.

Dr. Stefan Malich promovierte bei Prof. Dr. Stefan Eicker am Lehrstuhl für Wirtschaftsinformatik und Software-Technik der Universität Duisburg-Essen. Er hat langjährige Erfahrung als IT-Berater und Software-Entwickler und war u. a. bei der Unternehmensberatung Accenture GmbH tätig.

Malich Qualität von Softwaresystemen jetzt bestellen!

Autoren/Hrsg.


Weitere Infos & Material


1;Geleitwort;6
2;Vorwort;7
3;Inhaltsübersicht;9
4;Inhaltsverzeichnis;11
5;Abbildungsverzeichnis;15
6;Tabellenverzeichnis;18
7;Abkürzungsverzeichnis;19
8;1 Einleitung;21
8.1;1.1 Problemstellung;21
8.2;1.2 Zielsetzung;23
8.3;1.3 Forschungsansatz;24
8.4;1.4 Aufbau der Arbeit;27
9;2 Grundlagen und Bezugsrahmen des Entwurfs von Softwarearchitekturen;29
9.1;2.1 Begriffsdefinitionen;29
9.2;2.2 Bezugsrahmen;35
9.3;2.3 Bedeutung der Softwarearchitektur;41
9.4;2.4 Einflussfaktoren;44
9.5;2.5 Dokumentation von Softwarearchitekturen;48
9.6;2.6 Verwandte Arbeiten;53
9.7;2.7 Zusammenfassung;64
10;3 Bewertung von Softwarearchitekturen;67
10.1;3.1 Ziele und Annahmen der Bewertung;67
10.2;3.2 Qualität von Softwareprodukten und -architekturen;69
10.3;3.3 Bewertungsmethoden für Softwarearchitekturen;94
10.4;3.4 Zusammenfassung;120
11;4 Pattern im Kontext des Entwurfs und der Bewertung von Softwarearchitekturen;123
11.1;4.1 Konzept der Pattern;123
11.2;4.2 Dokumentation von Pattern;130
11.3;4.3 Konzepte zur Auswahl von Pattern;149
11.4;4.4 Pattern im Kontext des Entwurfs und der Bewertung;156
11.5;4.5 Zusammenfassung;158
12;5 Entwicklung eines pattern-basierten Wissensmodells;159
12.1;5.1 Entwicklung des Wissensmodells;159
12.2;5.2 Entwicklung der Vorgehensweise;194
12.3;5.3 Validierung der Vorgehensweise und des Wissensmodells;205
12.4;5.4 Verwendung der Wissensbasis;216
12.5;5.5 Zusammenfassung;224
13;6 Schlussbetrachtung;225
13.1;6.1 Zusammenfassung der Ergebnisse;225
13.2;6.2 Weiterer Forschungsbedarf;226
13.3;6.3 Ausblick;230
14;Literaturverzeichnis;232
15;Anhang A;241
16;Anhang B;245


4 Pattern im Kontext des Entwurfs und der Bewertung von Softwarearchitekturen (S. 103-104)

Das Konzept der Pattern umfasst die systematische Dokumentation von Entwurfswissen, das durch die Analyse von existierenden und erprobten Entwürfen gewonnen wird. Dieses Entwurfswissen kann im Kontext des Entwurfs und der Bewertung von Softwarearchitekturen wiederverwendet werden, so dass der Prozess des Entwurfs bzw. der Bewertung effizienter und effektiver ausgeführt werden kann.

Das folgende Kapitel 4.1 diskutiert zunächst verschiedene Begriffsdefinitionen und erläutert den Bezugsrahmen des Pattern-Konzepts. Der Entwurf auf Basis von Pattern wird dargestellt und das Konzept der Pattern im übergreifenden Kontext der Softwareentwicklung positioniert. Die Anwendbarkeit des Pattern-Konzepts im Kontext des Entwurfs und der Bewertung von Softwarearchitekturen wird im Wesentlichen durch die Struktur und den Aufbau der Pattern- Dokumentation sowie der verfügbaren Pattern-Auswahlprozesse beeinflusst. Daher werden im Anschluss die Dokumentation (Kapitel 4.2) und Auswahl von Pattern (Kapitel 4.3) untersucht. Das abschließende Kapitel 4.4 erläutert und bewertet die Nutzung des Konzepts im Kontext des Entwurfs und der Bewertung von Softwarearchitekturen.

4.1 Konzept der Pattern

Das Konzept der Pattern entstand im Umfeld der objekt-orientierten Programmierung und einer Diskussion über die Produktivität der Entwickler, die eine derartige Programmiersprache nutzen. Gamma, Helm, Johnson und Vlissides motivieren die Entwicklung des Konzepts mit der Erkenntnis, dass es sehr schwierig ist, objekt-orientierte wiederverwendbare Software zu entwerfen: Ein Entwickler muss die „richtigen" Objekte identifizieren und sie in Klassen abbilden, Schnittstellen und Vererbungshierarchien definieren und die Beziehungen zwischen diesen Elemente identifizieren (vgl. [GHJV1995, S. 1]).

Ein Entwurf soll nicht nur die aktuellen Probleme und Anforderungen berücksichtigen, sondern flexibel und wiederverwendbar sein, so dass zukünftige Probleme und Anforderungen mit möglichst geringem Aufwand umgesetzt werden können. Derartige Entwürfe entstehen i. d. R. nicht innerhalb eines linearen, sondern innerhalb eines inkrementellen Entwurfsprozesses, d. h., ein Entwurf wird innerhalb eines Kreislaufs entwickelt, ausprobiert, angepasst und wieder ausprobiert (vgl. [GHJV1995, S. 1]). Im Kontext dieses inkrementellen Prozesses haben erfahrene Entwickler einen entscheidenden Vorteil: sie können das Entwurfsproblem auf Basis ihrer früheren Erfahrungen lösen, indem sie ein ähnliches Problem mit einer zugehörigen Lösung identifizieren, die sich als „gut" bewährt hat (vgl. [GHJV1995, S. 1, BMRS1996, S. 2]).

Der erfahrene Entwickler muss somit das Problem nicht grundlegend lösen und innerhalb eines inkrementellen Entwurfsprozesses weniger Zyklen durchlaufen, bis eine entsprechende Lösung gefunden wurde. Shaw und Garlan unterscheiden in diesem Kontext zwischen routinemäßigen Entwürfen (routine design) und innovativen Entwürfen (innovative design) (vgl. [ShGa1996, S. 7]). Ein routinemäßiger Entwurf enthält die Lösung eines bekannten Problems, indem große Teile einer vorherigen Lösung wiederverwendet werden. Ein innovativer Entwurf dagegen beinhaltet die Suche nach einer neuen Lösung für ein bisher unbekanntes Problem. Shaw und Garlan weisen darauf hin, dass in den meisten Ingenieurdisziplinen dieses Entwurfswissen systematisch erfasst und strukturiert wird, um den routinemäßigen Entwurf einfacher zu gestalten (vgl. [ShGa1996, S. 7]).

In vielen Bereichen der Softwareentwicklung erfolgt allerdings kein Rückgriff auf bereits vorhandenes Wissen, so dass der Entwurf meistens als innovativer Entwurf ausgeführt wird, obwohl Lösungen, die größtenteils wiederverwendet werden könnten, bereits existieren. Shaw und Garlan kritisieren aus diesem Grund auch den Begriff des Software Engineerings und schlagen vor, das existierende Wissen systematisch zu erfassen und zu organisieren, um die Entwicklung von Software tatsächlich als Ingenieurdisziplin zu etablieren (vgl. [ShGa1996, S. 7]).



Ihre Fragen, Wünsche oder Anmerkungen
Vorname*
Nachname*
Ihre E-Mail-Adresse*
Kundennr.
Ihre Nachricht*
Lediglich mit * gekennzeichnete Felder sind Pflichtfelder.
Wenn Sie die im Kontaktformular eingegebenen Daten durch Klick auf den nachfolgenden Button übersenden, erklären Sie sich damit einverstanden, dass wir Ihr Angaben für die Beantwortung Ihrer Anfrage verwenden. Selbstverständlich werden Ihre Daten vertraulich behandelt und nicht an Dritte weitergegeben. Sie können der Verwendung Ihrer Daten jederzeit widersprechen. Das Datenhandling bei Sack Fachmedien erklären wir Ihnen in unserer Datenschutzerklärung.