Agile Produktentwicklungsprozesse
Da immer mehr elektronische Hard- und Software in traditionelle mechanische Produkte integriert wird, suchen Hersteller nach besseren Wegen, um Konstruktionsaktivitäten über technische Disziplinen hinweg zu integrieren. Dadurch werden viele Design- und Entwicklungspraktiken ausgetauscht. Eine solche Initiative, die agile Produktentwicklung, beinhaltet die Anwendung agiler Methoden auf das mechanische Design, das elektrische Design und die breitere Produktentwicklung. …
Agile Produktentwicklungsprozesse Weiterlesen „
Da immer mehr elektronische Hardware und Software in traditionelle mechanische Produkte integriert werden, suchen Hersteller nach besseren Wegen, um Konstruktionsaktivitäten über Ingenieurdisziplinen hinweg zu integrieren. Dadurch werden viele Design- und Entwicklungspraktiken ausgetauscht. Eine solche Initiative, die agile Produktentwicklung, beinhaltet die Anwendung agiler Methoden auf das mechanische Design, das elektrische Design und die breitere Produktentwicklung.
Definition von Agile für Hardware
Ein guter Ort, um zu verstehen, wie agile Methoden für die Produktentwicklung gelten, ist der Wikipedia-Eintrag zur agilen Softwareentwicklung.
Agile Softwareentwicklung ist eine Gruppe von Softwareentwicklungsmethoden, die auf iterativer und inkrementeller Entwicklung basieren und bei denen Anforderungen und Lösungen durch die Zusammenarbeit zwischen selbstorganisierenden, funktionsübergreifenden Teams entstehen. Es fördert adaptive Planung, evolutionäre Entwicklung und Bereitstellung sowie einen iterativen Ansatz mit Zeitrahmen und fördert eine schnelle und flexible Reaktion auf Veränderungen. Es ist ein konzeptioneller Rahmen, der vorhergesehene Interaktionen während des gesamten Entwicklungszyklus fördert.
Quelle: Wikipedia-Eintrag zur agilen Softwareentwicklung
Interessanterweise stehen diese Eigenschaften in direktem Kontrast zu traditionellen Produktentwicklungsansätzen, wie sie es bei vielen Softwareentwicklungsmethoden vor zehn Jahren taten. Produktanforderungen werden oft frühzeitig eingefroren. Ingenieurorganisationen sind oft starr mit klaren Autoritätslinien strukturiert. Entwicklungspläne werden oft weit im Voraus festgelegt.
Dennoch ist die agile Softwareentwicklung weit verbreitet. Heutzutage verwenden die meisten Softwareentwicklungsorganisationen eine Variation dieses Frameworks. Seine Anwendbarkeit auf die Produktentwicklung erfordert jedoch einige Übersetzungen. In Tabelle 1 unten zeigt die linke Spalte die Kernprinzipien des Agilen Manifests gemäß dem Wikipedia-Eintrag zur agilen Softwareentwicklung. Die rechte Spalte zeigt die Umsetzung dieser Prinzipien in die agile Produktentwicklung.
Prinzipien des agilen Manifests |
Erfahrung in der agilen Produktentwicklung |
Individuen und Interaktionen über Prozesse und Werkzeuge. Individuen und Interaktionen: In der agilen Entwicklung sind Selbstorganisation und Motivation ebenso wichtig wie Interaktionen wie Co-Location und Pair Programming. |
Zusammenarbeit und Problemlösung sind wichtiger, als einem bestimmten Prozess oder Verfahren zu folgen. Da mechatronische Probleme Disziplinen umfassen, müssen sich Ingenieure in den besten Teams organisieren. Darüber hinaus sollten diese Teams befugt sein, Probleme zu verfolgen und zu lösen. |
Funktionierende Software über umfassende Dokumentation. Arbeitssoftware: Arbeitssoftware ist nützlicher und willkommener als die bloße Präsentation von Dokumenten für Kunden in Besprechungen. |
Funktionierende Prototypen, sowohl physisch als auch digital, sind wichtiger als technische Ergebnisse, die schließlich bei der Designfreigabe übergeben werden. Der Fokus sollte auf der Erfüllung der Anforderungen an Leistung und andere Eigenschaften liegen. |
Zusammenarbeit mit dem Kunden über Vertragsverhandlungen. Kundenzusammenarbeit: Anforderungen können zu Beginn des Softwareentwicklungszyklus nicht vollständig erfasst werden, daher ist eine kontinuierliche Einbeziehung von Kunden / Stakeholdern sehr wichtig. |
Ein Kunde oder ein gleichwertiger interner Vertreter muss eng in den Entwicklungsprozess eingebunden sein. Da bei der Konstruktion mechatronischer Produkte immer wieder Probleme auftreten, müssen Verifizierungs- und Validierungsschritte durchgeführt werden. Dies führt zu einer Verfeinerung der mechatronischen Anforderungen während des Entwicklungsprozesses. |
Reagieren auf Veränderungen nach einem Plan. Reagieren auf Veränderungen: Agile Entwicklung konzentriert sich auf schnelle Reaktionen auf Veränderungen und kontinuierliche Entwicklung. |
Der Schwerpunkt sollte auf die Fähigkeit der Organisation gelegt werden, auf die Entwicklungsprobleme zu reagieren, anstatt auf die Fähigkeit, sich an einen bestimmten Prozess oder ein bestimmtes Verfahren zu halten. Die Organisation sollte daher in der Lage sein, auf Probleme in der mechatronischen Entwicklung agil und flexibel zu reagieren. |
Herausforderungen durch Agile adressiert
Offensichtlich gibt es einige interessante Implikationen, die sich aus der agilen Produktentwicklung ergeben. Mit ihrer Annahme werden jedoch zwei im Folgenden angesprochene Herausforderungen direkt angegangen.
Trend |
Herausforderung angegangen |
Vorteil zur Verfügung gestellt |
Das Sichtbarkeitsmandat für Engineering Operations |
Engineering Manager müssen neue designbasierte Metriken ableiten, die den Fortschritt ausgereifter Produkte messen. |
Die Betonung der Arbeit mit Prototypen über die Ergebnisse verschiebt das Denken der Führungskräfte über ergebnisbasierte Metriken. Dieser Schwerpunkt schafft die Voraussetzungen für die Definition neuer designbasierter Metriken. |
Der kommende Krieg um technische Talente |
Technische Manager müssen Wege finden, Ingenieure der Generation Y zu rekrutieren, indem sie andere Vorteile als eine finanzielle Entschädigung nutzen. |
Gen-Yers sind von Natur aus eine kollaborative Generationenkohorte und möchten sofort etwas bewirken. Die Betonung der Interaktionen spricht ihre natürlichen Tendenzen an. Die Möglichkeit, in diesem Rahmen beizutragen, ermöglicht es ihnen, sofort Wirkung zu erzielen. |
Schritte zur Verfolgung von Agile
Es gibt veröffentlichte Berichte und Berater, die umfassende Anleitungen zum Einsatz agiler Methoden enthalten. Die meisten dieser Leitprinzipien richten sich jedoch eher an die Bedürfnisse einer Softwareentwicklungsorganisation als an eine Engineering-Organisation, die mechatronische Produkte entwickelt. Viele der Schritte sind ähnlich, aber es gibt einige wichtige Unterschiede:
- Mehr Stakeholder einbeziehen: Aus der Perspektive der Menschen erfordert die Entwicklung eines mechatronischen Produkts die Einbeziehung von Mechanik-, Elektro- und Softwareingenieuren sowie von Fertigungs-, Qualitäts-, Beschaffungs- und Serviceorganisationen. Dies ist eine deutlich vielfältigere technische Gruppe von Menschen als diejenigen, die an der agilen Softwareentwicklung teilnehmen, die hauptsächlich aus Softwareentwicklern, Tests und mehr besteht. Der Engineering Manager muss diese notwendige organisatorische Komplexität erkennen und Teams bei der Selbstorganisation unterstützen.
- Selbstorganisierende Struktur: Auf den ersten Blick könnte man annehmen, dass die agile Produktentwicklung chaotisch ist, da formale Prozesse selbst organisiert und de-betont werden müssen. Aber nur weil es keinen formalen Prozess gibt, bedeutet das nicht, dass die agile Produktentwicklung nicht strukturiert ist. Die Realität sieht ganz anders aus. Trotz dieser Struktur gibt es jedoch einen Übergang weg von einem formalisierten Prozess. Engineering-Manager müssen ihre Ingenieure durch diesen Übergang ermöglichen.