Diagram ERD

0

Witam,

Zrobiłem diagram ERD lotniska lecz chciałbym się upewnić nim zaczne DFD czy jest on wykonany prawidłowo.
Poniżej zamieszczam mój diagram.

http://s3.zapodaj.net/2260947.bmp.html

Z góry dziękuje za wszelkie sugestie.

0

Bitmapę wrzuciłeś?! :|

0

tak, ma dla Ciebie znaczenie jaki to format?:)

0

2MB jednak chwilę się wczytują... Następnym razem jak chcesz mieć szczegółową grafikę i nie w JPG to zapisz w PNG. Przykładowo Twój schemat w PNG zajmowałby 23KB i wyglądałby identycznie jak w BMP.

0
emil napisał(a)

tak, ma dla Ciebie znaczenie jaki to format?:)

Owszem ma, bo ściągam niemieckie filmy przyrodnicze z torrentów i net mi muli.

Na szczęście po tych kilku godzinach obrazek się załadował.

  1. Widzę relacje, ale nie widzę kluczy obcych w tabelach. Np. rezerwacja chyba powinna posiadać kolumnę na id pasażera.
  2. Lot - skąd i dokąd - jak się domyślam tu o jakieś miasta/wsie/lotniska chodzi. Moim zdaniem na takie coś potrzeba oddzielnej tabeli pomocniczej, żeby:
    a) nie dublować danych;
    b) nie wprowadzać błędnych danych;
  3. Wydaje mi się, że płaca powinna zależeć od stanowiska pracownika. Czyli w tabeli Stanowiska są określone płace, a pracownik ma klucz obcy id_stanowiska.
  4. Pytanie natury zasadniczej - ile jeden lot może mieć załóg? Bo moim zdaniem jedną. Za to wiele lotów może mieć już wiele załóg. Dlatego przydatna byłaby chyba tabela Loty_Załogi (id_lotu, id_załogi), która powiąże te dwie tabele.

Mam nadzieję, że komuś lepszemu będzie chciało się to zweryfikować, bo późno jest i mogę pisać od rzeczy ;P

0

Poprawiony diagram.

http://s6.zapodaj.net/62305578.png.html

Co do kluczy obcych to uczono mnie na studiach że nie występują one w ERD tylko w relacyjnym modelu danych.

Dzięki somekind za pomoc.
Proszę o sprawdzenie powyższego poprawionego diagramu.

0

Tematy do przemyslenia, czyli "twoj diagram pozwala na":

  • pracownik nie musi miec stanowiska (bo licznosc jest 0..1),
  • lot nie musi miec trasy (bo licznosc jest 0..1),
  • zaloga moze nie miec lotu ani pracownika (licznosc z obu stron jest 0..1),
  • rezerwacja moze nie miec lotu ani pasazera (licznosc z obu stron jest 0..1),
  • zaklada sie, ze pola encji sa opisane rzeczownikami (nie skad/dokad ale poczatek/koniec, start/stop lub lepiej zrodlo i cel),
  • moze sie czepiam, ale dbaj o jednolita konwencje nazw (w diagramie masz: #IdStanowiska, ale #idPracownika, a takze #numer_rezerwacji, czyli wszystkie mozliwe schematy notacji; konsekwentnie uzywaj jednego),
  • opisana przez somekida tabeli z lokacjami, zamiast dublowania skad/dokad jest prawidlowym rozwiazaniem; jesli zmienia nazwe miasta (jak mongolskie miasto Alma Atta na Almaty), to bedziesz musial zmienic tylko jeden rekord),
  • placa powinna nalezec do pracownika a nie stanowiska - negocjuje sie ja indywidualnie, a stanowisko tylko jest pewnym wskazniekiem dla pracodawcy,
  • Zaleznosc wiele-do-wielu Lot-(Zaloga)-Pracownik wyglada prawidlowo,
  • Na ogol pokazuje sie klucze obce w ERD, ale jak wymagaja inaczej, rob na uczelni zgodnie z wymaganiami, a jak chcesz w zyciu prywatnym/zawodowym, rob tak, by bylo latwiej,

Proponuje pobrac maly, darmowy program Schemster - co prawda jego zalozeniem jest wspolpraca z baza Oracle, ale nie potrzebujesz wcale Oracle (dajesz Anuluj na pierwszym screenie o logowanie i spokoj), by tworzyc eleganckie diagramy ERD.

0

Dzięki WIELKIE za wskazówki. Nazwy identyfikatorów już zmieniłem na jednolitą konwencje nazw.

Niestety nie mam pomysłu jak wstawić encje z miastami bo gdzie bym ją nie dodał to mam zależność wiele do wielu. Mógłbyś mi coś zaproponować, będę bardzo wdzięczny.

0
Trasa
---
#id_trasa
 id_miasto_zrodlo
 id_miasto_cel


Miasto
---
#id_miasto
 nazwa

To nie jest wiele do wielu tylko dwie relacje dokladnie-jeden-do-wielu.

Jedna trasa musi miec dokladnie jeden cel, dokladnie jedno zrodlo, ale jedno miasto moze byc w wielu trasach jako cel, w wielu trasach jako zrodlo. Mysl o zrodle i celu jako dwoch osobnych polach (przypadkiem po prostu wskazujacych na ta sama tabele).

0

ok, rozumie. Dzieki za pomoc:)

0

Pokazałem diagram mojemu nauczycielowi. Niestety okazało się że jest on źle wykonany. Według Niego ma on wyglądać tak:
http://s6.zapodaj.net/27025644.png.html

Niestety wychodzą wówczas dwie relacje wiele do wielu. Nie przychodzi mi nic do głowy w jaki sposób mogę go poprawić. Czy mógłby mi ktoś zaproponować czym zastąpić encję ZALGOA lub jak znormalizować ten diagram. Będę bardzo wdzięczny za pomoc

0

Po prostu Ty i nauczyciel nie dogadaliscie sie co do kontekstu systemu (albo Ty nam go nie przekazales). Oba diagramy sa poprawne techniczne, o ile wyrazaja inne rzeczy; opisuja inne systemy.

W pierwszym systemie nie interesuje Cie sklad konkretnej zalogi samolotem, tylko czy dany PRACOWNIK lecial danym LOTem. Nauczyciela interesuje system, ktory ewidencjonuje ZALOGI konkretnych LOTow, zawierajace konkretnych PRACOWNIKOW.

Z diagramem nauczyciela sie kompletnie nie zgodze, bo skoro lot ma godzine i date (czyli jest to pojedyncze wystapienie uslugi: historia lub prognoza, a nie plan cyklu lotow), moze miec zaloge, w ktorej pracownik moze wystapic raz lub wcale. Natomiast zaloga moze brac udzial w wielu lotach i miec wielu czlonkow.

Jak pisalem, placa raczej jest indywidualna dla pracownika, ale stanowisko jest kompletna bzdura, bo kazda firma ma okreslone stanowiska (kompetencje). Jak zwalniasz/przyjmujesz osobe, to przypisujesz ja do konkretnego stanowiska, a nie tworzysz go dla niej.

Pamietaj, ze studiowanie nie polega na nauczeniu sie poprawnie tylko: a) nauczeniu sie zgodnie z wymaganiami nauczyciela; b) przekonaniu nauczyciela, ze zrobiles cos swiadomie z takich lub innych pobudek i zmiana tego zmieni podejscie do systemu w taki lub inny sposob.

0
Szczawik napisał(a)

b) przekonaniu nauczyciela, ze zrobiles cos swiadomie z takich lub innych pobudek i zmiana tego zmieni podejscie do systemu w taki lub inny sposob.

Hehehe chyba już nie pamiętasz szkoły i nauczycieli...

0

Ok. Dzięki za opinie. Też myślę że nauczyciel nie ma dokońca racji jednak muszę to zrobić tak jak on chce. Inczej nie zalicze tego bo wg niego będzie źle.

Czy macie jakiś pomysł jak to poprawić? Mi jedyne co przychodzi do głowy to odciąć pracowników razem z encją ZALOGA jednak nie podoba mi się to rozwiązanie.

Dzięki za odpowiedz

0

Witam mógłbyś podesłać ten schemat na e mail mój: [email protected] będę wdzięczny potrzebuje do pracy

1 użytkowników online, w tym zalogowanych: 0, gości: 1