proiectarea bazelor de date

25
1

Upload: sakura

Post on 09-Jan-2016

37 views

Category:

Documents


0 download

DESCRIPTION

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; - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: PROIECTAREA  BAZELOR DE DATE

1

Page 2: PROIECTAREA  BAZELOR DE DATE

Ciclul de viață al unui proiect

Page 3: PROIECTAREA  BAZELOR DE DATE

Tematica

modelul cascadă; modelul V; fazele proiectarii unei baze de date.

3PBD –curs- Ionescu Augustin-Iulian2010

Page 4: PROIECTAREA  BAZELOR DE DATE

Modelul cascadă

4PBD –curs- Ionescu Augustin-Iulian2010

Analiza cerintelor

verificare

specificatii

proiectare

implementare

testare

integrare

testare

mentenanta

Actualizare cerinte

verificare

verificare

verificare

Fig. 2.1

Page 5: PROIECTAREA  BAZELOR DE DATE

Modelul cascadă

analiza cerințelor: formularea obiectivelor proiectului;

identificarea restricțiilorspecifice 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.

5PBD –curs- Ionescu Augustin-Iulian2010

Page 6: PROIECTAREA  BAZELOR DE DATE

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.

6PBD –curs- Ionescu Augustin-Iulian2010

Page 7: PROIECTAREA  BAZELOR DE DATE

Modelul cascadă –avantaje şi dezavantajeAvantaje:

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ță.

7PBD –curs- Ionescu Augustin-Iulian2010

Page 8: PROIECTAREA  BAZELOR DE DATE

Modelul V

8PBD –curs- Ionescu Augustin-Iulian2010

Definirea cerintelor

Proiectarea functionala

Proiectarea tehnica

Specificare componente

Test de acceptare

Testarea sistemului

Testarea pentru integrare

Testarea componentelor

Generare cod

Fig. 2.2

Page 9: PROIECTAREA  BAZELOR DE DATE

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.

9PBD –curs- Ionescu Augustin-Iulian2010

Page 10: PROIECTAREA  BAZELOR 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.

10PBD –curs- Ionescu Augustin-Iulian2010

Ciclul de viață al unei baze de date

Page 11: PROIECTAREA  BAZELOR DE DATE

11PBD –curs- Ionescu Augustin-Iulian2010

Ciclul de viață al unei baze de date

Studiul de fezabilitate

Testarea si darea in folsinta

mentenanta

Implementarea

Proiectarea fizica

Proiectarea logica

Proiectarea conceptuala

Fig. 2.3

Page 12: PROIECTAREA  BAZELOR DE DATE

12PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 13: PROIECTAREA  BAZELOR DE DATE

13PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 14: PROIECTAREA  BAZELOR DE DATE

14PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 15: PROIECTAREA  BAZELOR DE DATE

15PBD –curs- Ionescu Augustin-Iulian2010

Propunere arhitectură pentru SI - ACE

BD1DB 1

BD1DB 2

BD1DB 3

BD1DW

intranet

decanat

cat1

Cat 5

...

sindicat

internet

BD1DB 4

DBA 1

DBA 2DBA3

studenti

studenti

Cadre didactice

Administrator camin 10

absolventiElevi liceu

rectoratRestul lumii

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

Page 16: PROIECTAREA  BAZELOR DE DATE

16PBD –curs- Ionescu Augustin-Iulian2010

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ă pentruproiectarea logică;dialogul cu beneficiarii;reproiectarea bazei de date.

Observație! Modelul conceptual este frecvent înglobat în caietul de sarcini.

Page 17: PROIECTAREA  BAZELOR DE DATE

17PBD –curs- Ionescu Augustin-Iulian2010

Proiectarea conceptuală – model minimal

tblPersoane

tblAdresePersoane tblTelefoane

tblStudenti tblMasteranzi tblDoctoranzi tblColaboratoritblCadreDidactice tblPersonalColateral

tblDistricte

tblTara

tblLimbiStraine

tblDiscipline

tblFacultate

tblDomenii tblSpecializari tblOptiuni

tblPosturi

tblExameneLicenta tblExameneMast

tblCategorii tblFunctiiBazatblGradeDidactice

tblLicee

tblConectare

tblRepartizarePosturi

tblDistribuire

tblFacultatiAbsolvite

tblCatedre

tblStudiiParalele

tblJoburi

tblCompetente

tblCadreDidactice

tblSituatiiSpeciale

tblFacultate

tblCursuriSpecializare

tblDoctorate

tblCarti

tblEdituri

tblAutori

tblAutoriArticole

tblArticoletblAutoriLucrari

tblLucrariStiintifice

tblMaterialeInternet

tblTitluStiintific

tblPublicatiitblManifestari

Stiintifice

Fig. 2.5

Page 18: PROIECTAREA  BAZELOR DE DATE

18PBD –curs- Ionescu Augustin-Iulian2010

Proiectarea conceptuală – model minimal

vwCatedreACEactuale

tblCatedre

vwCadreDidactice

tblCadreDidacticetblPersoane tblGradeDidactice

tblFacultati tblTitluStiintific

tblCategorii

tblFunctiiBaza

vwCadreDidacticeACE

vWCatedreACEactuale

vwCadreDidactice

tblRepartizarePosturi

tblPosturi

vwStudentiLicenta

tblPersoane

tblStudenti tblOptiuni

tblSpecializari

tblDomenii

tblFacultati

vwPlanificareExamene

tblDiscipline tblSpecializaritblExameneLicenta

tblNoteLicenta

tblNoteLicenta vwStudentiLicenta

vwPlanificareExamene

vwStructuraPost

tblDisciplinetblDistribuire

tblPosturitblAlteActivitati

vwMasteranzi

tblPersoane

tblMasteranzi tblOptiuni

tblSpecializari

tblDomenii

tblFacultati Fig. 2.6

Page 19: PROIECTAREA  BAZELOR DE DATE

19PBD –curs- Ionescu Augustin-Iulian2010

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! 1. Pentru cazurile mai simple se poate trece direct de la modelul conceptual la scrierea

scripturilor pentru crearea obiectelor bazei de date.2. Pentru majoritatea SGBD moderne există programe speciale de proiectare asistată

de caculator, care permit editarea modelului conceptual şi generarea automată a codului DDL.

Page 20: PROIECTAREA  BAZELOR DE DATE

20PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 21: PROIECTAREA  BAZELOR DE DATE

21PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 22: PROIECTAREA  BAZELOR DE DATE

22PBD –curs- Ionescu Augustin-Iulian2010

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).

Page 23: PROIECTAREA  BAZELOR DE DATE

23PBD –curs- Ionescu Augustin-Iulian2010

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.

Page 24: PROIECTAREA  BAZELOR DE DATE

24PBD –curs- Ionescu Augustin-Iulian2010

Ciclul de viață al bazelor de date relaționale

Stabilirea cerintelor informationale

Determinarea cerintelor

Modelare conceptuala

Transformarea in tabele

Normalizare

Integrarea vederilor

mentenanta

implementare

denormalizare

Selectare indecsi

Proiectarea logica

Proiectarea fizica

vedere unica

vedere multipla

implementare

restrictii speciale

altfel

renuntareal

tfel

Page 25: PROIECTAREA  BAZELOR DE DATE

25PBD –curs- Ionescu Augustin-Iulian2010