Software Architektur definiert und organisiert grundlegende Entscheidungen zum Systemdesign.
Software Architektur ist erfolgsentscheidend:
Die Software Architektur ist dabei eine für den Unternehmenserfolg relevante Sammlung von Entscheidungen zum Software Design und darauf gerichtete Prozessen die, sofern diese Informationen unzureichend definiert sind, ein Software-Projekt zum scheitern bringen können.
Eine gute Softwarearchitektur beruecksichtigt:
- die Beschreibung der Elemente aus denen ein Softwaresystem besteht
- Interaktionen zwischen diesen Elementen
- Entwurfsmuster (Pattern) die durch die Softwarekomposition leiten
- geltende Bedingungen (Contraints) für die Entwurfsmuster
Gute Software Architektur erfüllt alle Ziele zu denen die Software genutzt wird perfekt.
Definition Software Architektur nach Len Bass
“Die Software Architektur eines Systems ist das Set der Strukturen, die benötigt werden um Entscheidungen über das System zu treffen, welche die Software-Elemente, die Relationen zwischen ihnen und die Eigenschaften von beiden betreffen.”
Software Architektur ist zugleich Prozess und Gegenstand
Softwarearchitektur dient der Umsetzung einer Software-Spezifikation. Softwarearchitekturen sind in Form von Dokumentation und visuellen Darstellungen des Softwaredesigns sowohl Gegenstand wie zugleich Prozess.
Damit umfasst Software Architektur zum einen den Prozess des Architekturentwurfs von Software und IT-Systemen und erfordert somit eine Reihe strategischer Entscheidungen wie zugleich die optimale Präsentation und Organisation der Ergebnisse dieses Prozesses, z.B. in Form von Diagrammen und der Architekturdokumentation.
Informationen zur Software Architektur fuer alle Projektbeteiligten
In der Praxis ist es nicht ausreichend, nur einige Architektursichten zu beschreiben. Informatiker, Software-Ingenieure und Software-Entwickler benötigen vorrangig technisches Wissen, z.B. darüber, wie die Software Architektur erstellt wurde und warum sie so ist.
Andere Prozessbeteiligte im Unternehmen wie die Geschäftsleitung oder das Controlling haben einen gänzlich anderen Informationsbedarf in Bezug auf die Software-Architektur, z.B. in Bezug auf Kosten, Kostentreiber oder rein in Bezug auf strategische Unternehmensziele.
Prozesswissen zur Architekturbewertungen von Software
Prozesswissen ist unverzichtbar um eine Architekturbewertung von Software vorzunehmen. Sind alle relevanten Unternehmensprozesse über die Softwarearchitektur optimal abgedeckt?
Das Management und Entscheider im Unternehmen hingegen benötigen vorwiegend strategische Informationen beispielsweise wie Prozesse der Software ineinander greifen. Diese unterschiedlichen Informationsbedürfnisse sind in der Dokumentation durch Darstellung verschiedenartiger Softwaresichten einer Softwarearchitektur zu berücksichtigen.
Erfolgreich durch gute Dokumentation von Software Architektur
Dokumentation der Software Architektur ist das Festhalten und Aufbereiten architektonischer Entwurfsentscheidungen von Software und IT-Systemen. Das Dokumentieren von Softwarearchitektur vor, während und nach der Entwicklung dient zugleich:
- der Einsparung von Kosten für Software und IT-Systeme
- Effizienz bei Software-Entwicklung
- ermöglicht schnellste Anpassung von Software
- realisiert langlebige Software
- höchste Qualität von Software in Funktion, Design und Anwendung
Software dient immer den Unternehmenszielen
Software wird nie zum Selbstzweck, sondern zur optimalen Erreichung von Unternehmenszielen erstellt. Heute ist Softwareentwicklung bei weitem kostenintensiver als die Kosten der für den Betrieb erforderlichen Hardware. Eine gute Softwarearchitektur unterstützt immer zugleich die primären Unternehmensziele.
Fehler in der Software Architektur finden
Software Entwickler, Service-Mitarbeiter und Software Tester sind ständig auf der Suche nach Bugs und Fehlerquellen innerhalb der Software Architektur. Das systematische Aufspüren von Designfehlern bietet ein beträchtliches Optimierungspotential. Beim Auffinden eines Fehlers in dem Softwaresystem ist relevant welcher Konstruktionsfehler das Problem verursacht hat und welche weiteren Prozesse von dieser fehlerhaften Entscheidung abhängen. Das erlaubt Rückverfolgbarkeit und gibt dem Betreiber eines Softwaresystems jederzeit die Möglichkeit in systematischer Weise ein Rollback durchzuführen.
Grundlegende Regeln fuer Software Architektur
- Software-Strategie: Strategische Entscheidungen in Bezug auf die Software-Anforderungen bestimmen die gesamte Software-Architektur.
- Durchdachtes Systemdesign: Für resultierende Design-Artefakte innerhalb der Software Architektur sind Änderungen in der Regel schwierig und kostenintensiv.
- Skalierbarkeit: Alle für die Software Architektur relevanten Eigenschaften wie grundlegende Systemfunktionen, Performance und Sicherheit sind für absehbare Szenarien in der Zukunft vorab zu berücksichtigen.
- Unternehmensziele beachten: Alle Software Architektur Entscheidungen müssen sich aus Anforderungen und Unternehmenszielen ableiten lassen. Es gilt: Keine Entscheidung ohne einen guten Grund.
Vorteile durch sorgfaeltig geplante Software Architektur
- Effiziente Softwareentwicklung
- Performance gezielt steigern
- Zeiteinsparung realisieren
- Software-Budget optimieren
- gezielt Risiken minimieren
- kompakte Software in Umfang und Funktion designen
- wertvolles Wissen zu Software im Unternehmen erhalten und bewahren
Normen fuer Software-Architektur
Die Norm ISO 42010 definiert Art und Umfang der Architekturbeschreibung für Software-Systeme und Software Engineering. In der Dokumentation einer Software Architektur sind grundlegende Konzepte oder Eigenschaften eines IT-Systems in ihrer Umgebung, inklusive ihrer einzelnen Elemente, Beziehungen und Grundsätze des Softwaredesigns und der Software-Evolution festzuhalten.
Suchen Sie Experten fuer eine gute Softwarearchitektur?
Mit unserem IT-Consulting konzentrieren wir von INZTITUT unsere Beratung ganz darauf, wie Sie als Unternehmen Informationstechnologie am besten einsetzen können, um ihre Geschäftsziele zu erreichen.
Wir bieten Ihnen Expertise und verwirklichen für Sie eine moderne Softwarearchitektur. damit Sie von effizienten IT-Prozessen wirksam unterstützt werden und Ihre Geschäftsziele spielend leicht erreichen. Damit Sie sich wieder voll und ganz auf ihr Business konzentrieren können.
Digitale Transformation mit Large-Scale Agile Frameworks
Hier können Sie Large-Scale Agile Frameworks direkt bei Amazon bestellen
Wir begleiten Sie bei der Digitalisierung und beraten Sie umfassend bei der Neueinführung oder Weiterentwicklung von Software und IT-Systemen.
Wie koennen wir Sie und Ihre Organisation beim Wechsel zur agilen Softwareentwicklung unterstützen?
Mit frischen Ideen erweitern wir Ihre Perspektiven und Möglichkeiten. Unsere ganzheitliche IT-Beratung berücksichtigt somit selbstverständlich zentrale Aspekte wie Ihre Geschäftsstrategie, ihre Positionierung, ihre Mitbewerber und richtet ihre IT-Strategie wirksam darauf aus.