Modulare Software
Der Schlüssel für Ihre zukunftssichere Software


Moderne Software muss hohe Erwartungen erfüllen.
Nicht nur an Performance und Sicherheit.
Sondern auch an die Zuverlässigkeit und Flexibilität.

Wer im digitalen Wettbewerb vorne dabei sein will, braucht daher eine moderne Software.

Die Architektur der Software hat dabei einen großen Einfluss auf den Erfolg, die Langlebigkeit sowie die Stabilität und damit die Qualität eines Systems.

Durch die Wahl der falschen Softwarearchitektur können selbst kleine Anpassungen und Neuerungen durch fehlende Mechanismen und Strukturen sehr schnell einen hohen Entwicklungsaufwand und somit einen hohen Zeit- und Kostenaufwand bedeuten.

Durch die Wahl und den Aufbau der richtigen Softwarearchitektur, kann nicht nur eine flexible und zukunftssicher Software erstellt und eine verbesserte IT-Integration ermöglicht sondern auch die Arbeit in Entwicklungsteams deutlich verbessert und die Qualität erhöht werden.

Damit Ihre Software und das Team auch künftige Anforderungen gut, bei gleichbleibender hoher Qualität meistert, sollte von beginn eine Gewisse Softwarearchitektur erstellt werden.

Ein möglicher Schlüssel zur Lösung des Problem ist die Entwicklung einer modularen Software.

Modulare Software Modulare Software


Denn genau wie modernen Anlagen, Systeme und Geräte heutzutage Modular aufgebaut sind sollte dies eine Software ebenfalls sein, um hohe Flexibilität und Erweiterbarkeit zu ermöglichen.

Jedes Softwaremodul hat dabei eine ganz spezifische Aufgabe wie z.B. die Kommunikation zu einer Hardware und beinhaltet alle die dazu nötigen Funktionen. Das Softwaremodul ist in sich geschlossen, unabhängig von andern Modulen und eigenständig lauffähig.

Durch den Modul basierten Aufbau und der Definition einer flexiblen Kommunikationsschnittstelle zwischen den einzelnen Softwaremodulen, können Softwaremodule einzelnen Entwicklern oder Expertenteams zugewiesen werden. Diese können unabhängig von anderen Bedingungen oder Entwicklern die Software für das Module erstellen, testen sowie optimieren.

Auf diese weise können Designteams, Hardware- sowie Softwareentwickler und externe Dienstleister uneingeschränkt aber trotzdem Hand in Hand zeitgleich arbeiten.

Alle erstellten Module können dann von einem Hauptprogramm oder den Untermodulen über die vorher definierte und erstellte Kommunikationsschnittstelle angesprochen und genutzt werden.

Die für das Module verfügbaren Kommunikationskommandos werden vom jeweiligen Entwickler des Moduls zur verfügung gestellt und stehen dem Entwicklungsteam zur verfügung.
Bei einem Module zur Hardwarekommunikation könnten dies z.B. die Kommandos "Connect, Start, ReadData, WriteData, Stop und Dissconnect" mit den entsprechenden Parametern sein.

Durch diese Art der Softwarearchitektur ist es auch möglich die Module je nach Anforderung beliebig zu implementieren und auszutauschen.
Bei Änderungen und Problemen müssen diese lediglich im entsprechenden Module durchgeführt und getestet werden. Alle anderen Programmteile bleiben unberührt. 

Da das Softwaremodule an sich geschlossen und eigenständig lauffähig ist, wird für die Anpassung und Tests auch nicht immer die Gesamte Infrastruktur benötigt. Dies vereinfacht und beschleunigt die Reaktionszeit für Integrationen sowie Fehlerbehebungen zusätzlich.

Expertentipp:
Für sehr höhe Flexibilität und Zukunftssicherheit, können die einzelnen Module wieder einzelne Untermodule besitzen.
Wurde z.B. ein Modul zur Datenspeicherung erstellt, was die Daten immer über den gleichen Mechanismus erhält, können hier Module für spezifische Datentypen implementiert sein. Je nach Anforderung werden die Daten dann im Excel Format, spezifischen Messdatenformat wie TDMS oder auf einem Cloudserver gespeichert.

Besonderen Vorteil hat man bei der Anbindung von Hardware.
Das Modul welches z.B. mit einer bestehenden SPS kommunizieren soll kann wiederum Untermodule für den jeweiligen Feldbus (OPC UA, EtherCAT, ProfiNET, CANOpen usw.) besitzen.
So muss nicht immer ein komplett neues Module erstellt werden und auch zukünftige Schnittstellen lassen sich problemlos integrieren.

Wir unterstützen Sie gerne bei der Entwicklung oder der Entscheidung einer passenden Softwarearchitektur für Ihre bestehenden oder zukünftigen Projekte.



 
Anruf
LinkedIn