Die Software-Architektur

Die Software-Architektur spielt in Prozessverbesserungsmodellen eine wichtige Rolle. Durch die Software-Architektur werden die Komponenten des Systems mit Ihren Verbindungen aufgezeigt. Oft wird die Software-Architektur auch als Fundament einer Software bezeichnet und in ein grobes und feines Design zerlegt.

Die Software-Architektur ist ein grober Überblick über das System, welches entwickelt oder betrachtet wird. Durch dieses grobe Design sind Sie in der Lage zu verstehen, wie das System im Großen aussieht und wie die einzelnen Komponenten zusammenspielen. Um die Architektur zu strukturieren, gibt es sogenannte Architekturstile. Diese fassen Best Practices zusammen und stellen einen allgemeingültigen Weg für zur Software-Architektur bereit. In der objektorientierten Programmierung finden sich viele solche Stile und Muster. Vor der Auftragsvergabe wird auch gerne die Performance oder Robustheit einer Software-Architektur betrachtet und bewertet, gerade im Automotive-Bereich.

Jedes Software-System besitzt eine Software-Architektur – ob nun bewusst modelliert oder implizit vorhanden. Zur Modellierung können bestimmte Darstellungstypen aus der UML genutzt werden. Die Software-Architektur darf kein Selbstzweck sein und sollte angemessen sein. Dabei braucht eine kleine Android-App bspw. deutlich weniger Überlegungen über die Architektur, als eine Software-Architektur, die einem Automobil zu Grunde liegt. Sie sollten sich immer fragen, ob die Software-Architektur inkrementell in kleinen, rückgekoppelten Schritten erfolgen und agile Ansätze implementieren kann.

In Prozessverbesserungsmodellen im Automobilbereich müssen Sie weitere Anforderungen an die Software-Architektur erfüllen. Ein wichtiges Thema ist in diesem Bereich die Traceability. Dabei geht es grob gesprochen darum, wie Sie von Ihrer Software-Architektur zu den vorherigen Schritten (Anforderungen) gelangen können und wie die Elemente in der Software-Architektur in die weiteren Schritte umgesetzt werden. Auch sollten Sie sich Gedanken darüber machen, wie Eigenschaften der Software-Architektur getestet werden können. Dabei tun Sie gut daran, wenn Sie im Test darstellen, wie Sie Elemente der Software-Architektur mit Testfällen abdecken.

Im Bereich der Funktionalen Sicherheit steht auch die Software-Architektur im Mittelpunkt. Hier geht es überwiegend im Redundanzen für Funktionen oder auch die Dekomposition von Elementen. Im Automotive Bereich gibt es durch die Autosar Bestrebungen einheitliche Beschreibungen und Standards für den Austausch von Software-Architektur sicherzustellen. Skalierung, Wiederverwendbarkeit und Austausch stehen im Vordergrund.

Weitere Informationen zu Software und Architektur

Teilen und Kommunizieren

 
[p1 size='tall']