Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Podobne dokumenty
Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Zaawansowane Modelowanie I Analiza Systemów Informatycznych

Modelowanie danych, projektowanie systemu informatycznego

INFORMATYKA GEODEZYJNO- KARTOGRAFICZNA. Modelowanie danych. Model związków-encji

1 Projektowanie systemu informatycznego

PODSTAWY BAZ DANYCH. 5. Modelowanie danych. 2009/ Notatki do wykładu "Podstawy baz danych"

Diagramy ERD. Model struktury danych jest najczęściej tworzony z wykorzystaniem diagramów pojęciowych (konceptualnych). Najpopularniejszym

Diagramy związków encji. Laboratorium. Akademia Morska w Gdyni

Projektowanie systemów informatycznych. Roman Simiński siminskionline.pl. Modelowanie danych Diagramy ERD

Diagramu Związków Encji - CELE. Diagram Związków Encji - CHARAKTERYSTYKA. Diagram Związków Encji - Podstawowe bloki składowe i reguły konstrukcji

PRZEWODNIK PO PRZEDMIOCIE

Projektowanie bazy danych

Autor: Joanna Karwowska

Nazwa przedmiotu: MODELOWANIE I ANALIZA SYSTEMÓW INFORMATYCZNYCH. Modeling and analysis of computer systems Forma studiów: Stacjonarne

Modelowanie danych Model związków-encji

Podstawy programowania III WYKŁAD 4

WYKŁAD 1. Wprowadzenie do problematyki baz danych

Wykład XII. optymalizacja w relacyjnych bazach danych

KARTA PRZEDMIOTU. WYMAGANIA WSTĘPNE W ZAKRESIE WIEDZY, UMIEJĘTNOŚCI I INNYCH KOMPETENCJI Ogólne umiejętności posługiwania się komputerem

ZSE - Systemy baz danych 1 ZASADY PROJEKTOWANIA BAZ DANYCH

PRZEWODNIK PO PRZEDMIOCIE. Projektowanie procesów. Logistyka (inżynierska) niestacjonarne. I stopnia. dr Aleksandra Grabińska.

Systemy informatyczne. Modelowanie danych systemów informatycznych

Rysunek 1: Przykłady graficznej prezentacji klas.

MAS dr. Inż. Mariusz Trzaska

Świat rzeczywisty i jego model

Projektowanie 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.

Wydział Elektroniki Politechniki Wrocławskiej. Kierunek: Informatyka Specjalność: InŜynieria Systemów Informatycznych

Egzamin / zaliczenie na ocenę*

Modelowanie danych Model związków-encji

Diagramy związków encji ERD Ćwiczenia w modelowaniu danych

Komputerowe Systemy Przemysłowe: Modelowanie - UML. Arkadiusz Banasik arkadiusz.banasik@polsl.pl

Wykład I. Wprowadzenie do baz danych

Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny) kierunkowy (podstawowy / kierunkowy / inny HES)

Zagadnienia (1/3) Data-flow diagramy przepływów danych ERD diagramy związków encji Diagramy obiektowe w UML (ang. Unified Modeling Language)

PRZYKŁAD. Prosta uczelnia. Autor: Jan Kowalski nr indeksu: (przykładowy projekt)

Podrozdziały te powinny zawierać informacje istotne z punktu widzenia przyjętego celu pracy

Analiza i projektowanie obiektowe 2017/2018. Wykład 3: Model wiedzy dziedzinowej

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 4 Ćwiczenia w narzędziu CASE diagram czynności. Materiały dla studenta

BAZY DANYCH model związków encji. Opracował: dr inż. Piotr Suchomski

PRZEWODNIK PO PRZEDMIOCIE

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM, regulski@metal.agh.edu.pl

Informatyzacja przedsiębiorstw WYKŁAD

030 PROJEKTOWANIE BAZ DANYCH. Prof. dr hab. Marek Wisła

Zadanie 1. Suma silni (11 pkt)

TECHNIKI MODELOWANIA STRUKTURY INFORMACYJNEJ

Projektowanie Systemów Informacyjnych

Modelowanie i analiza systemów informatycznych

KARTA PRZEDMIOTU. 1) Nazwa przedmiotu: INŻYNIERIA SYSTEMÓW I ANALIZA SYSTEMOWA. 2) Kod przedmiotu: ROZ-L3-20

Diagramy obiegu dokumentów a UML w modelowaniu procesów biznesowych. Stanisław Niepostyn, Ilona Bluemke Instytut Informatyki, Politechnika Warszawska

Bazy Danych i Systemy informacyjne Wykład 7. Piotr Syga

Modelowanie danych. Biologiczne Aplikacje Baz Danych

Bazy danych 2. dr inż. Tadeusz Jeleniewski

PLAN WYKŁADU BAZY DANYCH GŁÓWNE ETAPY PROJEKTOWANIA BAZY MODELOWANIE LOGICZNE

E-1IZ s2. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Plan wykładu: Relacyjny model danych: opis modelu, podstawowe pojęcia, ograniczenia, więzy.

Jarosław Żeliński analityk biznesowy, projektant systemów

Zarządzanie firmą Celem specjalności jest

Podstawy modelowania programów Kod przedmiotu

Bazy danych i ich aplikacje

Transformacja modelu pojęciowego. do logicznego

Diagramy klas. dr Jarosław Skaruz

PRZEWODNIK PO PRZEDMIOCIE

Projektowanie logiki aplikacji

Program kształcenia i plan studiów podyplomowych: Zarządzanie projektami

Bazy danych i usługi sieciowe

Laboratorium modelowania oprogramowania w języku UML. Ćwiczenie 5 Ćwiczenia w narzędziu CASE diagram przypadków uŝycia. Materiały dla nauczyciela

Program kształcenia i plan studiów podyplomowych: Zarządzanie projektami

Projektowanie oprogramowania

E-I2SG-2010-s1. Informatyka II stopień (I stopień / II stopień) ogólnoakademicki (ogólno akademicki / praktyczny)

Monitoring procesów z wykorzystaniem systemu ADONIS

KARTA MODUŁU KSZTAŁCENIA

Opis. Liczba godzin zajęć dydaktycznych z

Technologie baz danych

Liczba godzin Punkty ECTS Sposób zaliczenia. ćwiczenia 30 zaliczenie z oceną. ćwiczenia 30 zaliczenie z oceną

Diagram wdrożenia. Rys. 5.1 Diagram wdrożenia.

Systemy GIS Systemy baz danych

Analiza i projektowanie obiektowe 2016/2017. Wykład 10: Tworzenie projektowego diagramu klas

forma studiów: studia stacjonarne Liczba godzin/tydzień: 1, 0, 2, 0, 0

Modelowanie związków encji. Etapy budowy systemu informatycznego przedsiębiorstwa (1/4) Etapy budowy systemu informatycznego przedsiębiorstwa (2/4)

Język Java i technologie Web - opis przedmiotu

Teoretyczne podstawy informatyki

FUNKCJE SZBD. ZSE - Systemy baz danych 1

Projektowanie baz danych

Bazy Danych. Bazy Danych i SQL Podstawowe informacje o bazach danych. Krzysztof Regulski WIMiIP, KISiM,

Spis treści. 1 Modelowanie logiczne. Plan wykładu. 1 Modelowanie logiczne 1

Modelowanie Systemów informacyjnych (MSI)

Model informacyjno-decyzyjny struktury danych o obiektach zarządzania

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Programowanie komputerów

Projekt małej Bazy Danych.

PRZEWODNIK PO PRZEDMIOCIE

Technologia informacyjna

Diagramy przypadków użycia. WYKŁAD Piotr Ciskowski

Paweł Kurzawa, Delfina Kongo

Cel wykładu. Literatura. Wyższa Szkoła Menedżerska w Legnicy. Modelowanie wymagań Wykład 2

Diagramy klas. WYKŁAD Piotr Ciskowski

Podstawowy Wykład z Systemów Baz Danych

Karta (sylabus) modułu/przedmiotu Mechanika i Budowa Maszyn Studia I stopnia

Transkrypt:

Zaawansowane Modelowanie I Analiza Systemów Informatycznych Wprowadzenie mgr. inż. Tomasz Pieciukiewicz tomasz.pieciukiewicz@gmail.com

Agenda ZMA jako przedmiot Wprowadzenie do Object Role Modeling

ZMA JAKO PRZEDMIOT

Zakres kursu Modelowanie danych przy pomocy metody ORM Modelowanie procesów przepływu pracy Model Driven Architecture

Zaliczenie Dwa kolokwia wykład #4 wykład #8 Egzamin

WPROWADZENIE DO ORM

Modelowanie pojęciowe Techniki modelowania pojęciowego powinny zachęcać do myślenia o informacji pozwalać na jasną prezentację semantyki modelowanej informacji wspomagać konstruowanie poprawnych semantycznie modeli wspomagać transformację stworzonych modeli do modelu relacyjnego (lub innego, stosowanego w implementacji)

Czym jest informacja? Informacja = Dane + Semantyka dane przechowywane w bazie danych semantyka znaczenie tych danych

ORM 7 kroków tworzenia schematu 1. Przekształć przykłady informacji w proste fakty, dokonaj kontroli jakości 2. Zdefiniuj typy faktów, narysuj pierwszą wersję diagramu, sprawdź wyniki przez populację 3. Zidentyfikuj dane pochodne (arytmetyczne) oraz nadmiarowe typy bytów (encji) 4. Dodaj ograniczenia unikalności, sprawdź arność typów faktów

ORM 7 kroków tworzenia schematu 5. Dodaj ograniczenia ról obowiązkowych, sprawdź dane pochodne (logiczne) 6. Dodaj porównania wartości i zbiorów, ograniczenia dla podtypów 7. Dodaj inne ograniczenia, dokonaj ostatecznej kontroli

Przekształć przykłady informacji w proste fakty, dokonaj kontroli jakości KROK 1

Przykłady informacji Maria Kowalska pracuje w dziale Sprzedaży Pracownicy są identyfikowani przez numer Beethoven napisał IX Symfonię Student 1234 dostał 2 z PRI Dawid Malinowski pracuje w dziale Aplikacji Biznesowych i ma numer CS01 Pracownik 2345 jest nadzorowany przez Pracownika 3456

Przykłady informacji i elementarnych predykatów Student Wykład Wykładowca 1234 ZMA Pieciukiewicz 2345 ZMA Pieciukiewicz 2345 TIN Pieciukiewicz 2345 TPB Trzaska STUDENT identyfikowany przez NRINDEKSU# 1234 ZAPISAŁ SIĘ na WYKŁAD identyfikowany SKRÓTEM ZMA WYKŁADOWCA identyfikowany przez NAZWISKO Pieciukiewicz prowadzi WYKŁAD identyfikowany SKRÓTEM ZMA

Przykładowa populacja dla predykatu #1 (typ encji) WYKŁAD WYKŁADOWCA (identyfikator) SKRÓT NAZWISKO (rola) WYKŁADANY_PRZEZ WYKŁADA (instancja faktu) ZMA Pieciukiewicz TIN Pieciukiewicz TPB Trzaska

Kontrola jakości Czy możemy informacje przedstawić przy pomocy predykatów o innej strukturze? Jakiej? Która ze struktur predykatów jest lepsza? prostsza lepiej oddaje rzeczywistość

Kontrola jakości Struktura #1 STUDENT identyfikowany przez NRINDEKSU# 1234 ZAPISAŁ SIĘ na WYKŁAD identyfikowany SKRÓTEM ZMA WYKŁADOWCA identyfikowany przez NAZWISKO Pieciukiewicz PROWADZI WYKŁAD identyfikowany SKRÓTEM ZMA Struktura #2 STUDENT identyfikowany przez NRINDEKSU# 1234 ZAPISAŁ SIĘ na WYKŁAD identyfikowany SKRÓTEM ZMA który był PROWADZONY PRZEZ WYKŁADOWCĘ identyfikowanego przez NAZWISKO Pieciukiewicz

Kontrola jakości Struktura #1 dwa elementarne predykaty (binarne) Struktura #2 predykat 3-arny (nieelementarny) Czy informacja o wykładowcy jest zależna od informacji o zapisanych studentach? (nie) Struktura #1 -> lepsza

Elementarne predykaty Predykat elementarny nie może zostać podzielony na mniejsze jednostki informacji, dostarczające razem tej samej informacji

Populacja predykatów Dla każdego predykatu stwórz tabelę pokazującą typy encji, identyfikatory i role wypełnij każdą tabelę zbiorem znaczących instancji identyfikatorów dla predykatów binarnych wystarcza zbiór 3- elementowy warto rozważyć kontrprzykłady (oznaczane znakiem zapytania)

Przykładowa populacja dla predykatu #2 (typ encji) STUDENT WYKŁAD (identyfikator) NRINDEKSU# SKRÓT (rola) ZAPISAŁSIĘ UCZĘSZCZANYPRZEZ (instancja faktu) 1234 ZMA 2345 ZMA 2345 TIN Warto zwrócić uwagę na dobór danych: Fakt #2 wielu studentów zapisanych na wykład, ten sam student zapisany na wiele wykładów Fakt #1 jeden wykład prowadzony przez jednego wykładowcę, wykładowca prowadzi wiele wykładów

Zdefiniuj predykaty, narysuj pierwszą wersję diagramu, sprawdź wyniki przez populację KROK 2

Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Fragment diagramu STUDENT Zapisany na/uczęszczają WYKŁAD NRINDEKSU# SKRÓT

Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Fragment diagramu Prowadzi/Wykładany przez WYKŁADOWCA WYKŁAD NAZWISKO SKRÓT

Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Pełen diagram WYKŁADOWCA Prowadzi/Wykładany przez WYKŁAD Zapisany na/uczęszczają STUDENT NAZWISKO SKRÓT NRINDEKSU#

Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Diagram+populacje predykatów Prowadzi/Wykładany przez WYKŁADOWCA Pieciukiewicz ZMA Pieciukiewicz TIN Trzaska TPB WYKŁAD Zapisany na/uczęszczają ZMA 1234 ZMA 2345 TIN 2345 STUDENT NAZWISKO SKRÓT NRINDEKSU#

Uproszczenie diagramu skrót notacji dla identyfikatorów WYKŁADOWCA (NAZWISKO) Prowadzi/Wykładany przez WYKŁAD (SKRÓT) Zapisany na/uczęszczają STUDENT (NRINDEKSU#) Pieciukiewicz ZMA ZMA 1234 Pieciukiewicz TIN ZMA 2345 Trzaska TPB TIN 2345

Zidentyfikuj dane pochodne (arytmetyczne) oraz nadmiarowe typy bytów (encji) KROK 3

dla/kupiony przez Można usunąć zbędne typy encji Produkt (NrProduktu#) sprzedany/kupiony Sprzedaż Produkt (NrProduktu#) Data (DDMMRR) kiedy/kupiony w Klient (NrKlienta#) Klient (NrKlienta#) Data (DDMMRR) co komu kiedy

Połączenie typów encji Encje współdzielące rolę Encje, które można porównywać Pracownik (NrPracownika#) zarobki Pensja $ Pracownik (NrPracownika#) zarobki Kwota ($ilość) Dział (NrDziału#) przydział Budżet $ Dział (NrDziału#) przydział

Eliminacja pochodnych predykatów pensja po opodatkowaniu Pracownik (NrPracownika#) ZUS Kwota ($ilość) pensja na rękę * pensja na rękę = pensja po opodatkowaniu-zus Gwiazdką oznaczamy predykaty pochodne powinniśmy je usunąć z diagramu i dostarczyć formułę pozwalającą na ich obliczanie

Encje vs. wartości Kiedy wykorzystać encje, kiedy wartości? wartość DOMENA jakiegoś typu danych powiązana tylko z jedną encją encja powiązana z wartością DOMENA typu danych powiązana z więcej niż jedną encją Wartość może być powiązana tylko z jedną encją!

Identyfikowany przez/identyfikuje wartość Identyfikowany przez/identyfikuje Encje vs. wartości WYKŁADOWCA ma NAZWISKO ma STUDENT NIP ZNAKI NRINDEKSU#

Encje zagnieżdżone Tzw. objectified association zamiana asocjacji na obiekt Specjalna notacja

Student... uczęszczał na wykład... i uzyskał z egzaminu... Encje zagnieżdżone - przed Student (NrIndeksu#) Wykład (Skrót) Wynik (Ocena)

Encje zagnieżdżone - po Student (NrIndeksu#) Zapis Wykład (Skrót) Wynik (Ocena) 1234 ZMA 2345 ZMA 2345 TIN 2345 TPB (1234, ZMA) 5 (2345, ZMA) 4 (2345, TIN) 3 (2345, TPB) 4

Dodaj ograniczenia unikalności, sprawdź arność predykatów KROK 4

Identyfikowany przez/identyfikuje 1:1 WYKŁADOWCA NAZWISKO

1:n Prowadzi/Wykładany przez WYKŁADOWCA WYKŁAD Pieciukiewicz ZMA Pieciukiewicz TIN Trzaska TPB

n:m WYKŁAD Zapisany na/uczęszczają ZMA 1234 ZMA 2345 TIN 2345 STUDENT

Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Identyfikowany przez/identyfikuje Przykład diagramu Prowadzi/Wykładany przez WYKŁADOWCA Pieciukiewicz ZMA Pieciukiewicz TIN Trzaska TPB WYKŁAD Zapisany na/uczęszczają ZMA 1234 ZMA 2345 TIN 2345 STUDENT NAZWISKO SKRÓT NRINDEKSU#

Student... uczęszczał na wykład... i uzyskał z egzaminu... Poprawność arności faktów Student (NrIndeksu#) Wykład (Skrót) Wynik (Ocena) Możemy podzielić ten fakt na fakty binarne, czy też jest on faktem elementarnym?

Przykładowa populacja STUDENT WYKŁAD OCENA 1234 ZMA 5 2345 ZMA 4 2345 TIN 3 2345 TPB 4

Przykładowe rozbicie predykatu na prostsze WYNIK (OCENA) Prowadzi/Wykładany przez WYKŁAD (SKRÓT) Zapisany na/uczęszczają STUDENT (NRINDEKSU#) 5 ZMA ZMA 1234 4 ZMA ZMA 2345 3 TIN TIN 2345 4 TPB TPB 2345

Sprawdźmy wynik złączenia STUDENT WYKŁAD OCENA 1234 ZMA 5 1234 ZMA 4 2345 ZMA 5 2345 ZMA 4 2345 TIN 3 2345 TPB 4 Pojawiają się nadprogramowe linie!

UŻYTA NOTACJA

Użyta notacja NAZWA Encja NAZWA Wartość Rola Predykat binarny Unikalność tzw. Objectified association

UWAGI KOŃCOWE

Wyższość Świąt Bożego Narodzenia nad Świętami Wielkiej Nocy Pytania ER, UML, ORM... nie za dużo tego? Co jest lepsze? Odpowiedź Do jakich zastosowań? Stosujmy właściwe narzędzie do rozwiązania konkretnego problemu!

Podręczniki Terry Halpin, Information Modeling and Relational Databases, Morgan Kaufmann Publishers, 2001, Wil van der Aalst and Kees van Hee, Workflow Management Models, Methods and Systems, The MIT Press, 2004

Dodatkowe źródła http://www.orm.net/ http://www.tonymarston.net/php-mysql/workflow.html