Ein embedded Steuerungsprojekt kam nicht vom Fleck. Es gab keinen sichtbaren Fortschritt und die Abschätzung des Restaufwandes bis zur Fertigstellung blieb über Monate konstant. Dadurch konnte der Zeitplan natürlich nicht eingehalten werden.
Wir haben das Projekt analysiert und diverse Verbesserungsmöglichkeiten gefunden. Einerseits haben wir die Planung und die organisatorischen Prozesse, andererseits die technischen Lösungen und Entwicklungsprozesse analysiert.
Für die Entscheider haben wir verschiedene Varianten eines möglichen Projektablaufs bereitgestellt. Daraus wurde die Entwicklung eines MVP (Minimum Viable Product) gewählt, welches einen grossen Teil der Wünsche der Endkunden befriedigen konnte. Damit konnte zwar nicht alle verlorene Zeit aufgeholt werden, aber für Messen und viele Kunden konnten Produkte mit sinnvollen Teilfunktionen zur Verfügung gestellt werden.
Technisch haben wir eine möglichst klare Isolation der Software-Komponenten eingeführt, so dass die Entwicklung ohne zu grossen Abstimmungsaufwand effizient arbeiten kann. Als Entwicklungsmethodik wurde eine iterative ("agile") Lieferung von Hard- und vor allem Software ausgewählt, diese sorgte für kontinuierliche, effiziente Integration mit der Mechanik des Produktes. Durch die Verwendung von Werkzeugen zur Versionsverwaltung der Daten in Soft- und Hardwareentwicklung entstand Klarheit, welche Komponenten zusammengehören und -passen.
In diesem Projekt hat neben unseren Erfahrungen in Projektmanagement und Werkzeugen zur effizienten Entwicklung vor allem auch das Wissen unserer Software-Architekten zum Erfolg geführt.