Temat: Diagram E/R w UML?
ROMAN WILK:
Jarek Żeliński:
świat jaki mamy przed sobą, żyjemy w nim całkiem sprawnie, nie ma żadnych więzów ani niteczek relacji a doskonale funkcjonuje, wystarczy zrozumieć jak i zamodelować to a potem zaimplementować.
Jarek w jakim Ty świecie żyjesz ? Ja mam firmę (Ty pewnie też), jest ZUS i US, chyba płacisz podatki ? Czy to nie jest relacja NIP, REGON itd. Releację są podstawą działania każdego systemu, ja tylko uważam, że w przypdaku baz danych mechanizmy kontroli danych nie zawsze jest sensowanie zostawiać po stronie bazy. Co prawda to też, zależy od wielu czynników, ale tak jak zwykle w IT zawsze wiele zależy od kontekstu ..
Płace podatki, mam firmę, jak idę do US to pani nie ciągnie mnie za "relację" tylko pyta o NIP. Zwróć uwagę, że mój system FK i system rozliczeń w US to odrębne systemy. Do do tego bank, gdzie są moje przelewy do ZUSsu. Jakos bez pudła
Ja wiem komu, kiedy, za co i ile przelałem. To wszystko funkcjonuje mimo tego, że ja czasem coś zmieniam w swoim systemie, US też i ZUS jak najbardziej. Trzy wymienione podmioty mają rozłączne systemy i dają radę. Ja nie blokuje zmian w US "bo mój system....", mnie nie interesuje wymiana systemu w US i wszyscy żyją. A teraz wyobraź sobie, że tak samo niezależne i swobodne mogą być system w jednej firmie CRM, FK, Logistyka, Produkcja itp. Paradoks polega na tym, ze one jako odrębne są tańsze niż jeden zintegrowany na jednej relacyjnej bazie.
I druga rzecz: pisze to nie na postawie wydumanych teorii a na podstawie ofert jakie analizuję od kilku lat, bo jako osoba analizująca i pisząca wymagania mam na stole oferty a potem obserwuję skutki (moje umowy nie kończą się po oddaniu OPZ a po zakończeniu projektu, nie zostawiam klientów z moimi papierami sam na sam.)
Długo nie rozumiałem dlaczego na te same wymagania miałem sześć ofert na milion a dwie an 200tys. Kiedyś myślałem, że kantują (niektórzy faktycznie) ale po kilku projektach uznałem, ze pisanie wymagań w postaci listy funkcjonalności jest bez sensu skoro jest taki rozrzut ofert. Zacząłem studnia nad "obiektowością", przestały mnie podniecać relacyjne bazy a zaczęły wzorce obniektowe i komponentowa architektura. Teraz projektuję systemy sam (zarzuty że analityka się wcina owszem, ja projektuję logikę biznesową i zabraniam modyfikowania jej bez konsultacji), oddaje nie tylko listę use casów ale tez oddanę kompletny model dziedziny, i rozrzut ofert zmalał, ja mam przewidywalne koszty i paradoksalnie wszystko jest tańsze.
Wynik ostatniego postępowania:
1. oferta firmy: implementacja mojego projektu, framework Java, ludzie z obiektowym podejściem, kwartał na implentację, wynik: 250tys.
2. oferta firmy: uznanie mojego projektu tylko za logikę, przeróbka mojego modelu dziedziny do implementacji Delphi/Firebirds, pół roku, 750 tys.
Wybrano firmę pierwszą, projekt się zakończył w terminie.
Nie dziw mi się, że mam takie zdanie jakie mam. Mój projekt w ogóle nie zawierał relacyjnego modelu danych (jako jednego dla całego systemu) z uwagi na zbytnie usztywnienie, a w planie było wiele zmian w modelu biznesowym a implementacja zarządzania historia wielu obiektów w modelu relacyjnym to kosmos. I na koniec: analiz i projektowanie cztery miesiące, implementacja trzy. Oddana wersja 1.1...
się rozpisałem... ale Twój argument w rodzaju "klientów na to nie stać" mnie nieco rozbroił...