1. Grupy użytkowników
- Administratorzy danych (Data Administrators, DA)
- podejmują decyzję, jakie dane powinny być przechowywane w bazie danych
- odpowiedzialni za projektowanie i kontrolowanie ustalonych standardów
- odpowiedzialni za przestrzeganie strategii i procedur postępowania
- odpowiedzialni za prawidłowy rozwój bazy
- Administratorzy bazy danych (Database Administrators, DBA)
- odpowiedzialni technicznie za realizację decyzji Administratora danych
- odpowiedzialni za fizyczną realizację bazy danych, kontrolę bezpieczeństwa i spójności, zapewnienie sprawnego działania aplikacji użytkowników, wydajność i konserwację systemu
- opiekują się gotowymi aplikacjami baz danych, instalują je, zapewniają ciągłość pracy aplikacji
- uruchamiają, zatrzymują, restartują bazę danych
- odpowiadają za ciągłość pracy bazy danych
- odpowiadają za wydajność bazy danych
- tworzą kopie zapasowe
- zarządzają użytkownikami końcowymi i nadają im uprawnienia
- są odpowiedzialni za zapewnienie optymalnych warunków dostępu do bazy danych na zasadach bezpieczeństwa określonych odpowiednią polityką dostępu do bazy danych
- odpowiadają za monitorowanie systemu
- tworzą i usuwają użytkowników
- przywracają i naprawiają bazę danych
- Projektanci bazy danych
- projektant logicznej bazy danych
- analizuje dane
- tworzy związki między danymi i zarządza nimi
- określa ograniczenia, które muszą spełniać dane przechowywane w bazie
- projektant fizycznej bazy danych
- odwzorowuje logiczny projekt bazy danych w postaci tabel i więzów integralności
- wybiera odpowiednie struktury i metody dostępu do danych
- projektuje procedury gwarantujące bezpieczeństwo danych
- projektant logicznej bazy danych
- Twórcy aplikacji (programiści)
- tworzą programy, które pozwalają użytkownikom realizować potrzebne funkcje dotyczące pracy w bazie
- Uzytkownicy (klienci)
- użytkownicy naiwni (laicy)
- na ogół nie są świadomi istnienia SZBD
- komunikują się z bazą przy pomocy specjalnie napisanych programów, które pozwalają realizować konieczne operacje w najprostszy sposób
- użytkownicy profesjonalni
- znają strukturę bazy i funkcje realizowane przez SZBD
- mogą używać języka wysokiego poziomu (np. SQL), by wykonywac potrzebne operacje (np. na danych)
- użytkownicy naiwni (laicy)
2. Metodologia projektowania baz danych
- metoda wstępująca - nadaje się do projektowania prostych baz danych zawierających względnie małą liczbę atrybutów; proces projektowania bazy danych rozpoczyna się od zidentyfikowania wszystkich atrybutów, a następnie poprzez analizę zależności funkcyjnych (powiązań) pomiędzy atrybutami łączy się je w tabele (relacje); od szczegółu do ogółu.
- metoda zstępująca - nadaje się do projektowania złożonych baz zawierających względnie dużą liczbę atrybutów. Proces projektowania bazy danych rozpoczyna się od zidentyfikowania istotnych encji oraz związków pomiędzy nimi, a następnie stosując metodę kolejnych uściśleń wprowadza się encje, związki oraz atrybuty niższego poziomu; od ogółu do szczegółu.
3. Etapy projektowania bazy danych
- konceptualne projektowanie bazy danych - proces konstrukcji modelu danych, który jest niezależny od wszelkich aspektów fizycznych (specyficzny model danych, docelowy SZBD, programy użytkowe, języki programowania, platforma sprzętowa)
- logiczne projektowanie bazy danych - proces konstrukcji modelu, który jest oparty na specyficznym modelu danych (np. model relacyjny, model obiektowy), ale niezależny od konkretnego SZBD i innych aspektów fizycznych
- fizyczne projektowanie bazy danych - proces tworzenia implementacji bazy danych w pamięci zewnętrznej. Opis ten zawiera bazowe relacje oraz organizację plików i indeksów zapewniających efektywny dostęp do danych, realizację więzów integralności i środków bezpieczeństwa danych
4. Cykl życia aplikacji bazy danych
- planowanie bazy danych - planowanie najbardziej skutecznej i wydajnej metody realizacji faz cyklu życia
- definicja systemu - określenie zakresu i granic stosowania danej aplikacji bazy danych, wskazanie jej użytkowników oraz obszarów zastosowań
- gromadzenie i analiza wymagań - zbieranie i analiza wymagań pochodzących od użytkowników i wynikających z obszarów zastosowań
- projektowanie bazy danych - projektowanie konceptualne, logiczne i fizyczne bazy danych
- selekcja DBMS (opcjonalnie) - wybór DBMS odpowiedniego dla aplikacji bazy danych
- tworzenie prototypów (opcjonalnie) - budowanie działającego modelu aplikacji bazy danych, który pozwala projektantom i użytkownikom zobrazować i ocenić sposób działania i wygląd końcowego programu
- implementacja - tworzenie zewnętrznych, konceptualnych i wewnętrznych definicji bazy danych i programów użytkowych
- konwersja i przenoszenie danych - przenoszenie danych ze starego systemu do nowego
- testowanie - testowanie i usuwanie błędów z aplikacji bazy danych oraz sprawdzanie zgodności z wymaganiami użytkowników
- bieżąca konserwacja - aplikacja bazy danych jest w pełni zaimplementowana. System jest na bieżąco monitorowany i konserwowany. W razie potrzeby do aplikacji bazy danych są wprowadzane nowe wymagania poprzez ponowne przejście przez powyższe fazy
5. Metody projektowania systemu baz danych
- metodologia strukturalna - podejście starsze, lecz ciągle rozpowszechnione w praktyce
- metodologia obiektowa - podejście nowsze, zdobywające coraz większa popularność w związku z rozwojem języków programowania