Damian Snoch

Damian Snoch Typ konstruktora, a
nie destruktora...

Temat: bardzo prosty diagram klas - sprawdzenie

Witam

Czy możecie sprawdzić ten diagram klas?

//Rozwiązane.Damian S edytował(a) ten post dnia 21.03.13 o godzinie 08:36
Stanisław Jerzy Niepostyn

Stanisław Jerzy Niepostyn Bądź przeszkolony :)

www.project-media.pl
/szkolenia.php

Temat: bardzo prosty diagram klas - sprawdzenie

O ile Rejestr zleceń może się składać ze Zleceń, o tyle uzależnienie życia Recepcjonisty, Pracownika oraz Planisty od posiadania Telefonu wydaje się dość przesadzone - zwykły związek byłby bardziej odpowiedni.
Kompozycja modeluje m.in. sytuację, w której usunięcie instancji klsay Planista spowoduje również usunięcie klasy Telefon - czy o to chodziło ?
Ciekawy również byłby przypadek, gdyby instancję Telefonu posiadały instancje Planisty, Recepcjonisty i Pracownika.
Słowem programista miałby ciężki orzech do zgryzienia próbujac zaimplementować taka konstrukcję bez czestych rozmów z Toba ;)
Inna sprawa to kierunkowość związków. Strzałki pokazują, że o ile będziemy mieć dostęp do wszystkich zleceń Recepcjonisty, a także Pracownika, to raczej na podstawie Zleceń nie dowiemy sie bezpośrednio, kto je tworzy, a kto je wykonuje - dać sobie spokój ze strzałką jak się nie za bardzo wie o o co chodzi .... Intrygujący jest również przypadek utworzenia Zlecenia przez kilku Recepcjonistów - jak to sobie wyobrażasz ?
Podobnie rzecz się ma z drugą asocjacją skierowaną. Do czego ta kieunkowośc związku Posiada ?
Poza tym od razu przekreślasz możliwość rozpoznania który Planista które utworzył Zlecenie. Zatem Planiści moga sobie nieźle namieszać przy usuwaniu, czy modyfikacji Zleceń.
Z powyzszego wynika, że nie jest to raczej "bardzo prosty diagram klas".
Spróbuj wpierw poczytac co nieco o każdym elemencie, który zamieściłes na diagramie w sensie co ten element oznacza i jakie posiada reguły (semantyka).
Wojciech Sznapka

Wojciech Sznapka CTO @ STS Zakłady
Bukmacherskie

Temat: bardzo prosty diagram klas - sprawdzenie

Pracownik, Recepocjonista i Planista powinni dziedziczyć z jednej nadrzędnej klasy, np. Człowiek (imię i nazwisko). Unikniesz wtedy definiowania tych pól per każdy typ aktora.
Jarosław Żeliński

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

Temat: bardzo prosty diagram klas - sprawdzenie

na początek pytanie: co modeluje ten diagram? Kod? Taksonomię?

ale po kolei:
- telefon to nie komponent ani pracownika ani recepcjonisty ani planisty, świadczy usługę (<<use>>)
- jak rozumieć Rejestr posiada Planistę?

to wygląda jak klasyczny "anemiczny model dziedziny" (próba modelowania danych klasami), potraktowanie telefonu jako "będącego częścią człowieka" to błąd semantyczny, zastanów się jak wyglądałby kod tego co narysowałeś...

dalej: dziedziczenie ma sens w przypadku elementów wykonawczych kodu albo w modelu pojęciowym (ponawiam pytanie: co modeluje ten diagram) ale ne w modelu dziedziny systemu opisującym "rzeczywiste rzeczy".

Modelując ludzi (a raczej dane o nich) nie potrzebujesz niczego dziedziczyć bo człowiek to jedna klasa (człowiek, niezależnie od tego czym się zajmuje jest tym samym (takim samym) człowiekiem), to jakie zajmuje stanowisko to jego atrybut, podobnie jak zapis na umowie o pracę... niezależnie od tego czy jestem telefonistą czy pracownikiem (a telefonista to nie pracownik????) należę do gatunku homo sapiens... jedna klasa, nie potrzebne żadne dziedziczenie...

a przy okazji, czy implementacja telefonu to część zakresu projektu?????Jarek Żeliński edytował(a) ten post dnia 28.12.11 o godzinie 19:49

Następna dyskusja:

Diagram klas analitycznych




Wyślij zaproszenie do