Die meisten Projekte bei der Softwareentwicklung leiden unter einer Vielzahl schleichender Erweiterungen, sodass oftmals konkurrierende Anforderungen entstehen, die den Aufwand und die Kosten endlos in die Höhe treiben. Der Fokus auf die Lösung und die Benutzerakzeptanz ist schon lange verloren gegangen. Diese Entwicklung ist keine Seltenheit in Unternehmen, doch dem kann mithilfe von Requirement Engineering entgegengewirkt werden.
Was ist Requirement Engineering?
Requirement Engineering, auch Anforderungsanalyse genannt, ist zentraler Bestandteil des Prozesses der Softwareentwicklung.
Dabei werden die Anforderungen an das zu entwickelnde System anhand eines systematischen Vorgehens definiert. Ziel von Requirement Engineering ist es, ein einheitliches Verständnis nicht nur der Projektbeteiligten zu schaffen, sondern auch der Software.
Vorgehen bei Requirement Engineering
Sie entwickeln Systeme mit modernsten Technologien und wollen sicherstellen, dass Sie die richtigen Systeme entwickeln, die Ihr Kunde auch wirklich möchte? Wir bieten Methoden und Werkzeuge, um Anforderungen im Rahmen von Requirement Engineering effizient zu ermitteln, zu dokumentieren, zu überprüfen und zu verwalten.
Ermitteln
Mithilfe von Workshops am digitalen Whiteboard wird ein gemeinsames Verständnis über das zu entwickelnde System und die Projektziele erarbeitet. Neben der Ermittlung von funktionalen und nicht-funktionalen Anforderungen werden auch Anforderungsquellen (Stakeholder, Systeme) und deren Ermittlungstechniken festgelegt. Damit schaffen Sie einen professionellen Orientierungsrahmen für die Arbeit des Projektteams und eine Grundlage für die Stakeholder-Kommunikation. Anschließend werden Lösungen erarbeitet und bewertet, um die Anforderungen zu erfüllen und die Ziele zu erreichen.
Dokumentieren
Die Dokumentation des Ganzen zielt darauf ab, die Anforderungen adäquat zu beschreiben, damit sie beispielweise eindeutig, testbar und verständlich sind. Dies geschieht durch sogenannte User Stories und Anwendungsszenarien (Use Cases). Diese können von Stakeholder und Benutzer einfach verstanden und beurteilt werden.
Prüfen & Abstimmen
Nun kennen wir den Soll-Zustand (Pflichtenheft) und analysieren auf Basis dieses Umfangs den Ist-Zustand (Lastenheft). Hierbei sollte nicht vergessen werden, Verbesserungen in die Strukturen, Prinzipien und Prozesse einzubringen. Eine Analyse erfordert auch immer eine gewisse Art von Querdenken und Hinterfragen, denn letztendlich soll das neue System die Arbeitsabläufe verbessern.
Verwalten
Es gilt im Rahmen des Requirement Managements alles rund um das Projekt dort abzulegen, wo jeder Projektbeteiligte es finden kann. Dies geschieht im einfachsten Fall direkt im Whiteboard oder dem Projekt-Canvas, in komplexen Projekten in Anforderungsdatenbanken und Ticketsystemen wie Jira Software.
Design Thinking
Die zugrunde liegende Methode von Requirement Engineering ist Design Thinking.
Für die Anforderungsanalyse nutzen wir Design Thinking, um die Lösung aus verschiedenen Blickwinkeln zu betrachten, Umsetzungsideen zu generieren, Benutzer in die Gestaltung einzubinden und eine gemeinsame Zielsetzung für das Projekt zu entwickeln. Die Teams lernen so Grenzen zu überwinden, mit gegebenen Rahmenbedingungen umzugehen und dabei Innovatives nicht aus den Augen zu verlieren. Letztendlich ist nichts motivierender als ein klares Ziel, an dessen Formulierung man selbst mitgearbeitet hat.
Unsere Services zu Requirement Engineering
Ziel einer Anforderungsspezifikation (u. a. Lastenheft, Pflichtenheft, Fachkonzept) ist es, die Anforderungen so zu formulieren, dass zwischen dem Auftraggeber und Auftragnehmer ein gemeinsames Verständnis über das zu entwickelnde System geschaffen wird. Zur Darstellung wird natürliche Sprache verwendet.
Beratungsworkshop
Zielorientierung
Umsetzung
Eine Auswahl unsere Kundenprojekte
In zahlreichen Kundenprojekten haben wir bereits individuelle Anforderungen mit Application Development umgesetzt. Lesen Sie hier die Referenz-Storys: