Inżynieria oprogramowania wykład V Faza analizy wprowadzenie Analiza strukturalna modelowanie związków encji
|
|
- Bogdan Zalewski
- 5 lat temu
- Przeglądów:
Transkrypt
1 Inżynieria oprogramowania wykład V Faza analizy wprowadzenie Analiza strukturalna modelowanie związków encji prowadzący: dr hab. inż. Krzysztof Bartecki, prof. PO
2 Faza analizy systemowej (modelowania) Wymagania Projektowanie Implementacja Testowanie Konserwacja Strategiczna Analiza Instalacja Dokumentacja Jej celem jest udzielenie odpowiedzi na pytanie: jak system ma działać? W wyniku fazy analizy otrzymujemy logiczny model systemu, opisujący sposób realizacji przez system postawionych wymagań, lecz abstrahujący jeszcze od szczegółów implementacyjnych. K. Bartecki, Inżynieria oprogramowania, V/2
3 Główne cechy dobrego modelu analitycznego opisuje na wysokim poziomie abstrakcji wszystkie istotne cechy tworzonego systemu informatycznego, opisany jest za pomocą notacji zgodnej z określoną konwencją, zbudowany jest przy użyciu dobrze znanych narzędzi (CASE), bazuje na hierarchicznej dekompozycji funkcji systemu, używany jest do wnioskowania o przyszłym oprogramowaniu,. unika terminologii implementacyjnej. K. Bartecki, Inżynieria oprogramowania, V/3
4 Dziedzina problemu i zakres odpowiedzialności systemu a zakres modelu analitycznego Tworzony system informatyczny będzie obejmował jedynie pewien fragment większej całości, zwanej dziedziną problemu. Przykłady dziedzin problemu: działalność firmy rachunkowej, funkcjonowanie wydziału firmy farmaceutycznej, wizualizacja informacji geograficznej. Fragment dziedziny problemu, który będzie objęty przez tworzony system informatyczny, nazywany jest zakresem odpowiedzialności systemu. K. Bartecki, Inżynieria oprogramowania, V/4
5 Dziedzina problemu (zakres działalności firmy) Model analityczny Zakres odpowiedzialności systemu Model analityczny z reguły wykracza poza zakres odpowiedzialności systemu, a czasem nawet poza dziedzinę problemu, gdyż: ujęcie w modelu pewnych fragmentów dziedziny problemu nie będących częścią budowanego systemu czyni model bardziej zrozumiałym, na etapie modelowania może nie być jasne, które elementy będą realizowane przez tworzony system informatyczny a które np. ręcznie. K. Bartecki, Inżynieria oprogramowania, V/5
6 Wiele systemów informatycznych w prosty sposób automatyzuje wykonywanie czynności wykonywanych do tej pory ręcznie w tym przypadku tworzenie modelu systemu informatycznego można utożsamiać z modelowaniem struktury oraz sposobu funkcjonowania danej firmy/organizacji. W innych przypadkach wdrożenie systemu informatycznego w istotny sposób zmienia dotychczasową dziedzinę problemu w tym przypadku celem analizy jest stworzenie modelu fragmentu dziedziny problemu zmodyfikowanej przez działanie projektowanego systemu. K. Bartecki, Inżynieria oprogramowania, V/6
7 Notacje używane w fazie analizy Do opisu modelu stosuje się następujące rodzaje notacji: język naturalny, notacje graficzne, specyfikacje częściowo ustrukturalizowany zapis tekstowy i numeryczny. Szczególną rolę pełnią tutaj notacje graficzne inżynieria oprogramowania wzoruje się tutaj na innych dziedzinach nauki (mechanice, elektronice), w których notacje graficzne są od dawna stosowane. K. Bartecki, Inżynieria oprogramowania, V/7
8 Metody analizy systemowej podział STRUKTURALNE Wyróżniają w systemie dwa rodzaje składowych: pasywne (dane), aktywne (operacje funkcje). OBIEKTOWE Opisują system jako układ współdziałających z sobą obiektów, łączących w jedną całość dane i operacje na tych danych wykonywane. K. Bartecki, Inżynieria oprogramowania, V/8
9 Analiza strukturalna Analiza strukturalna zaczyna się od budowy dwóch różnych modeli: modelu danych, będącego opisem pasywnej części systemu, modelu funkcji, opisującego aktywną część systemu. Zwolennicy analizy strukturalnej twierdzą, że budowa dwóch oddzielnych modeli ułatwia zrozumienie różnych aspektów systemu. Krytycy zwracają uwagę na to, że integracja tych dwóch modeli może być bardzo trudna. K. Bartecki, Inżynieria oprogramowania, V/9
10 Model danych modelowanie związków encji Modelowanie związków encji polega na identyfikowaniu w analizowanym przedsiębiorstwie rzeczy ważnych (tzw. encji), własności tych rzeczy (czyli tzw. atrybutów) oraz sposobów, jakimi te encje są ze sobą powiązane (czyli tzw. związków). Cele modelowania związków encji: Dostarczenie modelu potrzeb informacyjnych przedsiębiorstwa, niezależnego od sposobu przechowywania danych i od metod dostępu do nich. W praktyce inżynierskiej model związków encji stanowi konceptualny, wstępny model bazy danych. K. Bartecki, Inżynieria oprogramowania, V/10
11 Definicja encji Encja (ang. entity) jest rzeczą lub obiektem, rzeczywistym lub wyobrażonym, mającym dla nas znaczenie, o którym informacje muszą być znane lub przechowywane. Nazwa encji to rzeczownik w liczbie pojedynczej, na diagramie zapisany wielkimi literami. Przykłady encji i ich instancji (czyli wystąpień): PORT LOTNICZY (LOTNISKO) np. Okęcie Balice Pyrzowice CZYTELNIK np. Józef Kowalski Zbigniew Kępski Adam Nowak ZAMÓWIENIE np. 1134/ / /16 K. Bartecki, Inżynieria oprogramowania, V/11
12 Atrybut encji (ang. entity attribute) jest dowolnym szczegółem, służącym do opisywania, identyfikowania, klasyfikowania, określania ilości lub wyrażania stanu encji. Atrybut encji jest dowolnym opisem mającym znaczenie dla encji. Nazwa atrybutu musi być podana w liczbie pojedynczej. Przykłady encji i ich wybranych atrybutów: SAMOLOT producent nazwa typu samolotu liczba miejsc numer rejestracyjny data produkcji nazwa samolotu KARTA KREDYTOWA data wydania ważna od ważna do numer WYPOŻYCZENIE numer kolejny liczba pozycji data wypożyczenia data zwrotu K. Bartecki, Inżynieria oprogramowania, V/12
13 Atrybut musi znajdować się przy encji, którą opisuje Czy np. nazwa towaru powinna być atrybutem encji TOWAR, ZAMÓWIENIE czy KLIENT? Czy np. numer siedzenia powinien być atrybutem encji BILET, MIEJSCE czy SAMOLOT? Czy np. numer rejestracyjny powinien być atrybutem encji POJAZD czy WŁAŚCICIEL? TOWAR nazwa towaru MIEJSCE numer siedzenia POJAZD numer rejestracyjny K. Bartecki, Inżynieria oprogramowania, V/13
14 Instancja encji to konkretne wystąpienie danej encji. Każdej instancji encji przypisane są określone wartości jej atrybutów. Przykładowe instancje (wystąpienia) encji SAMOLOT z wartościami atrybutów: SAMOLOT SAMOLOT SAMOLOT Boeing SP-EEA 2004 Paderewski Boeing SP-EEB 2006 Chopin Boeing SP-EEK 2006 brak nazwy K. Bartecki, Inżynieria oprogramowania, V/14
15 Może się zdarzyć, że atrybut przyjmuje określoną wartość tylko przez pewien czas, dopiero po pewnym czasie, lub wartość ta może nie być osiągalna. Takie atrybuty nazywamy opcjonalnymi (o), w odróżnieniu od atrybutów wymaganych (*), dla których wartości muszą być podane. Przykłady: SAMOLOT * producent * nazwa typu samolotu * liczba miejsc * numer rejestracyjny * data produkcji o nazwa samolotu WYPOŻYCZENIE * numer kolejny * liczba pozycji * data wypożyczenia o data zwrotu CZYTELNIK * nazwisko * imię * imię ojca * miejscowość * ulica * nr domu o nr mieszkania * data zapisania o data wypisania K. Bartecki, Inżynieria oprogramowania, V/15
16 Identyfikator encji Każda encja musi być jednoznacznie identyfikowalna, aby każdą instancję encji można było odróżnić od wszystkich innych jej instancji. Rolę identyfikatora encji (#) może pełnić: pojedynczy atrybut (wymagany), kombinacja kilku wybranych atrybutów (wszystkie wymagane). SAMOLOT # numer rejestracyjny * producent * nazwa typu samolotu * liczba miejsc * data produkcji o nazwa samolotu CZYTELNIK # nazwisko # pierwsze imię # drugie imię * data urodzenia * data zapisania o data wypisania K. Bartecki, Inżynieria oprogramowania, V/16
17 Związek encji Związek encji jest nazwanym, istotnym powiązaniem, istniejącym między dwoma encjami. W szczególnym przypadku związek może być powiązaniem tej samej encji ze sobą (tzw. związek rekurencyjny, omawiany dalej). Przykładowa notacja związku encji: ENCJA A opcjonalny (kółko) wymagany (kreska) ENCJA B wiele (kurza stopka) jeden (linia) K. Bartecki, Inżynieria oprogramowania, V/17
18 Jak czytać notację związków encji? Przykład: BILET # nr biletu * cena : wystawiony dla widnieje na PASAŻER # nr dowodu * nazwisko * imię nazwy ról Każdy BILET musi być wystawiony na jednego i tylko jednego PASAŻERA. (Nie może być biletów pustych, tzn. nie wystawionych na nikogo oraz biletów wystawionych na więcej niż jednego pasażera) Każdy PASAŻER może widnieć na wielu BILETACH. (Mogą istnieć pasażerowie, których nazwiska nie widnieją na żadnym bilecie, mogą istnieć tacy, których nazwiska widnieją na jednym lub wielu biletach) K. Bartecki, Inżynieria oprogramowania, V/18
19 Poglądowy diagram ilustrujący związek między encjami BILET i PASAŻER BILET PASAŻER K. Bartecki, Inżynieria oprogramowania, V/19
20 Związek zależny (encja zależna, encja słaba) Każda encja musi posiadać identyfikator. Niekiedy jednak atrybuty danej encji nie wystarczają do zidentyfikowania instancji (wystąpienia) tej encji. W tym przypadku na identyfikator danej encji mogą składać się zarówno jej własne atrybuty, jak również atrybuty (identyfikatory) innej encji (lub kilku innych encji), z którą dana encja tworzy związek. Encję nie posiadającą swojego identyfikatora nazywamy encją słabą, zaś związek jaki tworzy ona z encją od której pobiera identyfikator związkiem zależnym. K. Bartecki, Inżynieria oprogramowania, V/20
21 Przykład związku zależnego ZADANIE # numer zadania * nazwa zadania * koszt zadania realizowane w ramach symbol związku zależnego złożony z PROJEKT # numer projektu * nazwa projektu * data rozpoczęcia o data zakończenia PROJEKT może składać się z wielu zadań. Koszt ZADANIA o danym numerze zadania zmienia się w zależności od PROJEKTU, w ramach którego jest ono wykonywane. Aby zidentyfikować konkretne ZADANIE w ramach określonego PROJEKTU (i w ten sposób określić koszt tego ZADANIA), należy podać zarówno numer zadania, jak również numer projektu, w ramach którego jest ono realizowane. Na identyfikator encji ZADANIE składają się zatem 2 atrybuty: numer zadania oraz numer projektu, będący identyfikatorem encji PROJEKT. K. Bartecki, Inżynieria oprogramowania, V/21
22 Przykłady notacji związków wiele do jednego PRACOWNIK WYDZIAŁ Każdy PRACOWNIK może pracować w jednym WYDZIALE. Każdy WYDZIAŁ może zatrudniać wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK może pracować w jednym WYDZIALE. Każdy WYDZIAŁ musi zatrudniać jednego lub wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK musi pracować w dokładnie jednym WYDZIALE. Każdy WYDZIAŁ może zatrudniać wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK musi pracować w dokładnie jednym WYDZIALE. Każdy WYDZIAŁ musi zatrudniać jednego lub wielu PRACOWNIKÓW. K. Bartecki, Inżynieria oprogramowania, V/22
23 Przykłady notacji związków jeden do jednego ZESPÓŁ PROJEKT Każdy ZESPÓŁ może pracować nad jednym PROJEKTEM. Każdy PROJEKT może mieć przypisany jeden ZESPÓL. ZESPÓŁ PROJEKT Każdy ZESPÓŁ może pracować nad jednym PROJEKTEM. Każdy PROJEKT musi mieć przypisany dokładnie jeden ZESPÓL. ZESPÓŁ PROJEKT Każdy ZESPÓŁ musi pracować nad dokładnie jednym PROJEKTEM. Każdy PROJEKT może mieć przypisany jeden ZESPÓL. K. Bartecki, Inżynieria oprogramowania, V/23
24 Przykłady związków wiele do wielu PRACOWNIK WYDZIAŁ Każdy PRACOWNIK może pracować w wielu WYDZIAŁACH. Każdy WYDZIAŁ może zatrudniać wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK może pracować w wielu WYDZIAŁACH. Każdy WYDZIAŁ musi zatrudniać jednego lub wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK musi pracować w jednym lub wielu WYDZIAŁACH. Każdy WYDZIAŁ może zatrudniać wielu PRACOWNIKÓW. PRACOWNIK WYDZIAŁ Każdy PRACOWNIK musi pracować w jednym lub wielu WYDZIAŁACH. Każdy WYDZIAŁ musi zatrudniać jednego lub wielu PRACOWNIKÓW. K. Bartecki, Inżynieria oprogramowania, V/24
25 Dlaczego nie modeluje się związków jeden do jednego obustronnie wymaganych? POJAZD nr identyf. marka rok produkcji : DOWÓD REJESTRACYJNY nr rejestracyjny nr dowodu rej. data rejestracji : Są one często różnymi perspektywami tej samej rzeczy, z innymi nazwami. Zwykle wystarczające jest w tym przypadku użycie jednej encji, z odpowiednimi atrybutami. POJAZD marka rok produkcji nr identyf. nr rejestracyjny nr dowodu rej. data rejestracji : K. Bartecki, Inżynieria oprogramowania, V/25
26 Kiedy w modelu związków encji pojawiają się związki wiele do wielu? POJAZD # nr rejestracyjny * marka * rok produkcji : naprawiany na miejscem naprawy STANOWISKO NAPRAW # nr stanowiska * czy jest kanał * czy jest podnośnik : Związki o tej liczebności pojawiają się często w początkowych fazach analizy i najczęściej sygnalizują związek, który nie jest w pełni przeanalizowany i wymaga dalszego rozłożenia. Rozłożenie związku wiele do wielu polega na znalezieniu tzw. encji intersekcji (przecięcia). K. Bartecki, Inżynieria oprogramowania, V/26
27 Encja intersekcji to encja powstała w wyniku eliminacji związku wiele do wielu między dwiema innymi encjami (referencyjnymi), często posiada swoje własne atrybuty, reprezentujące nowo odkryte szczegóły związku, często jest ona modelowana jako encja zależna (słaba): POJAZD # nr rejestracyjny * marka * rok produkcji : naprawiany na miejscem naprawy STANOWISKO NAPRAW # nr stanowiska * czy jest kanał * czy jest podnośnik : POJAZD # nr rejestracyjny * marka * rok produkcji : podlega dotyczy NAPRAWA # data naprawy o koszt naprawy wykonywana na miejscem STANOWISKO NAPRAW # nr stanowiska * czy jest kanał * czy jest podnośnik : Encja intersekcji Encje referencyjne K. Bartecki, Inżynieria oprogramowania, V/27
28 Encja intersekcji c.d. w encji intersekcji można dodać atrybut, pełniący rolę jej unikalnego identyfikatora, sprawia to, że encja intersekcji przestaje być encją słabą takie podejście daje wygodę w późniejszej implementacji: POJAZD # nr rejestracyjny * marka * rok produkcji : podlega dotyczy NAPRAWA # nr naprawy * data naprawy o koszt naprawy wykonywana na miejscem STANOWISKO NAPRAW # nr stanowiska * czy jest kanał * czy jest podnośnik : K. Bartecki, Inżynieria oprogramowania, V/28
29 Związek rekurencyjny przykład PRACOWNIK jest podwładnym jest przełożonym Każdemu PRACOWNIKOWI może zostać przyporządkowany inny PRACOWNIK, pełniący rolę jego przełożonego. Każdemu PRACOWNIKOWI może zostać przyporządkowanych wielu PRACOWNIKÓW, pełniących rolę jego podwładnych. K. Bartecki, Inżynieria oprogramowania, V/29
30 Modelowanie podtypów i nadtypów encji związek dziedziczenia Nadtyp to uogólniona encja, atrybuty nadtypu przechodzą na wszystkie jego podtypy, podtyp posiada swoje właściwości (atrybuty), a także wszystkie właściwości (atrybuty) odziedziczone po nadtypie, nie ma ograniczeń co do liczby podtypów encji. K. Bartecki, Inżynieria oprogramowania, V/30
31 Przykład związku dziedziczenia: nadtyp OSOBA # nr osoby * imię * nazwisko * adres Encja OSOBA jest nadtypem encji KLIENT i PRACOWNIK. podtypy Encje KLIENT i PRACOWNIK są podtypami encji OSOBA. KLIENT * data rejestracji * status o liczba punktów PRACOWNIK * pesel * data zatrudnienia * zarobki K. Bartecki, Inżynieria oprogramowania, V/31
32 Dziedziczenie wzajemnie wykluczające się: OSOBA # nr osoby * imię * nazwisko * adres OSOBA może być albo KLIENTEM, albo PRACOWNIKIEM (nie może być KLIENTEM i PRACOWNIKIEM jednocześnie) KLIENT * data rejestracji * status o liczba punktów PRACOWNIK * pesel * data zatrudnienia * zarobki K. Bartecki, Inżynieria oprogramowania, V/32
33 Podtypy encji mogą mieć własne związki z innymi encjami, przy czym automatycznie dziedziczą związki określone dla encji-nadtypu: z początkiem LOT NIEPLANOWANY do końcem LOTNISKO LOT początkiem z końcem do z wykorzystaniem przydzielony do LOT PLANOWANY na zaplanowana dla TRASA SAMOLOT K. Bartecki, Inżynieria oprogramowania, V/33
34 Nadmiarowe atrybuty KLIENT # nr klienta * nazwisko * imię : składa składane przez ZAMÓWIENIE # nr zamówienia * nazwisko * nazwa towaru * data zamówienia * liczba sztuk * kwota zamówienia dotyczy przedmiotem TOWAR # nr towaru * nazwa towaru * cena towaru : Atrybuty nazwisko oraz nazwa towaru zostały umieszczone w encji ZAMÓWIENIE nadmiarowo (błędnie), gdyż: atrybut nazwisko opisuje KLIENTA, i tylko w tej encji ma prawo się on znaleźć (i już się tam znajduje), atrybut nazwa towaru opisuje TOWAR, i tylko w tej encji ma prawo się on znaleźć (i już się tam znajduje), na diagramach encji nie uwzględnia się tzw. kluczy obcych (ang. foreign key, FK) pojęcie to nie występuje w modelu konceptualnym, pojawia się dopiero w implementacyjnym modelu relacyjnej bazy danych. K. Bartecki, Inżynieria oprogramowania, V/34
35 Związki nadmiarowe KLIENT # nr klienta * nazwisko * imię : składa składane przez ZAMÓWIENIE # nr zamówienia * data zamówienia * liczba sztuk * kwota zamówienia : dotyczy przedmiotem TOWAR # nr towaru * nazwa towaru * cena towaru : kupuje kupowany przez Związek pomiędzy encjami KLIENT oraz TOWAR jest nadmiarowy, gdyż z nazw ról wynika, iż powiela on informację już zawartą w związkach KLIENT-ZAMÓWIENIE oraz ZAMÓWIENIE-TOWAR K. Bartecki, Inżynieria oprogramowania, V/35
36 Zakładając, że każdemu z KLIENTÓW może być przypisany rabat na jeden, określony TOWAR: KLIENT # nr klienta * nazwisko * imię : składa składane przez ZAMÓWIENIE # nr zamówienia * data zamówienia * liczba sztuk * kwota zamówienia : dotyczy przedmiotem TOWAR # nr towaru * nazwa towaru * cena towaru : posiada rabat na sprzedawany z rabatem dla Tym razem bezpośredni związek pomiędzy encjami KLIENT oraz TOWAR jest uzasadniony, gdyż reprezentuje on informację inną od informacji zawartej w związkach KLIENT-ZAMÓWIENIE oraz ZAMÓWIENIE- TOWAR K. Bartecki, Inżynieria oprogramowania, V/36
37 Normalizacja danych to proces, mający na celu eliminację powtarzających się danych. Dzięki normalizacji uzyskujemy: elastyczność, konieczną do obsłużenia różnych wymagań funkcjonalnych, umożliwienie przeprowadzenia odwzorowania modelu encji w wiele różnych projektów baz danych. W dalszej części omówione zostaną cztery tzw. postaci normalne (PN): zerowa (0PN), pierwsza (1PN), druga (2PN), trzecia (3PN). K. Bartecki, Inżynieria oprogramowania, V/37
38 Zerowa postać normalna (0PN) Każda encja musi mieć zbiór atrybutów (związków), które w sposób unikalny określają jej wystąpienie. Przykład: diagram w 0PN WNIOSKODAWCA # NIP * Nazwisko * Imię * Imię ojca * Kod grupy uposażenia * Stawka wg grupy o Opis grupy uposażenia * Data złożenia wniosku * Treść wniosku * Kod typu wniosku * Opis typu wniosku K. Bartecki, Inżynieria oprogramowania, V/38
39 Ponieważ jeden WNIOSKODAWCA może składać wiele wniosków, więc niektóre z atrybutów mogą przyjmować więcej niż jedną wartość: WNIOSKODAWCA Przykładowe wartości Atrybuty wielowartościowe # NIP * Nazwisko * Imię * Imię ojca * Kod grupy uposażenia * Stawka wg grupy o Opis grupy uposażenia * Data złożenia wniosku * Treść wniosku * Kod typu wniosku * Opis typu wniosku Kowalski Zbigniew Wojciech 1D PLN młodszy referent , Wnioskuję o.., Niniejszym proszę.. C1, C7 Wniosek o zasiłek socjalny, Wniosek o refundację wczasów K. Bartecki, Inżynieria oprogramowania, V/39
40 Pierwsza postać normalna (1PN) Każdy atrybut może mieć tylko jedną wartość dla każdego wystąpienia jego encji w danej chwili czasu. Przejście z 0PN do 1PN: usunięcie atrybutów wielowartościowych i utworzenie dla nich nowej encji, identyfikator starej encji wchodził będzie w skład złożonego identyfikatora nowej encji (związek zależny). K. Bartecki, Inżynieria oprogramowania, V/40
41 Diagram w 1PN WNIOSEK # Kod typu wniosku # Data złożenia wniosku * Treść wniosku * Opis typu wniosku składany przez składa związek zależny wiele do jednego WNIOSKODAWCA # NIP * Nazwisko * Imię * Imię ojca * Kod grupy uposażenia * Stawka wg grupy o Opis grupy uposażenia Z diagramu wynika, że do jednoznacznego zidentyfikowania WNIOSKU konieczne jest podanie: kodu typu wniosku, daty złożenia wniosku, numeru NIP wnioskodawcy. K. Bartecki, Inżynieria oprogramowania, V/41
42 Druga postać normalna (2PN) (dotyczy encji z identyfikatorami złożonymi z kilku atrybutów) Wartość każdego atrybutu encji musi zależeć od całego identyfikatora tej encji (a nie tylko od niektórych atrybutów składających się na ten identyfikator). W naszym przykładzie wartość np. atrybutu Opis typu wniosku w encji WNIOSEK zależy jedynie od Kodu typu wniosku, a nie zależy od Daty złożenia wniosku i NIPu wnioskodawcy. Przejście z 1PN do 2PN: usunięcie wszystkich częściowo zależnych atrybutów i utworzenie dla nich nowej encji, skopiowanie części identyfikatora z encji pierwotnej (od której zależne są usunięte atrybuty) do tej nowej encji). K. Bartecki, Inżynieria oprogramowania, V/42
43 Diagram w 2PN WNIOSEK # Data złożenia wniosku * Treść wniosku składany przez składa WNIOSKODAWCA # NIP * Nazwisko * Imię * Imię ojca jest określonego * Kod grupy uposażenia * Stawka wg grupy o Opis grupy uposażenia klasyfikacją dla TYP WNIOSKU # Kod typu wniosku * Opis typu wniosku K. Bartecki, Inżynieria oprogramowania, V/43
44 Trzecia postać normalna (3PN) Wartość atrybutu encji nie może zależeć od wartości innego atrybutu, nie wchodzącego w skład jej identyfikatora. W naszym przypadku, wartości atrybutów Stawka wg grupy oraz Opis grupy uposażenia w encji WNIOSKODAWCA zależą jedynie od Kodu grupy uposażenia, a nie zależą od wartości atrybutu NIP, będącego identyfikatorem tej encji. Przejście z 2PN do 3PN: należy usunąć atrybuty niezależne od identyfikatora i wstawić je do nowej encji, identyfikatorem nowej encji staje się atrybut, od którego zależą jej pozostałe atrybuty. K. Bartecki, Inżynieria oprogramowania, V/44
45 Diagram w 3PN WNIOSEK # Data złożenia wniosku * Treść wniosku składany przez składa # NIP WNIOSKODAWCA * Nazwisko * Imię * Imię ojca jest określonego przydzielony do określona dla klasyfikacją dla GRUPA UPOSAŻENIA TYP WNIOSKU # Kod grupy uposażenia # Kod typu wniosku * Stawka wg grupy * Opis typu wniosku o Opis grupy uposażenia K. Bartecki, Inżynieria oprogramowania, V/45
46 Intuicyjna normalizacja Dobry analityk potrafi dojść do modelu związków encji w trzeciej postaci normalnej w sposób intuicyjny, tzn. bezpośrednio poprzez zidentyfikowanie encji, ich atrybutów i związków między encjami. K. Bartecki, Inżynieria oprogramowania, V/46
47 Typowe rozmieszczenie elementów diagramu związków encji UWAGA: notacja nieco różni się od omawianej na niniejszym wykładzie K. Bartecki, Inżynieria oprogramowania, V/47
48 Przykładowy diagram związków encji zbudowany w programie PowerDesigner Team Team number Speciality <pi> Division Idtf_5 <pi> Division number Division name Division address Idtf_1 <pi> 1..1 Belongs to <pi> 1..n Employee 0..n Member Employee number First name Last name Employee function Employee salary Idtf_2 <pi> Is member supervises of 1..n 0..1 <pi> 0..n Chief Is manager of 0..1 Is responsible for 0..n Subcontract Subcontract n Customer Customer number Customer name Customer address Customer activity Customer telephone Customer fax Idtf_3 <pi> <pi> Material Material number Material name Material type Idtf_7 <pi> composes composed of 0..n 0..n <pi> 1..1 Works on 0..n Participate Start date (par) End date (par) Is done n by Task 1..1 Belongs to 0..n Project Project number Project name Project label Idtf_4 <pi> <pi> Activity Start date (act) End date (act) Compose Task name Task cost <pi> Idtf_6 <pi> K. Bartecki, Inżynieria oprogramowania, V/48
49 Modelowanie związków encji podsumowanie Wyróżniamy istotne rzeczy (encje), o których informacja powinna być znana i/lub przechowywana. Dla każdej encji wyróżniamy szczegóły informacji (atrybuty), które powinny być znane i/lub przechowywane. Między encjami dodajemy związki, które nazywają istotne i ważne powiązania między nimi. Określamy, jak każde wystąpienie encji może być zidentyfikowane. Służyć może do tego pojedynczy atrybut encji, kilka jej atrybutów lub kombinacja atrybutów i związków. Staramy się, aby model encji był modelem w trzeciej postaci normalnej (normalizacja). K. Bartecki, Inżynieria oprogramowania, V/49
Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym
Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym konceptualnym modelem danych jest tzw. model związków encji (ERM
Bardziej szczegółowoModelowanie danych, projektowanie systemu informatycznego
Modelowanie danych, projektowanie systemu informatycznego Modelowanie odwzorowanie rzeczywistych obiektów świata rzeczywistego w systemie informatycznym Modele - konceptualne reprezentacja obiektów w uniwersalnym
Bardziej szczegółowoDiagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji
Diagramy związków encji (ERD) 1 Projektowanie bazy danych za pomocą narzędzi CASE Materiał pochodzi ze strony : http://jjakiela.prz.edu.pl/labs.htm Diagramu Związków Encji - CELE Zrozumienie struktury
Bardziej szczegółowo1 Projektowanie systemu informatycznego
Plan wykładu Spis treści 1 Projektowanie systemu informatycznego 1 2 Modelowanie pojęciowe 4 2.1 Encja....................................... 5 2.2 Własności.................................... 6 2.3 Związki.....................................
Bardziej szczegółowoProjektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD
Projektowanie systemów informatycznych Roman Simiński roman.siminski@us.edu.pl siminskionline.pl Modelowanie danych Diagramy ERD Modelowanie danych dlaczego? Od biznesowego gadania do magazynu na biznesowe
Bardziej szczegółowoFaza analizy (modelowania) Faza projektowania
Faza analizy (modelowania) Faza projektowania Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie: co i przy jakich ograniczeniach system ma robić? Wynikiem tej analizy jest zbiór wymagań
Bardziej szczegółowoSystemy informatyczne. Modelowanie danych systemów informatycznych
Modelowanie danych systemów informatycznych Diagramy związków encji Entity-Relationship Diagrams Modelowanie danych diagramy związków encji ERD (ang. Entity-Relationship Diagrams) diagramy związków encji
Bardziej szczegółowoPODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"
PODSTAWY BAZ DANYCH 5. Modelowanie danych 1 Etapy tworzenia systemu informatycznego Etapy tworzenia systemu informatycznego - (według CASE*Method) (CASE Computer Aided Systems Engineering ) Analiza wymagań
Bardziej szczegółowoBazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,
Bazy Danych Modele danych Krzysztof Regulski WIMiIP, KISiM, regulski@agh.edu.pl Cele modelowania Strategia informatyzacji organizacji Cele informatyzacji Specyfikacja wymagań użytkownika Model procesów
Bardziej szczegółowoAnaliza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32
Analiza i projektowanie oprogramowania Analiza i projektowanie oprogramowania 1/32 Analiza i projektowanie oprogramowania 2/32 Cel analizy Celem fazy określania wymagań jest udzielenie odpowiedzi na pytanie:
Bardziej szczegółowoAutor: Joanna Karwowska
Autor: Joanna Karwowska W bazie danych przechowujemy tylko niektóre informacje o świecie rzeczywistym. Wybór właściwych wycinków rzeczywistości i dotyczących ich danych jest bardzo istotny od niego zależy
Bardziej szczegółowoAnaliza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej
Analiza i projektowanie obiektowe 2017/2018 Wykład 3: Model wiedzy dziedzinowej Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Model wiedzy dziedzinowej
Bardziej szczegółowoINFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji
Modelowanie danych. Model związków-encji Plan wykładu Wprowadzenie do modelowania i projektowania kartograficznych systemów informatycznych Model związków-encji encje atrybuty encji związki pomiędzy encjami
Bardziej szczegółowoBazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 3: Model związków encji. dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Co to jest model związków encji? Model związków
Bardziej szczegółowoZasady transformacji modelu DOZ do projektu tabel bazy danych
Zasady transformacji modelu DOZ do projektu tabel bazy danych A. Obiekty proste B. Obiekty z podtypami C. Związki rozłączne GHJ 1 A. Projektowanie - obiekty proste TRASA # * numer POZYCJA o planowana godzina
Bardziej szczegółowoKomputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl
Komputerowe Systemy Przemysłowe: Modelowanie - UML Arkadiusz Banasik arkadiusz.banasik@polsl.pl Plan prezentacji Wprowadzenie UML Diagram przypadków użycia Diagram klas Podsumowanie Wprowadzenie Języki
Bardziej szczegółowo030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła
030 PROJEKTOWANIE BAZ DANYCH Prof. dr hab. Marek Wisła Elementy procesu projektowania bazy danych Badanie zależności funkcyjnych Normalizacja Projektowanie bazy danych Model ER, diagramy ERD Encje, atrybuty,
Bardziej szczegółowoBazy danych TERMINOLOGIA
Bazy danych TERMINOLOGIA Dane Dane są wartościami przechowywanymi w bazie danych. Dane są statyczne w tym sensie, że zachowują swój stan aż do zmodyfikowania ich ręcznie lub przez jakiś automatyczny proces.
Bardziej szczegółowoModelowanie związków encji
Modelowanie związków encji 1. Cel modelowania - tworzenia związków encji Metoda modelowania tworzenie związków encji (ERD) odnosi się do etapów strategii i analizy cyklu życia systemu informacyjnego. Cykl
Bardziej szczegółowoProjektowanie Systemów Informacyjnych
Projektowanie Systemów Informacyjnych Wykład II Encje, Związki, Diagramy związków encji, Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.Widom Copyrights by Arkadiusz Rzucidło
Bardziej szczegółowoPiotr Kulicki Katolicki Uniwersytet Lubelski Jana Pawła II Instytut Filozofii Teoretycznej Katedra Podstaw Informatyki
Piotr Kulicki Katolicki Uniwersytet Lubelski Jana Pawła II Instytut Filozofii Teoretycznej Katedra Podstaw Informatyki Modalności w praktyce informatycznej Lublin, 17 listopada 2009 Interesująca opinia
Bardziej szczegółowoBaza danych. Modele danych
Rola baz danych Systemy informatyczne stosowane w obsłudze działalności gospodarczej pełnią funkcję polegającą na gromadzeniu i przetwarzaniu danych. Typowe operacje wykonywane na danych w systemach ewidencyjno-sprawozdawczych
Bardziej szczegółowoWykład II Encja, atrybuty, klucze Związki encji. Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.
Bazy Danych Wykład II Encja, atrybuty, klucze Związki encji Opracowano na podstawie: Podstawowy Wykład z Systemów Baz Danych, J.D.Ullman, J.Widom Copyrights by Arkadiusz Rzucidło 1 Encja Byt pojęciowy
Bardziej szczegółowoModelowanie związków encji. Oracle Designer: Diagramy związków encji. Encja (1)
Modelowanie związków encji Oracle Designer: Modelowanie związków encji Technika określania potrzeb informacyjnych organizacji. Modelowanie związków encji ma na celu: dostarczenie dokładnego modelu potrzeb
Bardziej szczegółowoZagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)
Zagadnienia (1/3) Rola modelu systemu w procesie analizy wymagań (inżynierii wymagań) Prezentacja różnego rodzaju informacji o systemie w zależności od rodzaju modelu. Budowanie pełnego obrazu systemu
Bardziej szczegółowoTECHNIKI MODELOWANIA STRUKTURY INFORMACYJNEJ
TECHNIKI MODELOWANIA STRUKTURY INFORMACYJNEJ 1. Diagram obiektów i związków (DOZ) 2. Szczegółowa specyfikacja obiektów, atrybutów i związków GHJ 1 Metodyki strukturalne IE (Information Engineering) Martin
Bardziej szczegółowoFeature Driven Development
Feature Driven Development lekka metodyka tworzenia oprogramowania Kasprzyk Andrzej IS II Wstęp Feature Driven Development (FDD) to metodyka tworzenia oprogramowania, która wspomaga zarządzanie fazami
Bardziej szczegółowoŚwiat rzeczywisty i jego model
2 Świat rzeczywisty i jego model Świat rzeczywisty (dziedzina problemu) Świat obiektów (model dziedziny) Dom Samochód Osoba Modelowanie 3 Byty i obiekty Byt - element świata rzeczywistego (dziedziny problemu),
Bardziej szczegółowoDiagramy związków encji. Laboratorium. Akademia Morska w Gdyni
Akademia Morska w Gdyni Gdynia 2004 1. Podstawowe definicje Baza danych to uporządkowany zbiór danych umożliwiający łatwe przeszukiwanie i aktualizację. System zarządzania bazą danych (DBMS) to oprogramowanie
Bardziej szczegółowoTransformacja modelu ER do modelu relacyjnego
Transformacja modelu ER do modelu relacyjnego Wykład przygotował: Robert Wrembel BD wykład 4 (1) 1 Plan wykładu Transformacja encji Transformacja związków Transformacja hierarchii encji BD wykład 4 (2)
Bardziej szczegółowoProjektowanie bazy danych
Projektowanie bazy danych Cel wykładu Umiejętność zamodelowania bazy danych na diagramie Plan wykładu Cel modelowania konceptualnego i modelu ER Etapy modelowania konceptualnego Model ER (związków encji)
Bardziej szczegółowoModelowanie klas i obiektów. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Modelowanie klas i obiektów Jarosław Kuchta Podstawowe pojęcia (1) Byt, encja (entity) coś co istnieje, posiada własne cechy i wyodrębnioną tożsamość (identity); bytem może być rzecz, osoba, organizacja,
Bardziej szczegółowoZasady organizacji projektów informatycznych
Zasady organizacji projektów informatycznych Systemy informatyczne w zarządzaniu dr hab. inż. Joanna Józefowska, prof. PP Plan Definicja projektu informatycznego Fazy realizacji projektów informatycznych
Bardziej szczegółowoDiagramy związków encji ERD Ćwiczenia w modelowaniu danych
Diagramy związków encji ERD Ćwiczenia w modelowaniu danych dr Lidia Stępień wykład 5 ERD ang. Entity-Relationship Diagram Diagram związków encji Proces konstruowania projektu systemu bazy danych. Abstrakcyjna
Bardziej szczegółowoPrzykłady normalizacji
Przykłady normalizacji Nr faktury Za okres Nabywca Usługa Strefa czasowa od 21113332437 1.11.2007 30.11.2007 Andrzej Macioł, Kraków ul. Armii Krajowej 7 21113332437 1.11.2007 30.11.2007 Andrzej Macioł,
Bardziej szczegółowoPodstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem. dr Jakub Boratyński. pok. A38
Podstawowe pakiety komputerowe wykorzystywane w zarządzaniu przedsiębiorstwem zajęcia 1 dr Jakub Boratyński pok. A38 Program zajęć Bazy danych jako podstawowy element systemów informatycznych wykorzystywanych
Bardziej szczegółowoProjektowanie BAZY DANYCH
Projektowanie BAZY DANYCH Podstawowe pojęcia Encją jest każdy przedmiot, zjawisko, stan lub pojęcie, czyli każdy obiekt, który potrafimy odróżnić od innych obiektów ( np. pies, rower,upał). Encje podobne
Bardziej szczegółowoPodrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy
Uwaga: 1. Praca powinna być napisana z użyciem formy bezosobowej np. wykonano. Nazwa rozdziału Zawartość Liczba stron 1. Wstęp Rozdział ten powinien zawierać zarys najważniejszych elementów pracy Krótki
Bardziej szczegółowoProjektowanie bazy danych przykład
Projektowanie bazy danych przykład Pierwszą fazą tworzenia projektu bazy danych jest postawienie definicji celu, założeń wstępnych i określenie podstawowych funkcji aplikacji. Każda baza danych jest projektowana
Bardziej szczegółowoJęzyk UML w modelowaniu systemów informatycznych
Język UML w modelowaniu systemów informatycznych dr hab. Bożena Woźna-Szcześniak Akademia im. Jan Długosza bwozna@gmail.com Wykład 3 Diagramy przypadków użycia Diagramy przypadków użycia (ang. use case)
Bardziej szczegółowoNormalizacja baz danych
Wrocławska Wyższa Szkoła Informatyki Stosowanej Normalizacja baz danych Dr hab. inż. Krzysztof Pieczarka Email: krzysztof.pieczarka@gmail.com Normalizacja relacji ma na celu takie jej przekształcenie,
Bardziej szczegółowoTworzenie modelu logicznego i fizycznego danych.
Tworzenie modelu logicznego i fizycznego danych. W celu stworzenia modelu danych wykorzystamy program ata Architect wchodzący w skład pakietu narzędzi CASE Power esigner, który pozwala utworzyć tzw. logiczny
Bardziej szczegółowoWykład 2. Relacyjny model danych
Wykład 2 Relacyjny model danych Wymagania stawiane modelowi danych Unikanie nadmiarowości danych (redundancji) jedna informacja powinna być wpisana do bazy danych tylko jeden raz Problem powtarzających
Bardziej szczegółowoPLAN WYKŁADU BAZY DANYCH GŁÓWNE ETAPY PROJEKTOWANIA BAZY MODELOWANIE LOGICZNE
PLAN WYKŁADU Modelowanie logiczne Transformacja ERD w model relacyjny Odwzorowanie encji Odwzorowanie związków Odwzorowanie specjalizacji i generalizacji BAZY DANYCH Wykład 7 dr inż. Agnieszka Bołtuć GŁÓWNE
Bardziej szczegółowoBazy danych i usługi sieciowe
Bazy danych i usługi sieciowe Modelowanie związków encji Paweł Daniluk Wydział Fizyki Jesień 2014 P. Daniluk (Wydział Fizyki) BDiUS w. II Jesień 2014 1 / 28 Modelowanie Modelowanie polega na odwzorowaniu
Bardziej szczegółowoWYKŁAD 1. Wprowadzenie do problematyki baz danych
WYKŁAD 1 Wprowadzenie do problematyki baz danych WYKŁAD 2 Relacyjny i obiektowy model danych JĘZYK UML (UNIFIED MODELING LANGUAGE) Zunifikowany język modelowania SAMOCHÓD
Bardziej szczegółowoKrzysztof Kadowski. PL-E3579, PL-EA0312,
Krzysztof Kadowski PL-E3579, PL-EA0312, kadowski@jkk.edu.pl Bazą danych nazywamy zbiór informacji w postaci tabel oraz narzędzi stosowanych do gromadzenia, przekształcania oraz wyszukiwania danych. Baza
Bardziej szczegółowoZofia Kruczkiewicz - Modelowanie i analiza systemów informatycznych 1
Charakterystyka oprogramowania obiektowego 1. Definicja systemu informatycznego 2. Model procesu wytwarzania oprogramowania - model cyklu życia oprogramowania 3. Wymagania 4. Problemy z podejściem nieobiektowym
Bardziej szczegółowoTechnologia informacyjna
Technologia informacyjna Pracownia nr 9 (studia stacjonarne) - 05.12.2008 - Rok akademicki 2008/2009 2/16 Bazy danych - Plan zajęć Podstawowe pojęcia: baza danych, system zarządzania bazą danych tabela,
Bardziej szczegółowoBaza danych. Baza danych to:
Baza danych Baza danych to: zbiór danych o określonej strukturze, zapisany na zewnętrznym nośniku (najczęściej dysku twardym komputera), mogący zaspokoić potrzeby wielu użytkowników korzystających z niego
Bardziej szczegółowoPosługiwanie się tabelami
Wykład 3 Tabele Posługiwanie się tabelami Przykładowa tabela gromadząca informacje o osobach (Imię, Nazwisko, Data urodzenia) Osoby Imię Nazwisko Data urodzenia Jan Kowalski 1995-01-01 Piotr Nowak 1994-05-22
Bardziej szczegółowoProjektowanie systemów informatycznych. Diagramy przypadków użycia
Informacje ogólne i przykłady Autor Roman Simiński Kontakt roman.siminski@us.edu.pl www.us.edu.pl/~siminski jako narzędzie modelowania wymagań Nazwa use case diagrams. Cel stosowania Określenie wymagań
Bardziej szczegółowoproblem w określonym kontekście siły istotę jego rozwiązania
Wzorzec projektowy Christopher Alexander: Wzorzec to sprawdzona koncepcja, która opisuje problem powtarzający się wielokrotnie w określonym kontekście, działające na niego siły, oraz podaje istotę jego
Bardziej szczegółowoDane wejściowe. Oracle Designer Generowanie bazy danych. Wynik. Przebieg procesu
Dane wejściowe Oracle Designer Generowanie bazy danych Diagramy związków encji, a w szczególności: definicje encji wraz z atrybutami definicje związków między encjami definicje dziedzin atrybutów encji
Bardziej szczegółowoPodejście obiektowe - podstawowe pojęcia
Podejście obiektowe - podstawowe pojęcia Bogdan Kreczmer ZPCiR IIAiR PWr pokój 307 budynek C3 bogdan.kreczmer@pwr.wroc.pl Copyright c 2003 2008 Bogdan Kreczmer Niniejszy dokument zawiera materiały do wykładu
Bardziej szczegółowoModelowanie obiektowe - Ćw. 3.
1 Modelowanie obiektowe - Ćw. 3. Treść zajęć: Diagramy przypadków użycia. Zasady tworzenia diagramów przypadków użycia w programie Enterprise Architect. Poznane dotychczas diagramy (czyli diagramy klas)
Bardziej szczegółowoNormalizacja baz danych
Normalizacja baz danych Definicja 1 1 Normalizacja to proces organizowania danych w bazie danych. Obejmuje to tworzenie tabel i ustanawianie relacji między tymi tabelami zgodnie z regułami zaprojektowanymi
Bardziej szczegółowoFaza Określania Wymagań
Faza Określania Wymagań Celem tej fazy jest dokładne określenie wymagań klienta wobec tworzonego systemu. W tej fazie dokonywana jest zamiana celów klienta na konkretne wymagania zapewniające osiągnięcie
Bardziej szczegółowoAPIO. W7 SPECYFIKACJA (UŻYCIA) DOSTĘPU DO DANYCH I SPOSOBU ICH PRZETWARZANIA 1. METODA CRUD 2. LOGIKA FUNKCJI
APIO. W7 SPECYFIKACJA (UŻYCIA) DOSTĘPU DO DANYCH I SPOSOBU ICH PRZETWARZANIA 1. METODA CRUD 2. LOGIKA FUNKCJI dr inż. Grażyna Hołodnik-Janczura W8/K4 CO SIĘ MOŻE DZIAĆ PODCZAS WYKONYWANIA BIZNESOWEJ FUNKCJI
Bardziej szczegółowoBAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski
BAZY DANYCH model związków encji Opracował: dr inż. Piotr Suchomski Świat rzeczywisty a baza danych Świat rzeczywisty Diagram związków encji Model świata rzeczywistego Założenia, Uproszczenia, ograniczenia
Bardziej szczegółowoUniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt. Zasady przygotowania i oceny projektów
Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Bazy Danych - Projekt Zasady przygotowania i oceny projektów 1 Cel projektu Celem niniejszego projektu jest zaprojektowanie i implementacja
Bardziej szczegółowoUML w Visual Studio. Michał Ciećwierz
UML w Visual Studio Michał Ciećwierz UNIFIED MODELING LANGUAGE (Zunifikowany język modelowania) Pozwala tworzyć wiele systemów (np. informatycznych) Pozwala obrazować, specyfikować, tworzyć i dokumentować
Bardziej szczegółowoInżynieria oprogramowania. Wykład 6 Analiza i specyfikowanie wymagań
Inżynieria oprogramowania Wykład 6 Analiza i specyfikowanie wymagań Proces inżynierii wymagań Feasibility Study Feasibility Report Requirements Analysis System Models Requirements Definition Definition
Bardziej szczegółowoLiteratura. Bazy danych s.1-1
Literatura R.Colette, Bazy danych : od koncepcji do realizacji, PWE 1988, S.Forte, T.Howe, J. Ralston, Access2000, HELION 2001, R.J.Muller, Bazy danych, język UML w modelowaniu danych, MIKOM 2000, M.Muraszkiewicz,
Bardziej szczegółowoDiagramy klas. WYKŁAD Piotr Ciskowski
Diagramy klas WYKŁAD Piotr Ciskowski przedstawienie statyki systemu graficzne przedstawienie statycznych, deklaratywnych elementów dziedziny przedmiotowej oraz związków między nimi obiekty byt, egzemplarz
Bardziej szczegółowoPodstawy programowania III WYKŁAD 4
Podstawy programowania III WYKŁAD 4 Jan Kazimirski 1 Podstawy UML-a 2 UML UML Unified Modeling Language formalny język modelowania systemu informatycznego. Aktualna wersja 2.3 Stosuje paradygmat obiektowy.
Bardziej szczegółowoNormalizacja relacyjnych baz danych. Sebastian Ernst
Normalizacja relacyjnych baz danych Sebastian Ernst Zależności funkcyjne Zależność funkcyjna pomiędzy zbiorami atrybutów X oraz Y oznacza, że każdemu zestawowi wartości atrybutów X odpowiada dokładnie
Bardziej szczegółowoZSE - Systemy baz danych 1 ZASADY PROJEKTOWANIA BAZ DANYCH
ZSE - Systemy baz danych 1 ZASADY PROJEKTOWANIA BAZ DANYCH ZSE - Systemy baz danych 2 rzeczywistość uzyskanie od użytkowników początkowych informacji i wymagań dotyczących przetwarzania danych analiza
Bardziej szczegółowoProjektowanie baz danych
Projektowanie baz danych Etapy procesu projektowania BD Określenie celów, jakim ma służyć baza danych (w kontakcie z decydentem z firmy zamawiającej projekt). Sprecyzowanie zakresu dostępnych danych, kategorii
Bardziej szczegółowoBazy danych. Zasady konstrukcji baz danych
Bazy danych Zasady konstrukcji baz danych Diagram związków encji Cel: Opracowanie modelu logicznego danych Diagram związków encji [ang. Entity-Relationship diagram]: zapewnia efektywne operacje na danych
Bardziej szczegółowoProjektowanie logiki aplikacji
Jarosław Kuchta Projektowanie Aplikacji Internetowych Projektowanie logiki aplikacji Zagadnienia Rozproszone przetwarzanie obiektowe (DOC) Model klas w projektowaniu logiki aplikacji Klasy encyjne a klasy
Bardziej szczegółowoModelowanie przypadków użycia. Jarosław Kuchta Projektowanie Aplikacji Internetowych
Modelowanie przypadków użycia Jarosław Kuchta Podstawowe pojęcia Przypadek użycia jest formalnym środkiem dla przedstawienia funkcjonalności systemu informatycznego z punktu widzenia jego użytkowników.
Bardziej szczegółowoDiagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska
Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska Wprowadzenie Modelowanie biznesowe jest stykiem między
Bardziej szczegółowoRelacyjny model baz danych, model związków encji, normalizacje
Relacyjny model baz danych, model związków encji, normalizacje Wyklad 3 mgr inż. Maciej Lasota mgr inż. Karol Wieczorek Politechnika Świętokrzyska Katedra Informatyki Kielce, 2009 Definicje Operacje na
Bardziej szczegółowoInżynieria oprogramowania
Inżynieria oprogramowania Wykład 8 Inżynieria wymagań: analiza przypadków użycia a diagram czynności Patrz: Stanisław Wrycza, Bartosz Marcinkowski, Krzysztof Wyrzykowski, Język UML 2.0 w modelowaniu systemów
Bardziej szczegółowoDefinicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.
TECHNOLOGIE BAZ DANYCH WYKŁAD 1 Wprowadzenie do baz danych. Normalizacja. (Wybrane materiały) Dr inż. E. Busłowska Definicja bazy danych Uporządkowany zbiór informacji, posiadający własną strukturę i wartość.
Bardziej szczegółowoRelacyjne bazy danych. Normalizacja i problem nadmierności danych.
Relacyjne bazy danych. Normalizacja i problem nadmierności danych. Robert A. Kłopotek r.klopotek@uksw.edu.pl Wydział Matematyczno-Przyrodniczy. Szkoła Nauk Ścisłych, UKSW Relacyjne bazy danych Stworzone
Bardziej szczegółowoInżynieria oprogramowania wykład IV Faza określenia wymagań
Inżynieria oprogramowania wykład IV Faza określenia wymagań prowadzący: dr inż. Krzysztof Bartecki Faza określenia wymagań Wymagania Projektowanie Implementacja Testowanie Konserwacja Strategiczna Analiza
Bardziej szczegółowoInformatyzacja przedsiębiorstw WYKŁAD
Informatyzacja przedsiębiorstw WYKŁAD dr inż. Piotr Zabawa IBM/Rational Certified Consultant pzabawa@pk.edu.pl wersja 0.1.0 07.10.2010 Wykład 1 Modelowanie procesów biznesowych Przypomnienie rodzajów narzędzi
Bardziej szczegółowoPlan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy.
Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy. Przejście od modelu związków encji do modelu relacyjnego: odwzorowanie zbiorów encji, odwzorowanie związków encji
Bardziej szczegółowoModelowanie i Programowanie Obiektowe
Modelowanie i Programowanie Obiektowe Wykład I: Wstęp 20 październik 2012 Programowanie obiektowe Metodyka wytwarzania oprogramowania Metodyka Metodyka ustandaryzowane dla wybranego obszaru podejście do
Bardziej szczegółowoZARZĄDZANIU. Wykład VI. dr Jan Kazimirski
INFORMATYKA W ZARZĄDZANIU Wykład VI dr Jan Kazimirski jankazim@mac.edu.pl http://www.mac.edu.pl/jankazim MODELOWANIE SYSTEMÓW UML Literatura Joseph Schmuller UML dla każdego, Helion 2001 Perdita Stevens
Bardziej szczegółowoBazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,
Bazy Danych Bazy Danych i SQL Podstawowe informacje o bazach danych Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl Oczekiwania? 2 3 Bazy danych Jak przechowywać informacje? Jak opisać rzeczywistość?
Bardziej szczegółowoBazy danych. Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 2/15
Bazy danych Andrzej Łachwa, UJ, 2013 andrzej.lachwa@uj.edu.pl www.uj.edu.pl/web/zpgk/materialy 2/15 Specyfikacja wymagań Zanim rozpoczniemy modelowanie, musimy dokładnie określić obszar analizy oraz zrozumieć
Bardziej szczegółowoProcesowa specyfikacja systemów IT
Procesowa specyfikacja systemów IT BOC Group BOC Information Technologies Consulting Sp. z o.o. e-mail: boc@boc-pl.com Tel.: (+48 22) 628 00 15, 696 69 26 Fax: (+48 22) 621 66 88 BOC Management Office
Bardziej szczegółowoPaweł Kurzawa, Delfina Kongo
Paweł Kurzawa, Delfina Kongo Pierwsze prace nad standaryzacją Obiektowych baz danych zaczęły się w roku 1991. Stworzona została grupa do prac nad standardem, została ona nazwana Object Database Management
Bardziej szczegółowoZwiązki pomiędzy tabelami
Związki pomiędzy tabelami bazy danych. Stosowanie relacji jako nazwy połączenia miedzy tabelami jest tylko grą słów, którą można znaleźć w wielu podręcznikach ( fachowo powinno się używać związku). Związki
Bardziej szczegółowoWykład I. Wprowadzenie do baz danych
Wykład I Wprowadzenie do baz danych Trochę historii Pierwsze znane użycie terminu baza danych miało miejsce w listopadzie w 1963 roku. W latach sześcdziesątych XX wieku został opracowany przez Charles
Bardziej szczegółowoBaza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego
PROJEKTOWANIE BAZ DANYCH PRZESTRZENNYCH Zgodne z ogólną metodologią projektowania baz danych Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego Proces budowy bazy danych wymaga
Bardziej szczegółowoZaawansowane Modelowanie I Analiza Systemów Informatycznych
Zaawansowane Modelowanie I Analiza Systemów Informatycznych ORM - Kroki 4 (c.d.) i5 mgr. inż. Tomasz Pieciukiewicz tomasz.pieciukiewicz@gmail.com ORM 7 kroków tworzenia schematu 1. Przekształć przykłady
Bardziej szczegółowoZachodniopomorski Uniwersytet Technologiczny w Szczecinie. Bazy danych. Wykład 4: Model SERM. dr inż. Magdalena Krakowiak
Zachodniopomorski Uniwersytet Technologiczny w Szczecinie Bazy danych Wykład 4: Model SERM dr inż. Magdalena Krakowiak makrakowiak@wi.zut.edu.pl Słabości modelu ERD Wraz ze wzrostem złożoności obiektów
Bardziej szczegółowoModelowanie danych Model związków-encji
Modelowanie danych Model związków-encji Wykład przygotował: Robert Wrembel BD wykład 3 (1) Plan wykładu Wprowadzenie do modelowania i projektowania systemów informatycznych Model związków-encji encje atrybuty
Bardziej szczegółowoAnaliza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas
Analiza i projektowanie obiektowe 2016/2017 Wykład 10: Tworzenie projektowego diagramu klas Jacek Marciniak Wydział Matematyki i Informatyki Uniwersytet im. Adama Mickiewicza 1 Plan wykładu 1. Projektowy
Bardziej szczegółowoTECHNOLOGIE OBIEKTOWE. Wykład 3
TECHNOLOGIE OBIEKTOWE Wykład 3 2 Diagramy stanów 3 Diagram stanu opisuje zmiany stanu obiektu, podsystemu lub systemu pod wpływem działania operacji. Jest on szczególnie przydatny, gdy zachowanie obiektu
Bardziej szczegółowoTRANSFORMACJA MODELU ER DO MODELU RELACYJNEGO
TRANSFORMACJA MODELU ER DO MODELU RELACYJNEGO Biologiczne Aplikacje Baz Danych dr inż. Anna Leśniewska alesniewska@cs.put.poznan.pl REPETYTORIUM Schemat bazy danych zbiór schematów relacji Relacja (tabela)
Bardziej szczegółowoPrzypadki użycia (use cases) Po co są przypadki użycia? Próby definicji Podstawowe pojęcia Notacje Relacje Dokumentacja Kroki metody Przykłady
Po co są przypadki użycia? Próby definicji Podstawowe pojęcia Notacje Relacje Dokumentacja Kroki metody Przykłady Po co są przypadki użycia? Gdy projektujemy jakikolwiek system, najważniejszym etapem jest!!!
Bardziej szczegółowoINFORMATYKA GEODEZYJNO- KARTOGRAFICZNA Relacyjny model danych. Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe
Relacyjny model danych Relacyjny model danych Struktury danych Operacje Oganiczenia integralnościowe Charakterystyka baz danych Model danych definiuje struktury danych operacje ograniczenia integralnościowe
Bardziej szczegółowoModelowanie konceptualne model EER
Modelowanie konceptualne model EER adeusz Pankowski www.put.poznan.pl/~tadeusz.pankowski Model EER rozszerzenie modelu ER 1. Liczne rozszerzenia modelu ER mają przede wszystkim na celu uwzględnienie zależności
Bardziej szczegółowoTworzenie warstwy zasobów projektowanie metodą strukturalną
Tworzenie warstwy zasobów projektowanie metodą strukturalną Autor Zofia Kruczkiewicz Programowanie i wdrażanie systemów informatycznych 2011-03-27 1 1. Zasady modelowania wymagań funkcjonalnych systemu
Bardziej szczegółowo