Agile Entwicklung für eingebettete Systeme

Single board computer

Bitte verwenden Sie agile Entwicklung zur Einrichtung dieses eingebetteten Systems.

Als spezifische Hardware Plattformen für Rechnerleistungen in verschiedenen Anwendungen kombinieren eingebettete Systeme die besten Aspekte in den schönsten Vorstellungen jedes Technikbegeisterten: Hardware Design und Software Entwicklung. Designprozesse für einfachere eingebettete Systeme gelten eher als linear und die Hardware und eingebettete Software kann sogar parallel von verschiedenen Designteams entwickelt werden. Da die Systeme immer komplexer und die Anforderungen der Kunden immer vielfältiger werden, müssen Designteams die konventionelle Methodik noch einmal überarbeiten.

Agile Entwicklungsmethodik bezieht sich normalerweise auf die Software, doch diese Design- und Entwicklungstechniken können an Hardware Design, einschließlich eingebetteter Systementwicklung, angepasst werden. Da eingebettete Software tatsächlich viele der gleichen Prozesse und Ideen verlangt, die man auch in der traditionellen Software-Entwicklung verwendet, kann man diese auch für agile Methodik zugänglich machen. Wenn man eingebettetes Software Design und PCB Design in einem kohärenten Arbeitsfluss kombiniert, muss man beide Prozesse neu zu einem iterativen und fortlaufenden Prozess zusammenfassen.

Wenn diese Methoden korrekt umgesetzt werden, können sie dafür sorgen, unnötige Umgestaltungen zu verhindern und sicherstellen, dass die Funktionalität eines Produkts besser auf die Anforderungen des Kunden abgestimmt ist. Um dies in die Realität umzusetzen, benötigt man die richtigen Design- und Kollaborationstools, die an jegliche Designmethodik, einschließlich agiler Entwicklung, angepasst werden können.

Agile Entwicklung an Hardware Design anpassen

Ich habe noch an keinem Software Projekt mitgearbeitet, bei dem die Deadline oder das Budget eingehalten wurden. So sieht die Realität in der Branche nun einmal aus. Projekte zur Hardware Entwicklung scheinen zumindest die Tendenz zu zeigen, rechtzeitig abgeschlossen zu werden, weshalb viele Projektmanager vielleicht lieber Hardware Projekte betreuen. Ganz gleich, wie umsichtig Projektmanager die Entwicklung einer neuen Software Plattform planen, es kommt in so gut wie jedem Fall zu unvorhergesehenen Inkompatibilitäten oder Änderungen der Anforderungen des Kunden.

Einer der Grundsätze der agilen PCB Designprozesse besagt, dass Änderungen im Designprozess nicht zu verhindern sind. Von daher müssen Designteams auf Änderungen der Kundenanforderungen, elektrischer Funktionalität, Herstellbarkeit und sogar des mechanischen Designs für Gehäuse und Verpackung vorbereitet sein. In eingebetteten Systemdesigns werden Entwicklungsteams mit zwei verschiedenen Arten von Änderungen konfrontiert: Störungen der PCB Bauteilversorgungskette und der eingebetteten Software.

Die Umsetzung zentraler iterativer Prozesse der agilen Entwicklung unterstützt Designteams dabei, sich im Entwicklungsprozess und bei anfallenden Adressänderungen rasch anzupassen und sich nicht erst im Anschluss an die Chargenprüfung bei Abschluss der Entwicklung damit zu beschäftigen. Dafür ist eine konsequente und klare Kommunikation unter den Teammitgliedern und mit dem Endkunden nötig. Da die eingebettete Software und Hardware eines bestimmten Projekts gleichzeitig entwickelt werden können, müssen beide entsprechenden Teams eng zusammenarbeiten.

Embedded systems design 

Wie verändert sich der traditionelle Arbeitsablauf?

Zu Beginn sollten die Anforderungen an Design und Funktionalität deutlich definiert werden, sowohl in Bezug auf die Hardware als auch auf die eingebettete Software. An diesem Punkt ist die Kommunikation mit dem Kunden ausschlaggebend, denn nur so wird sichergestellt, dass der Kunde vollständig die Funktionalität und Umsetzbarkeit seines neuen Produkts versteht.

Als Bestandteil der definierenden Anforderungen sollten Meilensteine deutlich im Laufe des Projekts festgelegt, jedoch auch an Änderungen angepasst werden. Das Hinarbeiten auf Meilensteine bei gleichzeitiger Anpassung von Designänderungen der Hardware und eingebetteter Software geschieht in einem iterativen Prozess. Dieser iterative Prozess ist der zentrale Punkt der agilen Entwicklungsmethoden, sowohl im Software als auch im Hardware Design.

Ein gemeinsames Problem der linearen Designprozesse besteht im Mangel an periodischen Prüfungen. QS wird meist zu spät während des Prozesses angewandt, so dass Umgestaltungen aufwändig und teuer ausfallen. PCB Design und Software Prüfungen sollten während des gesamten Designprozesses durchgeführt werden. Bei der Hardware des Projekts untersucht man die Funktionalität am besten mithilfe von Funktionen zur Regelprüfung und elektrischen Simulationen vor Herstellung der Prototypen. Dadurch kann man Designänderungen deutlich früher während des Designprozesses einplanen.

BGA escape routing on a tan PCB 

Es gibt viele Varianten agiler Prozesse und die jeweils beteiligten Arbeitsabläufe und Ideen sind zu vielfältig, um sie in einem einzelnen Artikel aufzulisten. Im Zentrum der erfolgreichen agilen Entwicklung für eingebettete Systeme liegt die Nutzung von Design Software mithilfe der richtigen Entwicklung, Datenverwaltung und Kollaborationsfunktionen.

Verwendung von Kollaboration und Tools zur Versionskontrolle

Die Software Branche ist seit Jahren für die umfangreiche Nutzung von Tools zur Versionskontrolle bekannt und Hardware Designplattformen kommen diesem Trend ebenfalls nach. Das Problem mit typischen PCB Designplattformen besteht darin, dass die eingebetteten Hardware und Software Bereiche eines Projekts traditionell auf mindestens zwei verschiedene Programme begrenzt sind. Deshalb benötigt man noch ein weiteres Tool zur richtigen Kollaboration und Versionskontrolle während des Projekts.

Eine Designplattform, die alle standardisierten und fortgeschrittenen PCB Designtools bietet, die für Hardware Design und eingebettete Software Entwicklung benötigt werden, vereinfacht auf angenehme Weise die Zusammenarbeit zwischen Teammitgliedern an einem einzelnen Projekt. Wenn Tools zur Versionskontrolle zusammen mit diesen Funktionen integriert werden, kann Ihr Team rasch alte Designversionen wenn nötig wieder aufnehmen und den in der Software Entwicklung verwendeten Trial-and-Error Prozess übernehmen.

Da Bezug und Herstellung von Bauteilen für jedes Hardware Projekt unabdingbar sind, sollten sich periodische agile Teambesprechungen während der Design-Iteration auf die Bestimmung notwendiger Designänderungen konzentrieren, um Störungen in der Versorgungskette entgegenzukommen. Diese können das Design eingebetteter Software während des Projekts beeinflussen.

Wenn Ihr Team über Informationen zu Bezug und Alterung innerhalb Ihrer PCB/eingebetteten Software Designplattform in Echtzeit verfügt, können Sie problemlos Bauteile in Ihrem Gerät umtauschen und sogar die für die Designänderungen benötigte Zeit begrenzen. Wenn Ihr Team zu einem frühen Zeitpunkt während des Designprozesses Zugriff auf diese Bezugsinformationen hat, kann es später auftretende Designänderungen verhindern, da Sie Bezugsprozesse prognostizieren und Ihre Hardware Plattform wenn nötig anpassen können.

Diese schematischen Funktionen für das PCB Layout und Designfunktionen eingebetteter Systeme in Altium Designer® können ab jetzt mit den Funktionen zur Datenverwaltung von Altium Concord Pro® integriert werden, so dass Designer ein vollständiges Toolset für die agile Entwicklung eingebetteter Systeme nutzen können. Die TASKING Funktionen in Altium Designer bieten Designern ein Toolset nach Branchenstandards, das benötigt wird, um eingebettete Systeme für viele verschiedene Anwendungen zu erstellen.

Kontaktieren Sie uns oder laden Sie eine kostenlose Testversion von Altium Designer und Altium Concord Pro herunter. Sie erhalten Zugriff auf die besten Routing-, Layout-, Simulations- und MCAD-Kollaboration-Tools in einem einzigen Programm. Sprechen Sie noch heute mit einem Experten von Altium und erfahren Sie mehr.

Über den Autor

Zachariah Peterson


Zachariah Peterson has an extensive technical background in academia and industry. Prior to working in the PCB industry, he taught at Portland State University. He conducted his Physics M.S. research on chemisorptive gas sensors and his Applied Physics Ph.D. research on random laser theory and stability.

His background in scientific research spans topics in nanoparticle lasers, electronic and optoelectronic semiconductor devices, environmental systems, and financial analytics. His work has been published in several peer-reviewed journals and conference proceedings, and he has written hundreds of technical blogs on PCB design for a number of companies.

Weitere Inhalte von Zachariah Peterson
Vorheriger Artikel
Intelligente Programm-Architektur für Komponentenbibliotheke
Intelligente Programm-Architektur für Komponentenbibliotheke

Die Organisation erfolgt, bevor man etwas unternimmt, damit man, wenn man etwas unternimmt, nicht durchein...

Nächster Artikel
Ein erster Blick auf Altium Designer 20
Ein erster Blick auf Altium Designer 20

Im November kommt Altium Designer 20 auf den Markt, und wir dachten, Sie würden gerne von ein paar langjähr...