Softwareentwicklungsprojekte zum Festpreis: 3 wichtige Punkte, an die Sie sich erinnern sollten

Es gibt verschiedene Möglichkeiten, ein Softwareentwicklungsprojekt durchzuführen. Dies sind hauptsächlich:

  1. Engagierter Entwickler: Sie erhalten einen Entwickler, der nur für Sie und Ihre Organisation arbeitet. In der Regel wird zwischen Dienstleister und Auftraggeber ein monatlicher Preis vereinbart. Der Entwickler wird Vollzeit (ca. 160 Stunden pro Monat) für den Kunden arbeiten.
  2. Mensch-und-Material/ Zeit-und-Material/ Agil/ Entwicklungsteam: Hier wird ein Projekt vereinbart, die Ausführung erfolgt jedoch durch ein multidisziplinäres Team aus Projektmanagern, Scrum Mastern, Business Analysten, Business Developern, Software-/Webentwicklern, Softwaretestern etc. Hier wird oft eine agile Methodik verwendet und nach jedem Frühjahr (einem Entwicklungszyklus, der etwa einen Monat dauert) die Entwicklungszeiten angepasst. Es ist kein Festpreis, sondern ein grobes Budget, nach dem es entwickelt wird. Es könnte eine grobe Zahl sein, aber es könnte auch ein Vielfaches dieser Budgetzahl sein. In großen Organisationen wird dieser Ansatz normalerweise bevorzugt.
  3. Festpreis: Dies wird normalerweise in kleineren Projekten verwendet, bei denen der Preis UND die Anforderungen festgelegt sind. In diesem Artikel geht es um diese Art von Projekt und was bei der Durchführung eines solchen Festpreisprojekts zu beachten ist.

Einführung

Viele kleine und mittelständische Unternehmen haben ein Budget für die Durchführung von Softwareprojekten. Gerade in Nicht-IT-Unternehmen ist das Wissen über Softwareprojekte begrenzt. Sie bevorzugen einen Festpreis, bei dem der Projektleiter innerhalb dieser Unternehmen einfach an den CEO oder die Geschäftsführung des Unternehmens kommuniziert werden kann.

Es wäre ziemlich schwer zu sagen: „Die Entwicklung dauert etwa 2 bis 8 Monate und jede Stunde kostet 100 US-Dollar. Es können auch 14 Monate sein“.

Wenn das IT-Dienstleistungsunternehmen dem Kunden sagt: „ Es dauert 4 Monate und ein Budget von 30’000 US Dollar “, kann das Team des Kunden darüber entscheiden.

Das große Problem dabei ist -> So funktioniert ein Softwareprojekt nicht. Die Gründe sind:

  1. Anforderungen ändern sich während des Projekts: Niemand, auch nicht der Kunde, weiß, was in der Software/Weblösung alles sein muss, um erfolgreich zu sein. In der Regel werden erst nach wenigen Wochen die ersten Versionen oder die ersten Web-Benutzeroberflächen sichtbar. Das ist normalerweise der Fall, wenn der Kunde herausfindet „Hoppla, da ist diese Funktionalität, die von größter Bedeutung ist. Ohne diese Funktionalität wird das Projekt kein Erfolg“. Aber die Projektkosten und die Projektabwicklung sind von beiden Seiten, dem Auftraggeber und dem IT-Dienstleister, bereits „fixiert“. Dies kann ein Showstopper sein.
  2. Niemand weiß genau, wie lange es dauert, eine Funktionalität zu entwickeln: Auch wenn ein Softwareentwickler eine ungefähre Angabe machen kann, wie lange es dauert, eine Funktionalität zu entwickeln. Er oder sie weiß es nicht genau. Dies gilt selbst für den erfahrensten Entwickler. Deshalb gilt: Je größer das Projekt, desto höher das Risiko, dass die Schätzung falsch ist. Mit einem größeren Puffer in der Projektschätzung versucht das Softwareentwicklungsunternehmen jedoch irgendwie, dieses Risiko zu mindern.

Dies bedeutet, dass der IT-Dienstleister bereits das Risiko hat, nicht zu wissen, ob die Einschätzung des Entwicklers richtig war, und der Kunde darüber hinaus Änderungen innerhalb des Projekts verlangen kann.

Dies ist auch der Grund dafür, dass laut dem vielzitierten Chaos Report ein Großteil (rund 40 bis 60 Prozent) aller IT-Projekte scheitern.

Denn bei einem Festpreisprojekt will keiner nachgeben. Der Kunde will keinen US-Dollar mehr zahlen, „weil ein Festpreis vereinbart wurde“, und der IT-Dienstleister wird darauf bestehen, nur das zu bauen, was vereinbart wurde, „weil die Anforderungen zu Beginn des Projekts festgelegt wurden“.

Hier einige Punkte, die Sie beachten sollten, damit Festpreisprojekte funktionieren

1) Die Anforderungen sind festgelegt (und erst nach Abschluss dieser Anforderungen werden neue Funktionalitäten hinzugefügt)

Die Softwareentwicklung muss nicht aufhören, wenn die ursprünglich vereinbarten Funktionalitäten entwickelt sind. Ist das erste Projekt abgeschlossen, kann der nächste Schritt besprochen und ausgeführt werden.

Tipp 1: Der Kunde muss Folgendes tun: Widerstehen Sie dem Drang, neue Anforderungen an das laufende Projekt zu stellen. Auch wenn Sie das starke Gefühl haben, dass sich das Projekt für Ihre Kunden nicht lohnen wird.

Es wird schwer genug sein, die anfänglichen Anforderungen zu erfüllen. Fügen Sie das nicht hinzu.

2) Verfügbarkeit des Clients während der Entwicklungsphase

Bei einem Festpreisprojekt stellt das IT-Dienstleistungsunternehmen (bei kleineren Projekten) ein bis drei Entwickler, einen Teamleiter, einen Projektleiter und einen Designer zur Verfügung.

Sobald das Projekt beginnt, wird es schnell gehen und Zeit sollte nicht verschwendet werden.

Besonders wichtig: Wenn das IT-Team Fragen zu einer Aufgabe hat oder Feedback benötigt, sollte dieses schnellstmöglich vom Auftraggeber zur Verfügung gestellt werden. Das Schlimmste, was passieren kann, ist, wenn das Entwicklungsteam 2 Tage auf Kundenfeedback warten muss und für diese Zeit untätig bleibt.

Wenn das Entwicklungsteam untätig sitzt, wird diese Zeit normalerweise vom festen Zeitbudget abgezogen und das Team versucht, die Aufgaben in der verbleibenden Zeit abzuschließen. Was normalerweise keine gute Idee ist, aber vielleicht der einzige Weg nach vorne.

Um vom Entwicklungsteam und dessen Zeit zu profitieren, muss der Kunde daher für Fragen des IT-Dienstleisters jederzeit zur Verfügung stehen.

Tipp 2: Die beste Lösung hierfür wäre: Der Kunde stellt während der gesamten Entwicklungszeit einen dedizierten Ansprechpartner zur Verfügung, der während der Entwicklungszeiten zur Verfügung steht. John Smith vom Client wird beispielsweise ab dem 01. Juli bis 30. August. In dieser Zeit wird John Smith über Skype oder Slack Chat erreichbar sein und die Fragen des Entwicklerteams beantworten.

3) Inhalte rechtzeitig bereitstellen

In einigen Fällen ist der Kunde verpflichtet, Texte, Videos, Bilder und andere Arten von Inhalten oder Materialien bereitzustellen.

Dieser vorab vereinbarte Inhalt sollte rechtzeitig zur Verfügung gestellt werden.

In einigen Fällen hat die Entwicklungsfirma die Möglichkeit, vorerst Dummy-Texte oder Dummy-Inhalte zu verwenden.

Für eine ordnungsgemäße Ausgabe wird der Inhalt jedoch in einigen Fällen benötigt.

Tipp 3: Stellen Sie sicher, dass der Inhalt (wie Texte oder Bilder) bereitsteht, wenn das Entwicklungsteam danach fragt.

Hinweis: Es kann auch mit der Genehmigung zusammenhängen, mit einer Aufgabe fortzufahren oder mit einem Projektdokument, das abgezeichnet werden muss.

4) Vermeiden Sie: „Aber das war Teil der Anforderung“ Argumente (zusätzlicher wichtiger Tipp)

Tatsächlich können die Anforderungen zu Beginn des Projekts nie vollständig verstanden oder aufgeschrieben werden.

Das Softwareentwicklungsteam arbeitet normalerweise mit einigen Beispiel-URLs, die von den Kunden gesendet werden, ein oder zwei Online-Meetings und einigem schriftlichen Material wie E-Mails oder PDFs.

In der Regel gibt es ein allgemeines Verständnis der Hauptfunktionalitäten, aber nicht das 100-prozentig klare Bild.

Dies kann sowohl von der Entwicklungsgesellschaft genutzt werden, um zu sagen „ Dies war aber nicht Teil der Anforderung, das kostet zusätzlich “ oder der Kunde sagt „ Aber das war Teil der Anfangsanforderung, das wollen wir auf jeden Fall kostenlos “.

Tipp 4: Es muss auf beiden Seiten allgemeine Fairness herrschen. Das Preis-Leistungs-Verhältnis sollte da sein. Auf der anderen Seite sollte es aber nicht so unerreichbar sein, damit die Entwicklungsgesellschaft von den Projekten überhaupt keinen Gewinn hat.

Hinweis: Generell sollte sich der Kunde (falls er kein IT-Experte ist) auf das vom IT-Unternehmen vorgeschlagene Entwicklungsverfahren verlassen.

Fazit

Der bessere Weg, Softwareprojekte anzugehen, ist mit dem dedizierten Entwickler oder dem dedizierten Entwickler/Agilen Ansatz. Dies ist jedoch für einige Unternehmen aus Budgetgründen nicht machbar.

Daher bieten viele IT-Dienstleister die Option für Festpreisprojekte an.

Für den Kunden ist es wichtig zu beachten, dass mit der Preisfeststellung auch die Anforderungen festgelegt sind. Oft wird Festpreis mit einem „All-You-Can-Eat-Buffet“ verwechselt, bei dem man einmal bezahlt und so viel essen (entwickeln) kann, wie man möchte. Im Gegenteil, es ist eher eine „A-La-Carte“-Menüoption, bei der man das Steak für 5 US-Dollar bestellt, wer dazu Pommes möchte, muss 2 US-Dollar extra bezahlen.

Aber auch: Softwareentwicklung und Essenszubereitung sind unterschiedlich. Denn beim Kreieren eines Steaks ist der Input ziemlich klar. In der Softwareentwicklung ist dies nicht immer der Fall.

Die Tipps in diesem Artikel helfen dabei, Festpreisprojekte zum Erfolg zu führen.

Interessante Beiträge:

Wie Sie Festpreisprojekte für sich arbeiten lassen

Herausforderungen in der Softwareentwicklung zum Festpreis

Bilder: Leinwand


Der Autor: Sascha Thattil arbeitet bei Software-Developer-India.com die zur YUHIRO Gruppe gehört. YUHIRO ist ein deutsch-indisches Unternehmen, das Programmierer an IT-Unternehmen, Agenturen und IT-Abteilungen vermittelt.

Schreibe einen Kommentar

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.