Scrigroup - Documente si articole

     

HomeDocumenteUploadResurseAlte limbi doc
AccessAdobe photoshopAlgoritmiAutocadBaze de dateCC sharp
CalculatoareCorel drawDot netExcelFox proFrontpageHardware
HtmlInternetJavaLinuxMatlabMs dosPascal
PhpPower pointRetele calculatoareSqlTutorialsWebdesignWindows
WordXml


PROIECTAREA BAZELOR DE DATE - Etapele de realizare a bazelor de date

baze de date



+ Font mai mare | - Font mai mic



Proiectarea bazelor de date

1. Etapele de realizare a bazelor de date



Pentru a realiza o baza de date este necesara parcurgerea unor etape care nu depind de tipul bazei de date create. Aceste etape sunt:

analiza sistemului informatic pentru care se realizeaza baza de date si a cerintelor informationale solicitate de acest sistem;

proiectarea structurii bazei de date (schema conceptuala, externa si interna);

incarcarea datelor in baza de date;

exploatarea si intretinerea bazei de date.

Continutul acestor etape, respectiv activitatile implicate si modul lor de desfasurare depind, in general, de tipul bazei de date precum si de domeniul de activitate pentru care se construieste baza de date. Exista insa o serie de aspecte cu caracter general care nu sunt influentate de specificul unui anumit domeniu de activitate sau de caracteristicile unui anumit tip de baze de date. In continuare vor fi prezentate aceste aspecte generale, aspectele specifice urmand a fi tratate atunci cand vor fi tratate diferite tipuri de baze de date.

Realizarea unei baze de date presupune si folosirea unor metode si tehnici de analiza (tehnica normalizarii relatiilor, a diagramelor de dependenta riguroasa etc.), de programare precum si a unor instrumente de lucru (limbaje de descriere a datelor - LDD, limbaje de manipulare a datelor - LMD etc.) specifice.

Analiza sistemului informatic si a cerintelor sale informationale

Analiza sistemului informatic are ca scop elaborarea unuia sau mai multor modele ale acestui sistem, modele care sa permita ulterior elaborarea structurii bazei de date. Aceasta analiza presupune urmatoarele etape:

analiza componentelor sistemului si a legaturilor (asocierilor) dintre acestea, activitate cunoscuta si sub numele de analiza statica sau structurala, in urma caruia se obtine modelul structural (static) al sistemului;

analiza starilor sistemului si a tranzitiilor posibile intre aceste stari, in raport de anumite evenimente. Aceasta este asa numita analiza temporala (comportamentala), prin care se obtine modelul dinamic (sau temporal) al sistemului;

analiza cerintelor informationale, respectiv a transformarilor de date (a tranzactiilor) din cadrul sistemului prin care sunt satisfacute cerintele informationale asociate sistemului. In urma acestei activitati se obtine modelul functional al sistemului informatic analizat;

integrarea modelelor sistemului informatic (structural, dinamic si functional) in scopul corelarii si completarii lor.

1. Analiza structurala a sistemului informatic. Tehnica diagramelor entitate-asociere

Analiza structurala a sistemului informatic are ca obiectiv evidentierea componentelor (obiectelor) din cadrul sistemului, pentru care urmeaza sa se colecteze si sa se memoreze date in cadrul bazei de date, precum si evidentierea legaturilor dintre aceste componente.

Exista astazi mai multe tehnici de analiza structurala, cea mai utilizata dintre acestea fiind tehnica entitate-asociere. Aceasta tehnica permite constituirea modelului structural sub forma unei diagrame entitate-asociere prin parcurgerea urmatorilor pasi:

- identificarea componentelor (entitatilor) din cadrul sistemului informatic analizat;

- identificarea asocierilor dintre entitati si calificarea acestora;

- identificarea atributelor aferente entitatilor si asocierilor dintre entitati;

- stabilirea atributelor de identificare a entitatilor.

Identificarea componentelor sistemului informatic

Componentele sistemului informatic sunt entitati (obiecte) care au anumite proprietati si care fac schimb de informatii cu alte entitati ale sistemului. Ele sunt reprezentate in cadrul diagramei entitate-asociere prin blocuri dreptunghiulare.

Considerand activitatea dintr-o institutie de invatamant superior se pot identifica urmatoarele entitati:

- cadre didactice (CADRE_DIDACTICE);

- studenti (STUDENTI);

- personal didactic auxiliar (PERS.DID.AUX.);

- personal administrativ (PERS.ADMIN.);

- serviciul administrativ (SERV.ADMIN.);

- serviciul personal (SERV.PERS.);

- serviciul contabilitate (SERV.CONTAB.);

- serviciul social (SERV.SOCIAL).

Fiecare entitate poate prezenta in cadrul sistemului mai multe instante (realizari). In urma acestei etape se elaboreaza o prima forma a diagramei entitate-asociere, forma prezentata in figura urmatoare.


Fig. 1. Reprezentarea entitatilor in diagrama entitate-asociere

Identificarea asocierilor dintre entitati si calificarea acestora

Componentele unui sistem nu sunt decat arareori izolate, intre acestea stabilindu-se legaturi (asocieri). Spre exemplu, intre entitatile STUDENTI si SERV.SOCIAL exista o asociere, in sensul ca serviciul social pune la dispozitia studentilor locuri de cazare in camin.

Legaturile dintre entitati sunt reprezentate prin arce neorientate, care fac legatura intre nodurile ce reprezinta entitatile participante la asociere.

Semnificatia legaturii se exprima printr-un nume acordat legaturii si se reprezinta cu ajutorul unui nod eticheta in forma de romb, plasat ca nod intermediar intre entitati.

Tipul (forma) legaturii se exprima cu ajutorul cardinalitatii.

Cardinalitatea unei legaturi reprezinta numarul minim si numarul maxim de realizari (instante) de entitate care pot fi asociate cu o realizare a partenerului de asociere. Cardinalitatea se exprima prin perechi de numere, cate o pereche pentru fiecare entitate din cadrul legaturii.


Fig. Reprezentarea unei legaturi (asocieri) intre doua entitati cu mentionarea semnificatiei si a cardinalitatii

In figura de mai sus este prezentat modul de reprezentare al unei legaturi cu mentionarea semnificatiei legaturii si a cardinalitatii acesteia. Cardinalitatea legaturii de mai sus se poate interpreta astfel:

Serviciul social este obligat sa asigure, in limita locurilor disponibile in camine, locuri de cazare pentru toti studentii care solicita acest lucru chiar daca este vorba doar de un singur student;

Pot solicita locuri de cazare in camine un numar de studenti pana la numarul maxim de studenti care locuiesc in alte localitati, fiind posibila si situatia in care nici un student nu solicita cazare in camin.

Legaturile (asocierile) intre entitati pot fi de mai multe tipuri si anume:

1. Dupa cardinalitatea asocierii putem avea doua situatii, functie de gradul asocierii, respectiv obligativitatea participarii entitatilor la asociere.

Dupa gradul asocierii (valorile maxime ale cardinalitati) avem:

asocieri de tipul "unu la unu". Aceasta inseamna ca cel putin o realizare a fiecarei entitati trebuie sa participe la asociere.

asocieri de tipul "unu la multi". In acest caz o realizare a unei entitati are legaturi cu mai multe realizari ale celeilalte entitati care participa la asociere.

asocieri de tipul "multi la multi", caz in care mai multe realizari ale unei entitati participante la legatura se asocieza cu mai multe realizari ale celeilalte entitati.

Dupa obligativitatea participarii entitatilor la asociere (minimele cardinalitatii) avem:

asocieri partiale; la care entitatile nu sunt obligate sa participe (deci pot avea valoarea minima a cardinalitatii zero);

asocieri totale sau complete; cand cel putin o realizare a fiecarei entitati trebuie sa participe la sociere.

Dupa numarul de entitati distincte care participa la asociere avem:

asocieri binare; care se realizeaza intre doua entitati distincte;

asocieri recursive; asocieri ale entitatilor cu ele insele;

asocieri complexe; asocieri realizate intre mai mult de doua entitati distincte.

3. Dupa semnificatia lor asocierile se pot clasifica intr-o multitudine de categorii datorita semnificatiilor extrem de variate in cadrul unui anumit sistem informatic. In cadrul analizei structurale este necesar sa fie identificate si analizate asocierile dintre entitatile aflate pe nivele de abstractizare diferite, mai precis asocierile de tipul "este un" si "este continut in".

Asocierile de tipul "este un"

Entitatile puse in evidenta in cadrul primei etape de analiza structurala pot prezenta diferite grade de abstractizare, deci se pot plasa pe diferite nivele in cadrul schemei de clasificare a entitatilor. In acest sens exista entitati generice (clase), obtinute printr-un proces de generalizare a entitatilor cu anumite caracteristici comune, numite subclase.

De exemplu, membrii unei universitati reprezinta o entitate clasa, care genereaza entitatile STUDENTI si ANGAJATI, ultima generand, la randul ei, entitatile CADRE DIDACTICE, PERS.DID.AUXILIAR si PERS.ADMINISTRATIV.

Asocierea de tip "este un" se prezinta intotdeauna ca o asociere partiala de tip "unu la unu".

Asocierile de tipul "este continut in"

Asocierile de tipul "este continut in" exprima un proces de agregare, de grupare a mai multor entitati intr-o entitate de nivel superior. Spre deosebire de tipul "este un", asocierea "este continut in" este calificata, dupa cardinalitate drept asociere de tip "unu la multi" sau "multi la multi", totala sau partiala.

Identificarea atributelor aferente entitatilor si asocierilor dintre entitati

Atributele exprima caracteristici, proprietati ale componentelor sistemului informatic analizat sau ale asocierilor (legaturilor) dintre aceste componente.

In cadrul diagramei entitate-asociere, atributele sunt figurate prin blocuri ovale, legate de entitatea, respectiv asocierea pe care o descriu intr-un mod specific, in functie de tipul atributelor. Ex.:


Atributele pot fi de mai multe tipuri, dupa cum urmeaza:

Atribut compus (bloc). Acesta este un atribut format din cel putin doua alte atribute. Valoarea sa este reprezentata de valorile atributelor componente. Ex.:


Atribut calculat (dedus). Acesta reprezinta un atribut a carui valoare nu este cunoscuta direct, ci se calculeaza pe baza valorilor altor atribute (de exemplu, atributul VALOARE, calculat ca produs intre cantitate si PreT).

Atribut simplu; atribut care nu este nici compus si nici calculat. Valorile sale sunt valori atomice, adica nu mai pot fi descompuse in elemente componente.

Atribut repetitiv multivaloare. Acesta este un atribut format din mai multe valori care se repeta de mai multe ori pentru aceeasi entitate. De exemplu : entitatea STUDENT poate fi caracterizata de atributele simple NUME si GRUPA precum si de atributul repetitiv DISCIPLINA, NOTA care este identic pentru toate disciplinele audiate de un student.

Atribut de identificare (cheie). Reprezinta un atribut care se caracterizeaza prin unicitatea valorii sale pentru fiecare instanta a entitatii careia ii apartine.

Atributele de identificare au un rol aparte in organizarea si manipularea informatiilor din baza de date. Stabilirea atributelor de identificare pentru entitatile din cadrul sistemului informatic analizat necesita examinarea mai intai a capacitatii fiecarui atribut de a se constitui drept atribut de identificare (cheie).

Un atribut poate fi atribut de identificare daca indeplineste o serie de cerinte si anume:

ofera o identificare unica a realizarilor (instantelor) de entitate;

poseda o semnificatie clara;

este usor de utilizat;

este scurt.

Pentru o aceeasi entitate pot exista mai multe atribute care pot servi drept atribute de identificare, adica pot exista mai multe chei candidate.

Selectarea unuia dintre candidatii cheie drept atribut de identificare a entitatii (cheie) se realizeaza astfel:

Se determina atributele care potential pot constitui atribute de identificare a entitatii, deci care respecta cerintele mentionate anterior si care poarta numele de candidati cheie. Daca nu exista astfel de atribute se introduce un nou atribut (sau grup de atribute) drept candidat cheie.

Daca exista un singur candidat cheie, se va selecta acesta drept atribut de identificare a entitatii.

Daca exista mai multi candidati cheie, se selecteaza unul, cu ajutorul unor euristici, precum:

- se prefera atributele ale caror valori sunt mai putin volatile;

- se prefera atributele ale caror valori sunt mai scurte.

Analiza dinamica (de comportament) a sistemului informatic

Analiza dinamica are drept scop explicarea comportamentului elementelor componente ale sistemului informatic analizat. In urma acestei analize se obtine modelul dinamic al sistemului analizat.

Construirea modelului dinamic presupune urmatoarele etape:

identificarea starilor in care se pot afla componentele sistemului;

identificarea evenimentelor care determina trecerea unei componente dintr-o stare in alta;

stabilirea succesiunii (fluxului) de evenimente si construirea unei diagrame care sa reflecte tranzitiile de stare pentru componentele sistemului (diagrama de flux a evenimentelor).

La realizare diagramei de flux a evenimentelor este necesar sa se tina cont de restrictiile dinamice ale sistemului care servesc la identificarea tranzitiilor admisibile intre doua stari.


Fig. 3. Starile unei resurse de productie (utilaj, sectie etc.) si tranzitiile intre aceste stari

In figura de mai sus sunt prezentate starile posibile ale unei resurse de productie generice. Particularizarea acestui model pentru un depozit de materii prime este prezentata in figura urmatoare.


Fig. 4. Modelul dinamic al unui depozit de materii prime privit ca resursa de productie

3. Analiza cerintelor informationale (analiza functionala a sistemului)

Analiza cerintelor informationale are drept scop determinarea transformarilor de date care se produc in cadrul sistemului informatic analizat, in scopul satisfacerii cerintelor informationale aferente acestuia. Transformarile de date (tranzactiile) se vor reprezenta sub forme unei diagrame de flux a prelucrarilor (modelul functional), in care nodurile reflecta procesele de prelucrare informationala, iar arcele reflecta fluxurile informationale.

In cadrul analizei functionale accentul se deplaseaza de la realitatea analizata catre cerintele informationale ale utilizatorilor, cerinte a caror satisfacere constituie obiectivul realizarii bazei de date.

Construirea modelului functional presupune parcurgerea urmatoarelor etape:

identificarea datelor de intrare si a datelor de iesire din sistem;

construirea diagramelor de flux, prin care sunt reflectate legaturile procedurale dintre intrari si iesiri;

identificarea restrictiilor;

precizarea criteriilor de optimizare.


In figura urmatoare sunt prezentate doua modele functionale partiale, primul se refera la cautarea pretului unui articol dintr-un nomenclator de articole, iar al doilea la tranzactiile (transformarile de date) care se fac pentru a opera o modificare intr-un cont bancar al unui client.

Fig. 5. Modele functionale partiale

4. Integrarea modelelor sistemului informatic analizat

Analiza sistemului informatic se finalizeaza prin integrarea modelelor structural, dinamic si a celui functional.

Modelul structural si cel dinamic sunt obtinute prin investigarea sistemului real a proprietatilor intrinseci, statice si dinamice ale componentelor acestui sistem, proprietati care sunt independente de aplicatiile care opereaza asupra lor.

Modelul functional este rezultatul analizei cerintelor informationale ale utilizatorilor, mai precis a tranzactiilor (aplicatiilor) prin care pot fi satisfacute aceste cerinte.

Perspectiva diferita din care este realizata analiza explica de ce rezultatele obtinute pot sa difere fiind necesara o coordonare, deci o integrare a lor.

In cadrul etapei de integrare a modelelor sistemului se stabileste in ce masura modelul structural si cel dinamic satisfac necesitatile diferitelor aplicatii, verificandu-se completitudinea (existenta elementelor informationale solicitate) si consistenta lor (in ce masura componentele modelelor sunt necesare si suficiente in raport cu procesele de prelucrare). Se verifica daca relatiile dintre componentele sistemului sunt stabilite in mod corespunzator, pentru a face posibila regasirea informatiilor din mai multe entitati. Se determina, de asemenea, daca legaturile dintre entitati asigura coerenta informatiilor, posibilitatea efectuarii de actualizari concomitente asupra datelor redundante.

Se urmareste ca toate elementele informationale participante la diferitele tranzactii sa fie asignate, ca atribute ale diferitelor entitati.

Pe baza acestei analize integrate se efectueaza adaugarile si/sau corelarile necesare intre modelele sistemului.

In final se ajunge ca modelul structural si cel dinamic sa nu mai fie complet independente de aplicatii, iar modelul functional sa nu mai fie orientat exclusiv pe aplicatii.

3. Proiectarea structurii bazei de date

Modelele obtinute in urma analizei sistemului informational sunt modele ale datelor despre sistem. O caracteristica esentiala a acestor modele (denumite si modele conceptuale sau semantice) este faptul ca sunt independente de instrumentul, respectiv SGBD-ul prin intermediul caruia devin operationale.

Etapa de analiza a sistemului informatic este important sa se realizeze independent de un SGBD specificat. Orientarea pe conceptele proprii unui anumit SGBD prezinta numeroase dezavantaje cum sunt:

schimbarea SGBD-ului impune reproiectarea Bazei de Date;

conceptele tehnice ale SGBD-ului pot influenta negativ activitatea de analiza si modelare, prin restrictii impuse de acesta, care pot incuraja sau descuraja anumite reprezentari;

fixand ca punct de plecare facilitatile unui SGBD, utilizatorul neinformatician care nu stapaneste acest SGBD nu isi poate exprima cerintele in deplina cunostinta de cauza.

Trecerea la proiectarea structurii bazei de date impune luarea in considerare a SGBD-ului cu ajutorul caruia va fi implementata si exploatata baza de date. Acesta deoarece baza de date reprezinta un model al datelor exprimat cu ajutorul conceptelor specifice unui anumit SGBD, ceea ce face ca proiectarea structurii bazei de date sa reprezinte transpunerea modelelor conceptuale in termenii unui model al datelor suportat de un anumit tip de SGBD (model ierarhic, retea, relational, orientat obiect etc.).

Etapa de proiectare a structurii bazei de date consta in urmatoarele activitati:

alegerea SGBD-ului care va fi utilizat pentru implementarea si exploatarea bazei de date;

proiectarea schemei conceptuale a bazei de date;

proiectarea schemei externe (subschemei) a bazei de date;

proiectarea schemei interne (de memorare) a bazei de date.

Deoarece aceste activitati sunt puternic influentate de tipul bazei de date care se proiecteaza, in continuare sunt prezentate aspectele generale, valabile indiferent de tipul bazei de date proiectate. Aspectele particulare urmeaza a fi prezentate atunci cand vor fi prezentate diferite tipuri de baze de date.

3.1. Alegerea sistemului de gestiune a bazei de date

Alegerea unui SGBD presupune realizarea urmatoarelor activitati:

Stabilirea cerintelor utilizatorilor, sub aspectul:

tipurilor de aplicatii dorite;

timpului de raspuns;

confidentialitatii datelor;

securitatii datelor;

usurintei de utilizare si altele.

Stabilirea cerintelor de ordin tehnic privind realizarea bazei de date, cum sunt:

portabilitatea SGBD-ului, adica posibilitatea folosirii SGBD-ului pe diferite sisteme de calcul;

portabilitatea colectiilor de date si a programelor. Aceasta inseamna ca datele pregatite cu ajutorul unui calculator sa poata fi transferate direct pe alt tip de calculator, impreuna cu programele aferente, fara alte operatii auxiliare;

facilitatile de incarcare, exploatare si intretinere a bazei de date care trebuiesc asigurate (modalitatile de descriere a datelor, tehnicile de organizare si regasire a datelor etc.) si altele.

3. Stabilirea cerintelor de ordin economic, privind:

incadrarea in bugetul alocat pentru realizarea bazei de date;

timpul necesar pentru pregatire utilizatorilor si trecerea la exploatarea curenta a bazei de date.

. Ierarhizarea cerintelor de la punctele anterioare, in functie de importanta (prioritatea) acordata fiecarei cerinte in parte.

. Analiza comparativa a SGBD-urilor disponibile si/sau posibil de achizitionat, in functie de caracteristicile pe care le prezinta aceste SGBD-uri.

6. Stabilirea corespondentei intre cerintele formulate la punctele 1-3 si caracteristicile diferitelor SGBD-uri analizate, pentru a determina masura in care diferitele SGBD-uri analizate permit satisfacerea cerintelor formulate.

. Alegerea propriu-zisa a SGBD-ului care va fi folosit la realizarea bazei de date.

3.2 Proiectarea schemei conceptuale

Proiectarea schemei conceptuale a bazei de date presupune urmatoarele activitati:

stabilirea colectiilor de date si definirea detaliata a continutului acestora;

determinarea legaturilor dintre colectiile de date si a modului de reprezentare a acestora in cadrul schemei conceptuale;

testarea schemei obtinute si revizuirea acesteia, daca este cazul;

descrierea schemei conceptuale in limbajul de descriere a datelor de care dispune SGBD-ul si incarcarea acestei descrieri in baza de date.

La realizarea acestor activitati sunt utilizate, in principal, modelul structural si cel dinamic al sistemului analizat.

Stabilirea colectiilor de date si a continutului acestora

La stabilirea colectiilor de date (a componentelor schemei conceptuale) se pleaca de la entitatile identificate in etapa de analiza a sistemului. Fiecarei entitati ii corespunde, de obicei, o colectie de date in cadrul schemei conceptuale. In aceste colectii vor figura atributele specifice entitatilor plus eventual o serie de atribute pentru exprimarea legaturilor cu celelalte componente ale sistemului real, atribute cunoscute sub numele de chei externe.

Deoarece nu intotdeauna exista o corespondenta stricta intre entitatile din modele semantice si colectiile de date din schema conceptuala a bazei de date si din considerente de ameliorare a lucrului pe aceste colectii de date se poate decide <spargerea> unei entitati in doua sau mai multe colectii de date. Acest lucru duce la o crestere a flexibilitatii de operare cu colectiile de date respective.

"Spargerea" unei entitati in doua sau mai multe colectii de date se realizeaza tinand seama de cerintele informationale ale sistemului si de durata de existenta a datelor in cadrul sistemului. Astfel, datele care sunt solicitate mai des de catre utilizatori, cele care se modifica la intervale reduse de timp sau cele care, desi nu se modifica prea des, sunt solicitate frecvent de catre programe pentru a genera alte date (prin calcul sau in alt mod), pot constitui colectii separate de date pentru a reduce timpul necesar regasirii informatiilor cautate. De exemplu, sa consideram entitatea UTILAJE apartinand unui model al unei unitati de productie. Un utilaj este caracterizat de urmatoarele: denumire tip numar de inventar valoare de achizitionare data achizitiei durata normata de functionare totalul orelor de functionare datele reparatiilor curente planificate etc. Dar nu toate aceste informatii prezinta importanta pentru utilizatori la un moment dat. Acestia pot fi interesati, de exemplu, de caracteristicile generale ale utilajului sau de caracteristicile legate de functionarea sau intretinerea utilajului. Din acest motiv, in cadrul schemei conceptuale a bazei de date pot apare doua sau mai multe colectii de date referitoare la utilajele de productie si anume: un nomenclator de utilaje, o colectie de date referitoare la functionarea utilajelor, o colectie privind reparatiile efectuate sau planificate.

Un alt motiv pentru care apare necesara descompunerea unei colectii de date in doua sau mai multe colectii deriva din legaturile care apar intre atributele unei entitati. Aceste legaturi conduc la dependente intre date datorita carora, la momentul exploatarii bazei de date pot apare o serie de disfunctionalitati, asa numitele "anomalii" de actualizare. Se impune deci reducerea la minimum a dependentelor (conditionarilor) dintre atributele unei colectii de date, lucru realizat, de obicei prin descompunerea colectiei in doua sau mai multe colectii de date cu un numar mai mic de atribute. Cu toate acestea, imbunatatirea performantelor in manipularea entitatilor nu presupune obligatoriu marirea numarului colectiilor de date folosite in cadrul schemei conceptuale. Aceasta deoarece nu se poate admite o crestere nelimitata a numarului de colectii de date, lucru care determina cresterea dificultatilor de localizare si accesare a datelor. Legaturile intre un numar mare de colectii de date impune si cresterea redundantei datelor in cadrul bazei de date si deci o utilizare ineficienta a suportului de memorare.

Rezultatele obtinute prin prelucrari costisitoare efectuate asupra datelor din baza de date pot fi memorate folosind colectii de date special introduse, astfel incat aceste rezultate sa nu fie recalculate ori de cate ori sunt solicitate de utilizatori. Este vorba, bineanteles de informatii solicitate frecvent de catre utilizatori. Prin memorarea acestor rezultate creste redundanta datelor, dar se evita efectuarea repetata a unor calcule complicate.

Pentru scurtarea cailor de acces la date se mai admite un tip de redundanta, si anume cea care apare datorita includerii unor atribute, simultan in mai multe colectii ale bazei de date.

In continuare este prezentat un exemplu referitor la drepturile profesorilor care lucreaza intr-un liceu. Se pot forma doua colectii de date, una cu informatiile privind:

numele angajatului;

salariul de baza;

vechimea;

numarul de ore suplimentare;

numarul de ore de dirigentie etc.

informatii care au un grad ridicat de stabilitate, si alta cu informatii privind:

numele angajatului;

salariul de baza;

sporul de vechime;

numarul de zile lucrate;

numarul zilelor de concediu medical si de odihna;

numarul de ore suplinite;

suma pentru orele suplinite;

restante de plata;

suma dedusa pentru pensie suplimentara si somaj;

impozitul pe salariu;

chirii;

alte retineri;

avans;

restul de plata la lichidare;

informatii care trebuiesc adaugate in baza de date lunar, fie din exterior, fie prin calculul acestora prin program.

Determinarea legaturilor dintre colectiile de date si a modului de reprezentare a acestora

Aceasta se realizeaza, in principiu, pe baza legaturilor dintre entitatile identificate in cadrul etapei de analiza a sistemului si a cerintelor informationale. Este necesar sa se determine, de asemenea si legaturile dintre colectiile care nu au un corespondent direct in entitatile care compun sistemul, dar care la randul lor se afla in asociere, unele cu altele.

Modul de reprezentare a legaturilor dintre colectiile de date depinde de modelul datelor suportatde SGBD. Astfel, modelul ierarhic si cel retea utilizeaza pointeri (adrese de legatura) pentru inlantuirea datelor in cadrul diferitelor colectii.

Modelul relational reprezinta legaturile dintre colectiile de date (relatii) cu ajutorul cheilor externe sau cu ajutorul unor colecti de date distincte. Aceasta reprezentare uniforma a datelor si a asocierilor intre date prin intermediul relatiilor constituie o caracteristica a modelului relational, care confera acestuia o mare simplitate si flexibilitate.

Testarea schemei conceptuale

Testarea schemei conceptuale presupune verificarea completitudinii si consistentei schemei conceptuale, adica determinarea gradului in care schema contine elementele informationale necesare satisfacerii cerintelor informationale ale diferitilor utilizatori si masura in care legaturile stabilite intre aceste elemente informationale reflecta raporturile naturale dintre componentele sistemului real. De asemenea, prin testarea schemei conceptuale trebuie sa se verifice daca redundanta datelor este la un nivel minim si poate fi controlata.

Testarea schemei conceptuale permite identificarea unor eventuale erori de proiectare care fac necesara revizuirea schemei. In acest caz se va relua etapa de proiectare a structurii bazei de date, si, uneori, chiar si etapa de analiza a sistemului si a cerintelor informationale.

Descrierea schemei conceptuale in limbajul de descriere a datelor si incarcarea sa in baza de date

Descrierea schemei conceptuale a bazei de date se realizeaza in limbajul de descriere a datelor de care dispune SGBD-ul folosit. Rezultatul acestei descrieri il constituie proiectul bazei de date sau schema bazei de date.

Compilatorul limbajului de descriere a datelor permite aducerea schemei bazei de date in forma la care aceasta sa poata fi memorata in baza de date.

3.3. Proiectarea schemei externe

Schema externa a bazei de date reprezinta forma sub care apare schema conceptuala pentru utilizatori. Ea este formata din multitudinea viziunilor (vederilor) utilizator. O vedere utilizator reprezinta acea parte din schema conceptuala pe care o poate vedea un anumit utilizator.

Programele de aplicatie opereaza asupra schemei conceptuale prin intermediul schemei externe, avand acces doar la acele elemente care sunt incluse in schema externa.

Folosirea vederilor reprezinta mecanismul prin care sunt satisfacute cererile de informatii ale utilizatorilor (deoarece un utilizator nu este interesat de toate informatiile stocate in baza de date) asigurand totodata si protectia datelor contra accesului neautorizat la date (folosind vederile se limiteaza accesul fiecarui utilizator doar la acele date care ii sunt necesare).

3.4. Proiectarea schemei interne

Schema interna reprezinta modul in care sunt memorate datele pe suport fizic. Schema conceptuala foloseste diferite structuri de date: liniara, arborescenta, retea, relationala in timp ce memorarea datelor pe suport fizic se poate face numai sub forma unei structuri linare. Din aceasta cauza, la proiectarea schemei interne    a bazei de date se pune problema modului in care sa fie liniarizata schema conceptuala.

Metoda de liniarizare a schemei conceptuale depinde de SGBD-ul folosit. Exista astfel SGBD-uri care fac apel la metodele de memorare ale datelor pe suportul fizic de memorare pe care le folosesc si sistemele de operare gazda si SGBD-uri care utilizeaza metode proprii de stocare a datelor pe suportul fizic. Aceste SGBD-uri depind mai putin de sistemul de operare gazda, ceea ce le ofera o portabilitate sporita, comparativ cu SGBD-urile din prima categorie.

4. Incarcarea datelor in baza de date

Aceasta este etapa in care se realizeaza popularea masiva cu date a bazei de date. Desi continutul acestei etape este relativ simplu, fara dificultatea si creativitatea reclamate de activitatile de analiza si proiectare, incarcarea datelor in baza de date reprezinta totusi o activitate dificil de realizat datorita volumului mare de date care se transfera in baza de date de la diferite surse de date.


Fig. 6. Fazele incarcarii datelor in baza de date

Dupa cum se vede in figura de mai sus, sursele de alimentare cu date a bazei pot fi:

documente primare (facturi, bonuri, chitante etc.);

colectii de date, gestionate prin diverse instrumente informatice, de exemplu preluarea datelor dintr-o baza de date creata anterior, folosind un SGBD cu care nu se mai lucreaza in continuare.

Indiferent de sursa datelor, se recomanda ca, in scopul incarcarii bazei de date, sa se constituie colectii temporare de date (fisiere). In situatia in care datele se preiau din documente primare este necesara utilizarea unor colectii temporare pentru a se deplasa activitatea de validare a datelor cat mai devreme in procesul de incarcare a datelor in baza de date. Programele de incarcare a bazei de date, scrise in limbajul de manipulare a datelor de care dispune SGBD-ul trebuie sa contina cat mai putine validari deoarece aceste validari incetinesc mult executia programelor si determina aparitia unor "puncte albe" in baza de date, de exemplu, legaturi neconstituite datorita inexistentei datelor corespunzatoare.

Pe de alta parte, in situatia in care datele se preiau din colectii gestionate prin alte instrumente informatice, este necesara utilizarea colectiilor temporare pentru a se putea adapta cat mai bine structura acestor colectii la modul de organizare a datelor in baza de date. Programele de incarcare vor fi in acest caz mai simple si mai robuste, asigurand un transfer mai rapid al datelor in baza de date.

5. Exploatarea si intretinerea bazei de date

Exploatarea bazelor de date de catre diferiti utilizatori finali are ca scop satisfacerea cerintelor informationale ale acestora. SGBD-urile sprijina utilizatorii finali in exploatrea bazelor de date oferind o serie de mecanisme si instrumente pentru descrierea cerintelor de date, cum ar fi limbaje de manipulare a datelor etc.

Intretinerea bazei de date este o activitate complexa care are ca scop actualizarea datelor din baza de date, recuperarea datelor pierdute accidental, reproiectarea structurii bazei de date si orice alte activitati necesare mentinerii functionalitatii bazei de date. Intretinerea bazei de date este realizata in principal de catre administratorul acesteia.

6. Intrebari pentru verificarea cunostintelor

Care sunt etapele proiectarii unei baze de date ?

Care este obiectivul analizei statice a sistemului informational existent ?

Explicati tehnica diagramelor entitate-asociere.

Definiti cardinalitatea unei legaturi.

Cum se clasifica atributele unei antitati ?

Prin ce se caracterizeaza atributul cheie ?

Care este obiectivul analizei dinamice ?

Care este obiectivul analizei functionale ?

Care sunt etapele proiectarii structurii bazei de date ?

Care sunt activitatile desfasurate pentru alegerea unui SGBD ?

Ce activitati presupune proiectarea schemei conceptuale a bazei de date ?

Din ce este compusa schema externa a unei baze de date ?

Care sunt sursele de date folosite la incarcarea bazei de date ?

Care este scopul activitatii de intretinere a bazei de date ?



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 5070
Importanta: rank

Comenteaza documentul:

Te rugam sa te autentifici sau sa iti faci cont pentru a putea comenta

Creaza cont nou

Termeni si conditii de utilizare | Contact
© SCRIGROUP 2024 . All rights reserved