Wie ein Bericht des Spiegel berichtete, hat die Bundesarbeitsagentur für Arbeit mehrere Millionen in eine Software investiert, die dann allerdings doch nicht so funktionierte, wie sie sollte und damit noch vor der eigentlichen Einführung bereits in der Pilotphase wieder fallen gelassen wurde… Etwas überspitzt ausgedrückt könnte sich dahinter Softwareentwicklung 2.0 verbergen – oder doch nicht!?
Die Ausgangssituation
Zur Zeit scheint die Bundesagentur für Arbeit mit immerhin stolzen 14 Programmen die verschiedenen Aufgaben abzubilden. Diese Programme zu warten und pflegen und kontinuierlich an die Bedürfnisse der Benutzer anzupassen erfordert naturgemäß einen enormen Aufwand an IT-Infrastruktur und Know-How. Ganz zu schweigen von dem personellen Aufwand. Demzufolge erscheint es auch nur richtig, die Programme zu bündeln und in Zukunft nur noch eine einzige Software mit allen Funktionen zu betreiben!? Wobei sich erst mal eine andere Frage aufdrängt.
Warum eigentlich 14 Programme?
Erste Variante…
Die erste Frage, die sich dabei stellt ist, warum man überhaupt 14 verschiedene Programme entwickelt hat? Natürlich ist es ja wie immer. Man hat eine neue Aufgabe, das kann die aktuelle Softwarelandschaft noch nicht – also wird nach einer Software gesucht, die das Problem lösen kann. Oftmals evaluiert man dann, ob eine „Erweiterung“ der bestehenden Software möglich ist und kommt meist zu dem Schluss, dass eine Veränderung des Programms nur mit erheblichen Aufwand umgesetzt werden kann. Also entscheidet man sich dann für den Kauf einer neuen Software.
Zweite Variante…
Man kann natürlich auch gleich ohne Evaluation feststellen, dass eine bestimmte Software für ein aktuelles Problem (oder ein Problem, was wieder nur die Werbewelt erzeugt und wo wir vorher noch gar nicht wussten, dass wir dieses haben ;)) eine neue Software kaufen und eine Erweiterung der bestehenden Software somit gar nicht erst in Betracht ziehen.
Egal welche Variante hier vorgelegen hat, in jedem Fall sind entweder schon von vornherein 13 von den 14 Softwares obsolet, weil vielleicht die Prozesse mit einer Software abgebildet werden können. Oder es gab bisher einen trifftigen Grund, warum die Softwarelandschaft gerade so aussehen sollte. Dann wäre aber auch erst mal die Frage, ob die bestehenden Prozesse und Probleme überhaupt alle durch eine Software abgebildet werden können.
Lassen Sie sich beraten!
Auch wenn es noch so kostenintensiv klingt und noch so unbequem ist, weil es viele Resourcen bindet, ohne das bereits ein Ergebnis „zum Anfassen“ dabei herauskommt: Lassen Sie sich beraten! Eine gute Beratung bringt dabei nicht nur alle Optionen auf den Tisch, sondern sollte stets eben auch solche Fragen behandeln, bei der man eben schaut, ob und warum die bisherige Vielzahl an Programmen notwendig war. Aber auch nach der Eingangsberatung sollte die Softwareentwicklung immer wieder auch zwischendurch „beraten“ werden und neu evaluieren, ob die definierten Ziele noch passen.
4 Jahre im stillen Kämmerlein
Jedenfalls sollte eine gute Softwareentwicklung nicht 4 Jahre hinter verschlossenen Türen und abseits der jeweiligen realen Benutzer erfolgen. Grundsätzlich gilt: Je früher ein erster Testlauf angestrebt wird, desto wahrscheinlicher ist es, das Endprodukt auch möglichst ohne größere Fehler an den Start zu bekommen. Natürlich klingt es dabei zunächst banal, so etwas wie die Erfassung bzw. Änderung einer Kontoverbindung testen zu wollen… Letztendlich zeigt das aktuelle Beispiel aber, dass selbst hier Stolpersteine lauern…
Immer ein Fuß vor den Anderen
Ein kleines Kind lernt laufen, in dem es versucht, ein Bein vor das andere zu setzen. Üblicherweise wird es am Anfang eher oft stolpern und hinfallen und es wird einige Zeit brauchen, bis es „standsicher“ auch längere Strecken laufen kann.
Die Softwareentwicklung läuft ähnlich ab. Zunächst geht es nur beschwerlich voran und sieht gar nicht so „professionell“ aus, weil zunächst so allgemeine Dinge wie ein Login oder eben die Masken für die Erfassung der Grunddaten angelegt werden müssen. Aber auch hier kann man wie gesagt stolpern und scheitern. Daher ist es klug, eben auch diese Dinge konsequent durchzutesten und frühzeitig bei Problemen gegenzusteuern. Denn zu diesem Zeitpunkt lässt sich auch noch relativ einfach am Konzept schrauben.
Definieren Sie Lasten und Pflichten
Dieser Punkt steht sogar noch aus, bevor eine einzige Zeile Code geschrieben ist. Nach den Beratungen etc. sollte zusammengefasst werden, was von der Software erwartet wird (Lastenheft) und wann welcher Punkt wie geliefert wird (Pflichtenheft). Dabei geht es noch nicht einmal darum, das Konzept bis in alle Ewigkeit festzuklopfen. Eher dient es als Bestandsaufnahme und natürlich auch der Definition von Zielen. Übrigens: Gute Entwickler denken auch beim Lastenheft noch mit – ist es logisch und sinnvoll, dass man eine Bankverbindung nicht ändern kann ohne gleich den ganzen Fall neu anzulegen!? (Und falls es doch keinem auffällt, kann man hinten dran wenigstens ausmachen, wer das Lastenheft geschrieben hat und freigegeben hat und hat somit jemanden, dem man ordentlich den Kopf waschen kann… ;))
Testen, testen, testen…
Oftmals sitzen in der Entwicklungsabteilungen Nerds, die den lieben langen Tag nichts anderes machen, als Codezeilen in den Computer zu hämmern. Natürlich hat diese besondere „Spezies“ meist von einer speziellen Software und die Anforderungen von „Normalsterblichen“, die diese Software bedienen sollen, keine große Vorstellung. Und natürlich wird das, was ich selber programmiert habe und wo ich mir zurecht gelegt habe, wie der Ablauf funktionieren soll, immer glatt laufen. Aber setzen Sie mal jemanden davor, der das eben nicht programmiert hat und vermutlich noch nicht mal konzeptioniert hat: Er füllt womöglich Felder ganz anders aus, erwartet vielleicht ganz andere Rückmeldungen vom System, um daraus dann die richtigen Schlüsse zu ziehen und wundert sich dann auf einmal, warum nichts so „tut“ wie es soll…
Daher: Testen, testen, testen… Sobald eine Funktionalität fertig ist, sollte diese auch getestet werden. Zuerst als „Einzelfunktion“ und danach natürlich auch im Zusammenspiel mit der restlichen Software. Erst wenn beides funktioniert, erfolgt der nächste Entwicklungsschritt.
Weniger ist manchmal mehr… aber manchmal ist auch mehr mehr
Daher: Investieren Sie lieber in die ein oder andere Beratungsstunde mehr und – falls Sie keinen eigenen „IT-Experten“ im Hause haben: Holen Sie sich Hilfe von außen! Und planen Sie nach jedem vernünftigen Schritt einen ordentlichen Test und eine Abnahme ein. Zusätzlich – bei längeren Projekten – kann es auch sinnvoll sein, das Ganze in Teilprojekte aufzusplitten und nach dem Abschluss eines Teilprojektes neu zu evaluieren, ob noch alles zu den ursprünglichen Zielen passt.
Bezogen auf das „Projekt“ der Bundesagentur für Arbeit wäre eine gute Strategie auch gewesen, erst mal nur zwei Softwares miteinander zu verbinden, diese dann ausgiebig zu testen und evtl. auch schon mal auszuliefern – und danach in weiteren Schritten jeweils weitere Programme zu „integrieren“… Aber ob und was sich für ein Projekt eignet, kann man insgesamt nur in einem guten Beratungsgespräch und jeweils individuell für den Einzelfall klären. Übrigens… egal ob es um die bloße Beratung, eine Vorabanalyse Ihres Vorhabens oder dem ganz großen Plan inkl. Umsetzung geht: Wir helfen Ihnen gern weiter.
Nehmen Sie Kontakt zu uns auf!
Und für mehrere Millionen Euro bekommen Sie bei uns zumindest auch eine Software, die eine Kontoverbindung ändern kann, ohne gleich alle Daten neu anlegen zu müssen. 😉 Denn das würde das (Benutzer)Konto auch gut vertragen!