Projekt struktury danych

advertisement
Projekt struktury danych
Symbol projektu:
Opiekun projektu:
Nazwa projektu:
Nazwa dokumentu:
Nr wersji:
Projekt struktury danych
Odpowiedzialny za dokument:
Data pierwszego sporządzenia:
Przeznaczenie:
Data ostatniej aktualizacji:
Wersja
Opis modyfikacji
Historia dokumentu
Rozdział / strona
Autor modyfikacji
Data
Projekt struktury danych przedstawia schemat struktury plików i schemat bazy danych. Do
przedstawienia schematu bazy danych może być wykorzystany diagram ERD, chociaż zaleca
się użycie diagramu klas. W strukturze bazy danych definiuje się komponenty danych
(stanowiące interfejs dla warstw wyższych) oraz tabele i kwerendy definiowane w samej
bazie danych.
Spis treści
1.
2.
Koncepcja struktury danych ....................................................................................................... 2
Struktura plików danych ............................................................................................................. 2
2.1.
Miejsce przechowywania danych ..................................................................................... 2
2.2.
Pliki danych ....................................................................................................................... 2
2.3.
Szacowanie wielkości plików ........................................................................................... 2
3.
Struktura bazy danych ................................................................................................................ 2
3.1.
Diagram struktury bazy danych ........................................................................................ 2
3.2.
Komponenty danych ......................................................................................................... 2
3.3.
Tabele ................................................................................................................................ 3
3.4.
Kwerendy .......................................................................................................................... 4
3.5.
Szacowanie wielkości bazy danych .................................................................................. 5
317546989
1/5
2017-07-24 / 14:07:18
Projekt struktury danych
1.
Koncepcja struktury danych
Tu opisuje się ogólnie koncepcję projektową struktury danych. Uwzględnia się dane
przechowywane w plikach i dane przechowywane w bazie danych.
2.
Struktura plików danych
2.1.
Miejsce przechowywania danych
Wymienia się foldery, katalogi. Wymienia się główne formaty plików.
2.2.
Pliki danych
FILE_001
Faktura
Opis:
Plik faktury przekazywany do systemu finansowo-księgowego.
Dane:
Numer: String
numer faktury
Data wystawienia: Date
Data transakcji: Date
…
Format:
2.3.
XML
Szacowanie wielkości plików
Zamieszcza się tabelę z szacowaną ilością plików i wielkością każdego pliku.
3.
Struktura bazy danych
3.1.
Diagram struktury bazy danych
Tu przedstawia się diagram klas (zalecane!) lub diagram ERD reprezentujący strukturę bazy
danych
3.2.
Komponenty danych
Komponenty danych reprezentują interfejs, jaki wystawia warstwa danych dla warstw
wyższych. Przedział „Klasy danych” określa klasy (zdefiniowane w warstwie biznesowej, a z
jej braku w modelu klas), które są przekazywane jako obiekty danych do/z komponentu.
Zakłada się, że każdy obiekt zawiera identyfikator (typu Integer) pozwalający jednoznacznie
zidentyfikować obiekt w bazie danych. Klasy danych są wykorzystywane w operacjach
komponentu, które to operacje wyszczególnia się w przedziale „Operacje”. Większość
operacji jest stereotypu „get”, „set” lub „del”. Operacje tak oznaczone nie wymagają nazw,
chyba że dla uniknięcia niejednoznaczności. Komponent operuje na tabelach
wyszczególnionych w przedziale „Tabele”. Może też wykorzystywać kwerendy
wyszczególnione w przedziale „Kwerendy”. Komponenty danych mogą być powiązane
między sobą, co oznacza wykorzystywanie operacji jednego komponentu przez drugi
komponent.
317546989
2/5
2017-07-24 / 14:07:18
Projekt struktury danych
DCMP_001
Rejestr zamówień
Opis:
Komponent zapewniający dostęp do złożonych zamówień.
Klasy danych:
CLS_003 Zamówienie
Operacje:
set (zamówienie: Zamówienie)
get (ID_zamówienia: Integer): Zamówienie
get Zamówienia klienta(ID_klienta: Integer): Zamówienie[*]
set Zmień zamówienie (zamówienie: Zamówienie)
del Anuluj zamówienie (ID_zamówienia: Integer)
Powiązania:
DCMP_002 Rejestr towarów
DCMP_004 Rejestr klientów
DCMP_002
Rejestr towarów
Opis:
Komponent zapewniający dostęp do towarów
Klasy danych:
CLS_002 Towar
ENUM_001 Kategorie towarów
Operacje:
set (towar: Towar)
get (ID_towaru: Integer): Towar
del (ID_towaru: Integer)
set (ID_kategorii: Integer, nazwa: String)
get (ID_kategorii: Integer): String
DCMP_003
Cennik
Opis:
Komponent zapewniający dostęp do aktualnych cen
Klasy danych:
CLS_001 Cennik
Operacje:
set (ID_towaru: Integer; cena: Currency)
get (ID_towaru: Integer): Currency
get (kategoria: Kategoria towarów): (ID_towaru: Integer, cena: Currency)[*]
Tabele:
TBL_001 Cennik
Powiązania:
DCMP_002 Rejestr towarów
DCMP_004
Rejestr klientów
Opis:
Komponent zapewniający dostęp do danych klientów
Klasy danych:
CLS_002 Klient
Operacje:
set (klient: Klient)
get (ID_klienta: Integer): Klient
Tabele:
317546989
TBL_004 Klienci
3/5
2017-07-24 / 14:07:18
Projekt struktury danych
3.3.
Tabele
Tabele są zdefiniowane na podobieństwo klas. Zamiast właściwości podaje się pola klas.
Dla pól tekstowych definiuje się rozmiar. Klucze oznaczane są w zastrzeżeniach. Indeksy
można podać w osobnym przedziale. Jeśli indeks jest złożony, to wyrażenie indeksu podawać
po znaku równości. Proste indeksy można oznaczać po prostu zastrzeżeniami przy polach.
Pola oznaczane jako PK i FK nie muszą być dodatkowo indeksowane.
TBL_001
Cennik
Opis:
Pola:
TBL_002
ID_towaru: Integer {FK Towary}
identyfikator towaru
cena: Currency
cena bieżąca
Towary
Opis:
Pola:
Indeksy:
ID: Integer {PK}
klucz główny
nazwa: String [50]
nazwa towaru
jm: String [5]
jednostka miary
kategoria: Integer {FK Kategorie Towarów}
identyfikator kategorii
nazwa {unique}
Typy wyliczeniowe są też odwzorowane w tabele z podanymi danymi inicjującymi.
TBL_003
Kategorie towarów
Opis:
Pola:
ID: Integer {PK}
Nazwa: String
(0, "spożywcze")
(1, "przemysłowe")
Dane:
3.4.
Kwerendy
Kwerendy są definiowane na podobieństwo tabel. Można zdefiniować parametry kwerendy.
W osobnym przedziale podaje się składowe z ich powiązaniami (lewo- lub prawostronnymi).
Pola nie zawierają typu danej, lecz wyrażenie tworzące pole (odwołania do pól
składowych). Można podać filtr odwołujący się do parametrów kwerendy.
QRY_001
Lista towarów
Opis:
Parametry:
ID_kategorii: Integer
Składowe:
TBL_002 Towary
--> TBL_001 Cennik (Towary.ID=Cennik.ID_towaru)
TBL_001 Cennik
Pola:
317546989
ID_towaru = Towary.ID
identyfikator towaru
nazwa_towaru = Towary.Nazwa
nazwa towaru
4/5
2017-07-24 / 14:07:18
Projekt struktury danych
Filtr:
3.5.
jm = Towary.jm
jednostka miary
cena = Cennik.cena
cena z cennika
Towary.kategoria = ID_kategorii
Szacowanie wielkości bazy danych
Zamieszcza się tabelę z wielkością każdej tabeli (przyrost roczny).
317546989
5/5
2017-07-24 / 14:07:18
Download