Analiza Systemów Biznesowych



Pobieranie 1,63 Mb.
Strona7/8
Data24.02.2019
Rozmiar1,63 Mb.
1   2   3   4   5   6   7   8

3.1 Wprowadzenie
Modelowanie związków encji służy do określenia potrzeb informacyjnych przedsiębiorstwa. Określa, jakie informacje mają być przechowywane w systemie. Identyfikuje istotne rzeczy analizowanego przedsiębiorstwa, ich własności i sposoby ich powiązania. Model związków encji pokazuje, jakie dane mają być przechowywane, abstrahując od sposobu ich przechowywana lub pobierania informacji. Zatem definiując dane, należy robić to w taki sposób, aby były niezależne od metod przechowywania lub dostępu do nich. Dodatkowo należy unikać tzw. redundancji danych, tzn. każdy rodzaj informacji powinien być przechowywany tylko raz. Nie może zaistnieć sytuacja, w której takie same dane o tych samych własnościach będą przechowywane w dwóch różnych miejscach.
ENCJA (ang. Entity)
Encja jest obiektem, który przechowuje wszelkie istotne i ważne elementy systemu przedsiębiorstwa. W modelu związków encji jest reprezentowana poprzez prostokąt z zaokrąglonymi rogami, jak na rysunku poniżej:

Nazwy encji powinny być tworzone tak, aby były proste i zrozumiałe dla przyszłych użytkowników systemu. Przyjęło się również nazywać encje w liczbie pojedynczej.
Podobnie jak funkcje czy procesy, encje mogą również ulegać dekompozycji na tzw. podtypy. Ilustrowane jest to za pomocą następującego symbolu.


Podtypy modelujemy wówczas, gdy możliwe jest pogrupowanie danych, znajdujących się w encjach. Grupy te wyznaczają nam wówczas podtypy. Encje, będące podtypami (podencje), dziedziczą wszystkie atrybuty oraz wszystkie związki nadtypu (nadencji), czyli encji, z której dekompozycji powstały. Jednocześnie powinny się wzajemnie wykluczać, tzn. nie przechowywać takich samych informacji i nie posiadać takich samych atrybutów. Podtypy encji mogą, ale nie muszą posiadać identyfikatorów unikalnych. Jeśli nie posiadają, wówczas przyjmują identyfikator nadencji.

Zanim zdecydujemy się na stworzenie podencji, musimy znaleźć przynajmniej dwa wykluczające się obszary informacji, na jakie można pogrupować nadencję. W przeciwnym przypadku nie tworzymy podtypów. Podtypy w sumie muszą tworzyć encję będącą nadtypem.


ATRYBUT (ang. Attribute) – reprezentowany graficznie przez tekst zawarty w prostokącie encji. Definiuje encję i decyduje o jej niepowtarzalności. Atrybut posiada nazwę, typ, opcjonalność, długość maksymalną i może być identyfikatorem encji. Nazwa atrybutu powinna jednoznacznie określać zastosowanie atrybutu w encji, być jasna, niedwuznaczna i możliwie krótka. W dobrym zwyczaju jest nazywanie atrybutów w liczbie pojedynczej.

Typ atrybutu (format) – określa czy atrybut będzie tekstem (char, varchar2, text), liczbą (integer), obrazem (image, photograph) czy datą (date, time, timestamp)



Atrybuty opisują własności encji. Atrybuty mogą przyjmować różne typy oznaczane różnymi symbolami, co ilustruje poniższy rysunek:


# - identyfikator unikalny encji – jest to atrybut, który jednoznacznie określa i identyfikuje wystąpienie danej encji. Powinien wystąpić w każdej encji (wyjątek mogą stanowić jedynie encje będące podtypami innej encji, bądź encje tzw. intersekcji, co zostanie omówione w dalszej części)

* - atrybut obowiązkowy – jest to atrybut, którego pole podczas tworzenia rekordu nie może pozostać niewypełnione.

o – atrybut opcjonalnyjak sama nazwa wskazuje, wystąpienie tego atrybutu jest opcjonalne, czyli nie musi przyjąć żadnej wartości podczas tworzenia rekordu i jego pole może pozostać puste.
Istnieje kilka zasad tworzenia atrybutów encji. Przyjęło się używać atrybutów w liczbie pojedynczej i w taki sposób, by ich nazwy nie powtarzały się w obrębie jednej encji. Natomiast atrybuty różnych encji mogą przyjmować taką samą nazwę. Istotne jest również, by każdy atrybut encji posiadał jedną wartość przy każdym jej wystąpieniu. Inaczej może zaistnieć konieczność stworzenia z niego oddzielnej encji.
ZWIĄZEK (ang. Relationship)
Związek określa zależność i sposób powiązania między dwoma encjami. Mogą być różne rodzaje tych powiązań, a co za tym idzie różne ich oznaczenia. Jeśli związek jest opcjonalny, na diagramie jest on przedstawiany za pomocą przerywanej linii, jeśli natomiast jest obowiązkowy, wówczas reprezentowany jest za pomocą linii ciągłej. Zobrazowane jest to na rysunku poniżej.

ENCJA 1 może dotyczyć ENCJI 2, natomiast ENCJA 2 musi określać ENCJĘ 1.


Jak widać na powyższym rysunku, na zakończeniach związków encji można dodawać opis użycia encji, których związek ten dotyczy. W związkach encji istnieje również możliwość zobrazowania krotności ich odczytu. Kiedy związek kończy się zwykłą linią, oznacza to pojedynczy odczyt encji, jeśli związek jest zakończony linią rozgałęzioną, wówczas encja może być odczytywana wielokrotnie. Odnosząc się do przykładu powyżej mamy:

Każde wystąpienie ENCJI 1 może dotyczyć jednego lub wielu odczytów ENCJI 2,



A każde wystąpienie ENCJI 2 musi określać tylko jedno wystąpienie ENCJI 1.

W modelowaniu encji mamy często do czynienia ze związkami, które wskazują na możliwość wielokrotnego użycia i jednej i drugiej encji. Gdybyśmy ilustrowali to poprzez analogię do tworzenia encji „jeden do jednego” lub „jeden do wielu”, wówczas wyglądałoby to w następujący sposób:

Jednak należy unikać takiego sposobu przedstawiania tego typu związków. Dużo bardziej przejrzystą i ułatwiającą implementację systemu w przyszłości metodą jest metoda, która wymaga zastosowania dodatkowej encji przejściowej, nazywanej „encją intersekcji”.



Encja intersekcji jest to encja, która powstała w wyniki wyeliminowania związku wiele do wielu między dwiema encjami. Taka encja może występować tylko w odniesieniu do dwóch encji referencyjnych.



Encja referencyjna – jest to encja, która nie jest połączona wymaganym końcem żadnego związku z innymi encjami. Często używa się jej do uzupełniania definicji innych encji.

W intersekcji można dodać atrybut, będący jej unikalnym identyfikatorem, co daje wygodę w późniejszej implementacji, ale można także stworzyć identyfikator ze związków tej intersekcji. Na diagramie związków encji zaznacza się to za pomocą pionowych kresek na zakończeniu związku. Jest to zobrazowane na poniższym rysunku.



Czasem mamy do czynienia ze związkiem encji samej ze sobą, którego graficzne przedstawienie wygląda następująco:




Jednak takie związki stwarzają mnóstwo problemów w implementacji, chociażby w momencie, gdy chcemy zmodyfikować bądź usunąć encję znajdującą się w takim związku.
Kolejnym elementem, który można spotkać podczas modelowania związków encji jest łuk, który oznacza wzajemne wykluczanie się związków encji. Ilustracja graficzna takiego łuku jest przedstawiona poniżej:

Do stworzenia takiego łuku muszą być przynajmniej dwa związki z daną encją a każdy z tych związków może wystąpić tylko w jednym łuku. Wszystkie związki występujące w jednym łuku muszą być tego samego typu (typy te zostały omówione wcześniej).



Poniżej zamieszczony został przykładowy diagram związków encji opisujący potrzeby informacyjne centrum ogrodniczego:



1   2   3   4   5   6   7   8


©operacji.org 2017
wyślij wiadomość

    Strona główna