datenbank-projekt.de

Kosten

Welche Investitionen sind nötig?

Auf dieser Seite dreht sich alles um die Frage nach dem Geld.

Können Sie es sich leisten, eine Datenbank erstellen zu lassen und welche Investition ist zu erwarten? Diese Fragen ist wichtig und ganz zurecht gestellt. Daher gehe ich im Anschluss darauf ein, stütze mich auf meine eigene langjährige Erfahrung und lehne mich an einen Text von Luke Chung an, der ein in den USA tätiger, sehr erfahrener (Access-)Datenbankentwickler ist. 

In zwei weiteren Abschnitten versuche ich ein wenig erzählerisch und blumig zu klären, warum die Preisvorstellung des Kunden und der voraussichtliche Preis einer individuellen Datenbank oft weit auseinander liegen (s. eine Null zu wenig) und warum ich zu Ihren Gunsten nicht zu einem Festpreis arbeite.

Zunächst aber folgende Frage:

Können Sie es sich leisten, eine Datenbank erstellen zu lassen?

Die Antwort ist ein ganz klares Ja!

Eine Datenbank bietet Ihnen viel mehr als nur eine Sammlung von Geschäfts- und Unternehmensdaten. Sie ermöglicht Ihnen neue Erkenntnisse zu gewinnen, die ohne die Datenbank, die dadurch und darin abgebildeten Strukturen vielleicht verborgen blieben. Die Datenbankerstellung ist zugleich eine Neu-/Umstrukturierung und Offenlegung eventuell verborgener Strukturen und Prozesse und damit auch Unternehmensberatung und Unternehmensentwicklung.

Meines Erachtens ist daher nicht zu fragen, ob Sie es sich leisten können, eine Datenbank erstellen zu lassen und was diese kostet. Die bessere Frage wäre: Was kostet es Sie, auf eine Datenbank zu verzichten?

Welche Investition ist zu erwarten?

Mit nur wenigen Zahlen und kurzen Beschreibungen, wie viel einzelne Lösungen ungefähr kosten und was sie bieten, möchte ich Ihnen Anhaltspunkte für die Frage anbieten wie viel die Entwicklung „Ihrer“ Datenbank kostet. Vergegenwärtigen Sie sich, dass es sich um eine betriebswirtschaftliche Investition handelt, die sich wie immer erst nach gewisser Nutzungszeit amortisiert und eine (sehr) lange Lebensdauer haben kann. Sowohl Access-Datenbankanwendungen als auch Web-Datenbanken haben einen relativ schnellen Return-on-Investment.

  • Excel: Ab ca. 800 Euro. Hierbei kann es sich z.B. um ein für Sie speziell entwickeltes Makro, komplexe Formeln, abhängige Tabellen o.ä. handeln. Excel-Anwendungen werden häufig nur von Individuen oder wenigen Personen im Unternehmen genutzt. Ob Excel eine Datenbank ist oder nicht, soll an dieser Stelle nicht beleuchtet werden. Da Excel jedoch häufig zur Verwaltung und Auswertung von Daten verwendet wird, hat es m.E. durchaus eine Berechtigung hier genannt zu werden. Wussten Sie, dass sog. Pivot-Tabellen und heute vor allem auch Power-Query gute Möglichkeiten der Auswertung mittels Excel bieten? Falls Sie Interesse an einem individualisiertem Coaching oder einer entsprechenden (Firmen-)Schulung* hierzu haben, nehmen Sie Kontakt mit mir auf, gerne auch telefonisch.
  • Access-Datenbank für eine Person: Ab ca. 5.000 Euro. Es handelt sich um eine sehr einfache Datenbank, die wenige Ein- und Ausgabemöglichkeiten bietet. Eine solche Datenbank wird häufig nur von einer einzigen Person verwendet.
  • Einfache Mehrnutzer-Access-Datenbank: Ab ca. 15.000 Euro. Solche Datenbanken werden von meist wenigen Personen gleichzeitig verwendet. Spezifische Rechte können notwendig sein, sind es oft jedoch nicht. Im Vordergrund steht häufig der gemeinsame Zugriff auf bestimmte Daten.
  • Access-Datenbanken für ganze Abteilungen und solche die als ein Hauptarbeitswerkzeug bezeichnet werden können, können deutlich mehr kosten. Bei solchen Datenbanken sind höchstwahrscheinlich spezifische Rechte für Eingabe und Auswertung der Nutzenden notwendig. Auf Datenschutz muss verstärkt geachtet werden. Auch finden sich bei genauem Hinsehen oft unterschiedliche Interessen der späteren Nutzenden. Abteilung A möchte beispielsweise Feature A, Abteilung B benötigt unbedingt diese oder jene Auswertung. 
    Was und wie intensiv Personen später mit der Datenbank arbeiten, beeinflusst deren Interessen. Diese Interessen sollten möglichst im Voraus erfasst werden. Gemeinsam mit mir kann festgestellt werden, was davon wann umgesetzt werden kann und soll. Die Interessen und Ideen können sich gegenseitig befruchten und das Endprodukt aufwerten oder sich gegenseitig behindern und miteinander konkurrieren. Eine frühzeitige und kontinuierliche Einbeziehung und der gemeinsame Austausch der späteren Nutzenden kann daher den späteren Einsatz, die Zufriedenheit und Akzeptanz der Anwendung verbessern. 

Kostenschätzungen basierend auf der Tabellenanzahl finden sich manchmal. So kann etwa von ca. 2.000 Euro pro Tabelle zu lesen sein. Meines Erachtens ist solch eine Schätzung mit großer Vorsicht zu bewerten, da nicht Tabellen oder einfache Ein- und Ausgabemöglichkeiten großen Aufwand bedingen, sondern die bei Ihnen vorhandene Business-Logik, die es umzusetzen gilt. Eine solche Umsetzung ist bei individuellen Produkten immerhin möglich, kostet aber bei existierenden Lösungen (SAP) oft ein vielfaches - wenn das Übersetzen Ihrer Business-Logik überhaupt möglich ist. Ferner ist Anfangs schwer einzuschätzen, wie viele Tabellen tatsächlich benötigt werden, gerade wenn es eine erste Anfrage ist. Viele Details zeigen sich erst im später und und Wünsche an die Anwendung ändern sich häufig schon während der Entwicklungszeit.

Zur Vorsicht bei Fix-Preisen möchte ich an dieser Stelle raten. Es gibt Anbieter, die Ihnen für eine Datenbank schon auf der Webseite oder auf Nachfrage einen Festpreis nennen. Bitte überlegen Sie selbst, ob das ein seriöses Angebot sein kann. Niemand würde vom Supermarktpersonal erwarten die Summe des Einkaufs vorab zu benennen, stattdessen muss erst geklärt werden, was gewünscht wird. Im Restaurant erhalten Sie einen Festpreis, aber auch genau das gleiche Essen wie andere Kunden. Hören Sie auf Ihre innere Stimme und sprechen Sie mich an: Ich rechne nach Aufwand ab, Sie zahlen das, und nur das was Sie individuell wünschen.

Ist Access zukunftssicher und Ihre Investition gerechtfertigt?

Selbstverständlich muss sich die Investition in eine Datenbank betriebswirtschaftlich amortisieren. Je früher, desto besser. Wie sicher können Sie sein, dass die Kosten für eine Datenbankentwicklung auf Grund mangelnder Herstellerunterstützung nicht Sunk-Costs sind?

MS Access als Daten­bank­sys­tem

Im Jahr 2024 ist die Access Version 2021 aktuell. Der Hersteller Microsoft selbst sichert den Support bis mindestens Oktober 2026 zu (Quelle). Dies bedeutet, Microsoft wird Updates für Access bis mindestens dann zur Verfügung stellen. Es ist zu erwarten, dass bis dann neue Access Versionen erscheinen werden und deren Support-Zeitraum nach 2026 liegt.

Access-Datenbanken werden von mir für Ihr aktuelles IT System erstellt und werden beim Status Quo auch noch in 20 Jahren auf diesem laufen. Zudem gibt es m.E. keinen Grund zur Befürchtung, Microsoft würde Access einstellen: Zu groß ist dessen Einsatz, zu viele Anwendungsmöglichkeiten hat es und seine spezifische Stellung im Datenbank-Markt machen es zu einem Fels in der Brandung. Lesen Sie weiter zu den Vorteilen von Access und seinem Einsatz in Unternehmen.

Web­an­wen­dun­gen

Daten­bank­an­wen­dun­gen, die den Browser als Benutzeroberfläche verwenden, unterliegen weit mehr Einflüssen als eine Access Datenbank. Dies ist Vor- wie Nachteil zugleich. Einerseits gibt es viele Programme die Updates erhalten, andererseits ist die Benutzer- und Entwickler-Community riesig. Dies sorgt für ein gemeinsames Interesse, dass verschiedene Services auch in Zukunft miteinander harmonieren.

Ein Update von Webanwendungen auf Grund veränderter Softwarestruktur ist im Regelfall häufiger notwendig als das von Access Datenbanken. Benötigt man für den Betrieb einer Access-Anwendung nur das Betriebssystem Windows und MS Access, sind bei einer Web-basierten Datenbankanwendung viel mehr Programme beteiligt. Im sogenannten Backend der Webserver, der Datenbankserver und Programmiersprache(n), im Frontend (auf der Seite des Nutzenden) Webbrowser, Programmiersprache(n), Betriebssystem und weitere.

Ist Access Zukunftssicher? Ja, m.E. mindestens so sicher wie Alternativen. Sind Ihre Investitionen gerechtfertigt? Ja. Ich bin überzeugt, dass eine Datenbank (viel) mehr Ertrag als Aufwand erzeugt.

Falls Sie derzeit schon eine Datenbank nutzen, lesen Sie bitte (auch) den folgenden Abschnitt.

Änderung und Erweiterung bestehender Datenbanken

Die Änderung und Erweiterung einer bestehenden Datenbank erscheint für Nutzende oft als Kleinigkeit. Beispielsweise soll an einer Stelle ein neues Feld eingebaut werden. Eventuell soll auch ein neuer Bericht die Datenbank um gewisse Auswertungen erweitern, die in der neueren Zeit von der Unternehmensleitung angefragt werden etc. 

Scheinbar kleine Änderungen können für die Entwicklung großen Aufwand bedeuten: Zunächst muss ein Überblick über Ihre Datenbank gewonnen werden und es gilt zu ermitteln, wo mögliche Probleme auftreten könn(t)en, wo mit Wechselwirkungen zu rechnen ist, welche Beschränkungen es gibt etc. Dies bedingt eine Auseinandersetzung mit der Oberfläche, dem dahinter stehenden Code der gewisse Funktionen bereitstellt, anderen Objekten der Datenbank und auch der Datenstruktur.

Als Daumenregel kann gelten, je umfangreicher, älter und gewachsener Ihre existierende Datenbank, desto aufwändiger die Einarbeitung und Änderung bzw. Erweiterung. Die Kosten der Entwicklung einfacher Mehrnutzer-Access-Datenbanken werden schnell auch bei Änderungen bestehender Datenbanken erreicht.

Sollten Sie sich zunächst weiter mit dem Thema Preisfindung beschäftigen wollen, bieten Ihnen die beiden folgenden Erklärungen eine Null zu wenig und Preisermittlung weitere Informationen.

Eine Null zu wenig

Wenn Sie auf der Suche nach einem neuen Auto oder Fernseher sind, wissen Sie wahrscheinlich, wie teuer das Produkt werden wird. Ein Auto haben Sie eventuell schon in der Vergangenheit gekauft und wenn Sie ausgestellte Autos sehen, können Sie wahrscheinlich deren Preis recht gut schätzen.
Überraschend wäre es, wenn ein Auto, das Sie auf 50.000 Euro schätzen 500.000 kosten soll und der Fernseher, dessen Preis Sie auf 2.000 Euro schätzen, tatsächlich 20.000 Euro kostet. Es wird nur selten vorkommen, dass Sie eine Zehnerpotenz daneben liegen, also 10x soviel zahlen müssten wie erwartet.
Bei der individuellen Softwareentwicklung entsteht ein solcher Preisschock leider ständig. Spreche ich mit Interessierten über ihr Projekt und die Preisfrage kommt auf, liegt deren Vorstellung oft um den Faktor 10 niedriger: Eine Null zu wenig. Erwarten Interessierte 1.000 Euro, erfahren sie, dass es 10x so viel werden kann. Manchmal beginnt an dieser Stelle eine ungläubige Auseinandersetzung, dass ein solcher Preis doch gar nicht stimmen kann.

Warum liegen die Preisvorstellung des Kunden und der voraussichtliche Aufwand soweit auseinander?

Vielleicht liegt es daran, dass Software heute für kleines Geld zu haben ist. Warum sollten mehrere (zehn-)tausend Euro für individuelle Software bezahlt werden, wenn Windows für 100 Euro, Office für 70 und Spiele ebenfalls für einen ähnlichen Betrag erhältlich sind? Apps für Smartphones sind oft noch viel günstiger. Bei solchen Überlegungen wird vergessen, dass diese Programme mehrere tausend oder sogar millionen Male verkauft werden. Individuelle Software wird hingegen nur einmal verkauft, weshalb direkt alle Entwicklungskosten zu tragen sind.
Oder liegt es an der großen Zahl "kostenloser" Software? Auch Google und Facebook kosten etwas, jedoch sind diese Kosten versteckt und nicht direkt monetär zu beziffern. Facebook gibt viel Geld für seine Webseite aus, doch weder Sie noch ich zahlen dafür direkt. An uns gerichtete Werbung, basierend auf den, von uns als Zahlungsmittel verwendeten Daten, zahlt für uns.

Ich denke, der wirkliche Grund warum Preis und Preisvorstellung auseinander liegen, findet sich in der Kombination der folgenden zwei Punkte: Individuelle Softwareentwicklung ist etwas, das selten gekauft wird und schwer zu verstehen ist. Wenn es ein alltäglicher Kauf wäre, könnten Interessenten aus den vergangenen Erfahrungen oder von anderen lernen wie hoch die typischen Kosten für eine Entwicklung sind. Wenn bekannter wäre, welcher Entwicklungsaufwand dahinter steckt, wäre auch klarer, welche Zeit, Erfahrung und wie viel Geld benötigt wird.

Interessierten versuche ich zu vergegenwärtigen, was alles notwendig ist, um ihnen ihre individuelle Datenbank zu erstellen. Ich berate sie, so dass alles nach ihren Vorstellungen, Wünschen und Bedürfnissen angelegt wird und sie profitieren von meiner Erfahrung. Ich erkläre, dass alles getestet werden muss um sicherzustellen, dass später keine bösen Überraschungen auftreten und dass kontinuierlicher Support eine langfristige Investition ist. Nicht zu vernachlässigen, dass Interessenten eine spezifische Lösung erhalten, die genau auf das zu lösende Problem zugeschnitten ist und die sie verändern können wann immer sie wollen.

Bis sich herumgesprochen hat, warum häufig eine Null mehr am Preisschild zu finden ist als erwartet, werde ich Ihnen versuchen zu erläutern wie der Preis für Ihre Datenbank zustande kommt.

Dieser Text ist eine für die Veröffentlichung genehmigte, sinngemäße Übersetzung von Armen Stein.

Was Gartenpflege mit Softwareentwicklung gemein hat

- oder -

Warum ein Festpreis-Software-Projekt eine schlechte Idee ist

Denken Sie an Ihren Garten. Dieser braucht im Frühling ein wenig Pflege. Ein Beet soll angelegt, ein anderes umgegraben werden, weitere Arbeiten stehen ebenfalls an. Obwohl Sie all dies auch selbst durchführen könnten, entscheiden Sie sich dafür eine Firma zu beauftragen: Diese hat entsprechendes Werkzeug, Erfahrung und Know-How.
Bei einem Treffen besprechen Sie die anstehenden Arbeiten, zeigen auf, was Sie sich wie in Ihrem Garten für dieses Jahr wünschen. Früher oder später kommt es dann zu Gesprächen über den Preis für die Arbeiten. Jetzt heißt es Verhandlungsgeschick beweisen: Sie möchten möglichst wenig für die Arbeiten bezahlen. Vielleicht haben Bekannte oder Nachbarn von Ihnen ähnliche Arbeiten durchführen lassen und Sie wissen, wie viel diese dafür zahlten. Die Firma möchte den Auftrag von Ihnen erhalten und wird daher vermutlich versuchen ein möglichst günstiges Angebot zu machen. Soweit, so gut.

Sobald man sich auf einen Festpreis geeinigt hat, sind verschiedene Szenarien vorstellbar: Da wäre z.B. die Möglichkeit, dass die Arbeiten viel schneller als von den Auftraggebenden erwartet erledigt werden: Wurden diese dann übervorteilt? Vielleicht ist der Festpreis auch so niedrig, dass das beauftragte Unternehmen Oberflächlichkeit statt Sorgfalt an den Tag legt um rentabel zu arbeiten. Oder Sie sind begeistert von den Fortschritten und beschließen direkt noch ein zweites Beet anlegen und die Rosen beschneiden zu lassen. Das ganze soll, aus Ihrer Sicht, selbstverständlich noch zum vorher vereinbarten Preis geschehen - schließlich handelt es sich um den gleichen Garten, und solange noch die von Ihnen gewünschten Arbeiten nicht erledigt sind, fließt kein Geld? Leider ist das vorstellbar.

Problematik von Festpreisen

Es wird deutlich, dass Festpreise verschiedene Probleme für beide Seiten mit sich bringen. Das gilt auch für feste Preise bei Softwareentwicklung: Es ist sehr schwer, im Voraus zu überblicken und sich darauf zu einigen, was die Software tatsächlich später können soll. Natürlich kann man versuchen Design-Festlegungen zu treffen und Feature-Listen zu erarbeiten. Software wird aber erst dann fertig sein, wenn die Auftraggebenden sich entsprechend äußern. Das bedeutet, dass durch Festpreisvereinbarungen Auftraggebende und Auftragnehmende automatisch unterschiedliche Positionen in ihrer Beziehung zugewiesen werden, solche, die einer Langzeitbeziehung entgegenstehen:
Die Entwickelnden könnten den Preis zu hoch ansetzen um von vornherein mögliche Schwierigkeiten zu berücksichtigen die auftreten könnten. Nicht ungewöhnlich ist ein Preis, der dann mehrfach so hoch ist wie der tatsächliche Aufwand wäre.
Vielleicht wäre es noch schlimmer, wenn ein zu niedriger Preis angesetzt wird, um den Auftrag unbedingt zu erhalten. Dies führt später zu Problemen, wenn der Auftraggebende Weiterentwicklung, Veränderungen und Verbesserungen der Software wünscht. Bei der Entwicklung könnte auf Änderungswünsche gewartet und versucht werden, die Extraarbeit in Grenzen zu halten - oder zumindest dafür extra bezahlt zu werden. Der Auftraggebende wiederum wird über Veränderungen diskutieren wollen und davon ausgehen, diese seien im Festpreisangebot enthalten gewesen. Gleiches gilt für eine Fehlerbehebung: Der Auftraggebende erwartet eine kostenlose Fehlerbehebung was jedoch unterstellt, dass die Software vorher getestet und für gut befunden wurde bevor sie zum Einsatz kam. Solche umfangreichen Tests sind allerdings sehr aufwändig und teuer. Zusätzlich können solche Tests nur durch alle Beteiligten in Kooperation durchgeführt werden.

Entwickler als Teil des Teams

Ganz anders bei einer Abrechnung nach Aufwand: Die Entwickelnden sind eine Erweiterung des Teams des Auftraggebenden. Dieser kauft Expertise - kein Produkt. Das bedeutet, dass jegliche angefallene Arbeit den Auftraggebenden in Rechnung gestellt werden muss. Andererseits werden Entwickelnde die verwendete Zeit effizient und effektiv investieren.
Die Auftraggebenden haben dennoch jederzeit volle Kostenkontrolle, da über den Einbau von Features direkt entschieden wird. Zugleich werden Kosten reduziert, da Teile des Testens der Software selbst übernommen und Fehler und Probleme den Auftragnehmenden mitgeteilt werden. Zu bedenken ist hier, dass evtl. nur die Auftraggebende Seite das fachliche Know-How besitzt gewisse Abläufe auf richtige Umsetzung in der Logik von Software zu beurteilen und Tests unter immer komplexeren Bedingungen und Settings durchzuführen.
Sollten Kosten sich der Obergrenze eines zunächst festgelegtes Budget nähern, können Features niedrigerer Priorität auf später verschoben werden, um im Budget zu bleiben. Auftraggebende und Auftragnehmende Seite arbeiten am gleichen Ziel, die Beziehung wird länger anhalten und für beide Seiten fruchtbarer sein.

Der Ansatz der Entlohnung nach Aufwand konnte bisher meine Auftraggebenden überzeugen. Ich versuche einen möglichst realistischen Gesamtpreis in Aussicht zustellen, aber es ist und bleibt eine Aufwandsschätzung. Diese Schätzung kann sich sowohl nach oben, als auch nach unten ändern.

Ist der Umfang eines Projektes deutlich definiert und ändert sich nicht nachträglich, sind diese Schätzungen recht zutreffend. Es kommt allerdings selten vor, dass sich der Umfang eines Software-Projektes nicht während der Entwicklung ändert:
Viele Projekte, besonders die komplexeren, werden umfangreicher, wenn die Auftraggebenden die (neuen) Möglichkeiten erkennen und daraufhin weitere Features hinzufügen möchten. Manchmal jedoch wachsen Projekte einfach deshalb nach ihrem Start, weil erst dann entdeckt wird, dass zur Erfüllung der Wünsche mehr notwendig ist als anfangs bekannt war. Genau wie beim Beispiel der Gartenarbeit, bei dem plötzlich und unerwartet Schwierigkeiten auftauchen können.

Wenn Sie das nächste Mal über eine Entwicklung zu einem Festpreisangebot nachdenken, bedenken Sie, was dies bedeutet. Nach meiner Erfahrung werden Sie bei der Abrechnung nach Aufwand feststellen, dass dieses Vorgehen am Ende weniger kostet. Zugleich erhöht sich die Wahrscheinlichkeit das Projekt erfolgreich abzuschließen.

Aus diesem Grunde arbeite ich nicht für einen Festpreis, sondern rechne nach Aufwand ab.

Dieser Text wurde durch einen Artikel von Armen Stein (J Street Technology) inspiriert und ist mit seiner Zustimmung hier zu lesen.

So kann es weitergehen

Sehen Sie sich Beispiele bisheriger Projekte an oder nehmen Sie Kontakt mit mir auf, gerne auch telefonisch!