Mit Standardarchitektur zu mehr Softwarequalität

Die Qualität von Software bestimmt dessen Erfolg maßgeblich. Die wohl wichtigste Maßnahme zur Erreichung dieses Ziels ist eine geeignete Architektur. Mit der Composite Components Architektur existiert eine leicht zu erlernende und gleichzeitig sehr mächtige Architekturform. [...]

MUSTER UND PRINZIPIEN ALS GRUNDLAGE
Was gilt es nun also bei solch einer Standardarchitektur zu berücksichtigen? Das ´Wichtigste ist, sie muss einfach erlernbar und in der Praxis erprobt sein. In der Welt der Softwareentwicklung haben sich im Laufe der Zeit Muster etabliert, um immer wiederkehrende Probleme, schnell und einfach zu lösen. Diese Muster und Prinzipien sind nahezu allen Entwicklern bekannt.

Die Composite Component Architektur basiert auf genau diesen leicht erlernbar und praxiserprobten Mustern und Prinzipien. Sie ist also keine Neuerfindung des Autors, sondern nur eine praxistaugliche Anwendung und Kombination, eben dieser Elemente, zu einer einfachen aber sehr mächtigen Architektur, die in nahezu jeder Projektumgebung, egal welcher Größe, eingesetzt werden kann.

Bei dieser Architekturform, wird das zu entwickelnde System in Komponenten unterteilt. Dabei ist eine Komponente ein „Block“ von gleichartiger Funktionalität. Wie in Abbildung 3 zu sehen ist, könnte ein Buchhaltungssystem in die Komponenten Rechnungen, Belege und Fahrtenbuch unterteilt werden.

Die angesprochenen Komponenten werden auf eine spezielle Art und Weise umgesetzt. Wichtig dabei ist, dass jede Komponente in einen Vertragsteil (Component Contract) und einen Implementierungsteil (Component Implementation) aufgeteilt wird. Während der Vertragsteil immer gleich bleibt, ändert sich im Projektverlauf und zwischen Projekten meist immer nur der Implementierungsteil. Jede Implementierung hat jedoch nur Abhängigkeiten zu anderen Vertragsteilen. Dadurch sind Komponenten leicht wartbar, verständlich, erweiterbar, testbar und wiederverwendbar. Diese Komponenten werden Composite Components (CoCo) genannt.

Ein System, welches mit CoCos umgesetzt wurde (c) David Tielke

Ein System, welches mit CoCos umgesetzt wird, besteht nur aus diesen flexiblen Komponenten. Dadurch können einzelne oder größere Komponenten einfach ausgetauscht oder wiederverwendet werden.

Zu Beginn wurde die Entwicklung von Software mit dem Bau von Häusern verglichen und im weiteren Verlauf wurde gezeigt, dass dieser Vergleich durchaus seine Berechtigung hat. Bei der Entwicklung von Software ist es entscheidend eine hohe Produktqualität zu erzielen und dieses wird u.a. durch die Adressierung von allen qualitativen Aspekten erreicht. Dies ist jedoch nicht immer einfach und setzt spezielle Fähigkeiten, u.a. die eines Architekten, voraus. Mit der Composite Component Architektur, existiert eine sehr einfach zu verstehende Architektur, welche sich mehrfach in der Praxis erprobt hat und durch jeden Entwickler umsetzbar ist. Stürzen auch Ihre Projekte hin und wieder ein? Jetzt kennen Sie die Lösung…

*David Thielke ist freiberuflicher Softwareentwickler, Berater und Trainer.


Mehr Artikel

Gregor Schmid, Projektcenterleiter bei Kumavision, über die Digitalisierung im Mittelstand und die Chancen durch Künstliche Intelligenz. (c) timeline/Rudi Handl
Interview

„Die Zukunft ist modular, flexibel und KI-gestützt“

Im Gespräch mit der ITWELT.at verdeutlicht Gregor Schmid, Projektcenterleiter bei Kumavision, wie sehr sich die Anforderungen an ERP-Systeme und die digitale Transformation in den letzten Jahren verändert haben und verweist dabei auf den Trend zu modularen Lösungen, die Bedeutung der Cloud und die Rolle von Künstlicher Intelligenz (KI) in der Unternehmenspraxis. […]

News

Richtlinien für sichere KI-Entwicklung

Die „Guidelines for Secure Development and Deployment of AI Systems“ von Kaspersky behandeln zentrale Aspekte der Entwicklung, Bereitstellung und des Betriebs von KI-Systemen, einschließlich Design, bewährter Sicherheitspraktiken und Integration, ohne sich auf die Entwicklung grundlegender Modelle zu fokussieren. […]

News

Datensilos blockieren Abwehrkräfte von generativer KI

Damit KI eine Rolle in der Cyberabwehr spielen kann, ist sie auf leicht zugängliche Echtzeitdaten angewiesen. Das heißt, die zunehmende Leistungsfähigkeit von GenAI kann nur dann wirksam werden, wenn die KI Zugriff auf einwandfreie, validierte, standardisierte und vor allem hochverfügbare Daten in allen Anwendungen und Systemen sowie für alle Nutzer hat. Dies setzt allerdings voraus, dass Unternehmen in der Lage sind, ihre Datensilos aufzulösen. […]

Be the first to comment

Leave a Reply

Your email address will not be published.


*