Softwarearchitektur: Unterschied zwischen den Versionen

Aus Thoms Wiki
Zur Navigation springenZur Suche springen
Zeile 27: Zeile 27:
* Tutorials, FAQs, Guidelines/Checklisten, Entscheidungs- und Bewertungstabellen, Gesprächsprotokolle
* Tutorials, FAQs, Guidelines/Checklisten, Entscheidungs- und Bewertungstabellen, Gesprächsprotokolle
* So viel beschreiben wie nötig, nicht so viel wie möglich!
* So viel beschreiben wie nötig, nicht so viel wie möglich!
== UML ==
* Unified Modeling Language
* https://draw.io
* https://yuml.me


== Literatur ==
== Literatur ==

Version vom 3. Dezember 2023, 19:55 Uhr


„Softwarearchitektur ist die Summe aller wichtigen Entscheidungen. Wichtige Entscheidungen sind alle Entscheidungen, die im Verlauf der weiteren Entwicklung nur schwer zu ändern sind."
Philippe Kruchten

Softwarearchitekt

  • Übersetzer
  • Techniker
  • Visionär
  • Planer
  • Analyst
  • Manager
  • Problemlöser
  • Hausmeister - z.B. Codereview - Aufpassen, dass der Quellcode nicht verschmutzt
  • Verantwortung (dass die Software langfristig funktionstüchtig bleibt)
  • Vetoerecht - darf auch mal Nein sagen

Dokumentation

  • Verständnis schaffen
  • Aufwände verringern (vorher und nachher)
  • Vorgehen nachvollziehbar machen
  • Entscheidungen begründen
  • UML: https://de.wikipedia.org/wiki/Unified_Modeling_Language
  • https://arc42.org
  • Tutorials, FAQs, Guidelines/Checklisten, Entscheidungs- und Bewertungstabellen, Gesprächsprotokolle
  • So viel beschreiben wie nötig, nicht so viel wie möglich!

UML

Literatur

  • Lilienthal, Carola: Langlebige Software-Architekturen: Technische Schulden analysieren, begrenzen und abbauen. 2. Aufl. Heidelberg: Dpunkt.Verlag GmbH, 2017.
  • Design Patterns: Elements of Reusable Object-Oriented Software (Erich Gamma, Richard Helm, Ralph Johnson, John Vlissides) (= GOF)