Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
Die Stadt als Architekturmetapher
Visualisierung von SoftwarestrukturenVisualisierung von Softwarestrukturenund ihrer Entwicklung
Claus Lewerentz
Frank SteinbrücknerFrank Steinbrückner
Brandenburgische
Technische Universität Cottbus
Software‐Systemtechnik
1
y
© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Wie stellen Sie sich Ihr Softwaresystem vor?y
2© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Wie kommunizieren Sie über Ihr Projekt?j
3© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
„Stadt“‐Visualisierungen für Software Systeme„ g y
• Knight , Munro 2000Knight , Munro 2000
• Balzer, Noack 2004
• Panas et al. 2003/2007
• Wettel, Lanza 2007/2008
• Lewerentz, Steinbrückner 2009/2010
S ft Di ti 2010• Software Diagnostics 2010
4© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
„Softwarestädte“„
„Stadt“ als Metapher für die Planung und Entwicklung„Stadt als Metapher für die Planung und EntwicklungEntwurf, Konstruktion, Bau, Erhaltung, Weiterentwicklung, Sanierung
Verstehen großer Artefaktstrukturen und der Entwicklungsprozesse
Verortungs und Orientierungssysteme (räumliches Gedächtnis)Verortungs‐ und Orientierungssysteme (räumliches Gedächtnis)
Darstellungs‐ und Abstraktionstechniken
k hä t K ik tikohärente Kommunikation
Orientierung in den Strukturen
Städte und größere urbane Strukturen sind uns vertraut
Softwarestrukturen und Entwicklungsgeschichten eine Gestalt geben
5© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtstrukturen (1)( )
• 5‐8 Gliederungsebenen g– Flächenhierarchie:
Region, Stadt, Stadtfeld, Quartier, Block, Parzelle, Gebäude
• vielschichtig: – mehrere überlagerte Aspekte
• relativ wenige, einfache lokale Strukturierungsprinzipien– Innen‐Außen: Befestigung
Gitterstruktur für Parzellen– Gitterstruktur für Parzellen
– hierarchische und ringförmige Erschließungsstrukturen
• Ordnerstrukturen auf größerem Maßstab– Topographie, Verkehrswege, Rechte, Gesellschaftsstruktur
6© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtstrukturen (2)( )
• Fraktale selbstähnliche StrukturenFraktale selbstähnliche Strukturen in großen Stadtkomplexen
Berlin (1945)
Lingang New City (Gerkan, Marg & Partner)
• Stadttypologien, Stadtarchitektur
Idealstadt‐Entwürfe
7
dea stadt t ü e
© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtentwicklung (1)g ( )
• StadtentwurfStadtentwurf
– Eine europäische Stadt ist zuerst eine Idee: in ihrer zentralen Struktur geplant und angelegt
Erweiterungen als zusätzliche Stadtfelder geplant– Erweiterungen als zusätzliche Stadtfelder geplant.
alles ist entworfen
• Initiale Bauphase im Rahmen des Plans:
– schnelles Bebauen/Ausfüllen des Plans Pläne– dezentrale Konstruktion im Kleinen
• Iterative WachstumsprozesseRegelnVerordnungen• Iterative Wachstumsprozesse
– Städte werden typischerweise größer (nicht kleiner)
– dezentrale Entwicklung im Kleinen, Planung im Großen
VerordnungenNormen
8© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtentwicklung (2)g ( )
• Expansion der Stadt (nach außen)Expansion der Stadt (nach außen)
– Planen und Anlegen neuer Stadtfelder als Erweiterungsflächen
– Fusion von Städten (oder Dörfern mit Städten)
bestehende Wegesysteme (Infrastrukturen) und Wachstumskerne bilden ein starkes Kräftesystem (Ordnungssystem)
Altstruktur wird an den Rändern verändert(Integration der Erschließungsstrukturen)
• Verdichtung der Stadt (nach innen)
– Teilung von Parzellen
– Bau in die HöheBau in die Höhe
Berlin 1800 - 1945
9© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtentwicklung (3)g ( )
• Restrukturierung der StadtRestrukturierung der Stadt
– Im Kleinen
• Sanierung lokaler Teilstrukturen(z B Wohnviertel unter Beibehaltung(z.B. Wohnviertel unter Beibehaltung
der Block‐ und Parzellenstruktur)
• Anpassung von E hli ß t ktErschließungsstrukturen(Straßenausbau)
– Im Großen
• Umbau nach Katastrophen (Brand, Krieg)
• Bewusste Brüche und Schnitte (z.B. Integration von Bahnlinien und großen Straßen)
• Einführung neuer Infrastrukturen (Wasser, Abwasser, Elektrizität, Straßenbahn, …)
10
(Wasser, Abwasser, Elektrizität, Straßenbahn, …)
© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Kartographie‐Ansatzg p
(2) geometrisches Stadtmodell(3) thematische Karten(3) t e at sc e a te
(1) Entwicklungsdaten
11
(1) Entwicklungsdaten
© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
EvoStreets: Dekomposition + Entwicklungszeit
lineares Layout zonales/sektorales Layout
• sehr stabiles inkrementelles Layout
• relative Knotenpositionen repräsentieren Dekomposition + Erzeugungszeit
„EvoStreets“ layout
12© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Darstellung von Entwicklungszeitpunkteng g p
2 ½ D: elevation levels
13© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Darstellung von Entwicklungszeitpunkteng g p
14© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Beispiel Software‐Stadt (400+ Klassen, 800 Versionen)
15© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Video: Entwicklungsgeschichte eines B i i l tBeispielsystems
16© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Architekturlandschaften
Architekturkomponentenals vernetzte Städte
17© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
18© BTU Cottbus, Software-Systemtechnik, 2007-11-09
Kartographie‐Ansatzg p
(3) thematische Karten(3) t e at sc e a te
19© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtplan elementlistviewervisibilityloggerp
• Strukturübersicht
hypergraph
evoviewer
• Strukturübersicht
• 2D Basiskarte
scenarioviewer
view*vrml2D Basiskarte
+ Annotationen
+ Beschriftung
r-viewer
visualmapping
matrix
diagramgrouping quality
jmonkey
+ Markierungengrouping quality
alligatornodelist
20© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Stadtplan „Testabdeckung“p „ g
test passed• Strukturübersichtnot testedtest failed
• Strukturübersicht
• 2D Basiskarte2D Basiskarte+ Annotationen
+ Beschriftung
+ Markierungen
+ Färbungen
21© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Panorama „Änderungsgeschichte“„ g g
• Höhe: Anzahl Modifikationen
• Fläche: Anzahl Abhängigkeiten
• Farbe: Zeitpunkt letze Modifikation
22© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Panorama „Autorenschaft“„
• Höhe: Anzahl Modifikationen
• Fläche: Anzahl Abhängigkeiten
• Farbe: Autor
23© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Autorenschaften(JMonkeyEngine)( y g )
24© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
Weitere thematische Karten
• Testabdeckung
• Fehlerdaten / Fehlerbehebung
• Profiling‐Daten
• Codemetriken (z B Kommentardichte Kopplungsgrade)• Codemetriken (z.B. Kommentardichte, Kopplungsgrade)
• Revisionsstände
• …
K bi ti ltidi i l P d kt d P d t iKombination multidimensionaler Produkt‐ und Prozessdaten in einheitlicher Basisstruktur
Nutzung des kartographischen Darstellungsrepertoirs(Semiotik für Softwarelandkarten)
25© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21
>> Software als Stadtstruktur h t h l t i k lsehen, verstehen, planen, entwickeln …
Systematische Übertragung und Nutzung der Begrifflichkeiten und y g g g gDarstellungstechniken für urbane Strukturen auf die Konstruktion und das Entwicklungsmanagement von Software
Einbettung gewohnter Konzepte der Softwarearchitektur in die Stadtmetapher
Identifikation und Darstellung derOrdnungs‐ und Regelsysteme für Softwaresysteme, die eine urbane Struktur und Entwicklung prägendie eine urbane Struktur und Entwicklung prägen.
Architekturen als Ergebnis historischer Prozesse
„Software‐Stadtplanung“
26© Claus Lewerentz, BTU Cottbus SWA 2011‐07‐21