Zależy od tego, jak brzydki jest i od tego, ile masz kontroli nad projektem i co z nim współdziała. Przez lata musiałem wchodzić w interakcje z wieloma brzydkimi bazami danych w mojej obecnej pracy i oto jak sobie z nimi poradziłem:
Dane pracowników
Istnieje baza danych przechowująca dane pracowników. Jest to baza danych dostawców, więc nie mam nad nią kontroli. (Un?) Na szczęście nie mam bezpośredniego dostępu do tego. Dostaję zrzut DTS każdego ranka.
Najlepsze, co udało mi się poradzić, to napisanie skryptu, który będzie szorował dane wejściowe z porannego zrzutu (tak, że wybór słów był celowy) i zmigrowałem go do bardziej użytecznego formatu, i pracowałem z oczyszczonych danych.
Nawet gdybym mógł to zmienić, prawdopodobnie nie zrobiłbym tego - tylko dlatego, że istnieje wiele innych programów, które polegają na tym, że jest skonfigurowane tak, jak jest, i nie mogę wymusić zmiany w nich.
Dane szkoleniowe online
To był bałagan mojego własnego projektu. Zbudowałem go świeżo po studiach bez mentora, który by mi pomógł ... Od tego czasu trochę go naprawiam. Ponieważ kontroluję jedyny program, który uzyskuje dostęp do danych, uaktualniając części witryny, „aktualizuję” konfigurację bazy danych. Napiszę skrypt transformacji i przetestuję go energicznie na kopii, aby zapewnić, że wszystkie zmiany, które należy wprowadzić, zostaną wprowadzone.
To był długi proces, ale ładnie się rozwija.
Dane szkoleniowe w klasie
Mój projekt pilotażowy integrował dane z 3 różnych baz danych, wszystkie zaprojektowane nieco inaczej przez mojego poprzednika ... który był wychowawcą pielęgniarki, który wziął lekcje programowania lub dwie.
To był kolejny powolny proces. Ponieważ mam pełną kontrolę nad programami, które uzyskują dostęp do danych, zmieniłem je krok po kroku, podobnie jak dane szkoleniowe online.
Patrząc wstecz, byłby to najlepszy kandydat do rozpoczęcia czystego ... widok z tyłu zawsze wynosi 20/20.
Na końcu...
Nie wiem, jak to pomogło, i mogę rozwinąć więcej (do pewnego stopnia, legalna firma yada yada i wszystko inne). Ostateczna odpowiedź to „To zależy”.