Cyber Physical Systems schnell und iterativ entwickeln

Wenn sich, wie bei Cyber Physical Systems (CPS), physikalische und digitale Komponenten vernetzen, dann reichen Erfolgskonzepte der Einzelbereiche nicht mehr, um gemeinsam ein erfolgreiches Produkt zu entwickeln. Beispielsweise, weil physikalische Teile meist traditionell - d.h. sequenziell - entwickelt werden, Software dagegen in der Regel iterativ.

Das Aufeinandertreffen unterschiedlicher Vorgehensweisen und Rahmenbedingungen macht Cyber Physical Systems hochkomplex. In komplexen unvorhersehbaren Systemen ist häufige Inspektion und Adaption unerlässlich. Iterativ inkrementell vorzugehen ist hierbei die erste Wahl, um das Risiko zu kontrollieren. Dafür bieten wir Ihnen jahrelange Erfahrung im Agile Software Engineering.

Die Herausforderung: mehrere Welten, ein Ziel

Die Komplexität in der Entwicklung von CPS ist in den letzten zwei Jahrzehnten sehr stark gestiegen. Die Ursachen sind vielfältig: steigende funktionale und non-funktionale Anforderungen an die Systeme und die Ausweitung der Einsatzgebiete von der Industrie bis zum privaten Sektor. Dazu kommen die ständig wachsenden Anforderungen an die Steuerung und prädiktive Steuerung solcher Systeme.

Bei der CPS-Entwicklung treffen verschiedene Ingenieurdisziplinen zusammen: die Hardwareentwicklung, die Software zur Steuerung und das Application Management. Das - und die erforderliche Integration der Arbeitsergebnisse - verstärkt die Komplexität immens.

Die Namen illustrieren es bereits: Software ist soft im Sinne von veränderbar, flexibel, Hardware dagegen "hard" in Form von physikalischen Teilen, die, einmal produziert, nicht beliebig modifiziert werden können. Deshalb ist z. B. Refactoring bei Software praktisch Standard, bei Hardware aufwändig und teuer. Software wird in reinen Softwaresystemen kontinuierlich getestet, Hardware traditionell gegen Ende des Entwicklungszyklus.

Auch innerhalb des Softwarekosmos variieren die Spielregeln: Eine speicherprogrammierbare Steuerung (SPS) in Assembler zu programmieren ist etwas völlig anderes als eine Application in einer Hochsprache wie Java.

Empfiehlt sich Agilität in einem Cyber Physical System überhaupt?

Die Antwort ist ein klares "Ja". Weil in einem CPS drei Bereiche integriert werden müssen, entsteht ein hoher Grad an Komplexität. Häufiges "inspect & adapt" ist ein Weg, diese Komplexität zu managen und die Risiken zu minimieren: Niemand möchte erst am Ende einer langen und kostenintensiven Entwicklungsphase erfahren, dass das Zusammenspiel nicht funktioniert. Denn dann muss nicht ein Bereich zurück auf Start, sondern drei. Und niemand will auf das Produkt länger warten als unbedingt erforderlich.

Auch wenn die reine Softwareentwicklung längst agil ist - ihre Methoden lassen sich nicht 1:1 auf Cyber Physical Systems übertragen. Dabei spielt es keine Rolle, ob es sich um hardwarenahe Softwareentwicklung handelt, das Internet-of-Things (IoT), Robotics oder einen anderen Teilbereich der Cyber Physical handelt.

Das ist der Zeitpunkt für einen sehr pragmatischen Einsatz der Kreativität: Wir nehmen die unschätzbare Erfahrung aus vielen Projekten und übertragen Sie in Konzepte für das Agile Software Engineering in CPS Systemen.

Ansätze für Cyber Physical Systems

Testautomatisierung: Digital Twin

Ein digital Twin, ein digitaler Zwilling, ist eine reine Softwaresimulation des Verhaltens des physischen Systems. Das eröffnet nahezu ideale Möglichkeiten des automatisierten Testens in der hardwarenahen Softwareentwicklung. Digital Twins empfehlen sich besonders, wenn die realen Tests hohe Kosten verursachen oder wenn Entscheidungen während der Entwicklung mit Prototypen teuer, sehr langsam oder sehr gefährlich sind.

Cross-Funktionalität ist essenziell

Besonders wichtig ist z. B. der enge Austausch zwischen den Entwickler*innen der speicherprogrammierbaren Steuerung (SPS) und denen der Applikationen, um das reibungslose Zusammenspiel der Anwendungen sicher zu stellen.

Integrated Done Increment

Fertige, integrierte Produktinkremente am Ende jeder Iteration zeigen den Fortschritt der Produktentwicklung und ermöglichen frühzeitige Inspektion und Anpassung. Wichtig ist, dass alle Teile der Produktentwicklung von CPS - Hardwareentwicklung, die Software zur Steuerung und das Application Management – einen gemeinsamen Qualitätsstandard definieren und bei Bedarf individuell erweitern. Erst wenn alle Teillösungen diesen Qualitätsstandard erfüllen und in einem gemeinsamen Produktinkrement integriert sind, ist das Produktinkrement done.

Testautomatisierung: Hardware-in-the-loop (Hil)

Hardware-in-the-loop umfasst die Simulation von Hardware-Input (z.B. aus Maschinen, Fahrzeugen etc.) in die zu testende elektronische Einheit. Für Letztere ist kein Unterschied erkennbar zwischen Input aus der Simulation und dem aus der realen Hardware. Auf diese Weise sind Komponenten- und Systemtests möglich, ohne dass die Hardware – z.B. das zu steuernde Auto – real für Tests zur Verfügung stehen muss.

Ein Produkt, eine Verantwortung, eine Strategie

Häufig wird die Gesamtverantwortung für CPS Produkte auf verschiedene Verantwortungsbereiche aufgeteilt, bspw. anhand der einzelnen Komponenten. Das birgt Risiken. Eine zerteilte Geschäftsstrategie, ineffiziente Arbeitsabläufe, Overhead bei der Kommunikation oder unklare Zuständigkeiten mindern die Produktivität, während sich die Time to Market verlängert. Produkte nach Markt- und Kundensicht zu schneiden gewährt eine ganzheitliche Produktverantwortung: Ein Produkt, ein Product Backlog, ein Product Owner!

Aufwändiges Refactoring

Testautomatisierung hilft ungemein, die Aufwände für das Refactoring zu minimieren. Design-Prinzipien bei der Entwicklung von CPS und der dazu gehörenden Hardware anzuwenden reduziert die Anzahl zukünftiger unvermeidbarer Änderungen. Prinzipien wie Modulare Architektur, Contract-First Design, Iterate the Design und Optimize for change haben ihre Wirkung längst bewiesen.

Unsere Angebote zu CPS

Einführungsworkshop

Dieser kostenlose zweistündige Workshop gibt eine Einführung in die Komplexität, die bei der Entwicklung von Cyber Physical Systems auftritt, und stellt Methoden vor, um diese Systeme effizient zu handhaben. Kernthema sind die Herausforderungen beim Übertrag der Agilität in diesen Bereich. Dazu beleuchtet der Workshop typische Problemstellungen und deren Lösung beim iterativen, inkrementellen und integrativen Ansatz im Entwicklungsprozess in Cyber Physical Systems.

CPS Assessment

In diesem für CPS spezifisch entwickelten Assessment analysieren unsere Agile Coaches die Entwicklungs- und die Delivery Umgebung. Dazu führen Sie Interviews mit den beteiligten Personen und Stakeholdern (Teams, Product Ownern, Scrum Mastern, Führungskräfte etc…) anhand eines eigens dafür ausgearbeiteten Fragekatalogs. Die Analyse deckt Potentiale auf und empfiehlt Handlungsoptionen auf der Basis des präzise erfassten Ist-Zustands.

Agile Coaching

Unsere erfahrene Agile Coaches begleiten Ihre Teams dabei, die CPS-Entwicklungsumgebung gemäß den agilen Prinzipien umzustellen.  Sie coachen und etablieren den iterativen, inkrementalen und integrativen Ansatz.

Cyber-Physical-Systems ASE Add-on

Praktiken zur hardwarenahen Softwareentwicklung sind im Fokus dieses zwei Tage dauernden Workshops. Darin erlernen die Teilnehmenden, wie sie auch dann agil entwickeln können, wenn es um ein Softwareprodukt geht, bei dem Hardware eine entscheidende Rolle spielt. Zu den Themen gehören z. B. die besonderen Herausforderungen, die aufgrund der Abhängigkeit von bestimmter Hardware entsteht. Außerdem geht es um Refactoring bei Hardware und Testautomatisierung für eine hohe Produktqualität. Ein weiterer Schwerpunkt liegt auf Ansätzen, die Agilität auch in diesem Umfeld ermöglichen.

Support im Software Engineering

Unsere Agile Software Engineers unterstützen Ihre eigenen Entwickler*innen bei der agilen Entwicklung von CPS Produkten. Sie sorgen für nachhaltige, objektiv-messbare Qualität und fördern den Wissens-Transfer hin zu Ihren Teams. Dabei bringen Sie unsere außergewöhnliche Erfahrung in exzellentem Engineering und agilem Vorgehen in Ihre Projekte und Teams ein.


Case Study

Erfahren Sie hier mehr über den wichtigen technischen und prozessualen Beitrag der andrena Entwickler*innen und Scrum Master zur Weiterentwicklung der Software-Produkte und der Entwicklungsprozesse bei der Brückner Maschinenbau GmbH.

Agile Coaching und Software-Entwicklung im Maschinenbauumfeld

Download (98,9 KiB)


"Iterativ & inkrementell vorzugehen schafft Sicherheit, gerade in hochkomplexen Systemen wie CPS. Das ist zugegebenermaßen eine Herausforderung - aber eine, die durchaus handelbar ist!"

Fahd-Al-Fatish, Agile Coach

Einige unserer Referenzen zu CPS

Maschinenbau

Projekt: Qualitätsüberwachung

Die Firma ist einer der führenden Hersteller für Crimpmaschinen. Seine zuverlässigen Automaten sind z. B. im täglichen Einsatz bei Automobilindustriezulieferern für Kabel und Leitungen weltweit. In diesem Bereich ist die Qualität und Sicherheit des Crimpmvorgangs unerlässlich. In diesem Projekt wurde das Qualitätsüberwachungs-Modul für die Automaten neu konstruiert. Dazu zählt nicht nur die automatisierte Überwachungssoftware, sondern auch die Sensorik und Steuerung.

Maschinenbau, Intralogistik

Projekt: Softwareplattform

Das Unternehmen wollte mit der neuen Plattform die Steuerung und Look & Feel für alle seine Automatenportfolio standardisieren und vereinheitlichen. Für jede Automatenline gibt es dementsprechend eine spezifische Erweiterung für die Steuerungsbedürfnisse dieser Linie. Ein wichtiges Geschäftsziel war es, mit dem Einsatz dieser Plattform den Anpassung- und Umsetzungsaufwand der individuellen Kundenwünsche bei der Bestellung durch Konfigurierbarkeit zu reduzieren. Mit der neuen Architektur wurde die zugewachsene Komplexität im SPS-Bereich durch Verlagerung von Steuerungssoftware in C# reduziert und optimiert.

Industrie, Gebäudemanagement

Projekt: Zutritt Kontrollsystem

Bei diesem Projekt ging es um die Entwicklung eines cloudbasierten Zutritt Kontrollsystems mit einer Mobilen App Steuerung. Das System beinhaltet nicht nur die elektronische Zugangsfunktionalität mit Hardware und Software, sondern auch das Monitoring und nahtlose Anbindung zu den anderen Produkten im Portfolio. Hohe Sicherheits- und Lastanforderungen haben hier eine wichtige Rolle gespielt.

Sondermaschinenbau

Projekt: Neuentwicklung eines Microservice-Ökosystems

Die Firma ist einer der führenden Hersteller von Sondermaschinen für Produktions- und Verpackungsanlagen. Kunden sind pharmazeutische und medizintechnische Unternehmen, sowie Markenartikelhersteller für Consumer- und Home-Care Produkte. andrena unterstützt den Kunden bei der Neuentwicklung eines Microservice-Ökosystems zur Bereitstellung des Human-Machine-Interface (HMI) der Sondermaschinen. Zur Bedienung der Sondermaschinen werden Touchpanels mit einer Webanwendung eingesetzt, die über REST an das Backend auf einem Industrie PC angebunden ist. Das Backend bildet die Schnittstelle zur Maschinensteuerung (SPS) und kommuniziert mit dieser in Echtzeit zur lückenlosen Überwachung des Produktionsprozesses. Durch die Neuimplementierung konnte ressourcenintensive Logik von der SPS in das Backend verlagert werden. Zum Testen der Software kommen u. a. Integrationstests gegen echte und gemockte SPS zum Einsatz.

Messtechnik

Projekt: Steuerungssoftware für NMR-Spektrometer in streng reguliertem Umfeld

Mithilfe einer nutzerfreundlichen Webanwendung soll ein Magnetspektrometer automatisiert ferngesteuert werden, um mithilfe gemessener Kernspin-Resonanzspektren Rückschlüsse auf Biomarker in Körperflüssigkeiten und damit eine humanmedizinische Diagnostik zu ermöglichen. Genutzt wird die Anwendung in medizinischen Laboren. Neben den strengen regulatorischen Anforderungen an die Qualität des Produkts gab es auch strenge Anforderungen an den Entwicklungsprozess insgesamt. Besonderes Augenmerk lag auf einer sowohl performanten, aber gleichzeitig modernen Kommunikations-Schnittstelle der einzelnen Serverbestandteile mittels des GRPC-Protokolls, sowie die Kombination unterschiedlicher Technologischer Ökosysteme im Umfeld von C, C++, Java (Spring Boot) und Angular. Durch die Automation verschiedenster Tests der einzelnen beteiligten Komponenten, konnte eine integrierte Produktentwicklung ohne starke Kopplung der beteiligten Teams ermöglicht werden. Automatisiert getestet wurde sowohl vollintegriert mit Hardware als auch mithilfe eines digitalen Zwillings.

IT-Dienstleistungen

Projekt: IoT-System zur Überwachung des Niederspannungsnetzes

Gestartet als Ausgründung eines Energiedienstleisters ist das Unternehmen mittlerweile rechtlich eigenständig und entwickelt IoT-Lösungen im Bereich Niederspannungsnetze, um Netzbetreiber fit für Energiewende und E-Mobilität zu machen.  Das Produktportfolio umfasst eine ganzheitliche Lösung, bestehend aus Sensorik, Gateways und einem Cloud-basierten Portal zur Überwachung des Betriebs. Eine Herausforderung bei der Produktentwicklung ist die enge Verzahnung von Hard- und Softwareentwicklung entlang der Wertschöpfungskette.

Unsere Agile Coaches für Cyber Physical Systems

Bild von Fahd Al-Fatish
Fahd Al-Fatish
Bild von Martin Blersch
Martin Blersch

Kontakt

Sie möchten sich unverbindlich beraten lassen oder haben konkrete Fragen? Hier finden Sie Ihr Ansprechpartner*innen

Ihre Ansprechpartner*innen