Entwickler in den Fängen des Marketings

Der externe Kunde

Für den Kunden steht nicht die technologische Realisierung im Vordergrund, sondern der daraus entstehende Nutzen: schnelle Umsetzung neuer fachlicher Anforderungen, Plattformunabhängigkeit, Skalierbarkeit etc. Bei einem IT-Softwareprojekt gibt es eine Reihe unterschiedlicher Stakeholder (Abb. 3).

Abb. 3: Beispielhafte Darstellung von Stakeholder an einem IT-Projekt

Der Anwender wünscht sich von dem Produkt eine optimale Unterstützung bei seinem Tagesgeschäft, für die Fachbereiche steht eine schnelle Umsetzung neuer Ideen und Anforderungen im Vordergrund, Systemadministratoren wünschen sich ein übersichtliches und einfach zu betreibendes System, der Auftraggeber (Sponsor) setzt auf die schnelle Generierung von Geschäftswert und Kosteneffizienz (Rentabilität).

Aufgrund dieser unterschiedlichen Interessen ist es schwierig, ein gemeinsames Verständnis bezüglich der umzusetzenden Anforderungen inklusive Priorisierung auszuarbeiten. Einerseits soll das System möglichst viele Funktionen enthalten, und andererseits soll es leicht wartbar sein. Welche Anforderungen muss das Produkt erfüllen, um den einzelnen Stakeholdern einen entsprechenden Nutzen zu stiften? Dies kann nur in Zusammenarbeit mit dem Kunden geschehen, um auch ihn davon zu überzeugen, dass ihm das Projekt am Ende den Nutzen stiftet, den er auch erwartet. Man darf sich nicht zu sehr auf eine Produkteigenschaft konzentrieren und den Nutzen dieser Eigenschaft beim Kunden überschätzen: „Kunden kaufen Produkte nicht wegen technischer Features, sondern wegen ihres Nutzens [7]“.

Die Zusammenarbeit mit dem Kunden, d. h. das Erkennen und Erfüllen der für ihn momentan wichtigsten Anforderungen, ist unter anderem eines der Ziele der agilen Softwareentwicklung.

Agile Softwareentwicklung

Seit Anfang der 1990er Jahre hat sich eine Vielzahl agiler Methoden herauskristallisiert: XP, Scrum, FDD und Crystal, um nur einige der Bedeutendsten zu nennen. Ziel der agilen Methoden ist es, möglichst effektiv (die richtigen Probleme lösen) bei der Erfüllung der Kundenbedürfnisse zu sein und möglichst effizient (die Probleme richtig lösen) bei der Entwicklung. Bei der agilen Softwareentwicklung werden die Kunden in die kontinuierliche Ermittlung der Anforderungen integriert. Es wird anschließend genau das geleistet, was mit dem Kunden kurz zuvor spezifiziert wurde. Die Folge sind zufriedene Kunden und eine deutliche Aufwandsreduktion [9], da keine unnötige Vorarbeit geleistet wurde. Eines der Hauptprobleme der klassischen Vorgehensweisen wird somit umgangen: die hohen Aufwände in den späteren Phasen des Entwicklungsprozesses, verursacht durch neue Kundenwünsche bzw. Anforderungen.

Das Hauptaugenmerk ist auf die Priorisierung der Anforderungen und Probleme des Kunden gerichtet: Was wird wann gebraucht? Und nicht mehr auf der Zuweisung von Arbeitspaketen: Wer macht was? Der Kunde bekommt das, was er zu einem bestimmten Zeitpunkt benötigt und zu dem Preis, den er bereit ist zu zahlen: Marketing [1]!

Agile Softwareentwicklung bietet die Möglichkeit, die Kundenzufriedenheit und auch die Zufriedenheit unternehmensintern deutlich zu erhöhen. Eine lauffähige und qualitativ hochwertige Software wird den Kunden innerhalb kurzer Releasezyklen ausgeliefert. Die Software kann so, schon schnell getestet, produktiv gehen und somit dem Kunden den entsprechenden Nutzen bzw. Geschäftswert liefern. Die ständige Kommunikation mit dem Kunden sowie die Fokussierung auf die wirklichen Bedürfnisse führen zu einer hohen Softwarequalität aus Kundensicht. Das heißt, die Software ermöglicht es dem Kunden, seine momentanen Anforderungen umzusetzen, um Geschäftswert zu generieren. Und nicht das, was vor Monaten bzw. Jahren in einem Dokument festgelegt wurde, aber mittlerweile völlig veraltet und unnötig geworden ist. Und dies bedeutet Marketing: den Kunden mit Produkten versorgen, die er benötigt.

Eine perfekte Lösung ist eigentlich nie möglich. Aufgrund der Projektrestriktionen sind immer Einschnitte bei den typischen Aspekten eines Projekts (Qualität, Funktionalität, Kosten, Zeit etc.) nötig. Deshalb ist eine genaue Kenntnis des Kundenproblems und das, was der Kunde im Moment benötigt, besonders wichtig. Und dies ist eines der Ziele der agilen Softwareentwicklung: Software zu entwickeln, die benötigt wird und die Anforderungen des Kunden umsetzt: Marketing!

Kommentare

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.