Direkt zum Hauptbereich

Scrum für Hardwareprodukte (längerer Artikel mit vielen Verweisen)

Die Entwicklung von Hardware wird von Teams als aufwändiger gesehen als die Entwicklung von Software. Während neue Software schnell getestet und schnell angepasst werden kann, würde die ständige Produktion von Bauteilen schnell ins Geld gehen. Kann man Hardware überhaupt agil entwickeln? In diesem Beitrag gibt es die Verweise zu ein paar Artikeln im Netz.

Ich muss zugeben, dass meine Noten im Studium in den Hardwareprojekten nicht so gut waren. Wenn ich Schaltungen aufbauen wollte, die ich nicht genau verstanden hatte, gab es Fehler. Ich musste oft lange suchen, um die Fehler zu finden und zu reparieren. Und dann trat gleich der nächste Fehler auf! Sobald ich aber mit Software hantierte, sah die Situation schon anders aus. Das machte Spaß. Schnell war getestet und die neue Funktionen ausprobiert. Die Programmierung von FPGAs und PICs gefielen mir. Das Erstellen, Ändern und Testen von Hardware kostete mich einfach mehr Zeit.

Was ist Hardware? Was ist der Unterschied zu Software?

Unter Hardware verstehe ich in diesem Artikel physische Bauteile oder ganze Anlagen, die aus einem oder mehreren Materialien hergestellt wird und deren Herstellung Zeit braucht. Das Testen von Hardware ist aufwändiger, weil bestimmte Eigenschaften oder ein bestimmtes Verhalten nicht so einfach getestet werden können.

Kann man Hardware überhaupt agil entwickeln? Dazu würde ich mir zunächst das Unsicherheitsprofil ansehen. Wenn man erkennt, dass weder die Anforderungen noch das technische Konzept klar sind, würde eine agile Arbeitsweise helfen, um schneller ans Ziel zu kommen.

Neil Johnson beschreibt in einem Beitrag den Unterschied zwischen einer wasserfallartigen und eine agilen Hardwareentwicklung /1, Figure 2/. Beim Wasserfall arbeitet man sich durch die verschiedenen Projektphasen, von der Spezifikation über Design und Verifikation zur Software (in der Hardware) und der Physik des Produktes. In einer agilen Arbeitsweise gehe ich in einer Iteration alle Phasen durch. Aber die Entwickler beschränken sich auf bestimmte Teile des Produktes. (Agile Softwareentwickler arbeiten ähnlich.)

Der Begriff Scrum kommt aus der Hardwareentwicklung

Der maßgebliche Artikel von Takeuchi und Nonaka über Produktentwicklung, der zur Prägung des Namens "Scrum" führte, beschrieb die Hardwareentwicklung bei Honda (PKW) und Canon (Kamera). Die Teams in diesen Firmen waren interdisziplinär und autonom. Sie bewegten sich als ganzes Team über das Spielfeld der Produktentwicklung ("moving the scrum downfield", /2, S. 4/). Wenn sich Anlagenbauer und andere Hardwareentwickler dafür entscheiden, Scrum bei sich einzuführen, gehen sie damit zu Ursprüngen von Scrum zurück.

Takeuchi und Nonaka nennen sechs Eigenschaften, die erfolgreiche Produktentwicklungsteams auszeichnet:
  • Integrierte Instabilität: Die Unternehmensführung gibt keine detaillierten Pläne, sondern sinnvolle aber sportliche Ziele aus und lässt zur Umsetzung viel Freiheit.
  • Selbstorganisierte Projektteams: Die Teams fangen praktisch bei Null an und verhalten sich wie ein Startup-Unternehmen. Sie sind autonom. Ein Team entwickelt sich, indem die Mitglieder ihre einzelnen Kompetenzen an die anderen weitergeben.
  • Überlappende Entwicklungsphasen: Statt in festen abgegrenzten Phasen zu arbeiten, gehen die einzelnen Entwicklungsphasen ineinander über.
  • Multilernen: Durch den direkten Kontakt zum Markt lernt das Team, was ein Produkt gut macht. Es fängt an zu experimentieren, bis es die Marktwünsche bedienen kann. Das Wissen verbreitet sich über die verschiedenen Ebenen (Person, Team, Abteilung, Unternehmen) und über die verschiedenen Fachgebiete.
  • Sanfte Steuerung: Die Unternehmensführung überlässt die Projektteams nicht einfach sich selbst. Durch die Zusammenstellung der Teams, Rhythmen und andere Mechanismen wird Chaos vermieden.
  • Wissenstransfer: Das neue Wissen und die neue Erfahrungen wird an den Rest der Organisation weitergegeben, z. B. indem Projektteams aufgelöst und die Mitglieder auf neue Teams verteilt werden.
Wer Anlagen oder Hardware baut, kann sich von diesen sechs Eigenschaften inspirieren lassen. Gehen wir nun von den allgemeinen Eigenschaften zu konkreten Praktiken.

Test Driven Development kommt aus der Hardware

Nancy Van Schooenderwoert beschreibt in einem Beitrag bei InfoQ die Ursprünge von Test-first, einer wichtigen agilen Arbeitsweise /3/. In den den 1970er Jahren haben Ward Cunningham und Kent Back an damals neuen Mikroprozessoren geforscht. Um zu verstehen, was die Maschinen machen, haben sie immer erst Tests formuliert.

Scrum in Hardware Guide und eXtreme Manufacturing (XM)

Joe Justice und das Team von Wikispeed haben praktisch gezeigt, wie man Hardware mit strengen Auflagen an das Ergebnis entwickeln kann. Wikispeed baut verkehrssichere Autos. Jede Woche gibt es eine neue Version. Joe und die Wikispeed-Teams benutzen Scrum, XP und objektorientierte Architektur. Die Arbeit wird nach Scrum organisiert:
  • Die Rollen von Scrum
  • Arbeiten in Sprints/Iterationen
  • Arbeit sichtbar machen
  • Velocity messen
  • Stetig verbessern
Von XP werden User Storys, Pairing und Swarming sowie TDD genutzt. Aus der objektorientierten Architektur werden die folgenden Prinzipien übernommen:
  • Modulare Komponenten
  • Verträge (für die Schnittstellen; contract first)
  • Design Muster
  • Wiederverwendung und Vererbung
Joe Justice und Fabian Schwartz haben mittlerweile die erste Version des Scrum in Hardware Guides veröffentlicht: https://www.scruminc.com/scrum-in-hardware-guide/

Aber wie geht das genau? Peter Stevens hat ab Juni 2013 zehn Xtreme Manufacturing Prinzipien genauer beschrieben /4/. Diese zehn Prinzipien sind:
  1. Optimize for Change: http://www.scrum-breakfast.com/2013/06/xm-principle-1-optimize-for-change.html
  2. Object-Oriented, Modular Architecture: http://www.scrum-breakfast.com/2013/06/xm-principle-2-object-oriented-modular.html
  3. Test Driven Development (Red, Green, Refactor): http://www.scrum-breakfast.com/2013/06/xm-principle-3-test-driven-development.html
  4. Contract-First Design: http://www.scrum-breakfast.com/2013/06/xm-principle-4-contract-first-design.html
  5. Iterate the Design: http://www.scrum-breakfast.com/2013/06/xm-principle-5-iterate-design.html
  6. Agile Hardware Design Patterns: http://www.scrum-breakfast.com/2013/06/xm-principle-6-hardware-design-patterns.html
  7. Continuous Integration Development: http://www.scrum-breakfast.com/2014/07/xm-principle-7-continuous-integration.html
  8. Continuously Deployed Development: http://www.scrum-breakfast.com/2014/07/xm-principle-8-continuously-deployed.html
  9. Scaling Patterns: http://www.scrum-breakfast.com/2014/07/xm-principle-9-scaling-patterns.html
  10. Partner Patterns: http://www.scrum-breakfast.com/2014/07/xm-principle-10-partner-patterns.html
Es lohnt sich die einzelnen Beiträge zu lesen. Im Artikel zum 7. Prinzip erfährt man zum Beispiel, dass Wikispeed eine Simulationssoftware benutzt, um das Verhalten der Hardware bei Unfällen zu simulieren. Wie das Ergebnis aussieht, kann man sich zum Beispiel auf den Folien von Joes Vortrag auf der REconf 2017 ansehen /5, Folie 8/.

Auch im Hardware Product Backlog stehen User Storys

Ich habe Hardware-Projekte gesehen, bei denen die wichtigsten Bauteile der Explosionszeichnung als Backlog Items genutzt wurden. Joe schreibt im o. g. Vortrag, dass die Anforderungen als User Storys formuliert werden. Sie sollen beschreiben, welche Erwartungen Investoren, Anwender und Leute, die die rechtlichen Anforderungen prüfen müssen, an das Ergebnis haben /5, Folie 11/.

Eric Morrow nennt im Wikispeed-Blog ein Beispiel für eine User Story: "Als Anwender kann ich mit einem Auto fahren, das weniger als 100 g Kohlendioxid pro 100 km produziert, um etwas gegen den Klimawandel zu tun." /6/

Bei Wikispeed sind die einzelnen Teams sog. Build Servers, die sich um 1 von max. 10 Modulen insgesamt kümmern. Damit mehrere Teams sich um die gleichen Ziele kümmern, gibt es noch andere Anforderungsdokumente, die auf max. 1 Seite die Marktziele und Beschränkungen auflisten /5, Folie 26/.

"Bei uns geht das aber nicht."

In mehreren Vorträgen listet Joe sechs Gründe auf, warum man angeblich nicht agil arbeiten könne /7, Folie 15/:
  1. "Unser Produkt ist so kompliziert, dass wir genaustens planen müssen."
  2. "Die Qualitätsanforderungen sind so hoch, dass wir einem festen, genau dokumentierten Ablauf folgen müssen."
  3. "Wir haben schon so viel Geld in Maschinen und Werkzeuge gesteckt."
  4. "Die Module sind so eng verzahnt, dass wir sie nicht in jeder Iteration ändern können, ohne das Ganze zu ändern."
  5. "Unsere Lieferanten sind nicht agil."
  6. "Wichtige Schritte in unserem Prozess brauchen länger als eine Iteration."

Hinter den ersten beiden Punkten steckt ein falsches Verständnis von Agilität. Die Punkte 3 und 4 sind einfach Hindernisse, die sprintweise angegangen werden. Die letzten beiden Punkte erfordern Kreativität und Zusammenarbeit. Joe hat zum Beispiel für viele Produkte, die angeblich lange Lieferzeiten haben, Lieferanten gefunden, die innerhalb eines Sprints liefern können /7, Folien 16-23/.

Es gibt also viele Ideen und Experimente für eine agile Hardwareentwicklung.

Zu diesem Beitrag gibt es eine Fortsetzung.

Ihr wollt mehr über Scrum wissen? Wir haben eine Übersichtsseite zu Scrum, über die man sich in die wichtigsten Artikel in diesem Blog einlesen kann.

Anmerkungen und Verweise


Kommentare

Beliebte Posts aus diesem Blog

Wie beschreibt man einen Workshop für eine Konferenz?

Konferenzen bieten immer ein gutes Forum, um sein Wissen und seine Erfahrungen zu teilen. Was für die Vortragenden selbstverständlich scheint, ist für die Besucher:innen oft unverständlich. Wie können Vortragende ihren Workshop in 2-3 Sätzen beschreiben, damit die Besucher:innen schnell einschätzen können, er sich für sie lohnt?

Microsoft Teams: Die neuen Besprechungsnotizen - Loop-Komponenten

  Haben Sie in letzter Zeit in einer Teams-Besprechung die Notizen geöffnet? Dort sind inzwischen die Loop-Komponenten hinterlegt. Die sind zwar etwas nützlicher als das, was zuvor zur Verfügung stand. Trotzdem ist noch Luft nach oben. Und es gibt sogar einige ernstzunehmende Stolperfallen. Hier ein erster, kritischer Blick auf das was Sie damit tun können. Und auch darauf, was Sie besser sein lassen.

Der Softwareeisberg, die Softwarepyramide - Wie sprechen wir über neue Software?

Software ist aus den Geschäftsprozessen vieler Unternehmen nicht mehr wegzudenken. Sie verwaltet Kunden- und Produktdaten. Sie automatisiert Abläufe und verhindert Fehler. Aber Software veraltet. Was machen wir, wenn wir Unternehmenssoftware erneuern müssen? Von den ersten Konzepten bis zum ersten Release ist es ein weiter Weg, mit vielen Entscheidungen. Wie sprechen wir über diese Entscheidungen?

Transparenz als Schlüssel zum Erfolg: 20 Reflexionsfragen für moderne Organisationen

Transparenz ist das Herzstück erfolgreicher Teams. Sie schafft Vertrauen und fördert Zusammenarbeit. Wenn alle Zugang zu den notwendigen Informationen haben, können sie fundierte Entscheidungen treffen und gemeinsam Lösungen erarbeiten. Dies führt zu höherer Effizienz, schnelleren Entscheidungsprozessen und besseren Arbeitsergebnissen. Transparenz ist mehr als ein Schlagwort – es gilt, sie greifbar zu machen, ein gemeinsames Verständnis davon zu entwickeln und es in die Praxis umzusetzen. Wie das gelingt und welche Vorteile es für Euer Team und Eure Organisation bringt, erkunden wir im Folgenden.

Die Stimmung in Deinem Team drehen? So wird’s gemacht.

Oder ähnlich. Mir gefiel der Titel. Vor ein paar Tagen hat mich jemand angesprochen und von einem, wohl etwas frustrierenden, virtuellen Teammeeting erzählt. Die Teammitglieder zogen lange Gesichter, schauten grimmig in ihre Kameras. Ich habe mich dann gefragt, was ich tun würde, wenn ich in so einer Situation wäre. In diesem Blogpost beschreibe ich ein paar Tipps mit denen Du die Stimmung in Deinem Team (und Deine eigene) verbessern kannst.

Die Microsoft Teams-Not-To-Do-Liste

Viele hoffen, dass es  für die Einrichtung von Microsoft Teams  den Königsweg gibt, den perfekten Plan – doch den gibt es leider (oder glücklicherweise?) nicht. Genauso wenig, wie es jemals einen Masterplan für die Organisation von Gruppenlaufwerken gab, gibt oder je geben wird. Was gut und vernünftig ist hängt von vielen Faktoren und ganz besonders den Unternehmensprozessen ab. Sicher ist nur eines: Von alleine entsteht keine vernünftige Struktur und schon gar keine Ordnung. Dafür braucht es klare Entscheidungen.

Agilität ist tot. Ausgerechnet jetzt?

Agilität wird zurückgefahren, Hierarchien kehren zurück. Doch ist das wirklich der richtige Weg in einer Welt, die immer unberechenbarer wird? Oder erleben wir gerade eine riskante Rolle rückwärts?

Effektive Dokumentation in IT-Teams: Herausforderungen und Best Practices

  Effektive Dokumentation in IT-Teams: Herausforderungen und Best Practices In der heutigen Informationsgesellschaft ist eine effiziente Dokumentation essenziell für den Erfolg von IT-Teams. Dennoch kämpfen viele Unternehmen mit veralteten, überladenen oder unauffindbaren Informationen. Dieser Artikel beleuchtet die Herausforderungen der Dokumentation, zeigt Best Practices wie den „Clean-Up Day“ und zieht Parallelen zu politischen Initiativen zur Bürokratieentlastung. Strukturierte und gepflegte Dokumentation steigert die Effizienz, reduziert Fehler und verbessert die Zusammenarbeit. Der Mut zur Löschung irrelevanter Inhalte ist dabei ein zentraler Erfolgsfaktor.

Die Digitale Transformation braucht Tempo. Also auch Konversation in Ruhe statt nur hektische Meetings

„Gesprächsrunde“ (Quelle: siehe unten) Mir sind in letzter Zeit zwei Trends aufgefallen, die auf den ersten Blick nichts miteinander zu tun haben. Zum einen gibt es vermehrt Beiträge zur Meetingkultur , vor allem auf Online-Konferenzen bezogen. Zum anderen taucht das Thema „ Widerstand der Mitarbeiter gegen Changeprojekte“ wieder einmal stärker auf. Die beiden Phänomene sind gar nicht so unterschiedlich. Ihnen gemeinsam ist die Unzufriedenheit mit unproduktiven Vorgehensweisen, mangelndem Tempo, Stockungen in Prozessen und Projekten. Kurz, beide adressieren verschiedene Aspekte des Gefühls „wir sind im Hamsterrad, und es geht wieder einmal nichts voran“. Um diese beiden Trends geht es in diesem Artikel. Und eine Einladung zu einem Event „Impuls in der Mittagspause“, in dem Stephanie Borgert eine konkrete Alternative vorstellt. Zeitfresser Meetings Dazu hat Jessica Turner Ende 2024 ein interessantes Buch veröffentlicht „Online-Meetings mit Fokus und Mehrwert“ (alle Quellen unten). Der...

Leisten! Leisten? Leisten!

Warum opfern wir so viel für den Job, selbst wenn es uns nicht wirklich weiterbringt? Ein paar blasphemische Gedanken zu einem für uns überlebenswichtigen Thema.