Manifest für die Softwareentwicklung
Statt sich daran zu versuchen, die einzig wahre Entwicklungsmethode zu kreieren, konzentrierten sie sich auf die Gemeinsamkeiten effektiver und effizienter Softwareentwicklung. Sie formulierten und unterzeichneten eine Art Unabhängigkeitserklärung für die Softwareentwicklung: das „Manifesto for Agile Software Development“.
Das agile Manifest ist eine öffentliche Erklärung von vier Werten und zwölf Prinzipien der agilen Softwareentwicklung. Ziel dessen ist es, einen schnelleren Einsatz der entwickelten Systeme zu ermöglichen. Teilprozesse sollen einfach und beweglich gehalten werden, damit jederzeit Änderungen möglich sind.
Agile Frameworks haben die modernen Softwareentwicklung[3] verschlankt und die Entwicklungszeiten drastisch verkürzt. Scrum[4], Kanban[5] oder Extreme Programmierung[6] bieten die nötige Flexibilität, Transparenz und Teilhabe, die sich Kunden wünschen, um auf eine komplexe, sich dynamisch verändernde Umwelt zu reagieren.
Der Benutzer kann bei den agilen Arbeitsweisen involviert werden, muss es aber nicht. Der Fokus der agilen Entwicklung liegt auf der zügigen Auslieferung von Software-Inkrementen. Aber die agilen Frameworks entwickeln sich weiter. Dies liegt in der Natur der Agilität.
Das agile Vorgehensmodell Scrum
Der 14th Annual State Of Agile Report von Version One kommt zu dem Ergebnis, dass 75 % der Befragten Scrum oder eine Mischform als agiles Vorgehensmodell in ihrer Organisation einsetzen[7]. Damit ist Scrum das derzeit gebräuchlichste agile Vorgehensmodell.
Scrum bindet den Kunden durch regelmäßige Abstimmungstreffen in den Entwicklungsprozess ein. „Kunden“ im Sinne von Scrum können je nach Situation eine Fachabteilung oder auch eine externe Person wie ein Produktmanager sein. Das Framework trifft allerdings keine Aussagen darüber, wie Benutzer des Produktes systematisch eingebunden werden sollen.
Das iterative Vorgehensmodell Human-Centred-Design
An dieser Stelle kommt Human-Centred-Design ins Spiel. Human-Centred-Design bindet die Benutzer des Produktes durch verschiedene sozialwissenschaftliche Erhebungsverfahren und Methoden über den gesamten Entwicklungsprozess hinweg ein.
Durch eine schrittweise Herangehensweise werden immer wieder Prototypen erstellt, Tests durchgeführt, Ergebnisse analysiert und Abläufe optimiert. Der zyklische Prozess führt zu einer sukzessiven Annäherung an die optimale Lösung bei der Entwicklung von Systemen, da mithilfe der Iterationen bessere Lösungen gefunden werden. Die Entwicklung neuer Systeme wird von Beginn an begleitet, um die Gebrauchstauglichkeit zu steigern. Usability wurde vor diesem Hintergrund mehr und mehr zu einem Differenzierungs- und Erfolgsfaktor für Unternehmen.
Gemeinsamkeiten und Unterschiede von Scrum und Human-Centred-Design
In vielen Punkten sind sich agile Frameworks wie Scrum und das nutzerzentrierte Human-Centred-Design sehr ähnlich. Trotzdem treten im Projektalltag immer wieder Schwierigkeiten auf, die beiden Konzepte miteinander in Einklang zu bringen.
Beide Ansätze verfolgen das gleiche Ziel: die Entwicklung einer qualitativ hochwertigen Software. Allerdings unterscheiden sie sich in ihrer Herangehensweise. Agile Methoden beschreiben hauptsächlich die Programmierung oder das Projektmanagement. Human-Centred-Design gestaltet im Gegensatz dazu die Interaktionen zwischen Produkt und Benutzer.
Besuchen Sie auch unsere Blog-Reihe rund um das Thema Arbeiten 4.0!
Am Beginn eines Scrum-Projektes steht eine Produktvision. Sie definiert, was mit dem Projekt erreicht werden soll und gibt die Entwicklungsrichtung vor. Die Anforderungen werden aus Kunden- und Anwendersicht formuliert, wobei die Einbindung der Nutzer nicht weiter spezifiziert wird. Dadurch dominieren im Scrum funktionale Anforderungen. Nicht-funktionale Anforderungen werden nachrangig priorisiert. Dies ist im Human-Centred-Design anders. Hier überwiegen nicht-funktionale Anforderungen wie intuitive Bedienbarkeit und schnelle Erlernbarkeit durch den Nutzer.
Sowohl Human-centred-Design als auch agile Vorgehensmodelle der Softwareentwicklung kommen heute in Projekten zum Einsatz. Meist werden die Frameworks zeitversetzt und losgelöst voneinander eingesetzt. Häufig erarbeitet eine externe, spezialisierte Full-Service-Agentur aus dem Bereich Usability und User Experience das Bedienkonzept und übergibt es an den Auftraggeber, der es durch ein agil arbeitendes Entwicklungsteam umsetzen lässt. Und auch wenn die User-Research und UX-Konzeption inhouse erfolgen, wird das Bedienkonzept meist erstellt, bevor der agile Entwicklungsprozess startet.
Das Beste aus allen Welten macht sich bezahlt!
Aufgrund unserer Projekterfahrung empfehlen wir als GISA, beide Ansätze miteinander zu verknüpfen. Es gewährleistet mehr Austausch und ein besseres gegenseitiges Verständnis. Es verbessert die Zusammenarbeit und bietet das Potenzial für gebrauchstauglichere Softwarelösungen, die nicht nur aus technischer Sicht, sondern auch aus Nutzersicht höchsten Ansprüchen genügt.
Wir bei GISA nutzen dafür Dual-Track-Agil und reichern diesen Ansatz um Elemente des One Sprint Ahead und des Lean UX an. Wir verfolgen diesen pragmatischen Ansatz, um Human-centred-Design und Scrum-Prozesse in Einklang zu bringen. Am Ende ist es immer besser, wenige Nutzer in den Entwicklungsprozess einzubinden, als auf ihr Feedback zu verzichten und die Entwicklung auf Vermutungen aufzubauen.
Diese Schwierigkeiten aus dem Weg zu räumen und Unternehmen bei agilen Projekten zum Erfolg zu verhelfen, hat sich GISA zur Aufgabe gemacht. Kommen Sie auf uns zu! Mehr erfahren im Whitepaper „Nutzerzentrierte und agile Softwareentwicklung erfolgreich miteinander kombinieren“ und unter Arbeiten 4.0!
[1] Schöpfer des Extreme Programming (XP)
[2] Erfinder der ersten Wiki-Website
[3] Vgl. Siepermann 2018.
[4] Vgl. White 2020.
[5] Vgl. Anderson 2010.
[6] Vgl. Beck und Andres 2007.
[7] Vgl. Version One 2019.