Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

pl:dydaktyka:ztb:2010:etapy_projektowania [2017/07/17 10:08]
pl:dydaktyka:ztb:2010:etapy_projektowania [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 +====== Etapy projektowania aplikacji bazodanowej ======
  
 +
 +===== Projekt konceptualny =====
 +
 +  - **Sformułowanie zadania projektowego:​** podanie przedmiotu projektowania,​ jego celów, przeglądu zadań, specyfiki i uwarunkowań.
 +  - **Analiza stanu wyjściowego**;​ analiza stanu zastanego, uwarunkowań prawnych, przyjętego obiegu istniejącej dokumentacji,​ analiza istniejącego systemu elektronicznego przetwarzania danych (aktualnej bazy), analiza występujących problemów, etc. pomocne mogą być scenariusze postępowania i ich analiza (elementy, obiekty, charakterystyki,​ atrybuty, struktura, przepływ danych, powiązania,​ relacje, ograniczenia funkcjonalności).
 +  - **Analiza wymagań użytkownika (wstępna)**;​ na tym etapie należy określić podstawowe cele, zadania i funkcjonalność jakie mają być realizowane przez projektowaną bazę danych oraz ew. wymagania dotyczące projektu i dokumentacji. Dobrze byłoby, aby użytkownik na bieżąco współuczestniczył w projektowaniu i implementacji oraz wnosił swoje uwagi. Należy zidentyfikować wymagania jawne i niejawne.
 +  - **Określenie scenariuszy użycia.** Scenariusze użycia pozwolą na konstrukcję diagramów DFD i STD oraz hierarchii funkcji.
 +  - **Identyfikacja funkcji.** Określenie podstawowych funkcji realizowanych w bazie danych. ​
 +  - **Analiza hierarchii funkcji projektowanej aplikacji** (FHD -- Functional Hierarchy Diagram); określenie struktury zależności hierarchicznych pomiędzy jednostkami analizowanego systemu, zwłaszcza w zakresie specyfikacji wymagań funkcjonalnych. Specyfikacja funkcji (funkcjonalności) projektowanego systemu.
 +  - **Budowa i analiza diagramu przepływu danych** (DFD – Data Flow Diagram); ma na celu określenie przepływu danych (wejścia, wyjścia, operacje, przechowywanie) oraz elementów sterowania tym przepływem,​ co może być pomocne dla tworzenia aplikacji. Specyfikacja danych wejściowych i wyjściowych.
 +  - **Wybór encji (obiektów) i ich atrybutów.**
 +  - **Projektowanie powiązań (relacji) pomiędzy encjami.** Konstrukcja diagramu ERD (Entity-Relationship Diagram); jest to zasadniczy etap procesu projektowania struktury bazy danych. Identyfikacja klas encji, ich atrybutów, zdefiniowanie (określenie) kluczy. Tablica krzyżowa powiązań, eliminacja powiązań wiele-do-wielu. Konstrukcja diagramu ERD.
 +  - **Projekt diagramów STD (State Transition Diagram -- diagramy przejść pomiędzy stanami).** Wykonanie w oparciu o scenariusze użycia i strukturę bazy danych. Pomocny do budowy interfejsu aplikacji.
 +
 +----
 +
 +Projekt może być przygotowany w wiki lub w LaTeX-u. Dla osób przygotowujących projekt w LaTeX-u:
 +
 +  * Szablon z wykazem proponowanych sekcji do pobrania {{:​pl:​dydaktyka:​sbd:​2009:​bd-projekty-template.tar.gz|download}}
 +  * Instrukcja do LaTeX na stronie dr hab. M. Szpyrki [[http://​home.agh.edu.pl/​~mszpyrka/​dydagh:​latex|LaTeX - wprowadzenie]]
 +  * Można też skorzystać z przygotowanej klasy aghdpl (dla prac dyplomowych) [[https://​ai.ia.agh.edu.pl/​wiki/​pl:​dydaktyka:​sbd:​2009:​etapy_projektowania|Strona do pobrania materiałów]]
 +
 +
 +----
 +
 +Przykładowe materiały pomocnicze:
 +
 +  * Praca dyplomowa: {{:​pl:​dydaktyka:​sbd:​2009:​praca_magisterska.pdf|SOK}}
 +  * Projekt nieruchomości {{:​pl:​dydaktyka:​sbd:​2009:​konceptualny-nieruchomosci.pdf|.pdf}}
 +  * Projekt metro {{:​pl:​dydaktyka:​sbd:​2009:​koncept_final-metro-maslanka.pdf|.pdf}}
 +  * Projekt sale {{:​pl:​dydaktyka:​sbd:​2009:​projekt.pdf|.pdf}}
 +
 +----
 +
 +  * Materiały pomocnicze do elementów analizy strukturalnej (DFD, ERD, STD, DD): [[http://​yourdon.com/​strucanalysis/​wiki/​index.php?​title=Table_of_Contents|Structured Analysis Wiki (E. Yourdon)]]
 +===== Projekt logiczny =====
 +(zawiera projekt konceptualny)
 +
 +
 +  - **Projektowanie tabel, kluczy, kluczy obcych, powiązań między tabelami, indeksów, etc. w oparciu o zdefiniowany diagram ERD;** na tym etapie następuje „sprecyzowanie” struktury bazy danych wraz ze szczegółami technicznymi. Projekt bazy w języku SQL.
 +  - **Słowniki danych.** Specyfikacja słownika danych. Specyfikacja dziedzin i ograniczeń. ​
 +  - **Analiza zależności funkcyjnych i normalizacja tabel (dekompozycja do 3NF, BCNF, 4NF, 5NF);** na tym etapie dokonuje się sprawdzenia,​ czy tabele spełniają warunki zakładanych postaci normalnych i ew. dekompozycji w celu normalizacji.
 +  - **Denormalizacja struktury tabel;** ma ona na celu optymalizację przetwarzania,​ przechowywania danych archiwalnych,​ dostosowanie do specyficznych wymagań użytkownika. [czynność opcjonalna].
 +  - **Projektowanie operacji na danych:** zdefiniowanie kwerend dla realizacji funkcji wyspecyfikowanych w projekcie; (zgodnie z wymaganiami użytkownika;​ na tym etapie mogą one zostać uszczegółowione bądź zmodyfikowane). Projekt w języku SQL.
 +
 +===== Raport końcowy =====
 +
 +  - **Implementacja bazy danych** (utworzenie bazy, implementacja obiektów) (realizacja struktury pustej bazy; w oparciu o diagramy ERD i SQL)
 +  - **Zdefiniowanie interfejsów do prezentacji,​ edycji i obsługi danych** (formularze;​ należy zaprojektować strukturę każdego formularza oraz powiązania między nimi; w oparciu o diagramy FHF, DFD i STD).
 +  - **Zdefiniowanie dokumentów do przetwarzania i prezentacji danych** (raporty; informacje generowane w raportach i ich struktura powinna odpowiadać dokumentów wymaganym w danej firmie.).
 +  - **Zdefiniowanie panelu sterowania aplikacji** (należy pamiętać o dostosowaniu do potrzeb użytkownika;​ realizacja w oparciu o diagram STD).
 +  - **Zdefiniowanie makropoleceń dla realizacji typowych operacji;** (określonych dla panelu sterowania i ew. innych formularzy; realizacja w oparciu o diagram DFD i FHD).
 +  - **Uruchamianie i testowanie aplikacji** (on-site, przy współpracy użytkownika).
 +  - **Wprowadzanie danych** (ręczne, automatyczne,​ import, on-line).
 +  - **Wdrażanie systemu do użytkowania** (stopniowe, modułami, z możliwością wycofania się, z dublowaniem danych i obliczeń).
 +  - **Przeprowadzenie szkolenia użytkowników.**
 +  - **Zapewnienie dokumentacji technicznej i użytkowej** (ten wymóg powinien postawić użytkownik!).
 +  - **Zapewnienie obsługiwania systemu po wdrożeniu** (jest to jeden z najbardziej kosztownych procesów w realizacji projektów informatycznych).
 +  - **Rozwijanie i modyfikowanie aplikacji** (możliwości rozwijania i adaptacji należy uwzględnić we wczesnych fazach projektowania).
 +  - **Opracowanie doświadczeń wynikających z realizacji projektu** (czas, koszty; dane te posłużą do oszacowania kosztów i nakładów przy realizacji przyszłych projektów).
 +  - **Opracowanie raportu końcowego.**
 +  - **Wykaz literatury, załączniki** (przykłady def. formatu, reguł, poprawności,​ masek, kwerend SQL, wydruki, itp.)
pl/dydaktyka/ztb/2010/etapy_projektowania.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0