Software kaufen oder entwickeln lassen
Sie stehen vor einer strategischen Entscheidung: “Sollen wir eine Software kaufen oder individuell entwickeln lassen?” Die Frage ist äußerst kniffelig, da sowohl der Kauf einer Standard-Software als auch die Entwicklung einer maßgeschneiderten Lösung Vor- und Nachteile haben, und Sie häufig mit Ihrer Entscheidung einige Jahre leben (müssen).¹
Fragen Sie einen Standard-Softwarehersteller, der vom Lizenzgeschäft lebt, wird er Ihnen vermutlich zum Kauf einer Standard-Software raten. Fragen Sie ein Unternehmen, das sich auf die individuelle Entwicklung von Lösungen spezialisiert hat, wird es häufig eine Maßanfertigung empfehlen. Solche Empfehlungen helfen Ihnen nicht wirklich weiter. Was Ihnen aber weiterhilft, sind detaillierte Argumente für beide Optionen, um die richtige Entscheidung für Ihr Unternehmen zu treffen.
Standard-Software: Der Anzug von der Stange
Beginnen wir mit der Standard-Software. Diese wird von Herstellern für einen breiten Markt oder eine bestimmte Branche entwickelt und ist somit für zahlreiche, meist anonyme Kunden gedacht. Standard-Software ist in vielen Fällen bereits etabliert und bietet die benötigten Features und Funktionen. Für einfache Aufgaben wie Textverarbeitung oder Tabellenkalkulation ist der Kauf einer Standard-Software oft die beste Wahl. Die am Markt verfügbaren Produkte erfüllen in der Regel die Anforderungen der meisten Unternehmen, sodass Sie “lediglich” zwischen verschiedenen Herstellern und Angeboten wählen müssen. Hier hilft eine schrittweise Softwareauswahl.
Schwieriger wird die Entscheidung, wenn Ihre individuellen Anforderungen an eine Lösung steigen und die Anwendungsszenarien komplexer werden. Suchen Sie nach einer Lösung für Fertigungsplanung und Warenwirtschaft, werden Sie diese selten neu entwickeln lassen, zu viele Funktionen und Möglichkeiten gibt es von der Stange, zu viele Jahre hat die Entwicklung der Produkte gedauert, um ansatzweise etwas Vergleichbares individuell entwickeln lassen zu können. Sobald Sie aber in einem solchen Szenario über die Integration weiterer Tools und Daten aus anderen Quellen oder eine gemeinsame Bedienoberfläche nachdenken, wird die Suche nach einer Standard-Software (oder die Entscheidung für eine individuelle Entwicklung) zur Herausforderung. Wichtig ist hier ein geeigneter Prozess zur Definition der Anforderungen.
Kriterien zur Entscheidungsfindung
Welche Kriterien können eine Make-or-Buy-Entscheidung zwischen Standard-Software und Individual-Software, zwischen Anzug von der Stange und Maßanzug beeinflussen? Welche Punkte sprechen für den Kauf einer „fertigen“ Lösung und welche für die Beauftragung einer maßgeschneiderten Software?
Werfen wir einen detaillieren Blick auf folgende Kriterien:
Verfügbarkeit
Die Kategorisierung „Standard-Software“ verrät es bereits: Die Software gibt es seit längerem, sie muss nicht erst konzipiert, programmiert und getestet werden, sondern steht praktisch direkt zur Verfügung. Die unmittelbare Verfügbarkeit ist ein offensichtliches Plus für eine Standard-Software.
Wie wichtig ist Ihnen Verfügbarkeit? Suchen Sie perspektivisch eine Lösung, dann ist eine unmittelbare Verfügbarkeit nicht wesentlich. Es reicht, wenn die Software zum benötigten Zeitpunkt vorhanden ist. Außerdem bedeutet Verfügbarkeit nicht automatisch, dass eine Software einfach mal eben in ein Unternehmen eingeführt werden sollte. Hier sollten Sie die Faktoren der Softwareakzeptanz beachten.
Verfügbarkeit kann also ein Plus für eine Standard-Software sein, muss es aber nicht.
Reifegrad
Wird eine Software in einer Branche bereits erfolgreich – über einen längeren Zeitraum – eingesetzt, dann kann dieser Einsatz ein Hinweis auf einen höheren Reifegrad sein. Mögliche Schwachstellen und „Kinderkrankheiten“, also typische Fehler, die bei jüngeren Tools noch vorhanden sein können, gelten in der Regel als beseitigt.
Haben Sie schon mal einen Blick in ein Changelog eines Softwareherstellers geworfen? Dort werden die Unterschiede zwischen verschiedenen Versionen einer Software aufgelistet. Neben „neuen Funktionen“ finden Sie häufig „Verbesserungen“ und „Fehlerbeseitigungen“ – meist deutlich mehr Verbesserungen und Fehlerbeseitigungen als neue Funktionen. Was sagt das über den tatsächlichen Reifegrad der Software aus? Vielleicht ist der Reifegrad häufig nicht ganz so hoch, wie es auf den ersten Blick scheint. Allerdings ist dies auch bei der Entwicklung einer Individual-Software nicht auszuschließen, also:
Ein Plus für eine Standard-Software.
Modularität und Skalierung
Nicht jede Standard-Software ist modular aufgebaut, wenn sie aber verschiedene Module bietet, können Funktionen und Funktionsbereiche individuell zur Verfügung gestellt werden. Die Skalierung erfolgt organisch und in Schritten, und damit nicht über die Anzahl der verfügbaren Lizenzen.
Möchten Sie bspw. eine integrierte Software nutzen, die Ihnen die Planung und Steuerung von Projekten, die Ermittlung von Anforderungen und das Management von Issues anbietet, hätten Sie die Möglichkeit, die Themen nacheinander zu adressieren. Das Anschaffungs- und Kostenrisiko sinkt für Unternehmen und die Skalierung lässt sich als Vorteil für Standard-Software werten.
Auf der anderen Seite ist die Skalierung bei einer individuellen Entwicklung praktisch eingebaut. Die Entwicklung erfolgt häufig in agilen Schritten und erst wenn der Bedarf nach weiteren Funktionen vorhanden ist, wird die Lösung speziell für diesen Bedarf weiterentwickelt. Die Skalierung ist damit lediglich ein Vorteil einer modular aufgebauten Software von der Stange im Vergleich zu einer nicht modularen Software.
Schnittstellen
Viele Tools sind auf den Import und Export von Daten per Schnittstelle vorbereitet, sodass Sie Lösungen integrieren können, anstelle sie abzulösen. Je mehr Schnittstellen eine Standard-Software unterstützt, desto größer ist der Vorteil gegenüber der Auftragsentwicklung, denn diese Schnittstellen müssten jeweils erst entwickelt werden.
Haben Sie schon einmal versucht, per ReqIF Anforderungen verlustfrei zwischen verschiedenen Tools auszutauschen? Wie gut hat das geklappt? Das Vorhandensein einer Schnittstelle sagt an sich noch nicht viel über die Qualität der Anbindung aus. Viele Standards werden von Herstellern unterschiedlich interpretiert. Meist ist der Anpassungsaufwand zur Angleichung solcher Interpretationen geringer als eine Neuentwicklung der entsprechenden Schnittstelle, aber ohne zusätzlichen Aufwand wird es nicht funktionieren.
Vorteil: Standard-Software, sofern die benötigten Schnittstellen verfügbar sind und wie gewünscht funktionieren.
Customizing
Sehr viele Programme bieten Möglichkeiten zur Anpassung. In welchem Umfang ein Customizing ermöglicht wird, hängt von der jeweiligen Software ab. Wer sich im Zuge der Auswahl einer Software mit der Anpassung beschäftigt, sollte klären, was durch wen und mit welchen Vorkenntnissen verändert werden kann, und wie die Optionen zur Anpassung dokumentiert sind. Ob die Möglichkeiten des Customizings als Vorteil für eine Standard-Software gelten können, lässt sich somit nicht verallgemeinern.
Dokumentation
Oft sind Funktionen einer Standard-Software gut dokumentiert, selbst wenn es sich beobachten lässt, dass mit Zunahme technischer Details der Umfang der Dokumentation geringer wird. Gerade für das Customizing, aber auch für die Anbindung anderer Tools per Schnittstelle ist die Dokumentation ein wichtiger Punkt für eine Standard-Software.
Die Dokumentation im Zuge der individuellen Entwicklung wird gelegentlich etwas stiefmütterlich betrieben, zumal viele Auftraggeber den Dokumentationsaufwand nur ungern bezahlen. Im Zweifel muss der Entwicklungspartner nachträglich und auf Aufforderung dokumentieren. Die Dokumentation ist also in der Regel ein Pluspunkt für Standard-Lösungen.
Pflege und Wartung
Auch wenn Hersteller es nicht gerne zugeben, jede Software hat einen Lebenszyklus. Befindet sich eine Software in seiner Einführungs-, Wachstums- oder Reifephase, liegt es im Interesse des Herstellers, die Software zu verbessern und an aktuelle Bedürfnisse und Entwicklungen anzupassen. Diese Anpassungen orientieren sich in den meisten Fällen an den Bedürfnissen einer Branche und eher selten an den Bedürfnissen einzelner Kunden. So oder so profitieren Sie – zumindest grundsätzlich – von neuen Versionen.
Befindet sich das Produkt in seiner Sättigungsphase wird die Frequenz der Upgrades sinken, und in der Degenerierungsphase werden bestenfalls noch kleinere Updates zur Verfügung gestellt. Spätestens zu diesem Zeitpunkt sollten Sie darüber nachdenken, ob Sie die Pflege- und Wartung weiterhin im selben Umfang benötigen.
Hinweis: Vor zwei Jahren hätten wohl die wenigsten Anwender gedacht, dass die Pflege und Wartung von gängigen Tools wie Textverarbeitung oder Tabellenkalkulation wirklich notwendig ist; mit dem Einzug von Künstlicher Intelligenz dürfte diese Einschätzung widerlegt sein. Die Frage, die Sie im Zuge von Pflege und Wartung zu beantworten haben, lautet daher: Wie wichtig ist die Pflege und Wartung in Ihrer konkreten Situation und in welchem Umfang bietet der Standard-Softwarehersteller oder der Softwareentwicklungsdienstleister beides an?
Schulungen
Viele Anbieter von Standard-Software haben Erfahrung und Routine in der Schulung von Anwendern. Schulungskonzepte und Schulungsmaterialien sind vorhanden und vielfach erprobt. Dies hilft bei der Einführung der Software und ist ein Plus für Standard-Software.
Kosten
Die Kosten für eine Standard-Software können Sie relativ einfach kalkulieren: der Preis für eine bestimmte Anzahl an Lizenzen für eine bestimmte Anzahl von Nutzern, dazu Pflege und Wartung, Customizing und Schulung. Fertig.
An sich ist das bei Individual-Software ähnlich, allerdings muss dort der Hersteller zuerst verstehen, was Sie genau benötigen, den Aufwand kalkulieren und Ihnen einen Preis nennen. An sich könnte man nun argumentieren, dass der Dienstleister das Risiko einer Fehleinschätzung trägt, doch ganz so einfach ist nicht. Sieht er ein Implementierungsrisiko, kann er einen Puffer einplanen, den Sie bezahlen. Außerdem wird er Ihnen keine unterschiedlichen Lizenzmodelle (Kauf, monatliche oder jährliche Miete, pay-per-use) anbieten. Die Sicherheit in der Kalkulation und die verschiedenen Optionen sprechen eher für eine Standard-Software.
Können Sie sich vorstellen, mit Ihrem Dienstleister einen iterativen Prozess mit Teillieferungen und direktem Feedback zu vereinbaren? Warum sollten Sie bei einer partnerschaftlichen Zusammenarbeit davon ausgehen, etwas Falsches oder Schlechtes für Ihr Geld zu erhalten? Im Gegenteil: Sie erhalten Funktionen, die Ihnen helfen. Sie zahlen nicht für einen Markennamen oder unnötige Funktionen.² Wenn Sie ein Set an Möglichkeiten erhalten, die Ihnen sicher das bietet, was Sie benötigen, dann ist die Sicherheit der Kalkulation ein Argument für die Individual-Software.
Individuelle Softwareentwicklung: Der Maßanzug
Viele, aber nicht alle der genannten Kriterien sprechen für eine Standard-Software. Auch Anbieter von Individual-Software sind in der Lage, Kosten klar zu benennen, die Software zu modularisieren oder Funktionen des Customizings zu integrieren. Der wesentliche Unterschied ist, dass alle diese Punkte individuell erzeugt werden müssen. Benötigen Sie eine Schnittstelle zu einer vorhandenen Lösung, dann muss diese erst konzipiert und implementiert werden. Und was passiert, wenn Sie eine Dokumentation zu dieser Schnittstelle benötigen – auch die muss individuell erstellt werden. Welche Punkte sprechen – zumindest theoretisch – für die Beschaffung einer Individual-Software?
Innovation
Wird eine Software für Sie konzipiert und damit als Antwort auf eine Herausforderung entwickelt, dann ist das Ergebnis eine Innovation. Es ist ein Unikat und auf Ihre Bedürfnisse zugeschnitten. Im Idealfall unterstützen Sie damit Ihre Prozesse, Abläufe und Mitarbeiter optimal.
Funktionsabdeckung
Wissen Sie, wie viele Funktionen MS Excel bietet? Es sind bestimmt sehr viele und das ist typisch für Softwareprodukte von der Stange: Hersteller versuchen Funktionen für alle denkbaren Situationen zur Verfügung zu stellen. Jede dieser Funktionen bezahlen Sie, selbst wenn Sie vielleicht nur 10 % des Funktionsumfangs nutzen. Wäre es nicht sinnvoller, eine Software zu verwenden, die nur die Funktionen bietet, die Sie benötigen?
Funktionserweiterung
Sie benötigen eine neue, zusätzliche Funktion – für viele Hersteller von Individual-Software ist das ein elementarer Bestandteil des Geschäftsmodells. Natürlich entstehen für die Realisierung von spezifischen Änderungswünschen Kosten, aber die entstünden auch, wenn eine Funktion in einer Standard-Software fehlende würde. Der Unterschied: bei einem Standard-Softwarehersteller sind Sie als Kunde einer von mehreren, vielleicht auch einer von vielen – wer wird also in der Regel mehr Interesse an einer besonders engen, vertrauensvollen Zusammenarbeit haben? Für Sie bedeutet dies, dass Ihr Lieferant vermutlich bemüht sein wird, die gewünschte Funktionalität schnellstmöglich umzusetzen. Damit passt Ihr Maßanzug anschließend sogar noch besser.
Zugang zum Quellcode
Es soll vorkommen, dass Marktteilnehmer verschwinden. Hersteller von Standard-Produkten tun sich schwer damit, Quellcode für den Fall der Fälle sicher zu deponieren, sodass Sie gegebenenfalls in der Zukunft darauf zugreifen können. Bei der Entwicklung von individuellen Lösungen ist das überhaupt kein Thema, denn mit entsprechender Vereinbarung gehört der Quellcode einfach Ihnen. Das ist maximale Sicherheit.
Akzeptanz
Die Akzeptanz der Anwender ist bei einer Individual-Software oft größer als bei einer Standard-Software, denn die Software wird genau nach den Wünschen und Vorstellungen von Ihnen, Ihren Kollegen und Mitarbeitern erstellt. Damit sind die bestmöglichen Voraussetzungen für die Softwareakzeptanz gegeben.
Fazit
Wenn Sie zur Lösung eines Problems nach einer passenden Software suchen, müssen Sie eine strategische, häufig auch kniffelige Entscheidung treffen.
In welcher Situation stecken Sie gerade? Benötigen Sie innerhalb von kürzester Zeit eine funktionierende Lösung – dann spricht dies eindeutig für die Beschaffung einer Standard-Software. Die Entwicklung einer Individual-Software beginnt meist erst durch die Zusammenarbeit zwischen Ihnen und dem Hersteller, die Standard-Software ist aber bereits – mit einer gewissen Reife – verfügbar. Ist also der Faktor Zeit für Sie wesentlich, können Sie sich nur für eine Standard-Software entscheiden, zumal viele andere Aspekte bei der Entwicklung von Individual-Software – bspw. die Dokumentation oder die Erarbeitung von Schulungskonzepten – nochmals Zeit in Anspruch nehmen werden.
Wie sieht es mit Weiterentwicklungen aus? Bei einer Standard-Software wird es – in Abhängigkeit der Lebenszyklusphase – regelmäßig Upgrades und Updates geben. Hier sollten Sie sicher gehen, dass eigene Anpassungen oder Erweiterungen auch mit neueren Versionen des Herstellers reibungslos funktionieren. Ist dies nicht der Fall, sollten Sie klären, wer dafür sorgt, dass Ihre Anpassung auch mit einer neuen Version funktionieren. Weiterentwicklungen bei Individual-Software kommen nur nach vorheriger Absprache zustande. Das eben beschriebene Risiko gibt es also nicht; Pluspunkt: Individual-Software.
Wissen Sie, wer eine gute Quelle für Ihre Entscheidung sein kann? Ihre Kunden, Ihre Partner und möglicherweise auch Ihre Konkurrenten.
- Wer hat gute Erfahrungen in einer vergleichbaren Situation womit und wem gemacht?
- Wer kann wen empfehlen und warum?
- Wie hat sich die Zusammenarbeit gestaltet, was spricht für einen Hersteller oder gegen einen anderen?
Vielleicht nutzt einer Ihrer Partner bereits eine Software und der Datenaustausch zwischen Ihren Unternehmen könnte zukünftig noch leichter gelingen.
Zusammengefasst ist es nicht leicht, eine richtige Entscheidung zu treffen. Bei strategischen Entscheidungen liegt das ein wenig in der Natur der Sache. Umso wichtiger sind eine konkrete Auseinandersetzung mit den Kriterien der Entscheidung und eine Beurteilung der Vorteile und Nachteile. Viel Erfolg dabei.
Hinweise:
Stehen Sie vor der Entscheidung „Software kaufen oder entwickeln lassen?“ Sprechen Sie mit uns über Ihre Situation, gerne unterstützen wir Sie mit unserer ehrlichen Einschätzung.
[1] In der Praxis treffen hier oftmals zwei Konzepte aufeinander: die Amortisierung einer Entscheidung und das Konzept der versunkenen Kosten (sunk cost). Versunkene Kosten sind in der Betriebswirtschaftslehre Kosten, die ein Unternehmen aufgewendet hat und durch künftige Entscheidungen nicht zurückgewinnen kann. Versunkene Kosten dürfen rationalerweise für zukünftige Entscheidungen nicht berücksichtigt werden.
[2] Es heißt, dass ca. 60 % der Funktionen einer Software nicht oder kaum genutzt werden. Üblicherweise bezahlen Sie diese Funktionen beim Erwerb einer Standard-Software.
Der Artikel geht nicht auf die Gewichtung der verschiedenen Kriterien ein. Sind Sie also in der Situation, eine Entscheidung treffen zu wollen, können Sie durch die Gewichtung einzelner Aspekte unterschiedliche Ergebnisse erzielen.
Wenn Ihnen der Beitrag gefällt oder Sie darüber diskutieren wollen, teilen Sie ihn gerne in Ihrem Netzwerk. Und falls Sie sich für weitere Tipps aus der Praxis interessieren, dann testen Sie gerne unseren wöchentlichen Newsletter mit neuen Beiträgen, Downloads, Empfehlungen und aktuellem Wissen. Vielleicht wird er auch Ihr Lieblings-Newsletter!
Hier finden Sie ein Softwareeinführung Whitepaper als Download zum Mitnehmen.
Michael Schenkel hat im t2informatik Blog weitere Beiträge veröffentlicht, u. a.
Michael Schenkel
Leiter Marketing, t2informatik GmbH