Documente Academic
Documente Profesional
Documente Cultură
Succesul unui mediu de baze de date este puternic determinat de cât de bine a
fost structurată logic baza de date. Acest capitol introduce concepte de bază
în proiectarea bazelor de date.
31
sistem, analizarea mediilor de calculator gazdă şi de comunicaţii
precum şi a formelor de bază pentru intrări şi ieşiri.
Proiectarea detaliată: identificarea modulelor de codificat, dezvoltarea
algoritmilor detaliaţi, a procedurilor, a controalelor, a fişierelor, a
organizării rapoartelor şi a formelor de intrare.
Programarea: scrierea codului pentru a implementa modulele identificate în
faza de proiectare detaliată şi testarea unităţilor.
Testarea: dezvoltarea datelor de test pentru integrarea sistemului, testerea
sistemului, evaluarea performanţei sistemului şi obţinerea acceptării
pentru sistem.
Conversia: transferarea sistemului în starea de producţie; convertirea
fişierelor în noile formate, conducerea operaţiilor paralele şi
realizarea despărţirii de cel vechi.
Operarea: gestionarea sistemului colectarea de rapoarte de probleme,
oferirea de rapoarte şi de date operaţionale, proiecţia încărcărilor
de lucru.
Documentarea, antrenarea şi gestionarea proiectului se realizează în paralel
cu aceste faze ale ciclului de viaţă.
Definirea
problemei 1
Studiu de fezabilitate
2
Operare 9
Analiza sistemului
Conversie 8
existent 3
Testare 7
Proiectarea
preliminară 4
Programare Proiectarea
6 detaliată 5
32
cu mai “tinere” şi înbunătăţite generări de cod. Ciclul de viaţă al codului
aplicaţiilor sistem este de aproximativ 10 ani, dar în scădere. Datele, ca şi
sistemele au ciclu de viaţă. Când datele se nasc, ele sunt personale, căci sunt
proprietatea persoanei care le-a creat şi sunt complet sub controlul persoanei.
Dacă datele persoanei se dovedesc utile, există o presiune care le face
cunoscute din ce în ce mai multor persoane, aşa că datele personale devin
date partajate. Datele nu mor niciodată. Datele istorice pot fi arhivate, dar ele
nu dispar. Ele nu sunt înlocuite de date noi, cu toate că pot primi roluri
diferite (de ex. arhivare) atunci când noi date sunt achiziţionate. Noile
sisteme de aplicaţii nu sunt create pentru a înlocui datele vechi cu date noi ci
pentru a înbunătăţi modul de prelucrare şi gestionare a datelor. Atunci când
datele sunt partajate, calitatea lor trebuie să fie mai bine controlată. Cu cât o
dată se maturizează, nevoia de control creşte. Cu cât oamenii se încred mai
mult în dată, cu atât devine mai important ca datele să fie protejate, accesibile
şi de o înaltă calitate. Recunoaşterea unui ciclu de viaţă a datelor conduce la
înţelegerea faptului că datele au vieţi distincte de cele ale sistemului construit
pentru a le manipula şi accesa.
33
de date care este formalizată în concordanţă cu o mulţime de reguli. O
schemă este un model, pictat uzual în diagrame şi câteodată însoţit de
descrieri în cuvinte. Abordarea cu trei scheme are trei tipuri de scheme,
fiecare cu un scop specific. În plus, abordările alternative pot fi mapate pe
abordarea cu 3 scheme, ceea ce vom vedea în capitolele următoare.
34
externă şi numai o schemă internă. În exemplul simplificat din capitolul
introductiv am considerat existenţa unei singure scheme interne. Totuşi în
cazul real nu numai că există o multitudine de scheme externe, dar şi numărul
schemelor interne în intreprindere poate fi mai mare. Fiecare schemă externă
poate fi mapată direct pe baza de date. Această soluţie suferă, totuşi, atunci
când oricare din tipurile de schemă se modifică. De exemplu, dacă o bază de
date fizică este restructurată pe disc pentru a oferi o performanţă mai mare,
atunci maparea pe fiecare schemă externă care referă baza de date poate fi
afectată. Dacă o schemă externă este revizuită pentru a prezenta datele într-o
manieră oarecum diferită, atunci maparea pe fiecare din bazele de date
referite poate fi afectată. Folosirea pamării directe schemă internă - schemă
externă previne independenţa între aplicaţii şi implementare. Factorii de
calculator fizic restricţionează astfel modurile în care utilizatorii văd datele
lor. Pentru a permite diferiţilor utilizatori să-şi partajeze resursa de date care
poate fi implementată pe mai multe baze de date fizice, abordarea cu trei
scheme inserează o vedere neutră, integrată între schemele externe şi cele
interne. În termenii abordării cu trei scheme, această vedere este schema
conceptuală sau vederea intreprinderii sau vederea comunităţii.
Vedere utilizator 1
Baza de date A
Baza de date B
Vedere utilizator 2
Baza de date C
35
Schema
externă 1 Schema
internă1
Schema
Schema internăM
externă N
36
leagă de ceea ce este deja cunoscut din schema conceptuală. Rezultatul este o
resursă de date integrată al cărui domeniu este expandat gradat. Resursele de
date ale unei organizaţii nu pot fi integrate toate deodată; sarcina trebuie
executată pe bucăţi, iar schema conceptuală este integratorul.
37
Prototiparea bazei de date. Să notăm buclele de feedback din
ciclul de viaţă din fig.3.4. Buclele de feedback din faza de prototipare permit
modifcarea vederilor utilizator şi a acestor contribuţii la schema conceptuală
înainte de a muta baza de date în starea de producţie. Utilizatorii sunt
puternic imlpicaţi în faza de prototipare, înainte ca baza de date să devină o
declaraţie completă de cerinţe. Aceasta este în contrast cu ciclul de viaţă al
dezvoltării sistemelor convenţionale. care aşteaptă până când toate cerinţele
sunt cunoscute şi abia apoi începe proiectarea. Folosind acest ciclu de viaţă al
proiectului, se pot construi prototipuri şi se pot pune în lucru rapid, de ordinul
zilelor. Ciclul de viaţă lucrează, de asemenea, cu prototipuri de domeniu larg,
în care trebuiesc luni de zile pentru a ajunge din stadiul de iniţiere al
proiectului la o bază de date în lucru. Structura fizică prototip a bazei de date
poate fi modificată astfel încât ea să acopere mai eficient performanţele de
producţie cerute. Modelul său de date logice, totuşi, nu este abandonat ci este
integrat în schema conceptuală şi mapat pe structura fizică, adică pe
versiunea de producţie a schemei interne.
Echipele proiectului. Abordarea bazată pe date în dezvoltarea
bazelor de date cere echipe de proiect compuse atât din personal de
prelucrare date cât şi din utilizatori. Decât să-şi trimită cerinţele lor
departamentului de prelucrare date şi apoi să vadă ce primesc de acolo,
utilizatorii (end-users) ajută la determinarea relaţiilor şi tranzacţiilor de date.
Ei sunt implicaţi în sistem ca şi creatori şi nu numai după ce acesta a fost
dezvoltat, ca şi indivizi ce trebuie să trăiască cu el.
Una dintre cele mai importante caracteristici ale acestui ciclu de viaţă al
dezvoltării este aceea că fiecare proiect nu trebuie să-şi recreeze propria sa
bază de date separată. Mai degrabă, fiecare proiect trebuie să examineze cum
se leagă datele din domeniul său cu datele din schema conceptuală existentă.
Schema conceptuală evoluează după cum apar proiecte adiţionale bazate pe
date. Fiecare proiect îşi poate crea propria bază de date fizică prototip
separată, dar se urmăreşte integrarea acestor baze de date. Câteodată se
iniţează un proiect şi apoi se descoperă că datele necesare pentru a-l susţine
sunt deja disponibile şi descrise în schema conceptuală. Se poate dezvolta
atunci o nouă schemă externă şi ea se poate mapa pe schema conceptuală care
este mapată pe una sau mai multe scheme interne.
Cele de mai sus nu implică crearea unei baze de date uriaşă pentru a
conţine toate informaţiile de producţie necesare, deoarece în concordanţă cu
abordarea cu trei scheme, schema conceptuală poate fi mapată pe oricâte
scheme interne, fiecare reprezentând o bază de date fizică. Aceste baze de
date fizice pot fi rezidente pe mai multe calculatoare şi pot fi distribuite
geografic pe tot cuprinsul unei intreprinderi. Schema conceptuală integrează
aceste componente distribuite. Astfel, schema conceptuală integrează vederile
38
Schema conceptuală externă
Conducerea
examinării Modele
operaţionale “este-ca”
as-is
Dezvoltarea
proiectării Modele
conceptuale “a fi”
Model de
Prototiparea date
bazei de date validat
şi a
Integrarea
tranzacþiilor
proiectului
model de date
Noua schemã conceptualã
în schema
conceptualã
Baza
A potrivi de date
Baza de date şi tranzacţiile
eficienţa şi
tranzac
A revedea ţiile
calitatea
de pro-
ducţie
39
orientate pe aplicaţie, reprezentate de schemele externe, sau dintr-o altă
perspectivă, ea integrează vederile orientate pe implementare, reprezentate de
schemele interne.
Scheme conceptuale pasive şi active. Datele nu sunt integrate până
când legătura ermetică dintre schemele interne şi externe nu este spartă.
Schema conceptuală trebuie să controleze accesul la manipularea resurselor
de date, şi nu aplicaţiile program. Spargerea legăturii între schemele interne şi
externe nu este simplă. Există doi paşi intermediari care superimpun, la
început a schemă conceptuală pasivă şi apoi o vedere completă cu trei
scheme în vârful legăturii directe intern-extern. Moştenirea majorităţii
mediilor de aplicaţii baze de date este arătată în fig.3.5.a. Schemele interne şi
externe sunt unite prin codul aplicaţiei program. Nu există nici o vedere
intreprindere a resursei de date. Notaţia cu “punct mare” folosită în figura
3.5. arată tipul de relaţie posibilă între entităţile din cutii. Un “punct mare”
înseamnă mai multe. Fig. 3.5.a spune că o schemă internă poate suporta
direct mai multe scheme externe şi că o schemă externă poate fi suportată
direct de mai multe scheme interne. În pasul 1. (fig.3.5.b) se introduce
schema conceptuală iar schemele interne şi externe continuă să fie legate
direct. O schemă conceptuală descrie toate datele disponibile în toate
schemele interne, într-o vedere integrată, neutră şi pasivă a resurselor de date.
Orice control pe care îl are schema conceptuală asupra resurselor de date
depinde complet de politicile, procedurile şi administrarea resurselor. Schema
conceptuală rezidă într-un dicţionar de date (vezi cap. 1.) şi este descrisă ca
un model de date logice (vezi cap. 4.). Pasul 2. (fig.3.5.c) oferă o altă punte
spre integrare. Schemele externe sunt mapate pe schema conceptuală iar
dicţionarul de date poate fi folosit pentru a determina cine accede la date.
Pasul 3 (fig.3.5.d) arată o schemă conceptuală activă. Atunci când se
foloseşte o schemă conceptuală activă, software-ul de gestionare date
realizează operaţiile necesare pentru a prelua o cerere utilizator în forma din
schemă externă şi a o mapa pe schema conceptuală şi apoi pe cele interne.
Aplicaţiile program se confruntă numai cu schemele externe. O aplicaţie
program sau o tranzacţie particulară poate accesa date din mai multe baze de
date, fără a se preocupa de locul unde se găsesc datele. Baza de date poate să
fie distribuită pe mai multe calculatoare ale reţelei. Transformările
interscheme nu se realizează în codul aplicaţiei program ci în software-ul de
gestionare date care oferă controlul activ al schemei conceptuale. Logica
poate fi astfel partajată de mai mulţi utilizatori şi de mai multe aplicaţii.
Cu toate că software-ul de gestionare date care să realizeze
transformările interscheme în medii de date distribuite nu există încă în forma
de producţie, prototipuri au fost construite de către mai multe proiecte de
cercetare. Eforturile depuse în construcţia schemelor conceptuale pasive
astăzi vor fi răsplătite atât pe distanţă scurtă cât şi pe distanţă lungă prin
planificarea şi implementarea înbunătăţită a sistemelor informatice.
40
Schema externă
41
3.6.
Schema internă Schema conceptuală
suportă direct
Planificarea
pentru un mediu
baze de date
suportă
direct
42
Memento
Bibliografie
1. Appleton, D.S. Data driven prototyping, Datamation, Nov. 1959, pp. 259-
268
2. Tsichritzis, D.; Klug, A. The ANSI/X3/SPARC DBMS framework report of
the study group on database management systems, Info Systems, 1978
43