Softwarearchitektur Die Definition und Beschreibung von Softwarearchitekturen mit professionellen Methoden

Die Soft­ware­ar­chi­tek­tur beschreibt den Auf­bau eines Soft­ware­sys­tems und unter­stützt die Ent­wick­lung von Softwaresystemen.

Die Soft­ware­ar­chi­tek­tur eines Soft­ware­sys­tems ist ent­schei­dend für die Lauf­fä­hig­keit und Akzep­tanz eines Sys­tems. Nur “gute Soft­ware­ar­chi­tek­tu­ren” tra­gen ein Sys­tem durch den gesam­ten Lebenszyklus.

1. Einleitung und Grundlagen

Hier wer­den zunächst eini­ge Defi­ni­tio­nen zur Soft­ware­ar­chi­tek­tur vorgestellt. 

1.1 Definitionen

In der Wiki­pe­dia steht zur Soft­ware­ar­chi­tek­tur /#Wiki-Softwarearchitektur/:
“Eine Soft­ware­ar­chi­tek­tur ist einer der Archi­tek­tur­ty­pen in der Infor­ma­tik und beschreibt die grund­le­gen­den Kom­po­nen­ten und deren Zusam­men­spiel inner­halb eines Softwaresystems.”

Star­ke nimmt Bezug auf die IEEE 1471 und defi­niert /Starke20/:
“Soft­ware­ar­chi­tek­tur: Die grund­sätz­li­che Orga­ni­sa­ti­on eines Sys­tems, ver­kör­pert durch des­sen Kom­po­nen­ten, deren Bezie­hung zuein­an­der und zur Umge­bung sowie die Prin­zi­pi­en, die für sei­nen Ent­wurf und sei­ne Evo­lu­ti­on gelten.”

Architektur und andere 
Entwicklungsaufgaben, (C) Peterjohann Consulting, 2020-2022

Abbil­dung 1.1: Archi­tek­tur und ande­re Ent­wick­lungs­auf­ga­ben nach /Starke20/

2. Vorgehen beim Architekturentwurf

Nach /Gharbi16/ kann der Archi­tek­tur­ent­wurf in vier gleich­be­rech­tig­ten Tätig­kei­ten erfol­gen, die nicht unbe­dingt hin­ter­ein­an­der, son­dern jeder­zeit durch­ge­führt können:

  1. Anfor­de­run­gen und Rand­be­din­gun­gen analysieren
  2. Archi­tek­tur­sich­ten und tech­ni­sche Kon­zep­te entwerfen
  3. Archi­tek­tur- und Ent­wurfs­ent­schei­dun­gen bewerten
  4. Umset­zung beglei­ten und prüfen

A. Präsentationen, Literatur und Weblinks

A.1 Meine öffentliche Software-Engineering-Präsentation

Inhalt Typ
Requi­re­ments Engi­nee­ring: Spe­zi­fi­ka­tio­nen – Eine Übersicht

pdf

A.2 Literatur

Die Anzahl der Bücher zur Soft­ware­ar­chi­tek­tur ist über­schau­bar. Aller­dings erfah­ren die “Stan­dard­wer­ke” regel­mä­ßig Updates.

  1. /Gharbi16/ Mah­bou­ba Ghar­bi, Arne Koschel, Andre­as Rausch, Ger­not Star­ke: Basis­wis­sen für Soft­ware­ar­chi­tek­ten. Ein Über­blick, dpunkt, Hei­del­berg 2. Auf­la­ge 2016, Art-Nr. 077.95735
  2. /Gharbi17/ Mah­bou­ba Ghar­bi, Arne Koschel, Andre­as Rausch, Ger­not Star­ke: Basis­wis­sen für Soft­ware­ar­chi­tek­ten. Aus- und Wei­ter­bil­dung nach iSAQB-Stan­dard zum Cer­ti­fied Pro­fes­sio­nal for Soft­ware Archi­tec­tu­re – Foun­da­ti­on Level, dpunkt, Hei­del­berg 3. Auf­la­ge 2017, ISBN 978–3‑86490–499‑8
  3. /Gharbi20/ Mah­bou­ba Ghar­bi, Arne Koschel, Andre­as Rausch, Ger­not Star­ke: Basis­wis­sen für Soft­ware­ar­chi­tek­ten. Aus- und Wei­ter­bil­dung nach iSAQB-Stan­dard zum Cer­ti­fied Pro­fes­sio­nal for Soft­ware Archi­tec­tu­re – Foun­da­ti­on Level, dpunkt, Hei­del­berg 4. Auf­la­ge 2020, ISBN 978–3‑86490–781‑4
  4. /Hruschka17/ Peter Hrusch­ka, Ger­not Star­ke: Knig­ge für Soft­ware­ar­chi­tek­ten – Rel­oa­ded, entwickler.press, Frank­furt 3. Auf­la­ge 2017, ISBN 978–3‑86802–806‑5
  5. /Lilienthal17/ Caro­la Lili­en­thal: Lang­le­bi­ge Soft­ware-Archi­tek­tu­ren. Tech­ni­sche Schul­den ana­ly­sie­ren, begren­zen und abbau­en, dpunkt, Hei­del­berg 2. Auf­la­ge 2017, ISBN 978–3‑86490–494‑3
  6. /Lilienthal20/ Caro­la Lili­en­thal: Lang­le­bi­ge Soft­ware-Archi­tek­tu­ren. Tech­ni­sche Schul­den ana­ly­sie­ren, begren­zen und abbau­en, dpunkt, Hei­del­berg 3. Auf­la­ge 2020, ISBN 978–3‑86490–729‑6
  7. /Starke15b/ Ger­not Star­ke, Peter Hrusch­ka: arc42: Prag­ma­ti­sche Hil­fe für Soft­ware­ar­chi­tek­ten, Han­ser, Mün­chen 2015, ISBN 978–3‑446–44528‑4
  8. /Starke16/ Ger­not Star­ke, Peter Hrusch­ka: arc42 in Akti­on: Prak­ti­sche Tipps zur Archi­tek­tur­do­ku­men­ta­ti­on, Han­ser, Mün­chen 2016, ISBN 978–3‑446–44801‑8
  9. /Starke17/ Ger­not Star­ke: Effek­ti­ve Soft­ware­ar­chi­tek­tu­ren. Ein prak­ti­scher Leit­fa­den, Han­ser, Mün­chen 8. Auf­la­ge 2017, ISBN 978–3‑446–45207‑7
  10. /Starke20/ Ger­not Star­ke: Effek­ti­ve Soft­ware­ar­chi­tek­tu­ren. Ein prak­ti­scher Leit­fa­den, Han­ser, Mün­chen 9. Auf­la­ge 2020, ISBN 978–3‑446–46376‑9
  11. /Starke21/ Ger­not Star­ke, Peter Hrusch­ka: Arc42 in Akti­on. Prak­ti­sche Tipps zur Archi­tek­tur­do­ku­men­ta­ti­on, Han­ser, Mün­chen 2. Auf­la­ge 2021, ISBN 978–3‑44646380–6
  12. /Toth15/ Ste­fan Toth: Vor­ge­hens­mus­ter für Soft­ware­ar­chi­tek­tur. Kom­bi­nier­ba­re Prak­ti­ken in Zei­ten von → Agi­le und Lean. Ide­al für das ISAQB Modul AGILA, Han­ser, Mün­chen 2. Auf­la­ge 2015, ISBN 978–3‑446–44395‑2
  13. /Toth20/ Ste­fan Toth: Vor­ge­hens­mus­ter für Soft­ware­ar­chi­tek­tur. Kom­bi­nier­ba­re Prak­ti­ken in Zei­ten von Agi­le und → Lean. Ide­al für das ISAQB Modul AGILA, Han­ser, Mün­chen 2. Auf­la­ge 2020, ISBN 978–3‑446–46004‑1
  14. /Zörner15/ Ste­fan Zör­ner: Soft­ware­ar­chi­tek­tu­ren doku­men­tie­ren und kom­mu­ni­zie­ren. Ent­wür­fe, Ent­schei­dun­gen und Lösun­gen nach­voll­zieh­bar und wir­kungs­voll fest­hal­ten, Han­ser, Mün­chen 2. Auf­la­ge 2015, ISBN 978–3‑446–44348‑8

A.3 Weblinks

Fol­gen­de Web­links lie­fern wei­te­re hilf­rei­che Infor­ma­tio­nen zur Softwarearchitektur:

Legen­de zu den Weblinks
/ / Ver­weis auf eine Web­site (gene­rell)
/*/ Ver­weis auf eine Web­site, die als Buch-Ergän­zung dient
/#/ Ver­weis auf ein­zel­nes The­ma auf einer Website
/#V/ Ver­weis auf ein Video auf einer Website