Wykład 9. Projektowanie BD. Bazy Danych - A. Dawid 2011 1



Podobne dokumenty
Projektowanie BD Diagramy związków encji

Faza Określania Wymagań

Wykład I. Wprowadzenie do baz danych

Świat rzeczywisty i jego model

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

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

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

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

Podstawowe pojęcia dotyczące relacyjnych baz danych. mgr inż. Krzysztof Szałajko

Bazy Danych. Modele danych. Krzysztof Regulski WIMiIP, KISiM,

Fazy analizy (modelowania) oraz projektowania FAZA ANALIZY:

Technologia informacyjna

Bazy Danych. C. J. Date, Wprowadzenie do systemów baz danych, WNT - W-wa, (seria: Klasyka Informatyki), 2000

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

Analiza i projektowanie aplikacji Java

Proces badawczy schemat i zasady realizacji

Metodyki i techniki programowania

Baza danych przestrzennych modelowa reprezentacja fragmentu świata rzeczywistego

Modelowanie i Programowanie Obiektowe

Bazy danych 2. Wykład 1

Bazy danych 2. dr inż. Tadeusz Jeleniewski

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

Proces badawczy schemat i zasady realizacji

Ontologie, czyli o inteligentnych danych

ORGANIZACJA ZAJĘĆ BAZY DANYCH PLAN WYKŁADU SCHEMAT SYSTEMU INFORMATYCZNEGO

Problematyka użyteczności serwisów internetowych

Model logiczny SZBD. Model fizyczny. Systemy klientserwer. Systemy rozproszone BD. No SQL

Normalizacja baz danych

Wymagania klienta mogą być opisane na różnych poziomach abstrakcji: Podział wymagań: Wymagania funkcjonalne Wymagania niefunkcjonalne

MiASI. Modele, perspektywy, diagramy UML. Piotr Fulmański. 7 grudnia Wydział Matematyki i Informatyki, Uniwersytet Łódzki, Polska

Paweł Kurzawa, Delfina Kongo

Projektowanie BD Normalizacja Przykłady

Metodyki i techniki programowania

Baza danych to zbiór wzajemnie powiązanych ze sobą i zintegrowanych danych z pewnej dziedziny.

BAZY DANYCH wprowadzenie. Opracował: dr inż. Piotr Suchomski

Rola i zadania. eczeństwie wiedzy. w społecze. Instytut Informacji Naukowej i Bibliotekoznawstwa Akademia Pedagogiczna w Krakowie skorka@ap.krakow.

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

Alicja Marszałek Różne rodzaje baz danych

Projektowanie logiki aplikacji

Literatura. Bazy danych s.1-1

Rysunek 1: Przykłady graficznej prezentacji klas.

Wprowadzenie do metodologii modelowania systemów informacyjnych. Strategia (1) Strategia (2) Etapy Ŝycia systemu informacyjnego

Inżynieria oprogramowania wykład IV Faza określenia wymagań

Pojęcie bazy danych. Funkcje i możliwości.

TECHNOLOGIE OBIEKTOWE. Wykład 3

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

Multi-wyszukiwarki. Mediacyjne Systemy Zapytań wprowadzenie. Architektury i technologie integracji danych Systemy Mediacyjne

Pojęcie systemu baz danych

Egzamin / zaliczenie na ocenę* 0,5 0,5

Modelowanie danych, projektowanie systemu informatycznego

Analiza i projektowanie oprogramowania. Analiza i projektowanie oprogramowania 1/32

Projekt małej Bazy Danych.

Podstawowe zagadnienia z zakresu baz danych

UML cz. II. UML cz. II 1/38

poziom: Core wersja: 2.6 moduł: B : Wytwarzanie SYLLABUS

Projektowanie oprogramowania cd. Projektowanie oprogramowania cd. 1/34

Systemy baz danych. mgr inż. Sylwia Glińska

Wykład 7. Projektowanie kodu oprogramowania

Bazy danych i usługi sieciowe

Faza analizy (modelowania) Faza projektowania

Podejście obiektowe - podstawowe pojęcia

Projektowanie baz danych

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

Technologia informacyjna (IT - Information Technology) dziedzina wiedzy obejmująca:

Tester oprogramowania 2014/15 Tematy prac dyplomowych

Tematy seminariów wg Roger S. Pressman, Praktyczne podejście do oprogramowania, WNT, Zofia Kruczkiewicz

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

Grupa kursów: Wykład Ćwiczenia Laboratorium Projekt Seminarium 15 30

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

Projektowanie Graficznych Interfejsów Użytkownika Robert Szmurło

Definicja bazy danych TECHNOLOGIE BAZ DANYCH. System zarządzania bazą danych (SZBD) Oczekiwania wobec SZBD. Oczekiwania wobec SZBD c.d.

Projektowanie BAZY DANYCH

<Nazwa firmy> <Nazwa projektu> Specyfikacja wymagań projektu. Wersja <1.0>

Lokalizacja Oprogramowania

Autor: Joanna Karwowska

Modelowanie obiektowe - Ćw. 3.

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

Podstawy Programowania Obiektowego

Program szkolenia: Continuous Integration i Git

Przepływy danych. Oracle Designer: Modelowanie przepływów danych. Diagramy przepływów danych (1) Diagramy przepływów danych (2)

Podstawy programowania

Tom 6 Opis oprogramowania Część 8 Narzędzie do kontroli danych elementarnych, danych wynikowych oraz kontroli obmiaru do celów fakturowania

<Nazwa firmy> <Nazwa projektu> Specyfikacja dodatkowa. Wersja <1.0>

Relacyjny model baz danych, model związków encji, normalizacje

Wykład 1. Projektowanie efektywnych algorytmów przetwarzania danych w sieciowych systemach usług, rzeczy i multimediów.

Bazy danych. Zachodniopomorski Uniwersytet Technologiczny w Szczecinie. Wykład 3: Model związków encji.

OfficeObjects e-forms

WOJSKOWA AKADEMIA TECHNICZNA

Wstęp do zarządzania projektami

Wykorzystanie standardów serii ISO oraz OGC dla potrzeb budowy infrastruktury danych przestrzennych

Oceny z prezentacji INKU011S. Zofia Kruczkiewicz

Etapy życia oprogramowania

mail: strona: konsultacje: na stronie (po wcześniejszym umówieniu drogą mailową)

INTERNETOWE BAZY DANYCH materiały pomocnicze - wykład X

Architektura Systemu. Architektura systemu umożliwia kontrolowanie iteracyjnego i przyrostowego procesu tworzenia systemu.

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

Modelowanie hierarchicznych struktur w relacyjnych bazach danych

PRZEWODNIK PO PRZEDMIOCIE

Procesy ETL - wykład V. Struktura. Wprowadzenie. 1. Wprowadzenie. 2. Ekstrakcja 3. Transformacja 4. Ładowanie 5. Studium przypadków.

Transkrypt:

Wykład 9 Projektowanie BD Bazy Danych - A. Dawid 2011 1

Projektowanie systemów baz danych Podstawowe zagadnienia 1. Projektowanie w oparciu o analizę danych 2. Projektowanie w oparciu o analizę funkcji 3. Projektowanie pojęciowe 4. Strategie projektowania pojęciowego 5. Metoda projektowania pojęciowego Bazy Danych - A. Dawid 2011 2

Analiza danych Projektowanie systemu baz danych w oparciu o dane. Ang. data-driven (DD) Wymagania odnośnie DANYCH Projektowanie pojęciowe Analiza danych opis zawartości bazy danych niezależnie od konkretnej BD Model pojęciowy to język opisu schematu pojęciowego Schemat pojęciowy Projektowanie logiczne Schemat logiczny Projektowanie fizyczne Schemat fizyczny Opis struktury BD zależny do klasy BD MODEL LOGICZNY. Klasy modeli logicznych: Relacyjny, Sieciowy, Hierarchczny Opis struktury fizycznej i metod dostępu do BD zależny od SZBD Bazy Danych - A. Dawid 2011 3

Analiza funkcji Projektowanie systemu baz danych w oparciu o funkcje. Ang. function-driven (FD) Wymagania odnośnie FUNKCJI Analiza funkcji Schemat funkcjonalny Projektowanie aplikacji Schemat aplikacji Analiza zakres funkcji systemu, procesów,wymienianych informacji. Dane widziane jako izolowane składnice informacji. PROTOTYPOWANIE-KONSTRUKCJA. Zamiana schematu funkcjonalnego systemu na opis struktury aplikacji i opis sposobów dostępu do BD Projektowanie oprogramowania Specyfikacja programu Zakodowanie struktury aplikacji w postaci programu Bazy Danych - A. Dawid 2011 4

Projektowanie pojęciowe Projektowanie pojęciowe (konceptualne) jest niezależne od narzędzi. Wynikiem takiego projektowania jest pojęciowy model baz danych (model abstrakcyjny). Projektowanie pojęciowe jako proces myślowy Nie może zostać zautomatyzowane Nie może zostać sformalizowane Oparte jest na doświadczeniu, wiedzy o rzeczywistości i zrozumieniu tematu Wymaga abstrakcyjnego myślenia Jest subiektywnym spojrzeniem na rzeczywistość Bazy Danych - A. Dawid 2011 5

Projektowanie pojęciowe Zalety projektowanie pojęciowego Opis rzeczywistości niezależny od docelowego środowiska realizacji SZBD Może służyć jako punkt wyjścia po zmianie SZBD Swoboda wyboru docelowgo SZBD Może służyć jako jednolita podstawa do porównań w homogenicznych strukturach Decyzja o docelowym SZBD może być przesunięta na później Bazy Danych - A. Dawid 2011 6

Projektowanie pojęciowe Cechy projektowanie pojęciowego Pełnia wyrazu (Expressivness) Obszerny, wszechstronny, wyczerpujący i dokładny opis rzeczywistości. Łatwość, prostota (Simplicity) Łatwość tworzenia i weryfikacji oraz zrozumiałość. Minimalność (Minimality) Żadne pojęcie nie da się wyrazić przez kombinacje innych pojęć Formalność (Formality) Formalna, unikalna, precyzyjna i dobrze zdefiniowana reprezentacja rzeczywistości ( możliwość matematycznej obróbki pojęć formalnych) Graficzna reprezentacja Kompletna, rzetelna, przejrzysta. Bazy Danych - A. Dawid 2011 7

Projektowanie pojęciowe Strategie projektowanie pojęciowego Od ogółu do szczegółu (TOP-DOWN) - najpierw definiuje się ogólne pojęcia, a potem rozwija się je poprzez uszczegóławianie stosując bezkontekstowe elementy podstawowe (prymitywy) Od szczegółu do ogółu (BOTTOM-UP) - Najpierw definiuje się pojęcia elementarne, a następnie buduje się z nich struktury w celu stworzenia pojęć ogólnych Rozprzestrzeniania się (INSIDE-OUT) - Najpierw definiuje się pojęcia, które wydają się najważniejsze, a następnie rozwija się je poprzez dobudowywanie kolejnych pojęć, które stanowia ich uzupełnienie. Mieszana (MIXED) - Stosuje się różne z wyżej wymienionych strategi projektowania. Bazy Danych - A. Dawid 2011 8

Porównanie strategii projektowania pojęciowego STRATEGIA ZALETY WADY TOP-DOWN BOTTOM-UP INSIDE-OUT Dobry obraz ogólny (syntetyczny) zakresu systemu Brak nieporządanych efektów ubocznych Łatwa dla początkujących projektantów BD Decyzje projektowe podejmowane na poziomie lokalnym Łatwiejsze odkrywanie nowych pojęć, które są związane z już istniejącymi (wyodrębnionymi) Tylko dla ekspertów Czasami niewykonalna Niezbędna częsta przebudowa każdorazowo po dodaniu nowego pojęcia elementarnego Pełny ogólny obraz zakresu systemu dostępny tylko na koniec procesu projektowania MIXED Możliwość projektowania wg swoich możliwości i możliwości systemu Wymagane krytyczne decyzje odnośnie szkieletu schematu na początku projektowania Bazy Danych - A. Dawid 2011 9

Całkowity proces projektowania WEJŚCIA WYJŚCIA Wymagania odnośnie danych, aspekt statyczny Schemat danych Wymagania odnośnie zakresu funkcji, aspekt dynamiczny Wymagania odnośnie aplikacji, operacje wykonywane na danych Projektowanie danych i funkcji. Projektowanie aplikacji Schemat funkcji Schemat aplikacji Dokumentacja projektowa Bazy Danych - A. Dawid 2011 10

Czynności Analiza wymagań (Requirements analysis) Nadanie wymaganiom użytkownika pewnej ścisłej, spójnej struktury ułatwiajacej wykonanie kolejnych czynności. Obejmuje w szczegółach wymagań podanych przez użytkownika, precyzowanie założeń, eliminowanie niejasności i niespójności opisu rzeczywistości uzyskanej od użytkownika. Projektowanie wstępne (Initial Conceptualization) Wybór głownych pojęć, które będą reprezentowane na schemacie pojęciowym. Stosowana dla strategii TOP-DOWN i MIXED czasem dla INSIDE-OUT, a zupełnie pomijana dla strategii BOTTOM-UP. Rozwijanie (Incremental Conceptualization) Główna czynność projektowania pojęciwego prowadzona zgodnie z jedną ze strategii projektowania. Bazy Danych - A. Dawid 2011 11

Czynności Integrowanie (Integration) Łączenie różnych schematów cząstkowych w schemat całościowy. Polega na znajdowaniu elementów wspólnych reprezentujących te same pojęcia, jak również na rozstrzyganiu konfliktów między schematami cząstkowymi. Czynność typowa dla strategii BOTTOM-UP i MIXED. Przebudowanie (Restructuring) Poprawienie jakości zbudowanych schematów poprzez sprawdzenie ich poprawności, kompletności, spójności, minimalności i czytelności. Gdy nie spelnia tych warunków należy schemat przebudować. Bazy Danych - A. Dawid 2011 12

Postacie wymagań z punktu widzenia użytkownika Język naturalny (dokumenty statutowe, regulaminy, opisy narracyjne-niejasne, nieprecyzyjne, dwuznaczne, wymagające interpretacji, zależne od twórcy i obserwatora) Formularze (dokumenty wymiany informacji w organizacji) Formaty rekordów (dokumentacja istniejących systemów) Język naturalny zarowno pisany jak i mówiony jest dwuznaczny, bardzo zależy od zamysłu twórcy i interpretacji obserwatora. Bazy Danych - A. Dawid 2011 13

Postacie wymagań z punktu widzenia użytkownika Zasady stosowane przy analizie tekstu naturalnego 1. Wybieraj odpowiedni (ten sam) stopień abstarkcji dla używanych pojęć. MIEJSCE URODZENIA => MIASTO URODZENIA, LICZBA LAT => OKRES 2. Unikaj stosowania pojęć przykładowych zamiast pojęć ogólnych. LICZBA KOMPUTERÓW W MAGAZYNIE => LICZBA TOWARÓW W MAGAZYNIE 3. Unikaj wyrażeń opisowych. OSOBA PRZYJMUJĄCA PIENIĄDZE W OKIENKU => KASJERKA 4. Buduj zdania zawsze według takiego samego standardu. <PODMIOT><ORZECZENIE><DOPEŁNIENIE> 5. Uważaj na synonimy i homonimy (unikaj ich stosowania). NAUCZYCIEL=WYKŁADOWCA=PROFESOR, MIEJSCE(MIASTO)-MIEJSCE(SALA) BOGATE SŁOWNICTWO => SYNONIMY, UBOGIE SŁOWNICTWO => HOMONIMY 6. Stosuj jasne (bezpośrednie) odwołania między używanymi terminami. DZIEŃ: DZIEŃ TYGODNIA,DZIEŃ MIESIĄCA, DZIEŃ KOLEJNY W ROKU 7. Buduj słownik używanych pojęć TWORZENIE PRACOCHŁONNE, AlE SŁOWNIK BARDZO UŻYTECZNY Bazy Danych - A. Dawid 2011 14

ANALIZA DANYCH Model danych zbiór pojęć, które mogą być użyte do opisu grupy danych i operacji wykonywanych na nich. Rodzaje Pojęciowy model danych Model danych opisujący zestaw pojęć z wybranej rzeczywistości. Rzeczywistość reprezentowana jest na wysokim poziomie abstrakcji poprzez opis językowy i reprezentację graficzną. Opis łatwy w zrozumieniu i interpretacji Logiczny model danych Model danych wspomagający opis danych w taki sposób aby mógł być on przetwarzany przy pomocy komputera (sieciowy, hierarchiczny, relacyjny, obiektowy) Bazy Danych - A. Dawid 2011 15

ANALIZA DANYCH MODEL SCHEMAT Model dostarcza regół niezbędnych do opisu rzeczywistości Schemat reprezentuje wybrany obszar rzeczywistości i jest zbudowany na podstawie konkretnego modelu. Jest statycznym, niezmiennym w czasie zbiorem słownych i graficznych reprezentacji, które opisują strukturę danych wybranego z rzeczywistości obszaru WYSTĄPIENIE Wystąpienie jest dynamicznym, zmiennym w czasie zbiorem danych odpowiadających strukturze danych zdefiniowanych w schemacie. Każdy schemat może mieć wiele wystąpień, z których każdy odpowiada pewnemu stanowi na daną chwilę Bazy Danych - A. Dawid 2011 16

ANALIZA DANYCH Poziomy opisu danych Propozycja komitetu ANSI/SPARC Można wyróżnić trzy poziomy opisu danych: Zewnętrzny (External) (Opisuje punkt widzenia wybranej grupy użytkowników, prezentuje tylko te informacje, które związane są tylko z tą grupą Pojęciowy (Conceptual) (Dostarcza niezależny, ogólny, abstrakcyjny opis całości informacji danej rzeczywistości. Wewnętrzny (Internal) (Dostarcza zależny od środowiska realizacji opis fizycznej implementacji informacji danej rzeczywistości Bazy Danych - A. Dawid 2011 17

ANALIZA DANYCH Sposoby abstrakcji Klasyfikacja (Classification) - Wyróżnianie pojęć jako klas obiektów rzeczywistości posiadających wspólne cechy uważane za istotne z punktu widzenia celów analizy Grupowanie (Aggregation) - Wyróżnianie nowych klas obiektów rzeczywistości wyższego rzędu, na podstawie klas obiektów składowych Uogólnienie (Generalization) - Wyróżnienie wspólnych cech podobnych klas obiektów rzeczywistości i grupowanie ich w nowe obiekty MIESIĄC STYCZEŃ LUTY... GRUDZIEŃ ROWER RAMA PEDAŁY KIEROWNICA POJAZD JEDNOŚLAD OSOBOWY CIĘŻAROWY Bazy Danych - A. Dawid 2011 18

ANALIZA DANYCH Rodzaje uogólnienia Całkowite rozłączne Częściowe rozłączne OSOBA POJAZD MĘŻCZYZNA KOBIETA ROWER SAMOCHÓD OSOBOWY Częściowe łączne Całkowite łączne MĘŻCZYZNA OSOBA GRACZ PRACOWNI K PIEKARZ PIŁKARZ Bazy Danych - A. Dawid 2011 19

ODWZOROWANIA Wzajemnie jednoznaczne A B a1 b1 a2 a4 a3 b2 b4 b3 a1 A a2 A b B a A a1 a2 f ( a1) f ( a) = b f ( a2) Bazy Danych - A. Dawid 2011 20

ODWZOROWANIA Całkowite (N:1) A B a1 b1 a5 a2 a6 a7 a3 b2 b3 b4 a4 a Df b Wf Df = A b B a A f f ( a) ( a) = b = b Bazy Danych - A. Dawid 2011 21

ODWZOROWANIA Częściowe (N:1) A a1 a5 a2 a6 a7 a4 a3 B b1 b2 b3 b4 Df A Bazy Danych - A. Dawid 2011 22

ODWZOROWANIA Wielokrotne (M:N) A a1 a5 a2 a6 a7 a4 a3 B b1 b2 b3 b4 R A B Bazy Danych - A. Dawid 2011 23