ELH diagramy histrii życia encji Infrmacje gólne i przykłady Autr Rman Simiński Kntakt rman.siminski@us.edu.pl www.us.edu.pl/~siminski
Nazwa Entity Life Histry, czyli diagramy histrii życia encji (biektu) Cel stswania Analiza i mdelwanie rdzajów zmian które mgą zajść w infrmacjach składwanych w systemie, wraz z kntekstem zajścia wych zmian. Diagram ELH prezentuje w jaki spsób encje systemu zmieniają się w czasie jeg funkcjnwania. Diagram ten prezentuje pełny zbiór zmian jaki mgą zajść dla encji, łącznie z infrmacją kntekście tych zmian. Diagram ELH twrzny jest dla każdej z encji sbn, przedstawia n lsy hiptetyczneg egzemplarza encji, pcząwszy d jeg utwrzenia aż p jeg usunięcie. Cpyright Rman Simiński Strna : 2
, ERD, DFD Diagramy ERD statyczna struktura danych i relacji pmiędzy nimi zachdzących. Diagramy DFD prezentacja dróg i spsbu przemieszczania się danych w systemie raz pmiędzy systemem a jeg tczeniem. prezentuję zmiany stanu encji w czasie działania systemu. Cpyright Rman Simiński Strna : 3
Zdarzenia W czasie życia systemu zachdzą zdarzenia, pwdujące zmianę danych, a dane mdelwane są encjami. Zatem zmiany stanów encji następują w wyniku zaistnienia pewnych zdarzeń. Zdarzenie jest syntetycznym reprezentantem teg, że cś się wydarzył wewnątrz systemu lub w jeg tczeniu. Zdarzenia zachdzą w pewnych warunkach, zdarzenia mgą się pwtarzać. Cpyright Rman Simiński Strna : 4
Pdstawa d budwy diagramów ELH Aby sprządzić diagram ELH, ptrzebne są diagramy pisujące mdel danych systemu i mdel prcesów występujących w systemie (i działających na danych). W metdykach strukturalnych mdel danych kreśla diagram ERD a mdel prcesów DFD. Zatem diagram ELH uzupełnia diagramy ERD i DFD infrmację zmianach zachdzących w danych w wyniku pwstania zdarzeń, pwstałych w skutek realizacji pewnych prcesów. Cpyright Rman Simiński Strna : 5
a ERD i DFD Zdarzenia dtyczą biektów składwanych w encjach, pisanych przez diagramy ERD. Zdarzenia pwdują uruchmienie prcesów, pisanych przez diagramy DFD. Uruchmine prcesy wyknują swje czynnści i dknują aktualizacji składnic danych, c jest mdelwane przepływem aktualizującym składnice danych na diagramie DFD. Cpyright Rman Simiński Strna : 6
Kmpnenty diagramów ELH Diagram ELH jest zbirem płącznych elementów, będących prstkątami. Pjedynczy prstkąt, umieszczny na szczycie diagramu reprezentuje encję, której histria życia jest aktualnie mdelwana. Prstkąt ten zawiera nazwę mdelwanej encji. Nazwa encji Przykładwe encje: Klient Zamówienie Pracwnik Płatnść klienta Encje, dla każdej z nich twrzy się sbny diagram Cpyright Rman Simiński Strna : 7
Kmpnenty diagramów ELH Pniżej elementu reprezentująceg encję umieszcza się prstkąty pisujące zdarzenia. czyta się d góry d dłu i d lewej d prawej. Nazwa encji Zdarzenie A Zdarzenie B Zdarzenie C Cpyright Rman Simiński Strna : 8
Prządkwanie zdarzeń na diagramach ELH mgą składać się z trzy pdstawwe knstrukcje: Sekwencję zdarzeń, (np. zdarzenie A zachdzi przed zdarzeniem B). Selekcję zdarzeń, (np. zachdzi zdarzenie A lub B, nigdy ba jedncześnie). Iterację zdarzeń, (np. zdarzenie A zachdzi 0, 1 lub wiele razy). Cpyright Rman Simiński Strna : 9
Sekwencja zdarzeń na diagramie ELH Diagram przedstawia zdarzenia, które będą pjawiać się w klejnści kreślnej ciągiem elementów umieszcznych na tym samym pzimie ( czytamy diagram d lewej d prawej). Najpierw zajdzie zdarzenie A, ptem B a na kńcu C. Encja A B C Cpyright Rman Simiński Strna : 10
Sekwencja zdarzeń na diagramie ELH przykład Knt klienta Rejestracja Transakcje Usunięcie Cpyright Rman Simiński Strna : 11
Rzwijanie zdarzeń sekwencyjnych Encja A B C D E Element B jest węzłem, zatem nie reprezentuje sam efektywneg zdarzenia a raczej stan encji, kreślany jest jeg dziećmi, które są liśćmi drzewa. Zatem sekwencja zdarzeń A, B, C jest rzwijana d sekwencji A, D, E, C. Cpyright Rman Simiński Strna : 12
Rzwijanie zdarzeń sekwencyjnych, cd.... Encja A B G I C D H E F Sekwencja zdarzeń A, B, G, I jest rzwijana d sekwencji A, C, E, F, H, I. Cpyright Rman Simiński Strna : 13
Selekcja zdarzeń na diagramie ELH Selekcja reprezentuje zdarzenia alternatywne, które mgą zaistnieć dla danej encji w kreślnym punkcie jej życia. Tych pcjnalnych zdarzeń mże być 2 lub więcej, tylk jedn z takich zdarzeń mże zaistnieć. Selekcję reprezentuje symbl '' umieszczny w prawym górnym rgu zdarzenia. Encja A B C Cpyright Rman Simiński Strna : 14
Selekcja zdarzeń a zdarzenie puste Dpuszcza się sytuację taką, że żadne zdarzenie nie zaistnieje, znacza się t wprwadzając symbl pcji zerwej (null ptin, null event), znacznej kreską. Zdarzenie puste jest zawsze liściem. Wybranie zdarzenia pusteg pwduje przejście d następneg punktu życia encji. Encja A B Cpyright Rman Simiński Strna : 15
Rzwijanie zdarzeń z selekcją Encja A B C D E Mżliwe rzwinięcia w sekwencję: A, D, C. A, E, C. Cpyright Rman Simiński Strna : 16
Rzwijanie węzłów z selekcją Encja A B C D E F G H Mżliwe rzwinięcia w sekwencję: A, F, C. A, G, H, C. Cpyright Rman Simiński Strna : 17
Rzwijanie węzłów z selekcją i zdarzeniem pustym Encja A B C D E Mżliwe rzwinięcia w sekwencję: A, D, C. A, E, C. A, C (jeżeli zdarzenie puste zstał wybrane). Cpyright Rman Simiński Strna : 18
Selekcja zdarzeń na diagramie ELH przykład Knt klienta Rejestracja Transakcje Usunięcie Złżenie zmówienia Przyjęcie Odrzucenie Cpyright Rman Simiński Strna : 19
Iteracja zdarzeń na diagramie ELH Mżliwść wielkrtneg zajścia pewneg zdarzenia dla knkretneg wystąpienia encji t iteracja zdarzeń. Iteracja znacza, że zdarzenie nie wystąpi ani razu, lub wystąpi wielkrtnie w tym samym punkcie życia encji. Iterację zdarzeń znacza się znakiem * umieszcznym w prawym górnym rgu elementu znaczająceg zdarzenie (liść drzewa) lub węzeł. Nazwa encji Zdarzenie B * T zdarzenie wystąpi wielkrtnie lub nie wystąpi wcale. Cpyright Rman Simiński Strna : 20
Iteracja zdarzeń na diagramie ELH rzwijanie w sekwencję Encja A B C D * Mżliwe rzwinięcia w sekwencję: A, C (zdarzenie D nie występuje ani razu). A, D, C (zdarzenie D występuje raz). A, D, D,..., D, C (zdarzenie D występuje wiele razy). Cpyright Rman Simiński Strna : 21
Iteracja węzłów na diagramie ELH rzwijanie w sekwencję Encja A B C D * E F Mżliwe rzwinięcia w sekwencję: A, C ( faza D nie występuje ani razu). A, E, F, C (faza D występuje raz). A, E, F, E, F, E, F,..., C (faza D występuje wiele razy). Cpyright Rman Simiński Strna : 22
Iteracja zdarzeń na diagramie ELH przykład Knt klienta Rejestracja Transakcje Usunięcie Złżenie zmówienia * Przyjęcie Odrzucenie Cpyright Rman Simiński Strna : 23
Diagram ELH twrzy drzew Knt klienta Krzeń drzewa reprezentuje encję, której histrie życia mdelujemy. Rejestracja Transakcje Usunięcie Przyjęcie Złżenie zmówienia * Odrzucenie Węzły drzewa nie! reprezentują zdarzeń zachdzących dla encji. Opisują ne raczej aktualny stan życia encji. Węzły prządkują diagram, strukturalizując zdarzenia tak, aby zajmwały w diagramie właściwe miejsce. Liście drzewa reprezentują zdarzenia, które zachdzą dla danej encji. Cpyright Rman Simiński Strna : 24
Zasady budwania diagramów ELH pierwszy pzim zdarzeń Każda encja pwinna mieć zdarzenie mdelujące je urdzenie się raz jej śmierć. Pmiędzy tymi granicznymi zdarzeniami występuje życie encji. Na danym pzimie staramy się nie mieszać typów zdarzeń. Custmer Payment Custmer Sends Details Via Website Custmer Life Details Archived Cpyright Rman Simiński Strna : 25
Zasady budwania diagramów ELH pierwszy pzim zdarzeń Bking Custmer Makes Bking Request Bking Life Deleted Rachunek bankwy Otwarcie rachunku Życie rachunku Zamknięcie rachunku Usunięcie rachunku Cpyright Rman Simiński Strna : 26
Zasady budwania diagramów ELH rzbudwa diagramu Pracwnik Przyjęcie Praca Odejście Przyjęcie p rekrutacji * Przyjęcie p awansie Wypłata pensji Rezygnacja Zwlnienie Cpyright Rman Simiński Strna : 27
Zasady budwania diagramów ELH mieszanie zdarzeń nie jest dbre Dyskusyjne: Nazwa encji Zdarzenie A Zdarzenie B Zdarzenie C * Lepiej: Nazwa encji Zdarzenie A Zdarzenie B Węzeł mże nie mieć kreślnej nazwy jest wtedy węzłem prządkującym strukturę Zdarzenie C * Cpyright Rman Simiński Strna : 28
Zasady budwania diagramów ELH mieszanie zdarzeń nie jest dbre Nieprawidłwe: Nazwa encji Zdarzenie A Zdarzenie B Zdarzenie C Lepiej: Nazwa encji Nazwa encji Zdarzenie B Zdarzenie B Zdarzenie A Zdarzenie C Zdarzenie A Zdarzenie C Cpyright Rman Simiński Strna : 29
Zasady budwania diagramów ELH typwe sekwencje zdarzeń Nazwa encji Nazwa encji Zdarzenie A * Zdarzenie B * Zdarzenie A * Zdarzenie B * Zdarzenie A mże wystąpić wiele razy, ptem zdarzenie B mże wystąpić wiele razy Cpyright Rman Simiński Strna : 30
Zasady budwania diagramów ELH typwe sekwencje zdarzeń Nazwa encji * Nazwa encji Zdarzenie A Zdarzenie B Zdarzenie A * Zdarzenie A * Zdarzenie A, i występujące p nim zdarzenie B, mgą wystąpić wielkrtnie. Cpyright Rman Simiński Strna : 31
Zasady budwania diagramów ELH typwe sekwencje zdarzeń Czasem zachdzi kniecznść zmiany stanu encji w wyniku zajścia zdarzenia, dla któreg nieisttna jest sekwencja, pwtarzalnść czy pcjnalnść. Pracwnik Przyjęcie Praca Odejście Zmian knta * Przyjęcie p Przyjęcie p Wypłata Rezygnacja Zwlnienie rekrutacji awansie pensji Cpyright Rman Simiński Strna : 32
Wskaźniki statusu mgą psiadać wskaźniki statusu (ang. status indicatrs) pzwalające na śledzenie klejnści występwania zdarzeń. Wskaźnik statusu mżna traktwać jak ddatkwe ple danych w encji, aktualizwane przy każdym zaistnieniu zdarzenia. Wskaźniki statusu pzwalają na kreślenie które zdarzenie wystąpił statni i jakie zdarzenie ma nastąpić jak następne. Rachunek bankwy Otwarcie rachunku Życie rachunku Zamknięcie rachunku Usunięcie rachunku -/1 1/2 2/3 3/4 Wskaźnik statusu: pprawna pprzednia wartść/ pprawna następna wartść Cpyright Rman Simiński Strna : 33
Wskaźniki statusu, cd.... Knt klienta Rejestracja -/1 Złżenie zmówienia Usunięcie 2, 3/4 Przyjęcie Odrzucenie 1/2 1/3 Cpyright Rman Simiński Strna : 34
Wskaźniki statusu, cd.... Pracwnik Przyjęcie Praca Odejście -/1 1, 2/3 Wypłata pensji * 1, 2/2 Cpyright Rman Simiński Strna : 35
Wskaźniki statusu, cd.... Knt klienta Rejestracja Transakcje Usunięcie -/1 Złżenie zmówienia * 1, 2, 3/4 Przyjęcie Odrzucenie 1, 2, 3/2 1, 2, 3/3 Cpyright Rman Simiński Strna : 36