Das Modell der Teambuchung

Teambuchung (die Buchung eines Softwareteams) beschreibt ein Modell, dank dem der Spagat zwischen agiler Softwareentwicklung und der Kostenkontrolle bei der Entwicklung einer Software geschafft werden kann.

Kostenkontrolle bei agiler Softwareentwicklung

TLDR – Das Wichtigste in Kürze

Teambuchung (die Buchung eines Softwareteams) beschreibt ein Modell, dank dem der Spagat zwischen agiler Softwareentwicklung und der Kostenkontrolle bei der Entwicklung einer Software geschafft werden kann.

Teil 1: Agile Softwareentwicklung = Einsatz von Agilität im gesamten Softwareentwicklungsprozess

Agile Softwareentwicklung gewichtet Zusammenarbeit und Proaktivität aller Beteiligten mehr, als rein technische Aspekte (! ohne die Relevanz der technischen Aspekte zu vernachlässigen).

Zusammenarbeit und ein funktionierendes Team ist der Schlüssel zur Agilität – damit wird das Modell der Teambuchung zu einem starken Instrument für alle, denen kein eigenes Softwareteam zur Verfügung steht.

Teil 2: Kostenkontrolle  

Es gibt zwei Möglichkeiten, Kostenfallen bei agiler Softwareentwicklung zu vermeiden.

Möglichkeit 1: Die Führung eines agilen Lastenheftes. Diese Vorgehensweise hat allerdings einen Haken – es entsteht ein sehr hoher Kommunikationsaufwand zwischen Auftraggeber und Projektteam, da z.B. die notwendige Schnittstelle (Projektmanager) fehlt.

Möglichkeit 2: Teambuchung. Mit der Buchung eines Expertenteams für das Softwareprojekt wird sowohl ein zeitlicherer als auch ein personeller Rahmen für das Projekt gesetzt.

Vorteile der Teambuchung:

Zeitliche und organisatorische Ersparnis, Flexibilität innerhalb des Teambuchungskontingentes, präzise Kostenschätzung der monatlichen Fixkosten und Maximierung der Kostenkontrolle, uneingeschränkter Zugriff auf Software-Wissen etc.

Entscheidet sich ein Unternehmen für ein Softwareprojekt, müssen erst einmal viele Fragen beantwortet und einige Hürden genommen werden. Spätestens bei der Kostenfrage wird der Enthusiasmus über die Idee einer möglicherweise kostensparenden und prozessoptimierenden Software, die dem Unternehmen einen entscheidenden Wettbewerbsvorteil bringen kann, erheblich gedämpft. Grund dafür ist die meist schwierige Schätzung des Aufwand-Kosten-Verhältnisses und den damit einhergehenden monatlichen Kosten.

Um den Schätzungsaufwand der Entwicklungskosten zu verringern, bieten bereits einige Softwareunternehmen ein Teambuchungs-Modell an. Wie ein Unternehmen durch das Modell der Teambuchung den Spagat zwischen agiler Softwareentwicklung und Kostenkontrolle schafft, wollen wir uns im Detail ansehen.

Für einen umfangreichen Einblick möchten wir aber vorher noch das eine oder andere Wort zur agilen Softwareentwicklung an sich verlieren. Denn was als DAS Buzzword in die Geschichte der Buzzwords eingegangen ist, wird immer noch oft falsch – oder gar nicht – verstanden.

Agile Software­entwicklung – Alter Wein in neuen Schläuchen?

Agile Softwareentwicklung beschreibt den Einsatz von Agilität im gesamten Softwareentwicklungsprozess oder in den Teilbereichen der Softwareentwicklung. Ziel ist es, die Flexibilität der Softwareentwicklung zu erhöhen und so schlussendlich schneller und einfacher zu einer finalen, vollständigen und lückenlosen Software zu gelangen.

Der Begriff „Agile Softwareentwicklung“ hat in den vergangenen Jahren gefühlt einen extremen Aufschwung erlebt, seine theoretische Grundlage wurde allerdings schon in den 90er Jahren gelegt. Im Manifest für Agile Softwareentwicklung wurden schlussendlich vier Statements festgeschrieben, die agile Softwareentwicklung ausmachen:

„Wir erschließen bessere Wege, Dienstleistungen zu entwickeln, indem wir es selbst tun und anderen dabei helfen. Durch diese Tätigkeit haben wir diese Werte zu schätzen gelernt:

  • Individuen und Interaktionen mehr als Prozesse und Werkzeuge
  • Funktionierende Dienstleistungen mehr als umfassende Dokumentation
  • Zusammenarbeit mit dem Kunden mehr als Vertragsverhandlung
  • Reagieren auf Veränderung mehr als das Befolgen eines Plans

Das heißt, obwohl wir die Werte auf der rechten Seite wichtig finden, schätzen wir die Werte auf der linken Seite höher ein.“ [Quelle: Manifest für Agile Softwareentwicklung]

Agile Softwareentwicklung gewichtet demnach die Zusammenarbeit und die Proaktivität aller Beteiligten mehr, als die rein technischen Aspekte – ohne die Relevanz dieser zu vernachlässigen.

Zusammenarbeit als Schlüssel zur Agilität

Die Zusammenarbeit und ein funktionierendes Team ist der Schlüssel zur Agilität. Ein geformtes Team mit Verständnis für die Kollegen und deren Arbeit und mit gleichem Verständnis zur Vorgehensweise ist zwingend notwendig, um ein Softwareprojekt agil ans Ziel zu bringen.

Nun ist aber ein professionelles Softwareteam nicht zwangsläufig agil – schon gar nicht auf Knopfdruck. Hast Du ein Softwareentwicklungsteam und möchtest mehr Agilität ins Spiel bringen? Dann helfen vielleicht folgende Tipps aus dem Artikel „Agile Teams gibt es nicht auf Knopfdruck“.

Hier in Kürze:

  • Mehr Gespräche. Agilität ist Kommunikationssache!
  • Rückschläge verkraften. Ziele können auch mal verfehlt werden – anpassen, statt abbrechen!
  • Zusammenarbeit im Team. Die Rollen sollten klar verteilt werden!
  • Nach Alternativen suchen!
  • Permanentes Lernen. Lernen zum Alltag machen!
  • Unsicherheit akzeptieren. Schätzungen sind keine Commitments!
  • Engineering-Praktiken. Nicht nur der Prozess, sondern auch die Praktiken und Werkzeuge, die Architektur und die Dienstleistung muss agil sein!
  • Lernen und Verbessern.

[Quelle: t3n]

Was ist aber, wenn es gar kein Team gibt, mit dem man arbeiten kann?

Der Weg zur Individualsoftware – Kein eigenes Team? Kein Problem!

Wenn der Bedarf an einer individuellen Software da ist, aber das Team fehlt, hat ein Unternehmen mehrere Möglichkeiten:

  • Softwareentwickler-Team zusammenstellen
  • Freelancer beauftragen
  • Softwareentwicklungs-Unternehmen beauftragen

Jeder dieser Punkte hat seine Vor- und Nachteile. Offensichtlich ist natürlich der hohe Zeit- und Aufwandsfaktor bei einer Zusammenstellung eines komplett neuen Teams. Die HR-Abteilung hat jetzt schon Schweißperlen auf der Stirn. Kannst Du überhaupt noch so lange auf die Software warten? Brauchst Du einen Projektmanager – er sollte, wenn, dann schon Senior sein und aus dem neuen Team ein agiles Team machen können. Vielleicht müssen Weiterbildungen organisiert werden…

Dann doch lieber Freelancer beauftragen. Es gibt in ganz Deutschland verteilt Top-Spezialisten, sie müssen nur noch alle an denselben Tisch gebracht werden. Außerdem muss ein gleiches Verständnis von Qualität und von der Vorgehensweise geschaffen werden. Ein Projektmanager wäre hier genau das Richtige. Also doch noch weiter auf die Suche gehen nach einem Senior-Project-Master-Scrum-Expert…

Softwareentwicklungs-Unternehmen beauftragen doch als bessere Wahl? Wir kommen der Sache schon näher. Ein Unternehmen sorgt (idealerweise) für ein eingespieltes Team von Softwareentwicklern, die klare Teampositionen besetzen, die Erfahrung und das erforderliche Fachwissen vorweisen können. Wie sieht es aber in Punkto Kosten aus?

  • Wieviel Zeit am Tag/in der Woche/im Monat verbringt ein Entwickler mit Deinem Projekt?
  • Wie teuer sind seine Überstunden?
  • Wie können die Kosten am besten kalkuliert und erfasst werden?

Alles kein Problem mit einem gut gepflegten Lasten- und Pflichtenheft?! Doch kannst Du auch garantieren, dass Du alle möglichen Use Cases – auch Anwendungsfälle – für Deine Individualsoftware bedacht und kommuniziert hast? Die Praxis zeigt, dass Anforderungen und Schnittstellen im Vorweg selten, bis gar nicht, widerspruchsfrei und vollständig beschrieben werden können. Also steht man wieder vor dem Problem der hohen Kosten, die später aufgrund von notwendigen Anpassungen anfallen können.

Kostenfallen bei Softwareprojekten vermeiden

Agiles Lastenheft – Kosten während dem Projekt im Blick behalten

Ein agiles Lastenheft ist eine mögliche Antwort auf die Frage nach der Kostenkontrolle bei einem Softwareprojekt. Wie der Name schon vermuten lässt, können in das agile Lastenheft mit der Zeit weitere Anforderungen hinzukommen und ongoing neue Versionen des Lastenhefts entstehen.

Diese Vorgehensweise hat allerdings einen Haken: Es entsteht ein sehr hoher Kommunikationsaufwand zwischen Auftraggeber und Projektteam, der den Kostenrahmen wieder sprengen kann. Doch auch dafür gibt es eine Lösung:

Teambuchung – Eine Schätzung über die gesamte Laufzeit

Mit der Buchung eines Expertenteams für das Softwareprojekt wird sowohl ein zeitlicher als auch ein personeller Rahmen für das Projekt gesetzt. Innerhalb dieses zeitlichen Rahmens kann der Auftraggeber über die zuvor vereinbarten personellen Ressourcen frei verfügen – und das zu einem fixen monatlichen Preis.

Teambuchung in der Praxis

Das Modell der Teambuchung macht im Grunde agile Softwareentwicklung greifbar und bringt Softwareentwickler und Unternehmen auf einer Ebene zusammen, auf der der Kommunikationsweg maximal verkürzt wird und somit die Agilität um ein Vielfaches zunimmt.

In der Praxis würde eine Teambuchung folgendermaßen aussehen:

Nach einem umfangreichen Gespräch zur Anforderung an die neue Software wird festgelegt, wie groß deine „Code-Taskforce“ sein soll und aus welchen Fachspezialisten diese bestehen soll.

Das Team, bestehend aus beispielsweise zwei Softwareentwicklern, einem Datenmanager und einem Projektmanager, ist bereits aus vorherigen Projekten miteinander vertraut und perfekt eingespielt.

Es wird festgelegt, wie viele Stunden wöchentlich/monatlich die Entwicklung der Individualsoftware in Anspruch nehmen wird. In dieser Zeit hast Du uneingeschränkten Zugriff auf volles Software-Fachwissen der gebuchten Experten.

Unterm Strich gibt es monatlich einen festen Betrag, für den Du mit einem Team rechnen kannst, das Dich durch alle Belange der individuellen Softwareentwicklung begleitet und kompetent berät.

Die Vorteile der Teambuchung

  • Zeitliche und organisatorische Ersparnis gegenüber der Einstellung eines eigenen Teams
  • Vollständige Flexibilität innerhalb des Teambuchungskontingentes
  • Präzise Kostenschätzung der monatlichen Fixkosten und Maximierung der Kostenkontrolle
  • Uneingeschränkter Zugriff auf Software-Fachwissen
  • Eingespieltes Team, zusammengestellt aus Spezialisten mit unterschiedlichen Professionen.

Konkrete Informationen zu Deinem Softwareprojekt

Die Beantwortung aller Fragen rund um die Entwicklung einer Individualsoftware bedarf einer individuellen Auseinandersetzung mit dem jeweiligen Projekt.

Wir von der x-root bieten Dir ein komplett unverbindliches und kostenloses Erstgespräch an, in dem wir gemeinsam über Deine Ideen und über Deine Anforderungen reden und Dir ehrliche Ratschläge zu Deiner Individualsoftware geben können.

Interesse?