Mehr Transparenz für Kostenblöcke: Neue Wege im Benchmarking der Applikationsentwicklung

h_9-10-2016_shutterstock_388596844

Nachdem die Infrastruktur in den Rechenzentren in den letzten Jahren ausgiebig gebenchmarkt und in Folge dessen standardisiert wurde, rücken zunehmend die Applikationen (Anwendungen) in den Fokus der CIOs. Hier gibt es noch große Kostenblöcke, die nicht hinreichend transparent sind. 

Der Applikations- oder Anwendungsbetrieb, insbesondere von Standardapplikationen wie SAP, wird auch schon seit einigen Jahren gebenchmarkt und mit ITIL ist auch hier die Standardisierung weitestgehend eingezogen. Zwar stellen individuelle Eigenentwicklungen weiterhin eine Herausforderung für Benchmarker dar, inzwischen gibt es aber etablierte Methoden, auch den Betrieb solcher Anwendungen vergleichbar zu machen.

Bleibt als eines der letzten großen Felder mit Kostensenkungspotenzial in der IT die Applikations- oder Anwendungsentwicklung. Zwar haben sich auch hier vielerlei Standards für das Vorgehen in der Entwicklung etabliert (klassische Methoden wie das V-Modell, agile Vorgehensweisen wie Scrum oder »Lean Development« wie Kanban), doch die Applikationsentwicklung bleibt ein Bereich mit geringen Sach- und hohen Personalkosten, in dem vornehmlich kreative Arbeit geleistet wird. Entsprechend schwierig ist die Vergleichbarkeit von Leistungen und Preisen in diesem Bereich – und das ist auch der Grund, warum die Applikationsentwicklung bislang kaum (abgesehen von Tagessätzen) gebenchmarkt wurde.

Benchmarking der Applikationsentwicklung. Wir bei LEXTA haben dies als Herausforderung gesehen und nach Wegen gesucht, die Applikationsentwicklung – das heißt Softwareentwicklungsprojekte – vergleichbar zu machen.

Die größte Schwierigkeit besteht dabei darin, den inhaltlichen Umfang (die Komplexität) der Entwicklungsprojekte zu messen und vergleichbar zu machen. Dazu haben viele Unternehmen individuelle Vorgehensweisen entwickelt, die sehr dienlich für die interne Projekt- und Kapazitätsplanung sowie die Aufwandschätzung sind (etwa Use Case Points, Story Points, T-Shirt-Größen). Ein unternehmensübergreifend und flächendeckend eingesetzter Standard existiert nicht.

Die einzige Metrik, die ausreichend standardisiert ist, um überhaupt unternehmensübergreifend eingesetzt werden zu können, sind Function Points (siehe https://de.wikipedia.org/wiki/Function-Point-Verfahren). Die Messung von Function Points ist jedoch zeitaufwendig, erfordert einige Erfahrung und zieht nur die funktionalen Anforderungen an eine Anwendung in Betracht (nicht die nichtfunktionalen). Zudem funktioniert die Messung nur einigermaßen zuverlässig, wenn die funktionalen Anforderungen ausreichend bekannt sind, das bedeutet frühestens nach Erstellung eines Fachkonzepts, am besten nach Projektabschluss.

Das ist für den Benchmarker kein Problem, der sich auch gerne abgeschlossene Projekte zum Vergleich ansieht. Es führt aber dazu, dass die Methode in Unternehmen kaum Anwendung findet, weil sie für Aufwandschätzungen in frühen Projektphasen nicht geeignet ist.

Alle Ansätze, um den Aufwand in der Applikationsentwicklung vergleichbar zu machen, basieren jedoch auf Function Points (oder dem Rückschluss von beispielsweise Lines of Code auf Function Points, genannt backfiring). Daher konnte sich das Benchmarking für die Applikationsentwicklung bislang nicht flächendeckend etablieren.

Es gibt drei verschiedene Wege, diese »Lücke« zwischen den Methoden der Benchmarker und der Wirklichkeit in den Unternehmen zu überbrücken – LEXTA beschreitet alle:

1. Benchmarking der Effizienz ohne Komplexitätsmetrik 

Ziel eines Benchmarkings ist typischerweise die Bestimmung der Effizienz in der Applikationsentwicklung. Diese lässt sich auch ohne Komplexitätsmaß vergleichen – auf qualitativem Niveau. LEXTA hat dazu den »Produktivitätsindex« entwickelt, der auf Basis einer Vielzahl qualitativer Fragen zu Projektorganisation, Team, Produkt, Prozessen und Umfeld der Entwicklung sowie typischen Kennzahlen zu Kosten, Dauer und Scope der Projekte als ein Prozentsatz bis maximal 100 Prozent ermittelt wird.

Für das Benchmarking der Produktivität werden die fünf Dimensionen Projektorganisation, Mitarbeiter, Produkt, Prozesse und Umfeld untersucht.

Für das Benchmarking der Produktivität werden die fünf Dimensionen Projektorganisation, Mitarbeiter, Produkt, Prozesse und Umfeld untersucht.

Diese Methode eignet sich gut zum Vergleich mehrerer Projekte im gleichen Unternehmen und zeigt durch die Abweichungen von 100 Prozent in den einzelnen Bereichen direkt Verbesserungspotenziale auf. Sie leidet jedoch darunter, dass sie rein qualitative Aussagen liefert und eine gewisse Subjektivität beinhaltet, weil die Ergebnisse auf Befragungen von Projektteilnehmern beruhen.

Will man für die Applikationsentwicklung eine ähnliche Vergleichbarkeit, Messbarkeit und Steuerbarkeit wie für den Betrieb erreichen, kommen wir um quantitative Verfahren im Benchmarking nicht umhin.

2. Benchmarking des Projektaufwands mit Function Points auf Basis eigener Messungen 

Daher bietet auch LEXTA ein Benchmarking der Applikationsentwicklung auf Basis von Function Points an. Die Function Points werden benötigt, um vergleichbar komplexe Projekte aus der Datenbasis (derzeit ca. 5.000 Projekte) herauszufiltern. Der Umfang des Projekts in Function Points liefert stets eine große Anzahl von ähnlich »großen« Projekten, die anhand der oben genannten qualitativen Parameter weiter eingegrenzt werden.

Die Produktivität der Applikationsentwicklung wird anhand eines standardisierten Fragebogens bewertet, der auf den jeweiligen Entwicklungsprozess angepasst wird.

Die Produktivität der Applikationsentwicklung wird anhand eines standardisierten Fragebogens bewertet, der auf den jeweiligen Entwicklungsprozess angepasst wird.

In den meisten Benchmarking-Projekten erhebt LEXTA dabei die Function Points für die zu betrachtenden Projekte selbst, da sie im Unternehmen nicht vorliegen. Wir setzen hierzu das standardisierte »Rapid«-Verfahren der IFPUG ein, welches die Messung erheblich beschleunigt. Dennoch ist auch diese Messung nur auf Basis eines Fachkonzepts (oder vergleichbarer Dokumentation der funktionalen Anforderungen) möglich und erfordert bei mehrhundertseitigen Fachkonzepten einige Tage Aufwand.

 

3. Benchmarking des Projektaufwands auf Basis von alternativen Metriken

Der Aufwand für die Function-Point-Messung ist eine Hürde, die viele Unternehmen scheuen – insbesondere weil die Messung zwar dem Benchmark dient, darüber hinaus aber kaum Nutzen für ein Unternehmen hat, das diese Metrik intern nicht verwendet. Daher setzt LEXTA inzwischen auf die Ermittlung empirischer Zusammenhänge zwischen anderen Metriken als Function Points und dem Projektaufwand und verwendet diese zum Benchmarking. Diese Arbeit setzt eine große Datenbasis an abgeschlossenen Projekten voraus, die neben Function Points auch andere Metriken zur Komplexität von Projekten enthalten (Use Cases, Stories, Testfälle). Aufgrund der langen Erfahrung im Benchmarking verfügt LEXTA inzwischen über eine ausreichend große Datenbasis für diese Analysen. »Normalisierungsgröße« zur Umrechnung verschiedener Komplexitätsmetriken ineinander bleiben aber weiterhin Function Points.

Ist-Aufnahme und Ergebnisformat: Sofern der Klient die Metrik Function Points nicht verwendet, wird LEXTA diese für das Bench­marking auf Basis von Spezifikationen erheben.

Ist-Aufnahme und Ergebnisformat: Sofern der Klient die Metrik Function Points nicht verwendet, wird LEXTA diese für das Bench­marking auf Basis von Spezifikationen erheben.

Diese Methode operiert mit einer gewissen Unsicherheit, da sie sich auf rein empirische Zusammenhänge stützt. Wir glauben aber, dass es die eine Super-Metrik für den inhaltlichen Umfang von Projekten auf absehbare Zeit nicht geben wird, da sich schon Generationen von Forschern und Praktikern die Zähne daran ausgebissen haben. Daher halten wir diesen Ansatz für valide, um für einen Benchmark vergleichbare Projekte zu identifizieren.

Wie weiter? Auf den beschriebenen drei Wegen wollen wir bei LEXTA Licht ins Dunkel der Kosten für die Applikationsentwicklung bringen. Trotz aller Metriken und empirischen Zusammenhänge darf man jedoch in der Applikationsentwicklung eines nicht vergessen: Die Stellhebel, die Ergebnis eines Benchmarkings sind, sind meist qualitativer Natur. Das größte Effizienzhindernis in der Applikationsentwicklung ist meistens nicht in der Entwicklung selbst zu finden, sondern in der Interaktion zwischen Entwicklung und Kunde – ein wahrhaft qualitativer Bereich.


autorin_ursula_loebbert-passingDr. Ursula Löbbert-Passing promovierte 2004 über Methoden zur Aufwandschätzung für Softwareprojekte. Die Kosten der Applikationsentwicklung ließen sie seither nicht mehr los. Bei LEXTA ist sie verantwortlich für die Benchmarkingmethoden für Applikationsbetrieb und -entwicklung.

 

 

 

Titelbild: © leolintang/shutterstock.com 

 

Weitere Artikel zu

Schreiben Sie einen Kommentar