340 likes | 546 Views
PROIECTAREA BAZELOR DE DATE. Capitolul 2. Ciclul de viaț ă al unui proiect. Tematica. modelul cascad ă ; modelul V; fazele proiectarii unei baze de date. Modelul cascad ă. Fig. 2.1. Modelul cascad ă. analiza cerințelor: formularea obiectivelor proiectului;
E N D
Capitolul 2 Ciclul de viață al unui proiect
Tematica • modelul cascadă; • modelul V; • fazele proiectarii unei baze de date. PBD –curs- Ionescu Augustin-Iulian
Modelul cascadă Fig. 2.1 PBD –curs- Ionescu Augustin-Iulian
Modelul cascadă • analiza cerințelor: • formularea obiectivelor proiectului; • identificarea restricțiilor • specifice problemei rezolvate; • financiare; • legale; • sociale. • formularea specificațiilor: • elaborarea unui document ȋn care sunt precizate riguros funcțiile produsului. • proiectarea produsului: • proiectarea structurilor de date; • arhitectura software ȋn concordanță cu arhitectura SI; • detalierea algoritmilor; • proiectarea interfețelor; • determinarea cerințelor hardware; • alegerea tehnologiilor de implementare. PBD –curs- Ionescu Augustin-Iulian
Modelul cascadă • implementarea şi testarea: • implementarea structurilor/bazelor de date; • scrierea codului; • testarea fiecărui modul pentru identificarea erorilor şi a nivelului ȋn care acesta corespunde specificațiilor. • integrarea şi testarea de sistem: • se testeaza interacțiunea dintre componente; • se verifică concordanța ȋntre funcțiile realizate de produs şi cerințele impuse; • se validează produsul din punctul de vedere al executantului; • se trimite produsul la beneficiar pentru testele de acceptanță; • se trece la ȋncărcarea bazelor de date; • se trece la exploatarea ȋn condiții reale. • mentenanța: • de ȋntreținere; • de adaptare. • de dezvoltare. PBD –curs- Ionescu Augustin-Iulian
Modelul cascadă –avantaje şi dezavantaje • Avantaje: • Testarea este obligatorie in fiecare fază a modelului; • Este impusă o abordare sistematică a proiectării şi utilizării; • Este orientată pe documentație ȋn sensul că fiecare fază implică generarea unor documente specifice. • Dezavantaje: • Format rigid; • Modificările pe durata dezvoltării proiectului pot genera confuzii; • Colaborarea cu utilizatorul este plasată numai după terminarea codificării ceea ce poate crea probleme datorită necesității reformulării unor cerințe sau introducerii unor cerințe noi. • Testarea nu este pregatită din timp pentru fiecare fază ceea ce poate conduce la creşterea timpului de dare ȋn folosință. PBD –curs- Ionescu Augustin-Iulian
Modelul V Fig. 2.2 PBD –curs- Ionescu Augustin-Iulian
Modelul V - avantaje • testarea nu mai este doar o fază cu care se ȋncheie codarea ci devine o componentă integrată a ciclului de viață al proiectului; • planificarea testării ȋncepe cu faza de analiză a cerințelor şi continuă pe ȋntreaga durată a ciclului de viață; • pregătirea testării la nivelul unei faze poate fi pregatită ȋncă din faza analizei cerințelor, ȋn paralel cu desfăşurarea altor faze, ceea ce scurtează timpul de dare ȋn folosință a produsului. PBD –curs- Ionescu Augustin-Iulian
Ciclul de viață al unei baze de date • Din considerente metodologice, ȋn literatura de specialitate se prezintă diverse modele bazate pe modelul ȋn cascadă. Un astfel de model pentru baze de date tranzacționale este cel prezentat ȋn figura următoare; • În realitate activitățile de la diverse nivele se intrepătrund pentru a reduce timpul de dare ȋn folosință; • Testarea se realizează pe parcursul ȋntregului ciclu de viață ca şi ȋn cazul modelului V. PBD –curs- Ionescu Augustin-Iulian
Ciclul de viață al unei baze de date Fig. 2.3 PBD –curs- Ionescu Augustin-Iulian
Studiul de fezabilitate • Cui se adresează. • Ce aplicaţii se au în vedere. • Ce informații solicită beneficiarul pentru diverse aplicații. • Ce există deja: • baze de date; • aplicaţii; • echipamente; • licenţe; • oameni. • Priorităţi. • Ce date va conţine. • Necesitatea compatibilității cu alte sisteme utilizate ȋn organizație. • Nivele de securitate a datelor. • Ce soluţii se propun. • Durata estimată a proiectării/implementării. • Preţul de cost estimat. PBD –curs- Ionescu Augustin-Iulian
Studiul de fezabilitate • Se bazează pe: • Dialogul direct cu beneficiarul; • Studiul sistemului informatic existent; • Studiul documentelor primare; • Studiul legislaţiei şi normelor; • Experienţa echipei de proiectare; • Studiul pieţii. • Este necesar ca dialogul cu beneficiarul şi utilizatorii să fie riguros pregatit şi să se desfăşoare pe baza unor chestionare bine documentate, ȋn mai multe etape. • Trebuie incluse toate categoriile de utilizatori. De obicei cele mai valoroase informații sunt obținute nu de la şefi ci de la cei care lucrează direct cu datele. • Are ca rezultat un caiet de sarcini sau un document numit specificații de proiect. Acestea sunt documente oficiale pe baza cărora se estimează la sfârşit ȋn ce măsură proiectantul şi-a ȋndeplinit sarcinile. PBD –curs- Ionescu Augustin-Iulian
Specificațiile de proiect • trebuie să conțină cel puțin: • obiectivele proiectului; • datele cuprinse ȋn baza de date; • legăturile ȋntre date. • semantica datelor; • restricțiile impuse datelor: • restricții semantice; • restricții de acces la date; • formate de reprezentare; • restricții temporare critice; • sistemul de operare disponibil sau care va fi achiziționat; • sistemul de gestiune a bazelor de date; • arhitectura SI (Fig. 2.4); • caracteristicile serverului/serverelor de date; • nivele de securitate a datelor; • posibilitatea importului de date din baze de date mai vechi; • categoriile de utilizatori; • drepturile de acces la date pentru fiecare categorie; • nivelul de pregătire informatică minimă a utilizatorilor; • timpul maxim disponibil pentru darea ȋn folosință; • fondurile disponibile; • cheltuielile minime estimate; • strategia de etapizare a dezvoltării. PBD –curs- Ionescu Augustin-Iulian
Propunere arhitectură pentru SI - ACE DB 1 – baza de date pentru activitate curentǎ cu studenții și personalul facultǎții; DB 2 – baza de date pentru absolvenți; DB 3 – baza de date pentru probleme administrative; DB 4 – baza de date cǎmin; DW – datawarehouse Fig. 2.4 PBD –curs- Ionescu Augustin-Iulian
Proiectarea conceptuală • Presupune trecerea de la prezentarea informală la reprezentarea formală a structurii bazei de date la nivel global: • Proiectare top-down - se porneşte de la descrierea verbală a bazei de date, se identifică elementele fundamentale şi legăturile dintre acestea; • Proiectarea bottom-up - se utilizează modele ale unor părţi ale bazei de date şi se integrează într-o bază de date unică. • Rezultă un model conceptual. • Se utilizează pentru • proiectarea logică; • dialogul cu beneficiarii; • reproiectarea bazei de date. • Observație!Modelul conceptual este frecvent înglobat în caietul de sarcini. PBD –curs- Ionescu Augustin-Iulian
Proiectarea conceptuală – model minimal Fig. 2.5 PBD –curs- Ionescu Augustin-Iulian
Proiectarea conceptuală – model minimal Fig. 2.6 PBD –curs- Ionescu Augustin-Iulian
Proiectarea logică • Se alege un SGBD concret. • Presupune: • trecerea, fără pierdere de informaţie, de la un model conceptual la un model implementabil al bazei de date (vom considera ȋn continuare modelul relaţional); • normalizarea relaţiilor; • fragmentarea relaţiilor; • optimizarea structurii logice; • proiectarea declanşatoarelor (triggere); • proiectarea vederilor; • scrierea scripturilor pentru crearea tabelelor, vederilor, triggerelor, procedurilor stocate şi a funcțiilor de utilizator. • Observație! • Pentru cazurile mai simple se poate trece direct de la modelul conceptual la scrierea scripturilor pentru crearea obiectelor bazei de date. • Pentru majoritatea SGBD moderne există programe speciale de proiectare asistată de caculator, care permit editarea modelului conceptual şi generarea automată a codului DDL. PBD –curs- Ionescu Augustin-Iulian
Proiectare fizică • Presupune: • Alocarea de spaţiu în memoria secundară; • Proiectarea indecşilor. • Observație! Crearea bazei de date nu implică popularea tabelelor cu date. PBD –curs- Ionescu Augustin-Iulian
Implementarea • Presupune: • Crearea structurilor de date pe disc; • Implementarea restricţiilor; • Implementarea procedurilor stocate; • Implementarea funcţiilor de utilizator; • Implementarea strategiilor de protecţie şi securitate a datelor: • Precizarea strategiilor de recuperare a datelor în caz de căderi nedistructive; • Precizarea strategiei de realizare a cópiilor de siguranţă; • Definirea utilizatorilor; • Alocarea de drepturi utilizatorilor. • Încărcarea datelor. • Observație! În cazul unor baze de date mari şi foarte mari, se poate crea iniţial o bază de date pilot pe care se realizează testele cu date special alese şi numai după validarea acestora se trece la realizarea bazei de date propriuzise. PBD –curs- Ionescu Augustin-Iulian
Testarea şi darea ȋn folosință • Obiective: • Depistarea unor erori de proiectare/implementare; • Stabilirea eficienţei de realizare a unor operaţii tipice asupra bazei de date; • Stabilirea performantelor ȋn condiții critice (testarea la stres); • Testarea posibilităților de penetrare a sitemului. • Se proiectează un protocol de testare pentru fiecare componentă a bazei de date; • Se recomandă utilizarea unor date de test; • Se testează obligatoriu validarea datelor prin introducerea unor date eronate; • Se testează baza de date în condiţii cât mai apropiate de cele specifice exploatării; • Se testeaza aplicaţiile dezvoltate asupra bazei de date; • Se testeaza capacitatea beneficiarului de a utiliza baza de date; • Se remediază toate anomaliile semnalate. • Se predă beneficiarului baza de date şi se trece la exploatarea acesteia. • Observație! Pentru a scurta timpul de dare ȋn folosință, pregatirea testelor finale se poate desfăşora ȋn paralel cu celelalte etape (ca la modelul V). PBD –curs- Ionescu Augustin-Iulian
Mentenanță • Are ca scop eliminarea tuturor anomaliilor ce se semnalează în timpul exploatării bazei de date şi adaptarea acesteia noilor cerinţe. • Pot fi puse în evidenţă trei tipuri de mentenanţă: • Mentenanţa corectivă; • Mentenanţa adaptivă; • Mentenanţa perfectivă. • Observație! Dacă preţul mentenanţei creşte foarte mult, se poate pune problema reproiectării bazei de date şi/sau a aplicaţiilor. PBD –curs- Ionescu Augustin-Iulian
Ciclul de viață al bazelor de date relaționale PBD –curs- Ionescu Augustin-Iulian
Întrebări? PBD –curs- Ionescu Augustin-Iulian