1 Punkte von GN⁺ 2024-06-16 | 1 Kommentare | Auf WhatsApp teilen

Einführung in ein Buch über Softwarearchitektur

Merkmale des Buches

  • Risikobasiertes Design: Wenn das Risiko gering ist, wird ein einfaches Design empfohlen; bei hohem Risiko wird eine gründliche Planung betont.
  • Demokratisierung der Architektur: Ziel ist es, allen Entwicklern zu helfen, Architektur zu verstehen.
  • Deklaratives Wissen: Es vermittelt klare Konzepte für den Entwurf und den Aufbau von Systemen.
  • Betonung des Engineerings: Der Fokus liegt auf den technischen Aspekten, um principientreue Designentscheidungen zu ermöglichen.
  • Praktische Ratschläge: Durch Modelle auf verschiedenen Abstraktionsebenen werden praktische Entwurfsmethoden vorgestellt.

Aufbau des Buches

Teil I: Risikobasierte Softwarearchitektur

  • Definition von Softwarearchitektur: Sie dient als Rückgrat eines Systems und beeinflusst dessen Qualitätsmerkmale.
  • Risikobasiertes Modell: Es wird erklärt, wie Risiken identifiziert und priorisiert werden und wie sich durch geeignete Entwurfstechniken Risiken reduzieren lassen.
  • Hinweise zur Nutzung von Modellen: Es wird gezeigt, wie Modelle zur Problemlösung eingesetzt, Randbedingungen sorgfältig ergänzt und Architekturkompetenzen im gesamten Team verteilt werden können.

Teil II: Architekturmodellierung

  • Struktur des konzeptionellen Modells: Sie besteht aus Domänenmodell, Entwurfsmodell und Codemodell.
  • Aufbau von Kapselungsgrenzen: Die interne Funktionsweise von Komponenten oder Modulen wird verborgen, damit man sich auf die Lösung anderer Probleme konzentrieren kann.
  • Effektive Modellbildung: Es wird erläutert, wie sich durch die Integration verschiedener Architekturtechniken, die Qualitätsmerkmale und Funktionalität betonen, praktische Modelle erstellen und debuggen lassen.
  • Hinweise zur Nutzung von Modellen: Es werden sowohl Vor- als auch Nachteile von Modellen behandelt und Wege für ihren effektiven Einsatz aufgezeigt.

E-Book und Hardcover

  • E-Book: Eine DRM-free-Version ist bei Google Play für 9,99 US-Dollar erhältlich.
  • Hardcover: Bei Amazon verfügbar.

Rezensionen und weitere Materialien zum Buch

  • Rezensionen: Unter anderem in IEEE Software gibt es verschiedene Rezensionen und Essays.
  • Weitere Materialien: Es gibt Videos und Publikationen zu Themen wie kontinuierlichem Design, Architekturstilen und Modellierung.

Meinung von GN⁺

  • Bedeutung des risikobasierten Ansatzes: Risikobasiertes Design ist sehr nützlich, um die Erfolgschancen eines Projekts zu erhöhen.
  • Demokratisierung der Architektur: Wenn alle Entwickler Architektur verstehen, kann das die Effizienz des gesamten Teams steigern.
  • Praktische Ratschläge: Das Buch bietet viele praktische Hinweise statt bloßer Theorie und lässt sich direkt in realen Projekten anwenden.
  • Technischer Fokus: Die Konzentration auf technische Aspekte hilft Entwicklern dabei, reale Probleme zu lösen.
  • Zusätzliche Lernmaterialien: Durch verschiedene ergänzende Materialien ist ein tiefergehendes Lernen möglich.

1 Kommentare

 
GN⁺ 2024-06-16
Hacker-News-Kommentare
  • Zwischen Projektmanagement-Risiken und Software-Engineering-Risiken sollte unterschieden werden. Engineering-Fähigkeiten lösen Management-Risiken oft nicht.
  • Codequalität, Organisation, Tests, Dokumentation und die Nutzung standardisierter Tools helfen auf beiden Seiten.
  • Die Metapher „vom Bus überfahren werden“ wird oft verwendet, weil man Software schaffen will, die reproduzierbar und leicht verständlich ist.
  • Um die negative Konnotation zu vermeiden, ist die Formulierung „im Lotto gewinnen“ besser.
  • Architektur um der Architektur willen ist das Schlechteste. Sie erhöht unnötig die Komplexität.
  • Das letztliche Ziel guter Architektur ist Kostensenkung. Wenn Entwicklung und Wartung mehr Zeit kosten, ist es eine gescheiterte Architektur.
  • Es ist interessant, wie gut sich ein 2010 veröffentlichtes Buch gehalten hat.
  • Das Buch „Design It“ ist gut, weil die Workshop-Aktivitäten für Techniker nützlich sind und es nicht auf einen bestimmten technischen Architekturstil festgelegt ist.
  • John Ousterhouts Buch „A Philosophy of Software Design“ ist nützlich. Es enthält viele leicht verständliche Ratschläge und Beispiele.
  • „Risikoabhängig“ wäre vielleicht die bessere Bezeichnung. Ich frage mich, warum Programmierer die Formulierung „[X]-basiert“ so mögen.
  • Ich kenne das konkrete Buch nicht, aber die Texte des Autors über „intellektuelle Kontrolle“ sind sehr aufschlussreich.
  • Wir hatten vor ein paar Jahren im Unternehmen einen Buchclub dazu, und ich fand es sehr repetitiv.
  • Es stellt sich die Frage, ob das eine gute Ressource für Leute ist, die ein bedeutendes Open-Source-Projekt starten, oder für Solopreneure. Es wird nach Empfehlungen für Bücher oder Ressourcen für Solo-Entwickler gefragt.
  • Softwarearchitektur ähnelt allgemeiner Architektur, aber in der Software gibt es keine Figur wie Isaac Newton, daher existiert nichts Entsprechendes zum Bauingenieurwesen. Die nächste Vergleichsfigur wäre Claude Shannon.
  • Leitfaden zum Lesen willkürlicher Begriffe. Gewünscht wird ein mathematisches Modell. Vage, von Menschen geschaffene Begriffe sind nur Hacks, um Ideen zu übersetzen.