SWT Software Engineering Group
 
Home | What is SWT? | People | Contact | Publications | R & D | Teaching | STC | Local News | Events | SiteMap | MySWT
You are here: Home > Publications > Detail View
 Lilienthal, C.
Komplexität von Softwarearchitekturen - Stile und Strategien
Dissertation, elektronische Veröffentlichung bei der Staats- und Universitätsbibliothek Hamburg, 16.07.2008, http://www.sub.uni-hamburg.de/opus/volltexte/2008/3725/
2008
Abstract
In dieser Arbeit untersuche ich, wo Komplexität bei der Softwareentwicklung auftritt, und konzentriere mich auf Architekturkomplexität, die in der statischen Struktur von Softwaresystemen, der Softwarearchitektur, enthalten ist. In der Softwaretechnik existiert bereits ein umfassendes Repertoire an Architekturkonzepten und Architekturstilen, um die Komplexität von Softwarearchitekturen zu lindern. Trotzdem scheitern viele Projekte, und Entwicklungsteams beklagen sich darüber, dass ihr Softwaresystem nicht mehr wartbar und weiterentwickelbar ist. Um Architekturkomplexität greifbar zu machen, ziehe ich Grundsätze aus der kognitiven Psychologie heran, die beschreiben, wie Menschen mit komplexen Strukturen umgehen. Dabei wird deutlich, wie objektorientierte Programmiersprachen und Architekturstile diese Grundsätze berücksichtigen und wo Lücken zu erkennen sind. Auf dieser Grundlage habe ich vierundzwanzig Fallstudien an Softwaresystemen in Industrie und Wissenschaft durchgeführt. Bei zweiundzwanzig Fallstudien konnte ich die Softwaresysteme mit dem Analysewerkzeug Sotograph untersuchen und die Architektur mit dem jeweiligen Entwicklungsteam diskutieren. In einigen Fällen habe ich zusätzlich ein Interview durchgeführt, um weitere Fragen zu klären. Die Ergebnisse aus den Fallstudien zeigen das weite Spektrum der heute in Softwarearchitekturen vorhandenen Komplexität und lassen ihre Ursachen sichtbar werden. Dabei wird deutlich, dass der Architekturstil einen entscheidenden Einfluss auf die Komplexität einer Softwarearchitektur hat. Parallel zu den Fallstudien habe ich ein Modell für Architekturkomplexität entwickelt. Die drei Faktoren, auf die ich Architekturkomplexität zurückführe, sind: Mustertreue, Modularität und Geordnetheit. Aus diesen drei Faktoren leite ich Kriterien und Fragen ab. Für sechs Fragen definiere ich Maße, die eine quantitative Auswertung erlauben. Anhand des Modells für Architekturkomplexität werden die Ergebnisse aus den Architekturanalysen und aus den Interviews präsentiert und interpretiert. Um die Ergebnisse konstruktiv nutzbar zu machen, stelle ich drei Stadien der architekturzentrierten Softwareentwicklung vor: Entwerfen, Erhalten und Erneuern von Architektur. Diese Stadien verlangen nach gut abgestimmten Strategien, wie Entwicklungsteams Architekturkomplexität reduzieren können. Schließlich biete ich einen Leitfaden dafür an, wie die Strategien in den drei Stadien der architekturzentrierten Softwareentwicklung geplant und eingesetzt werden sollen, so dass Entwicklungsteams abhängig von ihrer Situation die passende Strategie auswählen können.
If you like to cite this publication, you may use this:
Lilienthal, C., Komplexität von Softwarearchitekturen - Stile und Strategien, Dissertation, elektronische Veröffentlichung bei der Staats- und Universitätsbibliothek Hamburg, 16.07.2008, http://www.sub.uni-hamburg.de/opus/volltexte/2008/3725/, 2008.
 
top 
Home | What is SWT? | People | Contact | Publications | R & D | Teaching | STC | Local News | Events | SiteMap | MySWT
Impressum