Sie haben ein Angebot für die Entwicklung individueller Software erhalten. Die Zahl ist größer als erwartet — oder vielleicht kleiner. In jedem Fall gilt ein wichtiger Grundsatz: Das Angebot, das Sie vor sich haben, deckt nur einen Teil der tatsächlichen Kosten ab.
Das ist keine Kritik an Softwareentwicklungsunternehmen. So funktionieren Softwareprojekte nun einmal. Die Entwicklungsgebühr ist zwar der größte Einzelposten, aber bei weitem nicht der einzige. Unternehmer, die nur mit dem Entwicklungsangebot planen, stoßen häufig mitten im Projekt an Budgetgrenzen — oder sind auf Kosten, die nach dem Launch entstehen, nicht vorbereitet.
Dieser Leitfaden führt Sie durch die Kosten, die nicht immer in einem Entwicklungsangebot auftauchen — damit Sie sich darauf vorbereiten können, bevor sie anfallen.
Infrastruktur und Hosting
Individuelle Software braucht einen Ort, an dem sie läuft. Und dieser Ort kostet Geld — jeden Monat, nicht nur einmalig.
Die Infrastrukturkosten einer individuellen Anwendung hängen davon ab, was die Software tut, wie viele Nutzer sie hat und welche Anforderungen Sie an die Verfügbarkeit stellen. Ein schlankes internes Tool kann auf einem kleinen Server für einen überschaubaren monatlichen Betrag betrieben werden. Eine kundenseitige Plattform, die Zahlungen verarbeitet und Lastspitzen bewältigen muss, erfordert möglicherweise eine deutlich robustere Infrastruktur.
Was Sie einplanen sollten:
- Cloud-Hosting: Dienste wie AWS, Azure oder Google Cloud rechnen nutzungsbasiert ab. Ihr Entwicklungsteam sollte Ihnen eine realistische Schätzung auf Basis der erwarteten Last geben können.
- Datenbank-Hosting: Das Speichern und Abfragen von Daten verursacht eigene Kosten, die mit dem Datenvolumen wachsen.
- Domain und SSL-Zertifikate: Ein kleiner, aber wiederkehrender Kostenpunkt.
- E-Mail-Versanddienste: Wenn Ihre Software E-Mails verschickt (Bestätigungen, Erinnerungen, Benachrichtigungen), benötigen Sie möglicherweise einen dedizierten Versanddienst.
- Speicherplatz: Dateien, Bilder, Dokumente und Backups verbrauchen Speicher, der üblicherweise pro Gigabyte berechnet wird.
Manche Entwicklungsunternehmen schließen die anfängliche Infrastruktureinrichtung in ihr Angebot ein. Die laufenden monatlichen Betriebskosten sind jedoch in den meisten Fällen nicht enthalten. Fragen Sie ausdrücklich nach den erwarteten monatlichen Infrastrukturkosten nach dem Launch.
Integrationskosten
Kaum eine Software arbeitet vollständig isoliert. Ihr neues System muss sich wahrscheinlich mit anderen Tools verbinden, die Sie in Ihrem Unternehmen bereits nutzen — Ihrer Buchhaltungssoftware, Ihrem CRM, Ihrem Zahlungsdienstleister, Ihrem Logistikpartner.
Integrationen sind manchmal im Entwicklungsangebot enthalten, aber nicht immer. Wenn sie enthalten sind, werden sie mitunter optimistisch kalkuliert. Das reale Verhalten externer APIs — Ratenbeschränkungen, undokumentierte Randfälle, Änderungen, die Drittanbieter ohne Vorwarnung vornehmen — kann unerwarteten Mehraufwand und damit höhere Kosten verursachen.
Nach dem Launch fallen für Integrationen außerdem laufende Wartungskosten an. Wenn ein Drittanbieter seine API aktualisiert, muss Ihre Integration möglicherweise entsprechend angepasst werden. Das ist kein einmaliger Aufwand — es ist eine fortlaufende Verpflichtung.
Bevor Sie Ihr Budget festlegen, listen Sie jedes externe System auf, mit dem Ihre Software sich verbinden muss, und fragen Sie Ihren Entwicklungspartner, wie jede Integration bepreist wird, was passiert, wenn ein Drittanbieter seine API ändert, und wer für die Pflege der Verbindung verantwortlich ist.
Tests und Qualitätssicherung
Gute Entwicklungsunternehmen schließen Tests in ihren Prozess ein. Es gibt jedoch Testarten, die häufig außerhalb des Entwicklungsangebots liegen — oder bei knappem Budget zu wenig berücksichtigt werden.
User Acceptance Testing (UAT) — bei dem Ihre eigenen Mitarbeitenden die Software anhand realer Geschäftsszenarien testen — nimmt Zeit Ihres Teams in Anspruch. Diese Zeit hat einen Wert, auch wenn er auf keiner Rechnung erscheint.
Performance-Tests — bei denen simuliert wird, welcher Last das System standhalten muss, wenn viele Nutzer gleichzeitig darauf zugreifen — müssen insbesondere bei kundenseitigen Systemen möglicherweise separat beauftragt werden.
Sicherheitstests — besonders relevant, wenn Ihre Software personenbezogene Daten, Finanzinformationen oder Gesundheitsdaten verarbeitet — werden manchmal als optionales Extra behandelt. Das sollten sie nicht sein.
Wenn Ihr Projekt sensible Daten oder öffentlich zugängliche Funktionen umfasst, planen Sie ausdrücklich für ein Sicherheitsaudit oder einen Penetrationstest ein. Die Kosten eines Sicherheitsvorfalls übersteigen die Kosten eines Tests bei weitem.
Schulung und Change-Management
Neue Software erfordert neues Verhalten von den Menschen, die sie nutzen. Dieser Kostenpunkt wird fast immer unterschätzt.
Mitarbeiterschulungen kosten Zeit. Je nach Komplexität des Systems und Anzahl der Beteiligten können formelle Schulungen, Dokumentation und der Produktivitätseinbruch während der Einarbeitungsphase erhebliche Kosten verursachen — gemessen in Mitarbeiterstunden, die aber einen realen Wert haben.
Change-Management geht noch weiter. Wenn die Software die Arbeitsweise Ihrer Organisation verändert — was häufig der Fall ist und auch sein sollte — folgt eine Anpassungsphase. Menschen fallen in alte Gewohnheiten zurück. Workarounds entstehen. Führungskräfte investieren Zeit ins Coaching. All das hat Kosten, die in keinem Entwicklungsangebot auftauchen.
Planen Sie das ausdrücklich ein. Erarbeiten Sie gemeinsam mit Ihrem Entwicklungspartner eine Nutzerdokumentation. Reservieren Sie Zeit für eine Schulungsphase vor dem Go-live. Schalten Sie das alte System nicht an dem Tag ab, an dem das neue startet.
Datenmigration
Wenn Ihre neue Software ein bestehendes System ablöst, muss jemand die Daten übertragen. Das ist fast immer komplizierter und kostspieliger als es aussieht.
Probleme bei der Datenmigration gehören zu den häufigsten Ursachen für Projektverzögerungen und Budgetüberschreitungen. Die Gründe sind vorhersehbar: Das alte System speichert Daten in einem Format, das sich nicht sauber auf das neue System übertragen lässt; ein Teil der alten Daten ist unvollständig, inkonsistent oder dupliziert; Randfälle tauchen auf, die niemand vorhergesehen hat; das Datenvolumen ist größer als erwartet.
Manche Entwicklungsunternehmen schließen eine einfache Datenmigration in ihr Angebot ein. Die meisten kalkulieren sie separat, weil die Komplexität ohne genaue Analyse der Quelldaten tatsächlich kaum zu schätzen ist.
Wenn Sie ein bestehendes System haben, bitten Sie Ihren Entwicklungspartner, Ihre Daten möglichst früh im Projekt zu bewerten. Je früher die Migrationskomplexität verstanden wird, desto besser kann sie geplant und kalkuliert werden.
Support und Fehlerbehebung nach dem Launch
Software ist nie vollständig fertig. Nach dem Launch werden Fehler entdeckt. Manche sind geringfügig. Manche erfordern sofortige Aufmerksamkeit.
Die meisten Entwicklungsangebote umfassen eine kurze Gewährleistungsphase — üblicherweise dreißig bis neunzig Tage — in der das Entwicklungsteam Fehler ohne Aufpreis behebt. Danach wird der Support separat abgerechnet.
Planen Sie von Anfang an Support nach dem Launch ein. Die Höhe hängt von der Komplexität des Systems und Ihrer Risikobereitschaft ab. Als grober Richtwert gilt: etwa zehn bis zwanzig Prozent der jährlichen Entwicklungskosten für laufende Wartung und Fehlerbehebung.
Wenn Ihre Software geschäftskritisch ist — wenn sie ausfällt und Ihr Betrieb damit zum Stillstand kommt — denken Sie auch an Reaktionszeitgarantien. Ein Supportvertrag mit einer Vier-Stunden-Reaktionszeit bei kritischen Vorfällen kostet mehr als einer mit Reaktion am nächsten Werktag. Für kritische Systeme lohnt sich dieser Aufpreis.
Künftige Weiterentwicklung
Die Version, die Sie launchen, ist nicht die letzte. Geschäftsanforderungen ändern sich. Nutzer geben Feedback. Neue Anforderungen entstehen. Mitbewerber bringen neue Funktionen heraus. Der Markt bewegt sich.
Geplante künftige Entwicklung ist ein Budgetposten — auch wenn die Details noch nicht bekannt sind. Ein gängiger Ansatz ist, einen Prozentsatz des ursprünglichen Entwicklungsbudgets zu reservieren — etwa fünfzehn bis zwanzig Prozent — für das erste Jahr der Weiterentwicklung nach dem Launch.
Das ist keine Verschwendung. Software, die nicht weiterentwickelt werden kann, wird zur Verbindlichkeit. Die Alternative zu geplanter laufender Entwicklung ist meist ein teures Neubauproject einige Jahre später.
Lizenzkosten im Projekt
Manche Entwicklungsprojekte umfassen Drittanbieterkomponenten, die Lizenzkosten verursachen — Diagrammbibliotheken, Kartendienste, Authentifizierungsanbieter, Rich-Text-Editoren oder andere spezialisierte Module. Diese Lizenzen sind oft in den Entwicklungskosten beim Erstaufbau enthalten, fallen aber nach dem Launch als wiederkehrende Kosten an.
Bitten Sie Ihren Entwicklungspartner, alle Drittanbieterkomponenten in Ihrem Projekt zu identifizieren und deren Lizenzbedingungen zu klären. Manche sind Open Source und kostenlos. Manche sind Open Source mit Einschränkungen. Manche sind kommerziell und erfordern laufende Gebühren.
Die realistische Gesamtrechnung
Wenn Sie Entwicklung, Infrastruktur, Integrationen, Tests, Schulung, Datenmigration, Support und künftige Weiterentwicklung addieren, liegen die tatsächlichen mehrjährigen Kosten individueller Software typischerweise bei dem Eineinhalbfachen bis Doppelten des ursprünglichen Entwicklungsangebots.
Das ist kein Grund, individuelle Software zu meiden — in vielen Situationen ist sie nach wie vor die richtige Investition. Es ist aber ein Grund, von Anfang an ehrlich zu planen.
Ein Entwicklungspartner, der Sie durch diese Kosten führt, bevor Sie sich verpflichten, erweist Ihnen einen Dienst — er versucht nicht, das Budget aufzublähen. Projekte, die finanziell in Schwierigkeiten geraten, sind fast immer solche, bei denen das Gesamtbild am Anfang nicht verstanden wurde.
Planen Sie ein Softwareprojekt und möchten ein realistisches Bild davon, was es tatsächlich kosten wird? Kontaktieren Sie uns. Wir führen jeden neuen Kunden durch die vollständige Kostenlandschaft, bevor mit der Arbeit begonnen wird — denn Überraschungen mitten im Projekt helfen niemandem.