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

baze de date



+ Font mai mare | - Font mai mic



Proiectarea Bazelor de Date

1 Proiectarea logica a bazei de date

Activitatile fazei de proiectare detaliata privesc componentele principale ale oricarui sistem informatic, respectiv baza de date, interfetele (formulare, rapoarte, meniu) si programele. Desfasurarea acestor activitati nu este secventiala ci, mai curand, paralela si iterativa. Baza de date trebuie sa reflecte specificatiile de proiectare privind formularele si rapoartele din sistem, iar proiectarea formularelor si rapoartelor nu poate fi finalizata fara ca schema bazei de date sa fie clar definita. Totusi, baza de date reprezinta "nucleul" oricarui sistem informatic, in jurul sau "gravitand" celelalte componente, motiv pentru care ne vom opri mai intai asupra problematicii proiectarii bazelor de date.



Principalele activitati care formeaza ciclul de viata al bazei de date sunt: proiectarea schemei logice, proiectarea fizica a bazei de date si alocarea datelor in retea, implementarea si intretinerea bazei de date.

1.1 Aplicarea principiului abstractizarii in modelarea datelor

Principiul abstractizarii reprezinta unul din principiile fundamentale aplicate in proiectarea sistemelor informatice. Dupa cum vom vedea ulterior, el este utilizat si la proiectarea arhitecturii programelor. Aplicarea sa permite stapanirea complexitatii sistemului prin luarea in considerare in mod esalonat a diferitelor aspecte ale proiectarii sistemului. La un moment dat, analistii se vor concentra doar asupra anumitor aspecte, ignorandu-le pe celelalte, dar care vor fi luate in considerare ulterior.

Concret, aplicarea principiului abstractizarii in modelarea datelor presupune considerarea a trei niveluri de abstractizare, prezentate in figura 5: conceptual, logic si fizic.

Corespunzator celor trei niveluri pot fi identificate trei activitati de baza in proiectarea bazelor de date:

analiza cerintelor sistemului si modelarea conceptuala a datelor;

proiectarea logica a bazei de date;

proiectarea fizica a bazei de date.

Prin modelarea conceptuala a datelor se urmareste construirea unui model al datelor care sa asigure transpunerea exacta a realitatii din domeniul analizat, fara a lua in considerare cerintele specifice unui model de organizare a datelor (cum este modelul relational), criteriile de calitate privind organizarea datelor, cerintele nefunctionale ale sistemului si criteriile de performanta privind stocarea si accesarea datelor. In acest sens, se construieste diagrama entitate-relatie, care evidentiaza entitatile de date din sistem, atributele acestora, precum si legaturile dintre entitati. Modul in care vor fi implementate legaturile dintre entitati, de exemplu, nu intereseaza in acest moment, atentia fiind indreptata doar spre identificarea si descrierea lor.

Proiectarea logica presupune organizarea datelor in tabele si coloane, conform regulilor modelului relational (acesta fiind modelul cel mai popular de organizare a datelor). Dupa cum se poate observa din figura 5, proiectarea logica a bazei de date presupune transformarea modelului conceptual al datelor prin aplicarea regulilor si conceptelor specifice modelului relational si a criteriilor de calitate aplicabile modelului logic al datelor, aspecte ignorate in etapa modelarii conceptuale. Scopul urmarit consta in obtinerea unui model relational pur, adica neafectat de cerintele nefunctionale si cele de performanta in accesarea datelor, nici de facilitatile oferite de diferite SGBD-uri existente pe piata. Toate aceste aspecte sunt inglobate in etapa proiectarii fizice a bazei de date.


Figura 5. Nivelurile de abstractizare a datelor

Principalele criterii de calitate utilizate in evaluarea modelului logic al datelor sunt:

Completitudine. Modelul logic trebuie sa contina toate datele necesare prelucrarilor si obtinerii iesirilor din sistem.

Neredundanta. Redundanta datelor genereaza probleme privind integritatea datelor (vezi anomaliile la actualizare) si solicita procese suplimentare pentru intretinerea datelor (vor trebui actualizate toate copiile existente pentru o data). De aceea, modelul logic trebuie sa fie format dintr-un set de tabele normalizate.

Reutilizabilitate. Schema logica a bazei de date trebuie conceputa astfel incat ea sa satisfaca nu doar cerintele anticipate ale sistemului ci si cele ale altor potentiali utilizatori sau eventualele cerinte viitoare care apar inevitabil. Daca datele sunt organizate avand in minte doar cerintele actuale, atunci reorganizarea datelor determinata de aparitia unor noi cerinte functionale va fi foarte costisitoare.

Stabilitate si flexibilitate. Aceste criterii vizeaza usurinta adaptarii bazei de date la modificarile ulterioare ale cerintelor sistemului. Un model al datelor este considerat stabil daca eventualele modificari ale cerintelor functionale nu determina modificarea sa. Schema bazei de date va fi considerata mai stabila sau mai putin stabila in functie de amploarea modificarilor generate de schimbarea cerintelor. Flexibilitatea unui model al datelor este data de usurinta extinderii sale pentru inglobarea noilor cerinte cu impact minim asupra structurii existente.

Simplitate si eleganta. Modelul logic al datelor trebuie sa ofere o clasificare naturala si eleganta a datelor. De exemplu, este inadecvata existenta tabelelor Furnizor si Client atat timp cat unii parteneri de afaceri pot fi atat furnizori, cat si clienti. Aceeasi situatie poate apare in cazul facturilor, fiind neeleganta conceperea a doua tabele, una pentru facturi emise si alta pentru facturi primite.

Modelul fizic al datelor, rezultat in urma proiectarii fizice, este invizibil utilizatorilor si programatorilor. El specifica modul de stocare fizica si accesare    a datelor, utilizand facilitatile oferite de un anumit SGBD. De exemplu, date din tabele diferite pot fi stocate fizic impreuna pentru a putea fi transferate in memoria calculatorului printr-o singura operatiune. Luarea in considerare a acestor aspecte implica "alterarea" modelului logic (adica a modelului relational pur), presupunand uneori prejudicierea aspectelor calitative amintite anterior. Solutia ideala ar presupune obtinerea performantelor cerute in conditiile pastrarii aspectelor calitative ale modelului logic.

Obiectivul principal al proiectari fizice consta in optimizarea performantelor bazei de date in ce priveste stocarea fizica si accesul la date. In unele situatii timpii de acces ceruti pot fi obtinuti prin intermediul indecsilor insa, de multe ori este necesara modificarea structurii logice a datelor prin procesul denormalizarii. Daca la proiectarea schemei logice s-a urmarit prezervarea integritatii datelor prin procesul de normalizare, acum poate deveni necesara introducerea unui anumit nivel de redundanta a datelor sau introducerii in schema bazei de date a campurilor calculate. Principala provocare consta in gasirea compromisului optim intre usurinta pastrarii integritatii datelor si performantele bazei de date. Denormalizarea implica selectarea proceselor dominante (interogare si actualizare a datelor) pe baza frecventei, volumului de date si prioritatii acestora, evaluarea costurilor totale ale operatiunilor de actualizare, interogare si stocare a datelor, precum si evaluarea efectelor determinate de pierderea integritatii datelor.

De asemenea, la proiectarea fizica vor fi luate in considerare si facilitatile oferite de SGBD-ul ales. Diferentele dintre diferite SGBD-uri se refera adesea la tipurile de date suportate, reprezentarea sau nu a relatiilor dintre clase si subclase, implementarea relatiilor recursive.

Prin urmare, schema logica a bazei de date poate diferi, mai mult sau mai putin, de schema fizica a bazei de date.

1.2 Demersul proiectarii bazelor de date

Proiectarea schemei logice a bazei de date poate fi realizata in mai multe moduri. Abordarea traditionala, aplicata in special bazelor de date relationale, presupune constituirea relatiei universale prin reunirea tuturor datelor elementare (atribute) identificate in faza de analiza si repartizarea lor in tabele pe baza analizei dependentelor dintre atribute (dependente functionale, dependente multivaloare si de jonctiune) si aplicarea procesului de normalizare. Aceasta abordare a inregistrat unele succese in cazul bazelor de date de dimensiuni mici si medii, insa ea devine foarte greoaie in cazul bazelor de date de dimensiuni mari si foarte mari.

Introducerea modelului entitate-relatie (ER) a determinat reorientarea specialistilor catre o noua abordare in proiectarea bazelor de date. Modelarea conceptuala a datelor cu ajutorul diagramelor entitate-relatie (DER) a fost descrisa prima data in lucrarile lui P.P. Chen, publicate in 1976, desi primele incercari de formalizare sunt inregistrate in anii '60 si apartin lui Charles Bachman. Ulterior, modelul lui Chen a inregistrat numeroase modificari si extensii. Simplitatea, usurinta invatarii si posibilitatea formalizarii cerintelor sistemului asa cum sunt ele in realitate, independent de optiunile de organizare si tehnologice au sporit vertiginos popularitatea modelului ER inca din anii '80.

Noua abordare presupune, mai intai, modelarea conceptuala a datelor prin construirea diagramei entitate-relatie (DER), care evidentiaza entitatile de date ale sistemului, proprietatile acestora si legaturile dintre entitati. Ulterior, prin aplicarea unor reguli simple, are loc transformarea modelului entitate-relatie in schema logica a bazei de date. Tabelele astfel obtinute sunt in final analizate din perspectiva normalizarii putand rezulta noi tabele.

Utilizarea modelului ER ofera o serie de avantaje fata de abordarea traditionala

reprezinta un util instrument de comunicare intre proiectanti si utilizatorii finali pe parcursul fazelor de analiza si proiectare logica;

este foarte usor de inteles si conceput. In general, prezentarea grafica permite exprimarea unui volum mare de informatii sub o forma compacta, usor de urmarit si inteles;

utilizeaza conceptul de abstractizare, ceea ce reduce considerabil numarul obiectelor luate in considerare la analiza si proiectarea bazei de date. Prin utilizarea notiunii de entitate ca abstractizare pentru datele elementare (atribute) se vor analiza mai putine obiecte (numarul entitatilor de date este mult mai mic decat numarul datelor elementare din sistem) si mai putine relatii intre obiecte (numarul relatiilor dintre entitati este mult mai mic decat numarul relatiilor de dependenta existente intre atribute). Desi datele elementare sunt reprezentate si in aceasta abordare, ca proprietati ale entitatilor, totusi numarul dependentelor ce trebuie analizate este mult redus, fiind luate in considerare doar dependentele la nivelul entitatilor (adica dependentele dintre atributele unei entitati) si nu la nivelul intregii baze de date (adica dependentele dintre atributele relatiei universale).

Existenta unui set complet de reguli de transformare a DER in tabele ale bazei de date. Aceste reguli permit transformarea simpla si rapida a cerintelor informationale ale sistemului, structurate in DER, in baza de date. Majoritatea instrumentelor CASE ofera suport pentru generarea automata a bazei de date in functie de SGBD-ul dorit.

Din cele prezentate rezulta ca exista doua strategii de proiectare a bazei de date:

strategia bottom-up, reprezinta abordarea traditionala si presupune constituirea relatiei universale care urmeaza a fi supusa normalizarii pentru a se obtine tabelele bazei de date;

strategia top-down, presupune construirea DER care va fi apoi transformata intr-un set de tabele prin aplicarea unor reguli. Tabelele astfel obtinute vor fi analizate din perspectiva normalizarii.

Pornind de la aceste doua strategii, pot fi identificate mai multe demersuri de proiectare a bazei de date, mai mult sau mai putin riguroase. Doua dintre ele corespund celor doua strategii, ele fiind descrise pe scurt anterior. Un demers mai riguros presupune combinarea celor doua strategii; se aplica ambele strategii obtinandu-se doua modele logice ale datelor, iar din compararea lor va rezulta schema logica finala a bazei de date. Acest demers presupune parcurgerea urmatorilor patru pasi:

Construirea cate unui model logic al datelor pentru fiecare categorie de utilizatori identificata. Acest pas presupune normalizarea imaginilor asupra bazei de date (formulare si rapoarte) specifice fiecarei categorii de utilizatori.

Integrarea perspectivelor, care presupune combinarea tuturor perspectivelor normalizate ale utilizatorilor si obtinerea schemei globale a bazei de date.

Intocmirea modelului conceptual al datelor pentru intregul sistem si transformarea acestuia intr-un set de tabele normalizate.

Compararea modelului logic consolidat al datelor rezultat prin integrarea perspectivelor utilizatorilor cu cel obtinut prin transformarea DER, in vederea definirii modelului logic final.

In practica, poate fi angajat un alt demers mai simplu de proiectare a bazei de date, constand in transpunerea directa a cerintelor sistemului in modelul logic al datelor, fara parcurgerea unor pasi intermediari. Un asemenea demers poate fi aplicat in cazul bazelor de date de dimensiuni foarte mici sau daca proiectantul are o mare experienta in domeniul problemei. Oricum, alegerea unui demers sau a altuia depinde de complexitatea bazei de date, experienta echipei de proiectare, timpul si resursele financiare disponibile sau cerintele de calitate dorite.

2 Proiectarea logica de detaliu a fisierelor

Structurarea datelor in fisiere este o operatie de definire a structurilor logice, de descriere a continutului informational pe articole. Structurarea logica se prezinta ca un sir de caractere constituit prin concatenarea mai multor elemente informationale.

Proiectarea structurilor logice consta in stabilirea elementelor informationale care compun articole tinandu-se seama de continutul real al intrarilor informationale de rolul fiecarui fisier in procesul prelucrarii. Structura datelor din fisier implica definirea continutului informational al articolelor.

Prin precizarea caracteristicilor logice de utilizare analistul stabileste caracteristicile descriptive specifice datelor si modul lor de existenta si utilizare.

Caracteristica logica a elementului informational

Atribut posibil

Natura datelor

Numerica-alfanumerica-alfabetica

Tipul datelor

Intreg-real-complex

Precizia datelor

Simpla-dubla-extinsa

Marimea datelor

"n" caractere

Factorul de repetitivitate

"n" operatii

Caracteristica principala pe baza careia se stabileste formatul articolelor este factorul de repetitivitate al anumitor elemente informationale din structura. Indicatorii de activitate ai fisierelor sunt obligatoriu de definit si respectat deoarece nivelul lor sunt conditie esentiala a realizarii urmatoarelor operatii:

stabilirea necesarului de suporturi tehnice de date;

estimarea duratelor de exploatare a fisierelor;

planificarea operatiilor de culegere si control.

Indicatori pentru fisiere - cei mai reprezentativi indicatori folositi pentru gestiunea datelor a caror nivele maxime trebuie estimate la momentul proiectarii logice sunt:

n (numarul de articole estimate in perioadele de varf din activitate)

ns (numarul de articole sterse la momentul actualizarii unui fisier)

na (numarul de articole noi adaugate la momentul actualizarii unui fisier

ne (numarul de articole exploatate la momentul unei prelucrari automate)

nm (numarul de articole modificate la momentul actualizarii unui fisier)

Un indicator utilizat frecvent pentru caracterizarea stabilitatii in timp, stabilitate specifica pentru fiecare tip de colectie in parte este ponderea (m) a articolelor actualizate intr-o perioada de timp.

Pentru caracterizarea modului de utilizare al articolelor din fisier, in procesul prelucrarii, se poate calcula indicele de utilizare al articolelor din fisier (Iu)

Proiectarea fizica de detaliu a fisierelor

Caracteristicile fizice la nivel de fisier - vizeaza in principiu asocierea acelor parametrii generali si a acelor atribute reprezentative care descriu cel mai bine proprietatile colectiei de date si mediul lor de stocare, fisierele sunt recunoscute si utilizate de diferite componente din cadrul sistemelor de operare.

Proiectarea structurii bazelor de date - structura bazei de date reprezinta un model al datelor exprimat in concepte specifice unui anumit sistem de gestiune a bazelor de date (SGBD), lucru ce face ca proiectarea 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, functional.

Determinarea legaturilor dintre colectiile de date si a modului de reprezentare a acestora se realizeaza pe baza legaturilor naturale dintre obiectele descrise cu ajutorul entitatilor identificate. Presupunem entitatile "gestiuni" si "materiale", relatiile dintre entitati pot fi de 3 tipuri:

Relatii de tipul unu la unu -atunci cand intr-o gestiune se poate afla un singur material iar un material apartine unei singure gestiuni;

Relatii de tipul unu la multi atunci cand intr-o gestiune se pot afla unul sau mai multe materiale, iar un material apartine unei singure gestiuni.

Relatii de tipul multi la multi atunci cand intr-o gestiune se pot afla unul sau mai multe materiale, iar un material poate apartine uneia sau mai multor gestiuni.

Pentru entitatile gestiuni si materiale, pot exista gestiuni care nu detin nici un material, reprezentand gestiunile de produse finite dar nu poate exista un material care sa nu apartina nici unei gestiuni.

Proiectarea tehnologiilor de prelucrare a datelor

Caracteristicile tehnologiei de prelucrare automata a datelor - se poate defini ca fiind ansamblu de procedee, mijloace si metode utilizate in domeniul prelucrarii automate a datelor, avand ca scop final, obtinerea unor tabele, liste, grafice si alte tipuri de situatii de iesire ce contin informatiile necesare fundamentarii deciziilor, controlul executiei lor si executia unor operatiuni.

Obicectivele urmarite in proiectarea organizarea si functionarea tehnologiei de prelucrare automata a datelor, sunt subordonate obiectivului principal: asigurarea furnizarii din procesul prelucrarii, in timp util, a informatiilor necesare si suficiente de calitate corespunzatoare si cu cost minim pe unitatea de informatie prelucrata si modificata.

Tehnologia de prelucrare automata a datelor trebuie sa asigure realizarea obiectivelor secundare:

utilizarea eficienta a resurselor implicate;

realizarea concordantei intre cerintele concrete si metodele si procedeele utilizate;

asigurarea calitatii informatiei in procesul prelucrarii si pastrarii ei pe parcursul intregului flux.

Operatiile tehnologice in prelucrarea automata a datelor sunt:

operatii tehnologice de pregatire a datelor in vederea prelucrarii lor automate;

operatii tehnologice de prelucrare propriu-zisa a datelor;

operatii tehnologice de redare a rezultatelor obtinute prin prelucrare.

3 Realizarea sistemelor informatice - elaborarea programelor

Obiectivele urmarite

Prezentarea procesului de elaborare a produselor program:

faza 1: Specificatia de realizare a programului;

faza 2: Proiectarea programului si elaborarea schemei bloc;

faza 3: Codificarea programului ;

faza 4: Testarea programelor si efectuarea corectiilor;

faza 5: Elaborarea documentatiei produsului program;

faza 6: Intretinerea si dezvoltarea produsului program.

Cai si mijloace de crestere a productivitatii si eficientei muncii in activitatea de programare:

utilizarea instrumentelor de tip CASE;

prezentarea generatiilor de limbaje de programare.

Modalitati de realizare a programelor

Utilizarea pachetelor de programe aflate in biblotecile de programe - obiectivul central este acela de a folosi cat mai mult produse program existente si de ale incorpora in noul produs program in scopul de economisi efort de realizare, timp si bani.

Realizarea modulelor/ programelor de interfata. Prin realizarea acestor interfete se vor implementa cerintele noilor utilizatori prin adaptarea unor produse program scrise pentru alti beneficiari. Solutia interfetelor valorifica software-ul existent si micsoreaza efortul de programare.

Realizarea programelor originale - faze:

elaborarea specificatiei programului;

proiectarea programului;

codificarea programului;

testarea programului;

intocmirea documetatiei.

Activitati specifice pe faze de realizare

Faza 1. Elaborarea specificatiei programului:

analiza proiectului tehnic;

analiza platformei si software-ului ;

Faza Proiectarea programului:

descompunerea in module a produsului program intr-o abordare de tip top-down;

elaborarea pseudocodului programului;

elaborarea schemei logice de program.

Faza 3. Codificarea programului:

elaborarea graficului de esalonare a realizarii modulelor produsului program si organizarea echipei de programare;

realizarea modulelor program;

Faza 4. Testarea programului:

depanarea erorilor de sintaxa la masa de lucru prin verificarea manuala a listei programului sursa;

testarea programului cu date de test la masa de lucru;

introducerea programului sursa in calculator, compilarea;

rularea programului executabil aferent unui modul cu ajutorul datelor de text si eliminarea erorilor de logica

Faza 5. Intocmirea documentatiei:

prezentarea generala a produsului;

structura generala a produsului;

descrierea bazei de date;

documentatia de programare;

situatii si rezultate finale;

instructiuni de utilizare;

instructiuni de exploatare.

Cai de crestere a eficientei si productivitatii in etapa de realizare a programelor

utilizarea instrumentelor de tip CASE care asigura o automatizare a muncii de programare si o asistare a programatorului pe tot parcursul elaborarii produsului program;

dezvoltarea de software orientat pe obiecte, in care se pune accent nu pe functiunile modulului ci pe legaturile dintre module si proceduri care au fost definite ca obiecte in etapa de proiectare.

Fiecare obiect contine date dar si prelucrarile necesare realizarii functiunilor obiectului.



Politica de confidentialitate | Termeni si conditii de utilizare



DISTRIBUIE DOCUMENTUL

Comentarii


Vizualizari: 2966
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