Hier ist meine Lage. Eines von mehreren Programmen, die ich kürzlich geerbt habe, enthält eine schreckliche Datenbank im Backend. Die geschätzten Schöpfer schätzten offenbar keine relationalen Konzepte. Eine Tabelle für jeden Kunden, benannt als eindeutige Kunden-ID. Dreiundachtzig kryptisch benannte Felder. Der Code ist vollständig prozedural und enthält Dutzende verketteter Inline-SQL-Anweisungen.
Da uns keine wichtige Zusatzanwendung zur Verfügung gestellt wurde, die auf derselben Datenbank ausgeführt wird, wurde ich beauftragt, sie von Grund auf neu zu erstellen. Ich bin ein einziger Entwickler, was nicht einmal meine Hauptverantwortung ist, da mindestens die Hälfte meiner Zeit für das operative Geschäft aufgewendet wird. Es gibt eine unvermeidbare Frist für 30 Tage ab jetzt.
Trotz meiner Unerfahrenheit bin ich mir sicher, dass ich diese Datenbank und die vorhandene Anwendung viel besser hätte gestalten können als sie, aber ich denke nicht, dass es für mich realistisch ist, die Datenbank zu ändern, die vorhandene Anwendung anzupassen und sicher zu sein, dass ich es nicht getan habe. ' Keine Unterbrechung, wenn die zusätzliche Anwendung so schnell erstellt werden muss.
Nehmen wir also an, ich stecke in der schrecklichen Datenbank fest. Wenn ich mit einer so schlechten Struktur arbeiten muss, würde irgendetwas, das ich schreibe, das dieser Struktur entspricht, nur zu dem Haufen technischer Schulden beitragen, der beiseite geschoben werden muss, bis etwas völlig kaputt geht oder neue Funktionen benötigt werden? Wie könnte ich mich dieser Situation nähern und etwas Gutes daraus machen, abgesehen von einer hoffentlich funktionierenden Anwendung?
bearbeiten: Falls jemand interessiert ist, haben wir diese schreckliche Datenbank und die Anwendung, die darauf lief, verschrottet. Wir haben die Erstellung des Zusatzantrags (an dessen Einrichtung ich nicht beteiligt war) an letztendlich zwei verschiedene Auftragnehmer ausgelagert, die beide auf uns durchgefallen sind und nichts erreicht haben. Es endete damit, dass ich in drei Tagen einen schrecklichen, teilweise funktionierenden Hack eines Fixes ausführen musste, der heute noch in Gebrauch ist.