Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

Tomasz K.:
Jarek Żeliński:
Projekt bazy danych ma zasadnicze znaczenie dla wydajności tej bazy a nie całego systemu...
Spadek wydajności bazy danych implikuje spadek wydajności całego systemu.

pod warunkiem, ze czynnikiem spowalniającym jest baza... co nie jest takie często...
dodam też, że na liście wymagań owa "wydajność" nieraz zajmuje dalekie miejsce na liście wymagań pozafunckjonanych
Jeśli klient akceptuje system, który działa wolno, to jego wybór.

skup się: jeżeli firma wystawia dwie faktury miesięcznie na bardzo złożone usługi to zapewniam Cie, że szybkość raportowania tych faktur nikogo nie obchodzi... problemy tkwią w innym miejscu, (każda kobieta Ci powie, ze szybko nie znaczy dobrze :))
Kamil Stawiarski

Kamil Stawiarski Oracle Certified
Master | Oracle ACE

Temat: Diagram E/R w UML?

Jarek Żeliński:
Kamil Stawiarski:
Jarek Żeliński:

Projekt bazy danych ma zasadnicze znaczenie dla wydajności tej bazy a nie całego systemu...

dodam też, że na liście wymagań owa "wydajność" nieraz zajmuje dalekie miejsce na liście wymagań pozafunckjonanych, po drugie wydajność (jak i inne cechy jakościowe) w dobrym projekcie są wiązane indywidualnie z poszczególnymi przypadkami użycia a nie z całym systemem ogólnie. Dlatego nie raz rozpoczynanie projektu od analizy i projektowania relacyjnego modelu danych dla całego systemu jest po protu głupotą.. i wielu projektantów całkowicie odeszło od strukturalnych metod w tworzeniu systemów dla biznesu.. nie raz też słyszałem bardzo dobrą radę: optymalizować należy tylko to co wymaga optymalizacji a nie wszystko...

Bardzo mnie cieszy, że takie jest podejście, bo dzięki temu mam cały czas zapełniony kalendarz zleceniami na prawie kwartał do przodu :)

mnie też, ścieżka wygląda tak:
- najpierw ktoś totalnie coś psuje i uczy się
- potem przychodzi ktoś kto mówi, że baza danych jest najważniejsza i robi na prawdę dobrą bazę "pod system" (bo czy dobry system to już nie koniecznie)
- potem pojawia się projekt pod tytułem "integracja, nowy podsystem" itp. i baza zaczyna być głównym problemem, i nie mam na myśli wcale jej wydajności, bo przede mną był ktoś, kto ją faktycznie bardzo dobrze zoptymalizował i jest prędziutka.

Tak więc, nie raz mam wrażenie że moje kolejne kwartały są po Twoich...

Kolejność tych "kwartałów" podejrzeć, a tym samym zweryfikować to czy mój czy inny kwartał był pierwszy, w cyklach życia systemów ERP.... polecam IFS, Dynamix AX, SCALA, SAP i podobne. Jak widać cieszymy się obaj :)

I bardzo dobrze :D Niech się biznes kręci :)
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

Kamil Stawiarski:
Tak więc, nie raz mam wrażenie że moje kolejne kwartały są po Twoich...

Kolejność tych "kwartałów" podejrzeć, a tym samym zweryfikować to czy mój czy inny kwartał był pierwszy, w cyklach życia systemów ERP.... polecam IFS, Dynamix AX, SCALA, SAP i podobne. Jak widać cieszymy się obaj :)

I bardzo dobrze :D Niech się biznes kręci :)

bo to zawsze jest tak, że zanim coś człowiek wyrzuci by kupić nowe próbuje ratować...ale, jak pewnie wiesz, nie zawsze się da...Jarek Żeliński edytował(a) ten post dnia 09.11.11 o godzinie 12:52

konto usunięte

Temat: Diagram E/R w UML?

Znowu. Czy ww. zespoły również oddawały użytkownikowi coś, co nie przeszło testów ?

Do testowana służą testerzy a nie użytkownicy.

Hehe. A Twoje opinie bazują na świecie idealnym.

Ja nazywam go: świat mechaniczny.
A plik tekstowy to program ? Plik tekstowy 'nie działa' więc jak może działać 'źle' (niestabilnie).

Plik tekstowy w tym scenariuszu to kontener na dane. Czy Twoim zdaniem jako kontener na dane nie jest najbardziej stabilną rzeczą pod słońcem?

%-)
Nie napiszę: "Plik tekstowy to stabilny kontener na dane"
Pasuję :)
Marek Kubiś

Marek Kubiś programista c#

Temat: Diagram E/R w UML?

Jarek Żeliński:
Marek Kubiś:
nie gadam o spójności bazy relacyjnej bo ich nie mam za bardzo kiedy używać, muszę logikę obsłużyć w aplikacji...
???????????????????? !!!!!!! ???????????? a to poniżej to jak jest realizowane?
dobrze zaprojektowany system (oprogarmowanie) cechuje się, tym, ze zmiana domenowa (nowa stawka VAT, zmiana sposobu kontroli i naliczania wynagrodzenia i masa innych, sa implementowane we jednym miejscu.
Przecież aby z tego skorzystać, to wszędzie tam gdzie jakaś dana jest potrzebna należy się do tego miejsca odwołać. Aby odczytać właściwą wartość należy system tak zdefiniować aby było coś, co wskaże tę konkretną pożądaną wartość, czyli jest to nic innego jak zaprojektowanie logicznej relacji, która będzie podstawą użytkowania takiej bazy. Już ta logiczna relacja czyni tę bazę relacyjną!
nie, do niczego nie muszę się odnosić, wystarczy konstruować faktury jako kompletne agregaty, bez żadnych "odnośników i relacji", nowe stawki VAT wprowadzam w miejscu (wzorzec obiektowy fabryka i startegia) gdzie są naliczane. Jedyną relacją "logiczną" jest to zarówno obiekt FakturaVAT jak i agregat zawarty w FabryceFaktur zawiera pojęcie stawki VAT ale nijak nie związane żadnymi "relacjami ani więzami".
Nijak? Kolejna bzdura. ;-( To, że korzystając z komponentów języków 4G można nie definiować jawnie ani relacji ani więzów, świadczy tylko o tym, że czyni to kompletny agregat niejawnie, a nie że takowe relacje i więzy nie istnieją! Nie ma takiej możliwości aby bez relacji i więzów system implementował wszystko w jednym miejscu i jednocześnie "połapał się" co do czego przypisać, skojarzyć. ;-( Sorry, ale .. na tłumaczenie oczywistych oczywistości nie mam ani czasu, ani ochoty. :-(
Nie zmieniajmy definicji, bo nikt nie będzie wiedział o czym mowa! Relacyjna baza danych - baza danych złożona z dwóch lub więcej tabel powiązanych ze sobą za pomocą relacji.
o tym mówię, jeżeli więc mam dwie tabele nie powiązane ze sobą relacją ...
To system nie przechowuje tej samej wartości w jednym miejscu i nie wie, że dwie różne rzeczy to te same rzeczy (jeżeli są te same) i nie sporządzi jednego łącznego raportu. ;-(
Podobnie jest z plikiem płaskim - jeżeli przechowuje dane, tzn. pełni funkcję bazy danych! :-(
owszem, ale już nie jest bazą danych relacyjna
Nie wiem. Jeżeli programista logicznie grupuje dane, to może to być niestandardową bazą relacyjną! Twórca zna odpowiedź, ktoś postronny nie zna więc nie powinien się wypowiadać.
100% NIE! Wcześniej wypowiadając się z pozycji analityka stojącego na straży potrzeby spełniania wymagań klienta, itd. itp., w 100% z Pańskimi wypowiedziami się zgadzałem, ale teraz jako projektant, który jest osobą narzucającą już szczegółowe implementacyjne wymagania pisze Pan bzdury. :-(
jest nie małe grono mające inne zdanie...
No to jestem w zdecydowanej mniejszości, bo nie przekonał mnie Pan, że jak
problem w tym, że programiści potrafią zniszczyć projekt
Programiści to wykonawcy poleceń projektantów, analityków i jeżeli ich produkt jest zły tzn, że byli źle zarządzani, albo przez samych siebie (jak wchodzili w buty projektanta, analityka) albo przez innych. ;-(
Można przecież to co było pozostawić bez zmian i do danych archiwalnych sięgać za pomocą starych aplikacji.
ile takich "startych aplikacji" mam zostawić? po kilka takich zabiegach IT stanie się skansenem,
IT już jest także skansenem.
użytkownik oczekuje pracy z jedną aplikacją a nie z jedną plus cztery skanseny...
??? Proponuję powściągliwość. Jak użytkownik jest świadom swoich ograniczeń finansowych to i bez żalu godzi się i na więcej skansenów.
Można też przecież zdefiniować całą bazę na nowo,
i potem migrować starą, i tak za każdym razem???
Jeżeli jest taka potrzeba, tak. Migracja to wysiłek jednorazowy. Przekopiowanie źle zaprojektowanych tabel i dopisanie do aplikacji protezy umożliwiającej użytkownikom ciągłą z nimi pracę, to zapchanie? zakorkowanie? sieci niepotrzebnym ruchem w warunkach normalnego użytkowania dzień w dzień. Czasami to obniżanie jakości pracy jak sieć przeciążona, wolna. Pańskie podejście to gwarancja ciągłej sprzedaży coraz nowszych szybszych i pojemniejszych serwerów, terminali, ruterów. Ma to zapewne jakiś sens ale biznesowy, dla Pana jako pośrednika/sprzedawcy, ale pozwoli Pan, że nie uznam tego podejścia za godne naśladowania. :-(
zdarzenie wymagana faktura bez faktury jest co najmniej "ubogie"...
Nie bogadztwo tu kluczem tylko konsekwencje jakie dla autora aplikacji niesie w sposobie myślenia obsługa zdarzenie->obiekt oraz obiekt->zdarzenie.
temat rzeka, proponuje lekturę o projektowaniu DDD...
? Przecież to niekonsekwencja z Pańskiej strony. DDD identyfikuje obiekty po ID w drzewie, a więc bazuje na tak obśmiewanych przez Pana relacjach! Proszę się zdecydować. ;-(((
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

Marek Kubiś:
Jedyną relacją "logiczną" jest to zarówno obiekt FakturaVAT jak i agregat zawarty w FabryceFaktur zawiera pojęcie stawki VAT ale nijak nie związane żadnymi "relacjami ani więzami".
Nijak? Kolejna bzdura. ;-( To, że korzystając z komponentów języków 4G można nie definiować jawnie ani relacji ani więzów, świadczy tylko o tym, że czyni to kompletny agregat niejawnie, a nie że takowe relacje i więzy nie istnieją! Nie ma takiej możliwości aby bez relacji i więzów system implementował wszystko w jednym miejscu i jednocześnie "połapał się" co do czego przypisać, skojarzyć. ;-( Sorry, ale .. na tłumaczenie oczywistych oczywistości nie mam ani czasu, ani ochoty. :-(


jakoś mam dowód osobisty w kieszeni i świadectwo maturalne w szkoleń, żadnego "więzu" do szkoły nie mam a opis dostaję bez problemu

ś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ć.
To system nie przechowuje tej samej wartości w jednym miejscu i nie wie, że dwie różne rzeczy to te same rzeczy (jeżeli są te same) i nie sporządzi jednego łącznego raportu. ;-(

zapewniam, że sporządzi...
problem w tym, że programiści potrafią zniszczyć projekt
Programiści to wykonawcy poleceń projektantów, analityków

wiec niech nie psują tylko wykonują
ile takich "startych aplikacji" mam zostawić? po kilka takich zabiegach IT stanie się skansenem,
IT już jest także skansenem.


nie u każdego
użytkownik oczekuje pracy z jedną aplikacją a nie z jedną plus cztery skanseny...
??? Proponuję powściągliwość. Jak użytkownik jest świadom swoich ograniczeń finansowych to i bez żalu godzi się i na więcej skansenów.

utrzymowanie skansenu - kilku systemów - jest zawsze kosztowneiejsze

ogólnie różnimy się podejściem.. to co projektuje: potrafi raportować, potrafi skojarzyć dokumenty i potrafi się integrować z innymi systemami,.. :0 ot i już... nie wymyślam :), i nie raz jest nawet kilku krotnie tańsze w implementacji :) (regularnie miewam kontakt z wieloma ofertami na "to samo" bo nie raz robię OPZty..

opisujemy, wszyscy swoje doświadczenia a nie przekonujemy się... bo po co ;)
Roman Wilk

Roman Wilk Tak właściwie, to
gram dużo w squash'a
:), ale to wciąż
z...

Temat: Diagram E/R w UML?

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 ..ROMAN WILK edytował(a) ten post dnia 10.11.11 o godzinie 07:24
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

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ł...
Aleksander Olszewski

Aleksander Olszewski Kierownik Projektów
IT, PRINCE2
Practitioner

Temat: Diagram E/R w UML?

Jarek Żeliński:
...
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ę.

Jest to dosyć radykalne stwierdzenie :) Nie chodzi o to by wszystkie tabele w systemie były połączone relacjami. Chodzi raczej o to, by wyodrębnić w systemie autonomiczne komponenty mając na myśli ich odpowiedzialność względem całego systemu i jeśli system jest oparty o bazę danych tą część danych zamodelować w systemie relacyjnym. Inaczej zakopiemy się przy hurtowni lub po czasie, po kilku modyfikacjach systemu, dostaniemy spaghetti w danych, jak bardzo nie była by aplikacja doskonale zaimplementowana. Utrzymanie więzów integralności na poziomie warstwy aplikacji jest naprawdę bardzo kosztowne, a w przypadku systemów heterogenicznych jest prawie niemożliwe do ogarnięcia.
Ja nie blokuje zmian w US "bo mój system....", mnie nie interesuje wymiana systemu w US i wszyscy żyją.

Z tej perspektywy to to jest opis systemu informacyjnego, a to jest nieco inna klasa systemów :)
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.

Nie trzeba łączyć wszystkie systemy na poziomie bazy danych. Wystarczy, że złączenie danych będzie następować w hurtowni danych. A jak byśmy nie zaprzeczali, hurtownia jest złączone w relacje i co więcej będzie w 1NF lub czasem nawet w 2NF :) I co by tam nie mówić nie jest to autonomiczny system bazodanowy. Często na hurtownię nakładamy kilka warstw aplikacji by osiągnąć funkcjonalności BI.
...

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.

Ten drugi punkt wcale nie musi oznaczać ułomności Delphi a raczej ułomności menedżera, który zlecił przeróbkę :) Diagramy UML z reguły nie narzucają szczegółów implemetacyjnych. Z kolei Delphi (właściwie Object Pascal) jest pełnoprawnym obiektowym językiem programowania. Ciężko mi powiedzieć dlaczego, być może sprawa rozbiła się o framework, który pierwsza firma kojarzyła a druga nie i zaczęła spisywać swój własny framework?
...
>
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.

Baza danych nie powinna opisywać logiki biznesu. Powinna opisywać rzeczywistość. Rzeczywistość, nawet w polskich warunkach, nie zmienia się zbyt często. Mam wrażenie, że problem polega na tym, że projektant gdy zaczyna projektować bazę sprowadza projektowanie do magicznego skryptu, który niby ogarnia całość, a tak naprawdę sprowadza do sytuacji, którą Jarku opisujesz --- lepiej całkowicie zaniechać relacyjny model danych niż korzystać z takiego ułomnego, który daje więcej ograniczeń niż możliwości. Ale nie oznacza to, że nie można zrobić jedno i drugie dobrze.
Roman Wilk

Roman Wilk Tak właściwie, to
gram dużo w squash'a
:), ale to wciąż
z...

Temat: Diagram E/R w UML?

Jarek Żeliński:
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.

Parakoks, to polega na tym że, po Twojej implematacji to klient się obudzi z "ręką w nocniku" po pierwszym podsumowaniu kwatrału.
Jak zastosowaać Twoje rozwiązanie, gdy dzeń w dzień generowanych jest np. 1000 FV, z tego 50-70% rozliczanych bezpośrednio. Muszą być generowane potwierdzenia wpłat i jeszcze do tego muszą być aktualne transakcje historyczne. Przecież integracja jakiegoś modułu "fakturującego" + "logistyki"+ "finsnsowo=księgowego", tylko przy 1000 FV będzie trwać wystarcająco długo, aby żaden z tych systemów nie generował poprawnych danych. Nie chcę nawet myśleć o tym, że tą integrację trzeba na bieżąco kontrolować. Ile będzie kosztowało utrzymanie takiej hybrydy w okresie np. 3/5 lat ?
Argument, że mniej niż jakaś SLA od ERP'a wprawi mnie w naprawdę dobry humor :)
Kamil Stawiarski

Kamil Stawiarski Oracle Certified
Master | Oracle ACE

Temat: Diagram E/R w UML?

Jarek Żeliński:
Nie dziw mi się, że mam takie zdanie jakie mam. Mój projekt w ogóle nie zawierał relacyjnego modelu danych

Jarku, czy to znaczy, że nigdy w swoich systemach, które projektujesz nie użyłeś SQLServer'a Oracle'a czy PostgreSQL'a albo chociażby MySQL'a? Wszystko trzymasz w plikach XML'owych?
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

ROMAN WILK:
Parakoks, to polega na tym że, po Twojej implematacji to klient się obudzi z "ręką w nocniku" po pierwszym podsumowaniu kwatrału.

praktyka tego nie potwierdza :)
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

Kamil Stawiarski:
Jarek Żeliński:
Nie dziw mi się, że mam takie zdanie jakie mam. Mój projekt w ogóle nie zawierał relacyjnego modelu danych

Jarku, czy to znaczy, że nigdy w swoich systemach, które projektujesz nie użyłeś SQLServer'a Oracle'a czy PostgreSQL'a albo chociażby MySQL'a? Wszystko trzymasz w plikach XML'owych?

używanie SQL serwera czy Oracle'a a używanie relacyjnego modelu danych dla całego systemu to nie to samo, wiem że są w moich projektach używane motory SQL, co do XML to prawie nigdy jako baza a raczej jako format danych, Oracle jak wiesz ma swoja "obiektową" wersje (pomijam jej ocenę).

Ale przykład:
- prosty system fakturowania, rejestr towarów, rejestr klientów, rejestr faktur, każdą fakturę wystawia jakiś pracownik, każdy podmiot ma prawo sobie zmienić adres kiedy chce, mamy rotacje pracowników, produkty w magazynie zmieniają się jak w kalejdoskopie i są zamieniane przez odpowiedniki innych producentow, każdy historyczny dokument (faktura) ma mieć "na sobie" stan z dnia wystawienia (prawo). Model relacyjny czegoś takiego to już będzie co najmniej ERD na stronie A3 albo lepiej, faktura jako SQL raport bedzie nietrywialnym zapytaniem SQLowym a raport sprzedaży będzie pewnie dobrym materiałem optymalizacji dla Ciebie.

A można tak, ze diagram klas zajmie stronę A4, raporty będą możliwe i łatwe wystarczy tylko skorzystać z wzorców obiektowych i uznać, ze redundancja to fajna rzecz. Co ciekawe bez uszczerbku dla historycznych faktur odłączę magazyny i wstawię inne, nowe, potem wywalę lokalny rejestr pracowników i zintegruję z nowym HR. I tak się dzieje w praktyce...
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

ROMAN WILK:
Ile będzie kosztowało utrzymanie takiej hybrydy w okresie np. 3/5 lat ?
Argument, że mniej niż jakaś SLA od ERP'a wprawi mnie w naprawdę dobry humor :)

nie wiem czy wiesz, że np. banki (1000 dok, to im nie straszno) funkcjonują w sposób jaki ja opisałem (potrafią mieć i kilkadziesiąt i wiecęj podsystemów) i nikt przy zdrowych zmysłach nie wstawi tam jednej centralnej aplikacji i jednej centralnej relacyjnej bazy danych....

przytoczę mój ulubiony cytata: to że ktoś nigdy nie widział czarnego łabędzia nie stanowi żadnego dowodu na jego nieistnienie...

moi klienci to głownie firmy, które mają w części swoje dedykowane systemy i nie dlatego że mają kaprys i nadmiar kasy a dlatego, że próby "jednego zintegrowanego" oraz koszty jego permanentej kastomizacji i dostosowania były wielokrotnie wyższe ... ja im niczego nie wmawiałem, sami przyszli... dotyczy to także "zwykłych" firm usługowych czy produkcyjnych... ja prawie zawsze "sprzątam" po "profesjonlnych, w pełni zintegrowanych systemach wspierających zarzadzanie" i czuje, że podobnie jak kolega od Oracle'a zawsze będę miął robotę bo zawsze będą na rynku "dobre, kompleksowe, w pełni zintegrowane systemy ERP" które ktoś sprzeda a potem podejmie próbę wdrożenia zgodnie z pierwotną obietnica....Jarek Żeliński edytował(a) ten post dnia 10.11.11 o godzinie 11:39
Roman Wilk

Roman Wilk Tak właściwie, to
gram dużo w squash'a
:), ale to wciąż
z...

Temat: Diagram E/R w UML?

Jarek Żeliński:
Ale przykład:
- prosty system fakturowania, rejestr towarów, rejestr klientów, rejestr faktur, każdą fakturę wystawia jakiś pracownik, każdy podmiot ma prawo sobie zmienić adres kiedy chce, mamy rotacje pracowników, produkty w magazynie zmieniają się jak w kalejdoskopie i są zamieniane przez odpowiedniki innych producentow, każdy historyczny dokument (faktura) ma mieć "na sobie" stan z dnia wystawienia (prawo). Model relacyjny czegoś takiego to już będzie co najmniej ERD na stronie A3 albo lepiej, faktura jako SQL raport bedzie nietrywialnym zapytaniem SQLowym a raport sprzedaży będzie pewnie dobrym materiałem optymalizacji dla Ciebie.

A można tak, ze diagram klas zajmie stronę A4, raporty będą możliwe i łatwe wystarczy tylko skorzystać z wzorców obiektowych i uznać, ze redundancja to fajna rzecz. Co ciekawe bez uszczerbku dla historycznych faktur odłączę magazyny i wstawię inne, nowe, potem wywalę lokalny rejestr pracowników i zintegruję z nowym HR. I tak się dzieje w praktyce...

Jarek, ja żyję w innej rzeczywistości, mnie klienci płącą za to :

Jak wystawi FV do przy jej korekcie za 4 lata, chce wiedzieć co na niej było i jaki pracownik to zrobił i jakie było jego ID i kiedy to było zrobione i na jakiej zmianie i kto to w dziale kontroli jakości akceptowała. I te dane mają być na OnLine (po prostu pod historą tej kartoetki z tej FV).
Aha i nie chec tej korekty wystawiać na podstwie informacji z kartki papieru, ponieważ jakiś podsytem zminił po 3 latach ten ID na inny ID, a jeszcze inny system zmienił dane klienta na dane innego klineta itd....

pozdrawiam
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

ROMAN WILK:
Jarek, ja żyję w innej rzeczywistości, mnie klienci płącą za to :

Jak wystawi FV do przy jej korekcie za 4 lata, chce wiedzieć co na niej było i jaki pracownik to zrobił i jakie było jego ID i kiedy to było zrobione i na jakiej zmianie i kto to w dziale kontroli jakości akceptowała. I te dane mają być na OnLine (po prostu pod historą tej kartoetki z tej FV).
Aha i nie chec tej korekty wystawiać na podstwie informacji z kartki papieru, ponieważ jakiś podsytem zminił po 3 latach ten ID na inny ID, a jeszcze inny system zmienił dane klienta na dane innego klineta itd....

nie ma stresu, u mnie stara faktura VAT będzie idealnie taka sama jak 4 lata temu i nie nie na papierze a w systemie (i nie mam na myśli jej skanu ;))

to co napisałeś o zmianach ID czy podmianie klienta to niestety cecha (ryzyko) pracy na relacyjnej znormalizowanej bazie gdzie ktoś coś popsuł z obsługa historii zmian... w systemach o których ja pisze ten problem ani ryzyko nie istnieje :) dlatego to lubię :)

nie mam zbyt wiele czasu na więcej szczegółów ale polecam np. tych ludzi ich wiedzę (także szkolą):
http://www.bottega.com.pl/szkolenia#Inzynieria

a tu przykład "w tej technologii" a raczej stylu tworzenia:
http://code.google.com/p/ddd-cqrs-sample/

a jak znajdziesz troszkę czasu to zmierz się z napisaniem plugina np. do WordPress'a, zapewniam Cię, że ten CMS to nie trywialny projekt i złożonością ustępuje mu niejeden ERP...Jarek Żeliński edytował(a) ten post dnia 10.11.11 o godzinie 14:12
Roman Wilk

Roman Wilk Tak właściwie, to
gram dużo w squash'a
:), ale to wciąż
z...

Temat: Diagram E/R w UML?

Jarek Żeliński:
a jak znajdziesz troszkę czasu to zmierz się z napisaniem plugina np. do WordPress'a, zapewniam Cię, że ten CMS to nie trywialny projekt i złożonością ustępuje mu niejeden ERP...

Jarek WordPress to nie jest klasyczny CMS, a CMS stworzony z myślą o tworzeniu blogów :)

Odnośnie próbki tego czym się zajmujemy to zerknij na http://www.kameleonb2b.pl to jest w 100 % napisany przez nas CMS + obsługa B2B (tego dema tam jeszcze nie ma). Jest to Framework jednej z czterech wersji rozwiązania jakie sprzedajemy z naszym ERP'em :)

pozdrawiamROMAN WILK edytował(a) ten post dnia 10.11.11 o godzinie 15:29
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

ROMAN WILK:
Jarek Żeliński:
a jak znajdziesz troszkę czasu to zmierz się z napisaniem plugina np. do WordPress'a, zapewniam Cię, że ten CMS to nie trywialny projekt i złożonością ustępuje mu niejeden ERP...

Jarek WordPress to nie jest klasyczny CMS, a CMS stworzony z myślą o tworzeniu blogów :)

wiem, dlatego podałem go jako przykład... ale WP jest wytworzony w technologi na jaką się powołuję... pozwala na dość swobodną wymianę modułów różnego autorstwa co było by wręcz nie możliwe gdyby cały WP był na jednej relacyjnej bazie oparty. Miałem poprzednio PHPOnuke i niestety okazało się, że upadł miedzy innymi z tego powodu...
Odnośnie próbki tego czym się zajmujemy to zerknij na http://www.kameleonb2b.pl to jest w 100 % napisany przez nas CMS + obsługa B2B (tego dema tam jeszcze nie ma). Jest to Framework jednej z czterech wersji rozwiązania jakie sprzedajemy z naszym ERP'em :)

ja nie neguje jakości Twojej pracy (i mam nadzieje wzajemnie) a jedynie pokazuję, ze są "inne sposoby" osiągnięcia pewnych efektów, które nie raz potrafią dać oczekiwany efekt taniej czy szybciej...
Roman Wilk

Roman Wilk Tak właściwie, to
gram dużo w squash'a
:), ale to wciąż
z...

Temat: Diagram E/R w UML?

To jest w 100 % pewne, różnimy się poglądach o jakieś 80%, ale to chyba normalne. Oczywiście również nie neguję jakości Twoje pracy, dzięki za dyskusję.

pozdrawiam
Jarosław Żeliński

Jarosław Żeliński Analityk i
Projektant Systemów

Temat: Diagram E/R w UML?

ROMAN WILK:
To jest w 100 % pewne, różnimy się poglądach o jakieś 80%, ale to chyba normalne. Oczywiście również nie neguję jakości Twoje pracy, dzięki za dyskusję.

pozdrawiam

ja tez dziękuję, do następnego razu

Następna dyskusja:

Diagram E/R




Wyślij zaproszenie do