Projektowanie konceptualne,

Projektowanie konceptualne

ZAGADNIENIA

  •  Pojęcie projektowania konceptualnego
  • Różnica pomiędzy modelami (konceptualnym, logicznym, fizycznym)
  • Pojęcie anomalii występujących w bazach danych

Projektowanie konceptualne to proces konstrukcji modelu danych używany niezależnie od fizycznych rozważań (decydowania o zawartości tabel, typach danych w tabelach i rodza­jach powiązań).

Projektowanie konceptualne prowadzone dla przedsiębiorstwa rozpoczyna się od stwo­rzenia modelu projektu – zamierzenia. Rzeczywistość oddawana przez model konceptu­alny nie jest ograniczana do reguł implementacji, rodzaju DBMS, aplikacji i programów.

Projektowanie relacyjnej bazy danych przebiega od modelu konceptualnego do fizycznego.

Model Konceptualny Logiczny Fizyczny
Nazwa encji Tak Tak
Związek encji Tak Tak
Atrybuty Tak
Klucze główne Tak Tak
Klucze obce Tak Tak
Nazwy tabel Tak
Nazwy kolumn Tak
Typy danych Tak

Projektowanie logiczne to proces konstrukcji modelu danych oparty na specyficznym modelu, ale niezależnym od DBMS.

Model fizyczny to proces produkcji i opisu implementacji bazy danych opisujący relacje bazy danych, organizację plików, indeksy, dostęp do danych, ograniczenia, wyznaczenie reguł integralności i stosowanie środków bezpieczeństwa.

Proces projektowania relacyjnej bazy danych można podzielić na trzy etapy:

  1. Przygotowanie diagramów związków encji.
  2. Normalizacja.
  3. Wprowadzenie zasad wymuszających integralność danych.

Normalizacją zajmiemy się w późniejszym czasie

Przygotowanie diagramów związków encji wiąże się z budową schematu – struktury, w jakiej będą przechowywane dane. Należy przyjąć, że w bazie danych przechowywane są obiekty lub wartości, które są odwzorowaniem realnych lub abstrakcyjnych bytów. Obiekty te są opisywane za pomocą właściwych dla nich cech, atrybutów, zdarzeń i metod. Właściwa organizacja tych obiektów oraz wybór odpowiadających im cech jest podstawą budowy diagramu związków encji.

Przykładem budowy takiego diagramu może być próba zaprojektowania bazy danych na potrzeby organizacji służby zdrowia. Encją (realnym lub abstrakcyjnym bytem), któ­ra będzie przedmiotem opisu w naszej bazie danych, będą lekarze. Atrybutami tej encji mogą być:

  • imię,
  • nazwisko lekarza,
  • wiek,
  • płeć,
  • specjalizacja.
Dobór atrybutów podykto­wany jest oczekiwaniami klientów w stosunku do bazy danych, jeśli baza danych miałaby rozliczać liczbę przepracowanych przez lekarza godzin, należałoby umieścić dodatkowo takie atrybuty, jak:
  • godzina przyjścia do pracy,
  • godzina wyjścia z pracy.

Każdy kolejny lekarz opisywany przez atrybuty będzie instancją encji „lekarze”. Podobnie jak podczas programowania, definiujemy zmienną lub obiekt, gdy podstawimy wartość do zmiennej lub powołamy do życia obiekt, otrzymujemy instancję zmiennej lub instancję obiektu. Tłumacząc wprost, instancją jest powołany do życia obiekt, a w przypadku bazy danych instancją encji „lekarze” będzie np. „Jan Nowak”, „internista”, „lat 43”, „mężczyzna”. Zazwyczaj opisywane przez bazy danych encje mają formę tabel, np. tabela „lekarze”.