This post originated from an RSS feed registered with .NET Buzz
by Damir Tomicic.
Original Post: [IASA] Applikationsdesign vs. Applikationsarchitektur
Feed Title: Damir Tomicic : community powered
Feed URL: http://tomicic.de/SyndicationService.asmx/GetRss
Feed Description: stuff about .NET, community and life - in several languages.
Die Begriffe "Architektur" und "Design" in der Informatik werden
oft dazu verwendet, die Struktur einer Anwendung oder die eines Systems zu beschreiben.
Dabei wird oft das Design mit der Architektur gleichgesetzt. Die Softwarearchitektur
wird in dem IEEE 1471 2000-Standard [1] so definiert:
"The fundamental organization of a system embodied in its components, their relationships
to each other and to the environment and the principles guiding its design and evolution.".
Aus dieser Definition, obgleich die nicht ausreichend ist, wird eines ersichtlich:
die Architektur legt die Vision (nicht funktionale Entscheidungen) fest, das Design
realisiert die Ideen und Anliegen der Architektur ("guiding its design..").
Das Design ist also wesentlich konkreter, es ist ein Teil des Implementierungsprozesses.
Viele Design-Entscheidungen sind mit der gewählten Technologie verbunden und für die
Architektur nicht relevant. Die Abstraktion muà erhalten bleiben. Desweiteren ist
die Architektur kein Werb, "to architect" existiert in der englischen Sprache
genauso wenig wie woanders.
Eine recht einfache Ãbersicht "From Architecture to Design" [2]
erläutert diese Problematik und führt direkt zur Frage nach den Sprachen zur Beschreibung
der Architektur. Eine einfache Definition verbindet alle Ansätze:
"ADLs (Architecture Description Languages) are languages that describe Software
Architectures. This means in case of Technical architecture refers to the structured
process of software architecture, with focus on how to deal with the aspects of and
the interaction with the software developer(s). With functional architecture, the
architecture is communicated to stakeholders and enterprise engineers."
Es existieren diverse Versuche solche Sprachen zu definieren. Nenad Medvidovic und
Richard N. Taylor haben sich mit diesem Thema auseinandergesetzt und eine nützliche
Ãbersicht [3] erstellt.