Eine Tabelle wird selten als Software geplant. Sie beginnt als Liste, bekommt eine Spalte dazu, dann eine Formel, dann ein zweites Blatt. Irgendwann arbeitet eine Abteilung damit, und niemand hat je entschieden, dass hier eine Anwendung entstehen soll.
Deswegen ist die Frage nach dem Umstieg fast nie eine Frage der Technik. Sie ist eine Frage danach, ab wann das Werkzeug mehr Aufwand verursacht, als es abnimmt.
Fünf Anzeichen, dass die Grenze erreicht ist
Dieselbe Zahl steht an mehreren Stellen. Der Umsatz eines Kunden liegt in der Angebotsliste, in der Jahresübersicht und in der Datei der Vertriebsleitung. Wer eine davon ändert, ändert die anderen nicht mit. Ab hier gibt es keine Wahrheit mehr, sondern Fassungen.
Wer etwas sehen darf, sieht alles. Eine Tabelle kennt keine Rollen. Wenn die Aushilfe die Stückzahlen pflegen soll, sieht sie auch die Einkaufspreise und die Personalspalte. Blattschutz hilft dagegen nur so lange, bis jemand eine Kopie zieht.
Zwei Leute arbeiten gleichzeitig daran. Hier kippt es in den meisten Häusern. Es entstehen Dateinamen mit dem Zusatz „final“ und einem Datum, und die Frage, welche Fassung gilt, kostet jede Woche echte Zeit.
Niemand kann sagen, wer wann was geändert hat. Solange alles stimmt, fällt das nicht auf. Es fällt an dem Tag auf, an dem eine Zahl falsch ist und jemand rekonstruieren soll, seit wann.
Die Regeln stehen nur im Kopf. Dass eine Bestellung ohne Kundennummer nicht weitergeht und dass ab einer bestimmten Menge ein anderer Satz gilt, weiß die Kollegin, die das seit Jahren macht. Die Tabelle weiß es nicht. Sie nimmt jede Eingabe an, auch die falsche, und der Fehler zeigt sich Wochen später in einer Auswertung.
Was eine Anwendung anders macht
Sie hält die Daten an einer Stelle und lässt mehrere Leute gleichzeitig damit arbeiten. Sie kennt Rollen, prüft Eingaben beim Erfassen und schreibt mit, wer etwas geändert hat. Und sie kann die Regeln, die heute im Kopf stehen, so festhalten, dass sie auch dann noch gelten, wenn die Kollegin im Urlaub ist.
Der eigentliche Gewinn steckt aber woanders. Eine Anwendung kann mit Nachbarsystemen reden. Der Auftrag muss nicht mehr abgetippt werden, weil er aus dem Shop kommt und in die Warenwirtschaft weitergeht. Genau diese Übergänge sind es, an denen in einer Tabellenlandschaft die meiste Zeit verloren geht.
Was dabei verloren geht
Ehrlicherweise etwas. In einer Tabelle probiert man eine Idee in fünf Minuten aus. In einer Anwendung dauert dieselbe Idee länger, weil sie durch eine Änderung am Programm muss.
Diesen Verlust kann man klein halten, indem man die Auswertung offen lässt. Wir bauen fast immer einen Export mit, und für wiederkehrende Fragen eine Ansicht, die sich filtern lässt. Was dagegen zurück in die Tabelle wandert, sollte nichts sein, was danach wieder zurückfließen muss.
Wie ein sinnvoller Anfang aussieht
Nicht mit der vollständigen Ablösung. Der übliche Weg beginnt mit dem Teil, der am meisten weh tut, und lässt den Rest zunächst stehen.
Ein Beispiel aus einem typischen Verlauf: Zuerst zieht die Erfassung um, weil dort die Doppelarbeit sitzt. Die Auswertung bleibt vorerst in der Tabelle und bekommt ihre Zahlen aus einem Export. Erst wenn das läuft, wandert auch die Auswertung. So gibt es keinen Tag, an dem alles gleichzeitig funktionieren muss.
Für die erste Sitzung brauchen wir wenig. Die Tabelle selbst, eine Beschreibung, wer damit was tut, und die Stellen, an denen heute abgetippt wird. Der Rest ergibt sich daraus.
Wie wir solche Anwendungen schneiden, steht unter Laravel-Entwicklung. Wenn ohnehin schon ein System existiert, das mitspielen muss, ist eher API- und Backend-Entwicklung der Einstieg.
