Sunteți pe pagina 1din 39

Orice sistem poate fi descris folosind metoda ciclului de viata care poate fi descrisa in mai multe

moduri. Ciclul de viata incepe cu decizia realizarii de la zero a unui sistem informatic sau cu
perfectionarea unuia deja existent. Progresele in domeniul tehnologiei informationale au determinat si
modificari ale etapelor ciclului de viata. De exemplu, odata cu aparitia abordarii abordata obiect, au
aparut si noi modele ale ciclului de viata.

- Modelul in cascada prevede parcurgerea unor etape derulate secvential. Modelul


permite ca eventualele ajustari sa poata fi realizate prin revenirea la o etapa anterioara.
- Modelul in V este o variant de model cascada care aduce elemente noi importante.
Partea superioara a diagramei modelului cuprinde faze in care implicarea utilizatorului este
directa. Bratul stang al diagramei include faze in cadrul carora gradul de detaliere al proiectarii
si implementarii creste treptat. Bratul drept cuprinde faze care vor duce la reprezentarea
progresiva a componentelor sistemelor. Astfel componentele sunt testate si introduse gradat
pana la obtinerea unui system functional.
- Modelul tridimensional promovat prin metoda MERISE, permite o separare a datelor
si prelucrarilor si se caracterizeaza prin reprezentarea pe 3 axe. Fiecare dintre acestea
reprezentand cele 3 faze ale ciclului de viata, adica faza de abstractizare, faza de decizie si
faza de proiectare.

Conform modelului cascada, etapele ciclului de viata pentru un SI sunt urmatoarele:

1. Analiza si definirea cerintelor – sunt definite serviciile si restrictiile pe care trebuie sa le


indeplineasca sistemul, prezentate intr-o maniera inteligibila atat pentru utilizatori cat si pentru
proiectanti. Tot in aceasta etapa se defineste si scopul sistemului.
2. Proiectarea sistemului si a software-ului – se stabilesc cerintele hard si soft dpdv al
echipamentelor si se proiecteaza arhitectura generala a sistemlui.
3. Implementarea si testarea unitatilor de program – softul proiectat la etapa anterioara este
transpus in mai multe module program a caror functionalitate va fi testata din punct de vedere al
indeplinirii specificatiilor.
4. Integrarea si testarea sistemului
5. Exploatarea si intetinerea sistemului – este faza in care sistemul este utilizat efectiv de
catre beneficiar iar eventualele erori vor fi comunicate si reparate

Modelul cascada permite revenirea la etapa anterioara insa aceasta trebuie realizata asfel incat sa
nu necesite o regandire in totalitate a sistemului.

Analiza şi definirea
cerinţelor

Proiectarea sistemului
şi a software-ului

Implementarea şi
testarea unităţilor de
program
Integrarea şi testarea
sistemului

Exploatarea şi
întreţinerea sistemului
CICLUL PRELUCRARII DATELOR IN CADRUL UNUI SISTEM INFORMATIC
Acesta cuprinde totalitatea operatiunilor care se executa asupra datelor din momentul obtinerii lor si
pana la furnizarea rezultatelor relevante

Etapele sunt:

1. Culegerea datelor – observarea mediului care genereaza date si inregistrarea acestora


2. Pregatirea datelor – clasificarea datelor astfel incat datele colectate sa fie incluse in
categoria corecta
3. Prelucrarea datelor – poate include activitati de filtrare, sintetizare sau de calculatie.
Calculatia este o forma de tartare matematica a datelor
4. Intretinerea fisierelor – pot aparea activitati de actualizare sau indexare (pentru gasirea
ulterioara mai usoara a acestora, tehnici de protective a datelor
5. Obtinerea informatiilor de iesire – cuprinde rezultatele propriu zise sub diferite forme
(rapoarte sau documente).

Sistemele informatice de gestiune sunt cele care creaza si actualizeaza o baza de date unica de
documente primare care poate fi ulterior prelucrata pentru obtinerea situatiilor necesare fiecarui
utilizator

Sistemul informatic de gestiune va contine 4 componente interdependente

1. Domeniile de gestiune – corespund activitatilor desfasurate in cadrul firmei (activitatea


de personal, de productie, comerciala etc)
2. Datele – regulile de gestiune se refera la procedurile care trebuie respectate aferente
unui domeniu conform obiectivelor sistemului
3. Modelele –
4. Regulile de gestiune - se refera la procedurile care trebuie respectate aferente unui domeniu
conform obiectivelor sistemului.
METODOLOGII DE FORMARE A SISTEMELOR INFORMATICE
Metodologiile reprezinta secvente de etape individuale care duc la realizarea unui produs final in
cazul unui system informatic. Metodologiile implica utilizarea unor tehnici. Realizarea unui Sistem
informatics este o actiune complexa care imbina un numar mare de activitati (analiza, implementare,
exploatare si proiectare). In plus este nevoie de resursa umana de calitate si de resurse financiare
importante

CONTINUTUL DE REALIZARE A SISTEMELOR INFORMATICE


Acestea se refera la:

a) Modalitatea de abordare a sistemelor dpdv al variatiilor in interiosul acestora si a


dinamismului sau.
b) Reguli de formalizare a datelor si a proceselor de pelucrare
c) Instrumente pentru conceperea, realizarea si elaborarea documentatiei
d) Modalitati de administrare a proiectului (planificare, programare sau urmarire
e) Definirea modului de lucru si a raportului dintre proiectantii sistemului

Metodologiile au rolul de a indica modul de derulare a procesului de realizare a sistemului, adica


definirea etapelor si indicarea directiei (fluxului) de parcurgere conform normelor si standardelor
utilizate.

In functie de domeniul de aplicabilitate, metodologiile utilizate sunt:

a) Din domeniul gestiunii – MERISE (ministerul industriei Franta) si SSADM (Structured


system analissys and design methodology – Marea Britanie). SSADM este o metoda in cascada
de proiectare a unui system in informatica. Presupune o respectare riguroasa a unei
documentatii in contrast cu metodele mai moderne grupate in RAD (Rapid Application
Development). Problema majora a vechilor metodologii consta din faptul ca cerintele se puteau
modifica inainte de realizarea sistemului, ceia ce ducea deseori la aparitia unor sisteme
inutilizabie. RAD va genera viteza crescuta si calitate in realizarea sistemului. RAD include
metodologii, ca de exemlpu prototipizarea rapida, virtualizarea rutinelor sistemelor si aplicarea
CASE
b) Metodologii orientate obiect – OOD(object oriented design) combina date si procese
(numite metode) in entitati distincte (numite obiecte). Obiectele corespund entitatilor reale care
interactioneaza cu sistemele (clienti, facturi, furnizori). Sistemele bazate pe OOD sunt capabile
sa reprezinte relatii complexe si sa reprezinte datele prelucrate mai clar, ceia ce usureaza
dezvoltarea si elaborarea sistemelor

Rolul OOD este cel de a modulariza elementele sistemului imbunatatind asfel calitatea si
eficienta proiectarii si dezvoltarii.
c) Metodologii pentru conducerea proiectelor de sisteme informatice – SDMS
METODE SI TEHNICI DE REALIZARE A SISTEMELOR INFORMATICE
In elaborarea sistemelor informatice sunt utilizate tehnici, metode, instrumente si procedee de lucru.

Metodele reprezinta maniera unitara in care analistii, programatorii procedeaza atunci cand
realizeaza sisteul decisional existent sic and proecteaza noul system informal

Metoda are un character general, in cadrul ei aplicandu-se tehnici diverse.

Tehnicile reprezinta felul in care se actioneaza efficient si rapid in cadrul unei metode pentru
solutionarea problemelor ce apar pe parcursul proiectarii. In timp, s-a realizat trecerea de la abordarea
modulara la abordarea orientate obiect. Pe parcurs, s-au impus 2 tipuri de strategii:

a) Top-down – presupune o abordare generala insa divizata pe componente. Metoda de


proiectare poate fi descrisa ca o diagram ierarhica cu module de control pe nivelele superioare
si module detaliate pe cele inferioare.
b) Bottom- up – porneste de la o tartare minimala care se extinde treptat pe masura
realizarii sistemelor.

Caracteristici esentiale ale principalelor metode

Informatia este vazuta sub trei aspecte:

1. Date – sunt reprezentate sub forma de atribute si reflecta structura statica sistemului
2. Functii – scot in evidenta ceea ce face sistemul (functionalitatea lui)
3. Comportament – este utilizat ca metoda alternativa de perceptie a sistemului si
sugereaza dinamica acestuia

A. Metoda descompunerii functionale

Este cea care a permis aparitia proiectarii structurate si a analizei structurate. Fiecare functie este
descompusa in subfunctii pana ce se obtin structuri usor de transpus in limbajele de programare.

B. Metoda fluxurilor de date

Lumea reala este reprezentata prin simboluri care reprezinta sensul de circulatie a datelor,
transformarile la care sunt supuse acestea, modul de stocare, entitatile externe etc.

C. metode orientate spre informatii

Reprezinta prin diverse diagrame situatia reala si au aparut ca urmare a inventarii diagramelor
entitate – relatie si ingineriei informatiei.

D. Metode orientate obiect

Clasa reprezinta unitatea arhitecturala de baza. Clasa este o grupare logica a datelor pe baza
structurii comune si a rolului similar.
INITIEREA SI PLANIFICAREA REALIZARII UNUI SISTEM INFORMATIC
Reprezinta prima etapa din ciclul de viata al dezvoltarii sistemelor informatice si impreuna cu
initierea si planificarea proiectelor constituie micro-analiza care este preluata din managementul
proiectelor.

Etapele ciclului de viata al dezvoltarii sistemului sunt rezultate mai jos.

A.
identificarea
şi selectarea
proiectului

B. iniţierea şi
planificarea Fazele ciclului de viaţă al
proiectului dezvoltării
microanaliza
sistemului
C. analiza

D. proiectarea
logică

E. proiectarea
fizică
F. implementarea

G. întreţinerea

Identificarea potentialelor proiecte de proiectare poate fi realizata de catre top manageri, comitetul
de initiativa, grupul de dezvoltare sau departamentul utilizatorilor.

Propunerile de proiecte pot veni intr-o organizatie de la nivelul cel mai de joss au de la top
management. In functie de sursa initierii proiectului pot aparea diverse avantaje dar si dezavantaje.

De exemplu: in cazul top managerilor proiectele propuse vor avea durata cea mai mare, vor fi mai
costisitoare, insa vor fi orientate spre strategia pe termen lung.

Daca propunerea vine din partea grupului de dezvoltare sau a departamentului utilizatorilor,
proiectele nu vor tine cont de strategii, vor fi realizate mai rapid, intarzierile vor fi mai reduse iar
analiza cost – investitie va fi putin importanta. Responsabilul de proiect va trebui sa asigure
comunicarea intre toate partile indicate (client, utilizatori si manageri).
Managerul de proiect raspunde printre altele de:

- Realizarea studiilor de pre-fezabilitate si fezabilitate generala


- Gasirea celor mai buni membri ai echipei
- Elaborarea planurilor detaliate ale proiectelor

Exemple de activitati care pot aparea in etapa de planificare a proiectului:

a) Definitivarea planului de baza al proiectului


b) Estimarea resurselor necesare
c) Crearea unui buget preliminat
d) Realizarea unei descompuneri functionale a proiectului in activitati controlabile si usor
de executat
e) Identificarea si evaluarea riscurilor care pot aparea

Studiul de fezabilitate - Are rolul de a determina daca un proiect poate fi demarat sau nu, sau daca
un proiect aflat in mai poate continua.

Studiul de prefezabilitate - Are rolul de a determina daca proiectul isi va atige obiectivele propuse
de unitate.

Observatie: atunci cand exista mai multe variante de derulare a proiectului, studiul de fezabilitate o
va determina pe cea optima.

Observatie: dupa ce a avut loc proiectarea primara a sistemului, pot fi determinate detaliile
importante, adica, in principal, costul proiectarii, implementarii si exploatarii sistemelor.

TEHNICI DE REPREZENTARE A PLANURILOR SI DE PROGRAMARE


CALENDARISTICA
Documentatia planificarii poate fi alcatuita din rapoarte sub forma de text sau rapoarte grafice.
Diagrama GANTT este o modalitate de reprezentare grafica care utilizeaza anumite elemente pentru a
reprezenta durata fazelor curentului.

Observatie: diagrama GANTT nu indica ordinea activitatilor, ci indica intervalul de timp intre care
se desfasoara.

Observatie: sunt utilizate pentru reprezentarea activitatilor proiectelor simple sau in cazul unor
etape ale proiectelor de mare intindere.
ANALIZA SISTEMULUI EXISTENT SI DEFINIREA CERINTELOR NOULUI
SISTEM
Analiza sistemului existent are ca scop determinarea modului de functionare a sistemului si tot aici
se evalueaza ce elemente de noutate pot fi aduse sistemului ce urmeaza a fi realizat. Aceasta etapa
cuprinde un grup de activitati care urmaresc cunoasterea performantelor SI atat in ansamblul sau cat si
in cazul elementelor de structura ale acestuia. Tot aici pot fi incluse cunoasterea restrtictiilor sistemului
existent si identificarea cerintelor informationale ale conducerii.

Observatie: de modul de realizare a acestor activitati depinde intreg procesul de elaborare a


sistemului informatic.

Studiul sistemului existent cuprinde:

a) Definirea caracteristicilor generale – cuprinde cunoasterea profilului a agentului


economic, a relatiilor de cooperare cu alti agenti si cunoasterea specificului activitatii de baza
(productie si servicii).
b) Studiul activitatilor de baza desfasurate – identifica atributiile cele din
compartimentelor?? si activitatile si sarcinile din interiorul unitatii.
c) Studiul sistemului de conducere – urmareste identificarea caracteristicilor sistemului
de conducere existent a indicatorilor valorici si a modului de luare a deciziilor.
d) Analiza sistemului informational – presupune identificarea principalilor algoritmi
utilizati, reprezentarea fluxului informational global, identificarea datelor de intrare – iesire si
cunoasterea principalelor tipuri de restrictii.
e) Identificarea metodelor si mijloacelor tehnice – se realizeaza evidentiind mijloacele
tehnice existente, dar si modul de utilizare, cheltuielile de exploatare, personalul implicat si
performantele acestuia.

Determinarea cerintelor sistemului

Se concretizeaza in diferite forme ale informatiilor colectate, care pot fi prezentate sub forma
raspunsurilor din chestionare, seturilor de formulare si rapoarte sau a notelor luate in timpul
analizei documentelor. Rezultatele pot fi prezentate sub trei forme:

- Informatii obtinute in urma conversatiilor cu utilizatorii sau prin observarea activitatii


prestate de acestia
- Informtie deja existenta in unitate (strategia de afaceri, manuale ale procedurilor,
descrieri ale posturilor de lucru etc)
- Informatii obtinute in urma utilizarii instrumentelor IT (rezultate ale sesiunilor JAD,
rapoarte extrase utilizand instrumente CASE, machete de interfata extrase din prototipurile
sistemului etc)
Observatie: metodele traditionale utilizate in analiza sunt interviul si chestionarul. Interviul
este realizat pentru a ajuta proiectantii care nu sunt familiarizati cu sistemul. Chestionarul nu
mai aplica niciun filtru reprezentat de analist, iar cel ce furnizeaza raspunsurile are
posibilitatea sa le formuleze mai bine. Chestionarul verifica cunostinte deja existente, fapt ce
implica cunoasterea prealabila a domeniului.

Metode de analiza si determinare a cerintelor sistemului

JOINT APPLICATION DESIGN (JAD) creata de specialistii de la firma IBM care incercau
sa elaboreze un nou procedeu de culegere a informatiilor referitor la cerintele informationale ale
acestora. JAD implica unele laolalta impunerii fortelor influentate in dezvoltarea sistemelor
(utilizatori, analisti si manageri). Este asemanator interviului insa o sesiune JAD urmareste o
anumita secventa de derulare a activitatilor.

Prototipizarea este un proces interactiv prin care analistii si utilizatorii propun o versiune
rudimentara a unui sistem informational. Acesta se va modifica continuu in functie de reactia
utilizatorilor.

Observatie: prototipizarea nu tine cont de ciclul de viata al dezvoltarii sistemelor.

Observatie: prototipizarea este facilitata de cateva programe inclusiv de catre instrumentele de tip
CASE.

Prototipizarea se utilizeaza atunci cand:

a) Cerintele utilizatorilor nu sunt bine intelese


b) Se utilizeaza anumite mijloace standardizate de lucru (rapoarte sau formulare)
c) Utilizatorii sunt implicati in crearea noului sistem

CURS 5

Diagrama entitate-relatie face parte din modelarea conceptuala a datelor care renunta la abordarea din punct
de vedere a proceselor si incearca sa reprezinte sistemele in functie de date.

Elementele esentiale vor fi si in acest caz diagramele. Acestea se folosesc deoarece se preSteaza pt a fi
utilizate cu tehnicile structurate care au legatura cu datele prin obiectivele pe care si le propun:

1. Sa realizeze o administrare riguroasa a datelor = adica sa le reprezinte si se refera la uniformitatea


modalitatilor de proiectare si definire a datelor la nivel de intreprindere. Corectitudinea acestui proces va
determina accelerarea proceselor de proictare si analiza si se va permite utilizarea in comun a resurselor.

2. Sa se efectueze o analiza sanatoasa a datelor = se urmareste clarificarea problemelor structurale , ceea


ce determina costuri reduse ale realizarii sistemelor.

Observatie: Daca baza de date a unitatii este complicata aceata va trebui realizata cat mai exact posibil.
Asupra datelor pot fi realizate 2 mari tipuri de operatuni:

a. obtinerea datelor (si actualizarea lor)

b. utilizarea datelor in diverse moduri (obtinerea documentelor, a rapoartelor, realizarea unor analize pe
baza unor sccenarii, control si auditare)

Modelul conceptual are rolul de a evidentia legaturile existente intre date. Modelarea datelor prin DER
prezinta caracteristicile si structura datelor indiferent de modul de stocare a acestor date in memoria
calculatorului.

Modelul se creaza interativ. De cele mai multe ori se lucreaza la nivel de intreprindere renuntandu-se la
detaliile exagerate.

Doar in etapele urmatoare (cand se trece la definirea proiectului se construieste un model entitate – relatie
care ia in calcul detaliile importante.

Dupa ce sunt descrise complet intrarile si iesirile sistemului in cadrul proietarii logice, modelul entitate-
relatie este prelucrat inainte de a fi trecut intr-un model logic conform caruia se definesc bazele de date si are
loc poietarea fizica a acestora.

In cadrul modelarii conceptuale a datelor se considera ca ar trebui relizate cel putin 4 diagrame entitate-relatie

1. DER care sa acopere datele necesare proiectului

2. DER pt aplicatia ce va fi inlocuita

3. DER pt intreaga baza de date utilizata ca sursa pt noul sistem

4. DER pt sistem existent pt care se urmareste imbunatatirea acestuia

DER pot fi realizate conform uneia din cele doua metodologii

1. top down (va scoate in evidenta regulile derularii activitatii firmei si va clarifica modul in care
rapoartele sau alte documente sunt utilizate in organizare)

2. sau buttom up (care construieste modul datelor prin analiza documentelor general intern in cadrul
firmei.

Modelul entitate-relatie

A fost prezentat in 1976 si de atunci este o tehnica larg raspandita pt proiectarea bazelor de date.

Modelul ER permite proiectatului ca elaboreze un model conceptual de nivel inalt fara sa tina seama de
limitarile impuse de un anumit SGDB sasu de limitari hardware.

Observatie: Modelul entitate-relatie ca stadiu in proiectarea bazei de date este asemanator pseudocodului ca
modalitate de reprezentare a unui algoritm

Observatie: Modelul ER permite reprez schematica a realitatii prin intermediul unei DER care se bazeaza
pe conceptele de entitate , tip de legatura si atribut.

A fost prezentat in 1976 si de atunci este o tehnica larg raspandita pt proiectarea bazelor de date.
Tipuri de entitati

Un tip de entitate reprezinta un concept sau o clasa de obiecte identificata printru-un nume si
definita de proprietati numite atribute.

Entitate - instanta a clasei si este defnita de valoarea care particularizeaza tipul entitatii.

- Obiectele se caracterizeaza printr-o durata de existenta,

- iar evenimentele (fenomene sau procese economice) isi fac simtita prezenta la un moment
dat.

O instantiere a entitatii denumita si caz este o manifestare singulara a unui tip de entitate.

Un tip de date se descrie o singura data prin modelul datelor.

Exemplu: exista o singura entitate client insa aceasta poate avea mii de instante stocate in baza de
date.

Un tip de entitate are asociat un set de atribute. Atributul este o proprietate sau caracteristica ce
prezinta interes pentru organizatii.

Entitatea va avea drept corespondent in baza de date finala o tabela ce contine toate atributele care o
caracterizeaza. Unele atribute vor juca rolul de cheie primara care va fi identificator de cazuri in cadrul
unui tip de entitate.

In DER atributele cheii primare se subliniaza.

Un tip de relatie reprezinta o asociere intre 2 sau mai multe tipuri de entitati si defineste legatura
care exista intre ecestea.

Observatie: Pentru a reprezenta probleme complexe, modelul a fost extins rezultand EER. La
conceptele de baza au fost adaugate cele de superclasa, subclasa, mostenire.

- O superclasa contine subclase distincte care trebuie sa fie reprezentate in cadrul modelului.

- O subclasa poate contine la randul ei alte clase a.i. Se pot construii ierarhii de clase.

- O subclasa va mosteni toate atributele superclasei.

Exista cateva simbolori utilizate in reprezentarea DER:

- Entitatile se reprezinta prin dreptunghiuri

- Atributele prin elipse(poza)

Cardinalitatea realtiilor - se refera la modul in care atributele unei entitati A se afla in relatie cu
atributele entitatii B. Din acest punct de vedere exista urmatoarele tipuri de asocieri.(poza)
TEMA: Diagrama entitate – relatie pentru o companie de taxi

1. Proiectarea logica a bazei de date

Lipsa

2. Pasul al doilea

Comasarea perspectivelor utilizatorilor rezultand urmatoarele relatii:

CLIENT(COD_CLIENT,NUME)

PRODUS(COD_PRODUS)

FACTURA(NR_FACTURA,DATA_FACTURA)

COMANDA(NR_COMANDA,COD_CLIENT,DATA_COMANDA)

LINIE_COMANDA(NR_COMANDA,COD_PRODUS,CANTITATE_COMANDA)

LIVRARE(NR_FACTURA,COD_PRODUS,CANTITATE_LIVRATA)

3. Pasul al treilea

Tranformarea DER intr-un set de relatii normalizate

INSTRUMENTE CASE
Computer Aided Software Engeneering

Programul din aceasta categorie permite proiectarea sistemelor informatice prin integrarea mai
multor tehnici cum ar fi inglobarea dictionarului datelor sau reprezentarea fluxuli de date.

Un soft de tip CASE poate determina cresterea gradului de corectitudine cu care se proiecteaza baza
de date a sistemului informatic. Produsele de tip CASE includ totalitatea instrumentelor si metodelor
destinate ingineriei software asistata de calculator. Sunt utilizate in etapa de analiza si proiectare
deoarece pun la dispozitia utilizatorului un set de instrumente care usureaza reprezentarea grafica in
cadrul acestor etape.

Desi instrumentele CASE mai sunt numite uneori si instrumente de proiectare (modelare) entitate
-relatie (ceea ce ar insemna ca pot sa creeze doar modelul logic) in realitate un instrument CASE are
mult mai multe facilitati.

In primul rand un produs CASE realizeaza legatura intre modelul utilizator si modelul logic
folosind un mod de reprezentare comun atat acestuia cat si proiectantului bazei de date. Instrumentele
CASE nu elimina in totalitate posibilitatea ca un model sa fie gresit. Pentru a elimina aceasta
posibilitate utilizatorul trebuie sa aiba experienta in domeniu. In acest caz utilizatorul se va acomoda
rapid cu un nou produs, deoarece toate se bazeaza pe aceleasi principii si au relativ aceleasi facilitati.
Instrumentele CASE sunt utilizabile din faza de definire a cerintelor si pana in faza de intretinere a
produsului informatic. Analiza si proiectarea bazate pe conceptele proiectarii structurate reprezinta
punctele forte ale acestor produse.

In ultimii ani CASE a inglobat si facilitati legate de proiectarea si programarea orientata obiect.

Pe parcusul evolutiei lor CASE au devenit foarte complexe permitand ca procesele de proiectare si
realizare a aplicatiilor sa se desfaca intr-un mediu interactiv oferind o intreaga gama de instrumente si
proceduri cu ajutorul carora se pot realiza, testa, documenta si intretine sistemul.

Aparitia CASE a fost determinata de:

– calitatea indoielnica a aplicatiilor realizate in mod traditional

– imposibilitatea participarii unui utilizator obisnuit la procesul de proiectare, datorita nivelului


cunostintelor informatice cerute de metodele traditionale

– costurilor mari pe care le implica actualizarea softurilor create prin metode traditionale

– imposibilitatea rezolvarii tuturor cerintelor utilizatorilor

– posibilitati de reprezentare grafica limitate pentru a usura intelegea sistemului in ansamblu

Avantaje:

– reducerea complexitatii in descrierea sistemului

– cresterea rapiditatii procesului de realizare

– posibilitatea de a alege dintre mai multe variante de proiectare

– cresterea integrarii

– disciplinarea procesului de proiectare

– salvarea si reutilizarea unor componente ale diagramelor realizate

Observatie: In general instrumentele CASE simplifica mult procesele de proiectare si implementare


a componentelor sistemului

Utilizarea instrumentelor CASE a inceput cu introducerea diagramelor fluxului de date care au


permis realizarea unui model al derularii proceselor, in interiorul sistemului pentru care se proiecteaza
aplicatia.

A urmat utilizarea dictionarului de date acesta fiind un depozit al tuturor datelor privitoare la sistem.

Dupa aceea au aparut ecranele predefinite care prezentau rezultatele ce pot fi obtinute. In final
instrumentele CASE au inglobat instrumente grafice si posibilitati de generare automata a anumitor
componente.
Functii CASE:

– se bazeaza pe 2 functii fundamentale

1. posibilitatea de descompunere de sus in jos a sistemului informatic in procese si modele


distincte

2. se bazeaza pe faptul ca sistemele informationale pot fi reprezentate intr-o forma grafica concisa,
utilizand un set de simboluri.

Importanta acestor 2 consta in faptul ca aplicatiile, diagramele pot fi modularizate, si pot fi obtinute
automat documentatii referitoare la realizarea si utilizarea sistemului.

Folosirea reprezentarilor grafice in logica CASE ofera posibilitatea descompunerii in mai multe
componente logice.

Prin atasarea unei baze de date la elementele gradice se va obtine un depozit ce va contine pasii si
functiile reprezentate in digramele construite.

Daca aceste elemente corect realizate vor sta la baza realizarii proceselor care vor constitui
procedurile de prelucrare din sistem. Modelarea grafica permite realizarea tuturor tipurilor de opratiuni.

Caracteristicile mediilor moderne de tip CASE

1. set de instrumente specifice pentru realizarea sistemelor

2. diverse moduri de interactiune cu utilizatorul

3. elemente de tip verificare si validare

4. suport pentru lucrul cu utilizatori multiplii

5. posibilitatea de intercontectare a instrumentelor CASE

6. diferite grade de automatizare

Observatie: CASE nu este un proces independent. Contine un set integrat de metodologii care
urmaresc parcurgerea etapelor ciclului de viata al unui sistem. La sfarsitul fiecarei faze rezultatele
sunt supuse unei analize si verificari, iar utilizatorii trebuie informati asupra modului de gestionare a
procedurilor de lucru. Utilizatorii vor da avizul de parcurgere a fazelor urmatoare.
Tipuri de instrumente CASE

In functie de metodologia pe care o incorporeaza pentru realizarea exista 3 categorii:

a. CASE bazate pe metodologia structurata

b. CASE orientate-obiect

c. CASE hibride

Exemple de instrumente CASE:

Erwin Data Modular – permite atat modelarea logica cat si modelarea fizica

Avantaje:

- mediu de modelare simplu de utilizat

- o data realizata modelele pot fi partajate si reutilizate

- modelul fizic este creat automat

- modelul este sincronizat cu baza de date si poate fi imbunatatit automat

- foreword engeneering care permite conversia automata a diagramaei entitate-relatie


corespunzator bazei de date

- reverse engineering permite crearea unui model logic pe baza unei scheme a bazei de date
existente in prealabil.

Programul permite utilizarea modelelor complexe prin impartirea lor in submodele mai usor de
gestionat.

Programul suporta 3 tipiuri de relatii:

- cu identificare

- fara identificare

- si mai multi la mai multi

Erwin considera entitatea copil ca fiind una cu identificare slaba.

O relatie cu identificare semnifica faptul ca una dintre entitati este dependenta. Adica pentru a exista
trebuie sa fie partial dependenta de cealalta entitate.

Toad Data Modeler

Programul include toate facilitatile unui CASE insa in plus permite:

– posibilitatea de a verifica modelul si a genera erorile


– posibilitatea crearii diagramelor ER pentru o diversitate de SGBD

– adaugarea de date suplimentare in diagramele ER pentru a imbunatii descrierea bazei de date

– gestionarea versiunilor cu ajutorul unei facilitati numita version manager

TEME PROIECT

Pentru un exmplu la alegere de baza de date, realizati:

(10 pag cu tot cu capturi de ecran) – folosim Toad Data Modeler (*Oracle design)

– o scurta descriere a sistemului informatic necesar

– descrieti procesul prin care baza de date a fost adusa in FN3

– generati o diagrama entitate-relatie pt baza de date

– prezentati rezultatele obtinute aplicand foreword si reverse engineering

Oracle design embaradero ER/studio si Microsoft DCO

PROIECTAREA SISTEMELOR INFORMATICE DISTRIBUITE

De – a lungul timpului au existat 3 moduri de abordare referitoare la partajarea resurselor sistemelor


distribuite:

1. centralizat – in care datele si programele sunt stocate pe un singur calculatordecentralizat – este


intalnit mai ales in anii 80 , imediat dupa aparitia primelor calculatoare personale si caracterizat
prin existenta mai multor calculatoare raspandite in diverse compartimente ale firmei care nu
comunicau intre ele si nu partajau informatiile. Erau echipate cu aplicatii neintegrate
2. distribuit – implica impartirea si alocarea datelor si programelor pe calculatoare diferite
conectate in retea care colaboreaza intre ele in vederea realizarii sarcinilor.(internetul)

Astazi doar sistemele centralizate si cele distribuite se mai utilizeaza.

Incepand cu anii 90 interesul pentru sistemele distribuite creste datorita cresterii performantelor si
scaderii costurilor calculatoarelor personale.
Utilizarea pe scara larga a arhitecturii client-server permite alocarea de noi componente pentru
aplicatii:

- interfata, datele si programele , toate dispuse pe mai multe calculatoare pt a creste


performanta.

Sistemele distribuite se considera ca fiind o colectie de calculatoare independente percepute de catre


utilizatori ca fiind un singur calculator fizic. Aceasta definitie evidentiaza 2 aspecte importante:

1. din punct de vedere hardware calculatoarele sunt independente


2. din punct de vedere software utilizatorii au impresia ca acceseaza un singur sistem

Sistemul distribuit este acel sistem care componentele hard si soft sunt localizate intr-o retea
comuna, comunica intre ele si isi coordoneaza actiunile prin trimiterea de mesaje.

Caracteristici esentiale

a. tipurile diferite de calculatoare si modul in care acestea comunica intre ele nu sunt vizibile
utilizatorului
b. utilizatorii si aplicatiile pot interactiona cu un sistem distribuit intr-un mod uniform indiferent de
locul si momentul interactiunii
c. sistemele distribuite trebuie sa fie scalabile, adica sa poata fi extinse in functie de necesitati.
Acest fapt este o consecinta directa a independentei calculatoarelor, si a faptului ca pentru
utilizatori organizarea interna nu este transparenta
d. un sistem distribuit trebuie sa fie construit astfel incat sa nu fie efectat de defectiuni sau caderi
de tensiune

Conceptul de sistem distribuit este aplicat unui numar mare de configuratii si aplicatii. In functie de
cele 2 componente principale ale oricarui sistem (prelucarile si datele) pot fi identificate 2 categorii:

a. sisteme cu prelucrari distribuite


b. sisteme cu date distribuite

In cazul a. programele sunt rezidente in diverse locuri din retea, fiind accesibile tuturor utilizatorilor.

Distribuirea datelor presupune fragmentarea acestora.

Datele vor fi stocate in diverse calculatoare astfel incat acestea sa poata fi accesibile ca intreg de pe
orice calculator din retea (reteaua internet poate fi considerata un sistem distribuit la nivel global,
include o diversitate de echipamente conectate in retea fiecare echipat cu propriul tip de sistem de
operare dar care vad datele intr-un mod uniform)
Avantajele si dezavantajelre sistemelor distribuite

Principala motivatie a utilizatii Sistemelor Distribuite o reprezinta dorinta utilizatorilor de a accesa


in comun resursele, in contextul partajarii lor.

Observatie: Notiunea de resursa este una abstracta utilizata pentru a descrie multimea elementelor
care pot fi utl in comun intr-o retea de calculatoare.

Avantaje: Dezavantaje:

cresterea disponibilitatii si sigurantei datelor complexitatea sistemelor distribuite


reducerea costurilor de comunicatie dificultati in controlul resurselor
flexibilitatea dezvoltarii posibile probleme in asigurarea integritatii datelor
obtinerea unor timpi de raspuns mai bun sporirea dificultatilor in detectarea si repararea erorilor
independenta fata de tehnologiile unui anumit furnizor

Cresterea disponibilitatii resurselor este un avantaj major mai ales in cazul in care apar defectiuni.
Intr-un sistem centralizat aparitia unei defectiuni poate duce la caderea intregului sistem. SD sunt
proiectate astfel incat ca functioneza si in conditiile aparitiei unor probleme care afecteaza o parte a
sistemului.

Celelalte resurse raman disponibile, ele putand prelua sarcinile partilor de sistem afectat, iar
utilizatorul nu va sesiza disfunctionalitatea sistemului.

Reducerea costurilor de comunicatie se refera la faptul ca resusrele acceptate pot fi aduse mai
aproape de client. In acest caz limitarile legate de traficul in retea pot fi ocolite. Daca volumul datelor
solicitate depaseste retelele de comunicatie, acest fapt duce la blocarea retelei.

!!! In cazul sistemelor distribuite traficul in retea va scadea deoarece datele de interes local pot fi
localizate (aduse aproape de solicitanti).

Flexibilitatea dezvoltarii sistemelor se refera la faptul ca o firma aflata in dezvoltare isi poate adauga
noi resurse in sistem, ceea ce nu se poate realiza in sistemele centralizate. In cazul acestora dezvoltarea
sau intensificarea activitatii duce la supraincarcarea sistemului care trebuie inlocuit.

Trebuie tinut cont si de modificarile aparute in mediul de afaceri. Companiile multinationale


deruleaza afaceri in mai multe tari, iar integrarea sistemelor este obligatorie. Reflectarea structurii
organizatorice a intreprinderii la nivelul bazei de date este un avantaj important deoarece majoritatea
firmelor sunt distribuite la nivel logic (in compartimente, departamente), iar distribuirea datelor permite
fiecarei unitati organizatorice sa gestioneze propriile date.

Cel mai important obstacol in extinderea sistemelor distribuite il reprezinta complexitatea foarte
mare a acestora. Sursele din care rezulta complexitate sunt:
- distribuirea datelor
- distribuirea prelucrarilor
- asigurarea integritatii datelor
- optimizarea accesarii resurselor

Rezolvarea problemei eterogenitatii

Un sistem distribuit trebuie sa permita prelucrarea datelor si executia aplicatiilor pe platforma


eterogena. Eterogenitatea se refera la tipuri de calculatoare, sisteme de operare si limbaje de
programare.

In functie de tipul lor,calculatoarele pot avea diverse moduri de reprezentare a datelor in memorie.
In afara de acestea diferentele de functionare si de gestionare a resurselor de catre diverse sisteme de
operare pot determina ca sitemul distribuit sa fie disfunctional.

Componenta care asigura rezolvarea tuturor acestor probleme este middleware-ul care este un nivel
intermediar al softare-ului ce ascunde etrogenitatea datelor, a retelelor, si a sistemelor de operare. In
plus middleware furnizeaza un mod model uniform pe care programatorii de aplicatii trebuie sa-l
respecte.

Sisteme deschise

Sistemele distribuite sunt deschise deoarece noi servicii referitoare la partajarea resurselor pot fi
adaugate si utilizate de o mare varietate de programe. Cu alte cuvinte caracterul deschis determina daca
sistemul poate fi completat cu alte componente.

Un sistem este considerat deschis daca ofera servicii in conformitate cu reguli care descriu sintaxa si
semantica lor. De exemplu formatul, continutul si semnificatia mesajelor transmise intr-o retea de
calculatoare sunt stabilite printr-un set de reguli care compun protocolul de comunicatie.

In sistemele distribuite serviciile sunt definite printr-o interfata cu care se lucreaza prin intermediul
unui limbaj de definire a interfetelor. De regula specificatiile interfetei scrise in acest limbaj se refera
doar la sintaxa serviciilor.

Scalabilitatea

Se refera la modul de functionare eficient, si in cazul in care numarul de resurse si de utilizatorii


inregistreaza o crestere brusca si semnificativa.

In cazul unui sistem centralizat o crestere brusca a accesarii resurselor va determina sincope in
functionarea acestuia. In cazul unui sistem distribuit, datorita distribuirii pe mai multe servere, acest
lucru poate fi evitat.
Observatie: Nu se poate aplica mereu aceasta solutie. Daca avem in vedere prelucrarea datelor
personale (tranzactii bancare) se recomanda ca toate aceste date sa fie stocate pe un singur server.

Transparenta reprezinta unul dintre obiectivele majore urmarite in realizarea sistemelor distribuite.
Urmareste ascunderea aspectelor specifice distribuirii in cadrul sistemului.

Modelul de referinta ISO prezinta 8 forme ale transparentei: accesul, localizarea, relocalizarea,
replicarea, concurenta, aparitia disfunctionalitatilor, presistenta, securitatea.

CURS 8

Transparenta accesului se refera la faptul ca accesarea unei resurse aflata pe un alt dispozitiv, nu este
vizibila utilizatorului. Lipsa transparentei accesului este vizibila atunci cand un sistem distribuit nu
permite accesul la un fisier aflat pe un alt server (de cat prin alte modalitati in afara de cea direscta, de
exemplu prin serviciul FTP). Transparenta localizarii se refera la faptul ca utilizatorul nu stie unde se
afla fizic o anumita resursa in conditiile in care poate sa o acceseze. Transparenta accesului si a
localizarii se mai numesc transparenta retelei.

Atunci cand anumite resurse dintr-un sistem distribuit pot fi transferate in alte locuri fara ca modul
in care sunt accesate sa se modifice se mainifesta transparenta migrarii. Chiar daca un program sau o
parte a unei baze de date este transferata intr-o alta parte a sistemului utilizatorul nu va sesiza acest
lucru iar aplicatia sistemului distribuit nu va trebui reproiectata.

Transparenta localizarii se refera la faptul ca o resursa poate fi transferata (mutata) chiar in timpul
accesarii acesteia. Utilizatorul nu va sesiza acest lucru; acest tip de transparenta este necesar in
sistemele mobile.

Replicarea resurselor poate fi utilizata in scopul cresterii disponibilitatii datelor si a performantelor


sistemului. Prin plasarea cat mai apropiata a resursei fata de locul accesarii ei. Transaparenta replicarii
implca faptul ca in sistem exista mai multe copii a unei resurse fara ca utilizatorul sa stie acest lucru.
Daca o tabela este modificata de catre utilizator celelalte copii ale acesteia trebuie modificate automat
de catre sistem fara ca utilizatorul sa fie implicat in acest proces.

Transparenta concurentei se refera la situatia in care mai multi utilizatori acceseaza simultan aceiasi
resursa. Din nou utilizatorii nu vor sesiza acest lucru. Transparenta disfunctionalitatilor consta din
faptul ca utilizatoriii nu vor observa ca anumite resurse au incetat sa functioneze sau nu functioneaza
normal. Acest tip de transparenta este mai dificil de realizat deoarece in general sistemel distribuite nu
disting intre o resursa inutilizabila si una indisponibila temporar (exemplu: la accesarea unei pagini
web serverul poate afisa un mesaj in care sa se specifice ca pagina nu este disponibila insa pentru a
diagnostica ca serverul este inutilizabil mai sunt necesare mai multe teste).

Transparenta persistentei se refera la faptul ca pentru utilizatori plasarea unei resurse in memoria
RAM sau pe DISK nu ar trebui sa aibe nici o revelanta. Acest tip de persistenta trebuie asigurat mai
ales de serverele de BD.
Baze de date distribuite

O baza de date distribuita este formata din multiple baze de date independente care opereaza pe doua
sau mai multe calculatoare conectate in retea si care partajeaza date prin internetul retelei.

Observatie: fiecare baza de date este gestionata de un SGBD independent, responsabil pentru
mentinerea integritatii datelor. Este posibil ca BD-urile ce formeaza un sistem distribuit sa fie
implementate inclusiv pe platforme hardware diferite.

Definitia ar putea fi considerata incompleta deoarece aceasta nu face diferenta intre un sistem
distribuit si unul cu multiple baze de date conectate in retea. De aceea definitia trebuie completata in
sensul ca o baza de date distribuita trebuie sa poata fi utilizata la fel ca una nedistribuita.

Baza de date distribuita = colectie de date integrate din punct de vedere fizic dar distribuite pe mai
multe platforme conectate in retea in conditiile asigurarii transparentei naturii distribuite a datelor.
Punerea in practica a acestor aspecte solicita realizarea a 12 obiective:

1. Autonomie locala – nodurile dintr-un sistem distribuit trebuie sa fie autonome, adica operatiile
realizate pe nodul respectiv trebuie sa fie controlate doar de acel nod. Astefel toate problemele,
inclusiv cele legate de securitate trebuie rezolvate la nivel local chiar daca datelel sunt accesate
de la distanta.

2. Sistemul nu trebuie sa se bazeze pe un nod central. In caz contrar sistemul depinde de nodul
respectiv fiind astfel mai vulnerabil ca intreg.

3. Functionearea neintrerupta – sistemul trebuie sa functioneze in conditiile in care un nod nu


mai functioneaza.

4. Independenta transparentei localizarii

5. Independenta fragmentarii – datele nu ar trebui sa apara fragmentat pentru utilizator

6. Independenta replicarii

7. Prelucrarea distribuita a interogarilor – cerinta vizeaza optimizarea interogarilor distribuite.

Observatie: o interogare distribuita nu trebuie executata ca o interogare locala (aplicata asupra


tuturor datelor dupa ce acestea au fost aduse pe un singur nod). Interogarea trebuie executata
distribuit pe fiecare fragment de date disponibil in nodurile respective.

8. Gestionarea tranzactiilor distribuite – o tranzactie distribuita apare atunci cand datele din mai
multe noduri trebuie actualizate.

9. Independenta hardware – trebuie ca datele existente pe PC-uri de tipuri diferite sa poata fi


interogata

10. Independenta sistemului de operare

11. Independenta retelei – sistemul distribuit trebuie sa poata functiona in conditiile existentei mai
multor tipuri de retele de comunicatii.
12. Independenta SGBD-urilor

Biblioteca ADO

Biblioteca ADO se foloseste atunci cand se lucreaza in limbajul VBA la conectarea cu alte BD-uri.
Alte instrumente sunt DAO si RDO (remote data object). Dupa conectare obiectele BD pot fi
manipulate in totalitate astfel in cat prin program sa se realizeze toate gama de operatii posibile.

Observatie: RDO - a fost utilizata in general pentru conectarea cu baze de date de foarte mari
dimensiuni iar DAO pentru conectarea la bazele de date locale. ADO se foloseste pentru conectarea la
bazele de date de orice tip.

ADO – Activies Data Object este o interfata orientata obiect cu motorul de baza de date Mirosoft Jet
Engine.

Mirosoft Jet permite:

- accesul si prelucrarea datelor aflate in bazele de date locale si la distanta


- accesul la bd microsoft si de alte tipuri prin ODBC utilizand Jet Engine

ODBC (Mircosoft Open Database Connectivity) – este o interfata scrisa in limbajul C care permite
accesarea bazelor de date specifice unei multitudini de SGBD-uri. Aplicatia care utilizeaza ODBC va fi
independenta de SGBD-ul cu care a fost realizata BD. Motorul BD Jet permite gestionarea interogarilor
unei BD relationale si ofera o interfata de acces a bazelor de date permitand indexarea si prelucrarea
tranzactiilor.

ADO permite definirea tabelelor si crearea unei BD complete , inclusiv interogarea acesteia.

Modelul obiect ADO este:


*ce apare cu galben se numec colectii iar celalte sunt fie obiecte fie proprietati.

Pentru conectarea la o anumita baza de date este necesara stabilirea unei conexiuni fizice catre
aceasta cu ajutorul obiectului connection. Acesta este utilizat pentru a specifica numele producatorului
Bazei de date. Command este obiectul utilizat pentru stocarea comenzii curente in general o procedura
stocata in cazul furnizorului SQL Server. Atunci cand comanda are nevoie de parametri pentru a fi
executata se utilizeaza un obiect de tip parameter. Un recordset reprezinta o structura de date formata
din inregistrarile unei tabele sau din rezultatele unei interogari. Obiectul fields este utilizat fie pentru
afisarea campurilor dintr-un recordset fie pentru modificarea valorilor unui anumit camp. Obiectele de
tip error vor contine erorile aparute.

Observatie: obiectele de tip connection, command, recordset si field au o colectie properties


formata din obiecte de tip property. Command are o colectie parameters, recordset fields, connection
o colectie errorss.

Pentru a utiliza in codul VBA biblioteca ADO este necasara adaugarea unei referinte catre aceasta in
Microsoft Access (TOOLS > REFERENCES > (SELECT) MICROSOFT ACTIVE X ADO)

Crearea si afisarea continutului uni recordset


Pentru conectarea la o anumita baza de date se va stabili o conexiune fizica cu sursa de date
reprezentata de obiectul connection. Numele tabelei trebuie specificat explicit, apoi in lipsa altor
mesaje de eroare se poate trece la popularea recordsetului cu valori.

Privae Sub Command2_Click()

Dim rs As New ADODB.Recordset

Rs.open „Clienti”, currentProject.Connection, adOpenDYnamic, adLockOptimistic

Debug.Print „Inregistrari DAO”

While (Not rs.EOF)

DEBUg.Print rs.fields(„codc”); // rs!(denc);

Rs.MovieNext

Wend

Pentru a afisa continutul campurilor se poate utiliza fie colectia Fields, fie doar obiectul recordset
urmat de semnul exclamarii si denumirea campului intre paranteze. Avansul la urmatoarea inregistrare
se realizeaza prin metoda MoveNext.

Ex: Crearea si afisarea continutului unui recordset rezultat in urma executiei unei interogari SQL

Privae Sub Command2_Click()

Dim rs As New ADODB.Recordset

Dim interogare As String

Interogare = „select * from clienti where adresac = ‚suceava’;

Rs.open interogare, currentProject.Connection, adOpenDYnamic, adLockOptimistic

Debug.Print „Inregistrari DAO”

While (Not rs.EOF)

DEBUg.Print rs.fields(„codc”); // rs!(denc);

Rs.MovieNext

Wend

Tipuri de cursori
Un cursor este un mecanism care permite realizarea unor vederi asupra datelor si determina daca se
poate avansa inainte sau inapoi in setul de date.

Forewordonly = permite avansul spre inainte in recordset. Acest tip de cursor trebuie folosit doar
daca datele din recordset vor fi doar vizualizate. Acest tip de cursor afiseaza doar informatia care
incape pe ecran,restul daca este nevoie, va fi afisat ulterior.

Static = descarca intreg recordsetul si permite navigarea inainte-inapoi. Nu permite realizarea de


modificari asupra datelor si utilizeaza mai multa memorie decat cursorul precedent.

Keyset = asemanator cu cel static , descarca intreg recordsetul, permite avansul in orice directie,
insa in plus permite vizualizarea datelor modificate de catre ceilalti utilizatori. Permite modificarea ,
inserarea si actualizarea inregistrarilor.

Dynamic = permite realizarea tuturor operatiunilor descrise anterior insa in plus ocupa mult mai
multa memorie si resurse procesor.

Observatie: In functie de tipul de cursor anumite proprietati sau metode vor functiona sau nu , de
exemplu, proprietatea recordcount va furniza rezultatul corect doar in cazul in care cursorul este de
tip keyset.

Tipuri de blocaje

Blocajele au rolul de a impiedica alti utilizatori sa realizeze modificari asupra setului de date.

Deoarece, de obicei, la o baza de date au acces mai multi utilizatori este de dorit ca operatiunile pe
care le pot realiza asupra inregistrarilor sa fie controlate.

Observatie: Blocajul se realizeaza pe o anumita inregistrare si averizeaza ceilalti utilizatori ca


inregistrarea respectiva este in curs de stergere sau modificare. In cazul in care mai multi utilizatori
au drepturi de modificare atunci se va utiliza adLockPassimistics.

Observatie: Deosebirea dintre ompimistic si pasimistic consta in faptul ca optimistic nu se aplica


pana cand butonul save este apasat. Iar pasimistic blocheaza inregistrarea curenta din momentul in
care incepe sa fie realizata modificarea.

Observatie: In cazul pasimistic fiecare inregistrare modificata este readonly si nu poate fi


actualizata de catre alt utilizator cu acelasi recorset deschis. Numai cand tranzactia se realizeaza
(prin commit) atunci blocajul asupra inregistrarii este dezactivat.

Metoda Move (recordset.Move NrInreg, Start)


NrInreg = parametru care indica peste cate inregistrari se va modifica pointerul inregistrarii curente.
Daca are o valoare pozitiva avansul este spre inainte, iar daca este negativa avansul este spre inceputul
recorsetului.

Start = indica inregistrarea de la care se porneste.

ADO afisarea recordset tabela stocuri cu For..each

dim sql as string


dim rs as new adodb.recordset
sql=”stocuri”
rs.open sql,...
debug.print”camprile din stocuricu ado”
dim campado as adodb.field
for each campado in rs.fields
debug.print campado.name
next
Observatie: nu este posibila parcurgerea recordsetului (desi acesta este un vector) cu instructiunea
for..each, insa se pot parcurge colectiile din ADO pe baza elementelor din fiecare colectie.

Afisarea recordset tabela clienti in ordine inversa

dim sql as string


dim rs as new adodb.recordset
sql=”stocuri”
rs.open sql,...
debug.print”inreg afisate in ordine inversa”
rs.MoveLaast
do until rs.Bof
debug.print rs.fields(“codc”);rs!(denc);””;rs!(adresa)
rs.MovePrevious
Loop
ADO-actualizarea valorii campului pe baza unei anumite conditiile
dim sql as string
dim rs as new adodb.recordset
sql=”clienti”
dim conditie as string
conditie=”denc='Vasile Dan'”
do while not rs.Eof
rs![denc]=”Vasilescu Daniel”
rs.find conditie
loop

Metoda Find

Criteria = este sirul de caractere ce defineste criteriul de cautare, trebuie sa contina denumirea unui
camp, un operator de comparare si valoarea de cautat

skipRecords = valoare de tip long care indica numarul de inregistrari fata de cea curenta peste care
se va sari inainte de a incepe cautarea

searchDirection = specifica directia. Daca inregistrarea corespunzatoare criteriului nu a fost gasita,


pointerul inregistrarii curente devine EOF in caz contrar BOF

start = valoare de tip variant. Este fie un bookmark, fie o constanta de tip bookmarkEnum care
indica inregistrarea curenta de la care incepe cautarea.

Observatie: Metoda Find se utilizeaza atunci cand se realizeaza cautari pe baza unui singur criteriu.
Atunci cand criteriul implica conditii multiple se utilizeaza Filter.

Exemplu: recordset.Find,”salariul_brut>10000”

Metoda update

recordset.update fields,values

Se utilizeaza ori de cate ori se realizeaza modificari in baza de date (adica inclusiv atunci cand se
adauga noi inregistrari). Modificarile se pot face direct prin metoda indicand unul sau mai multe nume
de campuri si una sau mai multe valori, sau de cele mai multe ori prin program cu ajutorul unor
formule, metoda update determina modificarea efectiva a val din tabel.

Identificarea inregistrarilor pe baza conditiilor multiple


dim rs as new adodb.recordset
rs.open”Clienti”,.....
rs.Filter=”denc='dan' and adresa ='radauti'
do until rs.EOF
debug.print rs.fields(“codc”).value;””;rs.fields(“denc”).value;””;rs.Fields(“adresa”).value
rs.MoveNext
Loop
rs.Close
set rs=Nothing

Bookmarck

Intr-o baza de date accesata de multi utilizatori numarul unei inregistrari se modifica in permanenta.
Prin urmare daca din diferite motive se doreste memorarea numarului inregistrarii solutia ar fi plasarea
unui bookmark la inregistrarea repectiva.

Observatie: Pentru a putea lucra cu semne de carte trebuie utilizat tipul de cursor corespunzator.
Static si keyset permit lucrul cu bookmarkuri insa daca cursorul nu este specificat atunci tipul implicit
de cursor este foreword care nu permite lucrul cu bookmark.

Exemplu:
Public Sub testareBookmark()
dim rs as new adodb.recorset
rs.open”Incasari”,CurrentProject.Connection.adOpenKeyset,adLookOptimistics
if not rs.Supports(adBookmark) then
msgBox”acest recordset nu suporta bookmark”
end exit
end if
varMyBkmark=rs.Bookmark
debug.print”VAloare=”;””;rs.fields(1).value;””
*Mergi la inreg nr 7

rs.AbsolutePosition=7

Adaugare inregistrari
Adaugarea se realizeaza cu metoda AddNew care poate fi utilizata specificand prin sintaxa !
nume_camp, valoarea fiecarui camp care se va adauga sau cu ajutorul argumentului Array prin care se
specifica mai intai lista campurilor pentru care se adauga valori iar mai apoi valorile propriu-zise.

Oservatie: tipul valorilor introduse trebuie sa coincide cu tipul campului;

Ex1: rs.AddNew Array (codc, denc, adresac), Array (“10”, “TestSRL”, “SV”)
Ex1:
with rs
.Open „Select * from Clienti”, CurrentProject.Connection, addOpneKeyset,
adLockoptimistic
.AddNEw
!Codc = „10”
!Denc = „Cutarescu Manole”
!Adresac = „Bacau”
’codC pentru inregistrarea curenta
Debug.Print !Codc.Value
’Du-te la prima inregistrare
.MoveFirst
Debug.Print !Codc.Value
.Close
End With
Set rs = Nothing
End Sub

Observatie: Instructiune WITH si END WITH este folosita pentru a utiliza diverse metode care se
refera la acelasi obiect fara a specifica de fiecare data numele obiectului.

Modificare inregistrari
Se poare realiza prin metode UPDATE sau UPDATEBATCH. Deosebirea principala consta in
faptul ca UPDATE poate modifica o singura instructiune iar UPDATEBATCH mai multe instructiuni
simultane.

UPDATEBATCH este utilizata in tandem cu metoda FIND care identifica pe rand toate
inregistrarile care trebuie modificate conform criteriului

Ex.: criteriu = „[ADRESA] = ’ SUCEAVA ’”


WITH rs
.OPEN „SELECT * from Clienti”, CurrentProject.Connection, adOpenKeyset,
adLockOptimistic.FIND criteriu
Do while NOT .EOF
.field(„ADRESAC”) = „SUCEAVA”
.find criteriu, 1
LOOP
.updateBATCH
END WITH
Rs.Close
Set rs = NOTHING

Modifica Suceava din litere mici in majuscule, asta face programul anterior.

Preluarea codului clientului a denumirii si a adresei dintr-o forma utilizator care contine trei casete
text si un buton de comanda.

Observatie:

1. Se testeaza daca pentru cod client s-a introdus o valore si daca aceasta este de tip numerica.
In caz contrar se intrerupe executia procedurii cu EXIT SUB si se reactiveaza caseta text in care se
introduce codC cu instructiunea Text0.SetFocus

2. De fiecare data atunci cand se foloseste proprietatea TEXT a unui textBox trebuie utilizata si
metoda setFocus. In cazul proprietatii value setFocus nu mai este obligatorie.

If Me.Text0 = „” Or Not IsNumeric(Me.TEXT0) Then MsgBox „Nu ati introdu corect codul
cleintului”: Me.Text0.SetFocus: EXIT SUB
Text0.SetFocus
Forms!Form3!Text14.SetFocus
id = Me.Text14.Text

Forms!Form3!Text0.SetFocus
nume = Me.Text0.Text

Forms!Form3!Text8.SetFocus
prenume = Me.Text8.Text

Forms!Form3!Text10.SetFocus
adresa = Me.Text10.Text

Forms!Form3!Text12.SetFocus
email = Me.Text12.Text

rs.Open "Clienti", CurrentProject.Connection, adOpenKeyset, adLockOptimistic


Dim criteria As String

criteria = "id_client=" + id + ""


rs.Find criteria

If rs.EOF Then
rs.AddNew Array("id_client", "nume", "prenume", "adresa", "mail"), Array(id, nume, prenume,
adresa, email)
Else
MsgBox "Id-ul este introdus"
End If
Metoda DELETE

Rs.DELETE AffectRecods
Metoda marcheaza inregistrarea curenta pentru stergere si poate sterge o inregistrare, un grup de
inregistrari sau toate inregistrarile dintr-o tabela. Daca tipul de blocaj este optimistic inregistraera va fi
steasa imediat (si incercarea de a accesa orice camp al inregistrarii va genera eroare).

Observatie:

1. Totusi inregistrarea nu este stearsa din BD pana in momentul apelarii metodei


UPDATEBATCH. Cat timp cursorul este pozitionat pe inregistrarea respectiva accesul la
campuri este permis in momentul avansului la urmatoarea inregistrare cea stearsa nu mai este
disponibila.
2. Toate stergerile pot fi anulate daca se apeleaza metoda cancelBatch.
3. Pentru a marca mai multe inregistrari in vederea stergerii se pot memora bookmarkurile pentru
fiecare inregistrare sau cu ajutorul metodei FILTER utilizand proprietatea
adFilterPendingRecords.

Ex: conditie = „codc = ’444’”


Rs.find conditie
If NOT rs.EOF then
Rs.Delete
Rs.Update
MsgBox „Clientul cu codul” & conditie & „ a fost sters”
End if

Operatiunile de stergere sau modificare a inregistrarilor pot fi realizate si utilizand metoda execute
sau rang SQL.

Ex:
DoCmd.RunSQL „UPDATE clienti SET adresac=’SUCEAVA’ WHERE adresac=’SUCEAVA’”
CurrentDb.Execute „UPDATE clienti SET adresac=’SUCEAVA’ WHERE adresac=’Suceava’”

Observatie:
1. Metoda runSQL executa actiuni de actualizare sau stergere daca se doreste din interiorul
VBA-ului lucrul cu date atunci se recomanda utilizarea interogarilor de selectie.
2. Interogarile de tip update se recomanda a fi create mai intai in desingView si apoi copiate in
codul VBA. Metoda EXECUTE este valida doar pentru interogarile de actiune. Utilizarea
metodei pentru lansarea altor tipuri de interogari va genera eroare. Execute nu returneaza un
recordset.

Ex: Dim dateinserare As String


Dateinserare = „INSERT INTO clienti (codc, denc, adresac) VALUE (‚99’, ‚Nicolaescu Adrian’,
‚Tg Neamt’)”
DoCmd.RunSQL dateinserare

Preluarea unui recordset format din datele importate din alte aplicatii

Dim cnn As New ADODB.Connection


Dim rs As New ADODB.RECORDSET
Cnn.Open „Provider=Micosoft.JET.OLEDB.4.0’” & _
„Data Source=”C:\Users\sorin\Download\date table pivot.xls;” &_
„Extended Properties =”” EXCEL 8.0; HDR=YES””;”
Rs.Open „SELECT * FROM [Carti$];”, cnn, adOpenStatic, adLockReadOnly
Rs.MoveFirst
Do While Not rs.Eof
Debug.Print rs.Fields („Titlu carte”)
Rs.MoveNext

Observatie:

1. Excel 8.0 nu se refera la varianta de excel instalata ci la versiunea providerului ADO pentru
Excel.
2. Parametrul HDR=Yes se refera la faptul ca foaia de calcul are un cap de tabel un headerRow
3. Datele sunt preluate din registrul de calcul data tabela pivot.xls din foaia de calcul Carti.
Sintaxa selectiei foii de calcul este „SELECT * FROM [Carti$]. Exemplul afiseaza in
fereastra imediat doar continutul coloanei titlu carte

TENDINTE ACTUALE IN EVOLUTIA SISTEMELOR INFORMATICE


In ultimii ani inteligenta artificiala a cunoscut o dezvoltare exploziva gasindu-si aplicabilitatea in
aproape toate domeniile de la economie si pana la industrie sau aplicatii mai putin obisnuite.

De exemplu tehnologii specifice AI sunt utilizate deja de cativa ani in industria militara, in
astronomie, in finante, in recrutarea personalului, la predictia comportamentului consumatorului,
dentificarea preferintelor, etc.

Sistemele informatice inteligente s-au constituit in urmatoarele categorii:

a. sistemele expert bazate pe reguli in care cunostintele sunt bazate pe reguli de productie
b. sistemele bazate pe retele neuronale in care baza de cunostinte este creata automat pe baza
unor forme de invatare. Elementul principal, adica neuronul formeaza retele puternic
interconectate (asemantoare celor din creierul uman) care sunt capabile de invatare si apoi de
generalizare
c. sisteme multiagent sunt sisteme distribuite formate dintr-o colectie de agenti autonomi care
interactioneaza intr-un mediu comun

Observatie: avantajele si dezavantajele fiecarei categorii sunt complementare si de aceea au aparut


sistemele hibride care per ansambu creeaza aplicatii mai performante

1. Se refera la asa numitele sisteme expert care stocheaza cunostintele dintr-un anumit domeniu
bine precizat si au capacitatea de a realiza expertize de o calitate apropiata celor realizate de
expertii umani intr-un domeniu.
Intr-un sistem expert pot fi evidentiate urmatoarele componente:
- o baza de cunostinte explicit construita dintr-o baza de fapte si o baza de reguli;
- motorul de inferente;
- interfata utilizator .

O categorie aparte de sisteme expert o reprezinta sistemele expert generalizabile sau


generatoare de sisteme expert. Aceste sisteme contim motorul de inferente, interfata grafica
utilizator, sistemul de gestiune al bazei de cunostinte, insa baza de cunostinte este vida.

Generatoarele de sisteme expert se bazeaza pe reguli de productie capabile sa stocheze


diverse cunostinte reprezentate prin reguli si capabile de a deduce pe baza acestora pe baza unor
fapte precizate de utilizator noi cunostinte.

2. Sisteme bazate pe retele neuronale (sisteme conexioniste) - un sistem de acest tip este
format din elemente de baza numite neuroni grupati in straturi interconectati in diverse moduri
care pe baza unui algoritm de invatare furnizeaza si rezultate pe baza corelatiilor detectate intre
datele furnizate la intrari .

Retelele neronale au nevoie de un set de date, de obicei, de dimensiuni mari si in care


informatia este redundanta, set care plasat la intrarile retelei formeaza asa numitele forme de
antrenare.

Setul de date este impartit in 3:


- in set de antrenare
- set de test
- set de productie.

Retelele neuronale au avantajul principal ca pot invata si generaliza (realiza inferente) pe


baza setului de date de antrenare.

Observatie: procesul de antrenare al retelei neronale implica atingerea unui minim global al erorii
dintre intrari si iesiri. Daca se atinge un minim local procesul de invatare nu determina obtinerea unei
retele bine antrenate, iar aceasta va generaliza (va cauta sa reproduca la iesiri datele furnizate la
intrare).

Observatie: cel mai popular si controversat algoritm de invatare este cel cu propagare inapoi a
erorii (back propagation).

Dezavantajele sunt, in principal, urmatoarele:

- nu exista o corespondenta clara intre problema si tipul de retea ce trebuie utilizat


- retelele neuronale modeleaza problema, insa modelul nu este accesibil utilizatorului
- procesul de antrenare poate fi de lunga durata, se bazeaza pe incercari succesive si pe
modificari repetate ale unor parametrii (ponderi, constante de invatare )

Observatie: retelele neronale se aplica in 2 mari categorii de probleme: de clasificare si de predictie.


Se aplica in cazul problemelor care nu sunt formalizate matematic, nu au in spate un algoritm de
rezolvare.

3. Un sistem multi agent este un sistem distribuit format dintr-o colectie de agenti autonomi care
interactioneaza intr-un mediu comun, fiecare agent avand cunostinte, capacitati de actiune si
scopuri proprii. In functie de tipuri de agent utilizat se pot identifica 2 categorii de sisteme multi
agent:
a. cu agenti cognitive (sisteme multi agent cognitive)
b. cu agenti reactivi

Cele cognitive urmaresc sa simuleze aspecte ale comportamentului uman, prin tratarea
notiunilor de scop, cooperare, competitie si organizare si stabilirea relatiilor de dependenta intre
aceste structuri de organizare, capacitate de invatare si autoperfectionare.

Sistemul reactiv se bazeaza pe unitati simple de prelucrare capabile sa reactineze la


schimbarile de mediu si sa execute actiuni simple corespunzatoare acestor schimbari. Sunt
inspirate din organizarea si activitatea comunitatilor biologice de insecte.

Arhitecturi de sisteme informatice


1. Model de date georelational utilizat in cadrul unui sistem geografic distribuit cu aplicatii in
domeniul cadastrului.

Initial tehnologia bazelor de date nu era utilizata in cazul tehnlogiilor GIS (Geographic Information
System), fiecare produs din aceasta categorie tratand datele intr-o materie proprie. Ulterior, odata cu
aparitia bazelor de date relationale, cele doua tehnlogii au fost utilizate combinat deoarece prelucrarea
datelor a devenit standardizata. Pe piata produselor GIS sunt utilizate urmatoarele modele de date:

a. Modelul hibrid

b. Modelul integrat

c. Modelul orientat obiect

Modelul hibrid utilizeaza un set de fisiere pentru stocarea coordonatelor si a informatiilor


topologice si un SGBD pentru memorarea datelor descriptive in tabele.

Modelul integrat este bazat pe reprezentarea si procesarea datelor grafice si descriptive in cadrul
unui SGBD relational. Acest mod de prelucrare a datelor prezinta limitari privind tipurile de date insa
are in vedere posibilitatea extinderii SGBD-ului cu noi tipuri de date si facilitati de interogare SQL. In
acest sens ORACLE a introdus componente specializate pentru reprezentarea si accesarea datelor
spatiale.

Modelul de date orientat obiect se bazeaza pe tehnologia corespunzatoare insa prezinta


dezavantajul ca nu exista inca un limbaj de interogare standard in domeniu.

Registrul cadastrului cuprinde 3 categorii de informatii:

- Tehnice
- Juridice
- Economice

In functie de modul de prelucrare informatiile se grupeaza in

- date grafice (spatiale)


- date descriptive (text).

Organizarea descrierea si prelucrarea datelor cadastrale necesita utilizarea unui produs de tip GIS,
care sa ofere un nucleu grafic pentru reprezentarea si prelucrarea datelor grafice, un SGBD si canale de
comunicare intre cele doua componente.

Datele corespunzatoare registrelor cadastrale privind terenurile si constructiile vor fi reprezentate


grafic in planuri cadastrale si harti topografice. La nivel de judet se vor organzia bazele de date ale
cadastrului general interconectate iar la nivel national banca de date a cadastrului general. Baza de date
corespunzatoare cadastrului va cuprinde tabele care vor memora date referitoare la parcela, timp de
proprietate istoric (tranzactiile realizate anterior cu parcela respectiva) si o tabela referitoare la
proprietarii parcelei. Datele spatiale se refera la codul parcelei pe care este amplasata constructia, codul
constructiei, numarul punctului, abscisa punctului, ordonata punctului si cota punctului.
Observatie: In baza de date a cadastrului sunt utilizate o serie de informatii proprii altor sisteme de
evidenta si anume:

- sistemul de evidenta a populatiei


- sistemul de evidenta a unitatilor teritorial administrative
- sistemul de evidenta a agentilor sociali si economici, intre care trebuie sa existe
comunicare.

Distribuirea datelor este o caracteristica comuna celor patru sisteme de evidenta. In principiu chiar
daca datele sunt utilizate de catre mai multe servicii acestea trebuie memorate fizic intr-un singur
depozit.

2. Sistemul bazat pe cunostinte destinat documentarii si cercetarii asistate in genetica vegetala.

O banca de gene are ca principal scop asigurarea securitatii alimentare in conditiile exploziei
demografice prin asigurarea calitatii alimentelor. Ca rol secundar se urmareste identificarea de noi
plante care pot deveni plante de cultura.

Conservarea resurselor genetice se face prin pastrarea lor in habitatele in care s-au format si evoluat.
Daca acest lucru este dificil de realizat conservarea se realizeaza prin pastrare in gradini botanice sau
banci de gene.

Corespunzator activitatilor de colectare, evaluare si depozitare se vor optine date de pasaport, date
de evealuare si de conservare.

Datele de pasaport si cele de conservare (adica fisa de depozit sunt comune tuturor speciilor) iar
caracterizarea si evaluarea difera de la o specie la alta si rezulta din prelucrari statistice asupra datelor
obtinute experimental.

Pentru datele existente in baza de date pot fi utilizate tehnici ale inteligentei artificiale care sa
realizeze urmatoarele sarcine recunoasterea si clasificarea populatiilor, recunoasterea cromozonilor pe
baza imaginilor, diagnosticarea rezistentei la boli, a rezistentei la conditii speciale de mediu etc.

3. Sistemul de guvernare electronica al Estoniei

Acesta se bazeaza in principal pe o platforma numita X-ROAD care permite interconectarea tuturor
bazelor de date utilizate de diversele servicii accesibile cu ajutorul buletinului digital. X-ROAD
serveste ca platforma pentru dezvoltarea aplicatiilor pe care orice institutie de stat o poate folosi pentru
extinderea serviciilor fizice in domeniul digital. Daca o institutie doreste sa foloseasca X-ROAD
depune o cerere si va avea acces la toate datele de care are nevoie in serviciul pe care doreste sa-l ofere.

LIMBAJUL UML (universal modeling language)


pentru modelarea bazelor de date
Modelarea presupune in sensul propriu al cuvantului crearea uni model matematic care sa permita
reproducerea realitatii fizice.

Observatie: in functie de tehnica folosita modelul matematic poate sa nu fie obtinut in final (de
exemplu retelele neuronale reprezinta o tehnica de tip cutie neagra)

Observatie: in general modelarea presupune o simplificare a realitatii si se realizeaza pentru a


putea analiza in detaliu un anumit aspect.

Scopurile modelarii sunt urmatoarele:

– vizualizarea evolutiei in timp a acestuia

– identificarea stucturii unei anumite entitati si studiul comportamentului acesteia

– obtinerea unui sablon care sa ajute la constructia altor modele asemanatoare

– documentarea deciziilor luate

Principiile modelarii specifica faptul ca nu e suficient un singur model pentru o anumita problema,
se pot utiliza diverse niveluri de precizie, iar modelele performante au corespondent in realitate
(reusesc sa modeleze foarte aproape de modelul real)

Observatie: Analiza si proiectarea (planificarea) unui proiect trebuie facute inainte de realizarea
codului

Observatie: In prezent se acorda o mare atentie etapei de proiectare si modelare deoarece, de


acestea depind producerea si refolosirea software-ului.

Un limbaj de modelare este un limbaj artificial caare poate fi folosit sa exprime informatii sau
cunostintele dintr-un anumit domeniu.

Limbajele de modelare se impart in 2 categorii:

1. limbaje grafice (arbori comportamentali, modelarea proceselor de afaceri, modelarea fluxurilor


de date, retele PETRI si diagrame UML)
2. limbaje specifice (modelare algebrica, modelarea obiectelor, modelarea realitatii virtuale sau
modelarea arhitecturilor specifice)

UML = limbaj de modelare grafic orientat-obiect care descrie proprietatile dinamice si structurale
ale unui sistem software. Prin sistem software se intelege in general o baza de date sau un modul de
program .

UML este format dintr-o colectie de tehnici de modelare folosite pentru tratarea diverselor aspecte
ce tin de procesul de concepte si de realizarea a softului.

Fiecare tehnica de modelare ofera o vedere diferita (statica sau dinamica) a unei aplicatii
Colectia de vederi in acest caz se numeste model.

Exemple de tehnici UML:

- diagrame de clase care modeleaza entitatile unui sistem prin clase cu atribute si
comportament (aceste diagrame mai descriu asocierile dintre clase si constrangerile
pe care le respecta)
- diagrame de obiecte
- diagrame de caz de utilizare (usecase – reprezinta un model al functiilor sistemului
prin care se sustin procesele afacerii)
- de stare (statechart surprind comportamentul dinamic al sistemului sau a obiectelor
din cadrul acestuia. Clasele reprezinta modelele logice care surprind structura de baza
a sistemului)
- de secvente
- de activitate (m prezinta fluxul proceselor cu rol de a prezenta o imagine de nivel
inalt a afacerii si a modului cum opereaza)
- de colaborare

Diagrama de componente prezinta structura fizica a bazei de date

Clase UML

Modeleaza entitatile de interes dintr-un sistem. O clasa are instante sau realizari.

Instantele sunt obiectele clasei. Structura obiectului contine atributele acestuia. Comportamentul
reprezinta operatiunile ce pot fi executate asupra unei instante specifice.

Observatie: Clasele identifica conceptele sau .. le foloseste pentru a descrie solutia problemei.

Grafic o clasa se reprezinta printr-un dreptunghi care contine numele, atributele care il descriu si
metodele pe care le suporta.

De exemplu stereotipul <<persistent>> identifica o clasa ca fiind persistenta , adica toate


instantele sale raman in memorie dupa ce procesul care a creat aceste instante a luat sfarsit.

Atributele pot fi de diverse tipuri, de exemplu cele protejate indica faptul ca doar clasa respectiva
si succesori sai pot avea acces la atribute.

Operatiunile sau metodele reprezinta actiunile care pot fi realizate pe clasa respectiva. De exemplu
destroi este un stereotip UML care indica metoda de distrugere a unei clase pt a elimina instanetele de
obiect.

In cadrul claselor se pot utiliza operatiile de generalizare si specializare pentru a organiza clasele in
ierarhii.

Modelarea conceptuala
Metodologia UML implica crearea unui model al afacerii (bussiness model) care este structurat in 2
parti:

1. modelul cazurilor de utilizare ale afacerii care urmareste identificarea modului in care
afacerea este vazuta de catre actorii externi. Prezinta procesele afacerii in termenii cazurilor de
utilizare.

Caz de utilizare= secventa sau mai multe secvente alternative de activitati care au loc in contextul
respective

2. modelul obiect al afacerii se concetreaza asupra modului in care utilizatorii din interiorul
sistemului realizeaza procesele afacerii

Cele doua parti ofera o imagine asupra actorilor externi si interni si a entitatilor care intervin, toate
acestea fiind preluate in diagramele de clase. Pe baza etitatilor desprinse din modelul obiect al afacerii
se poate realiza un model conceptual preliminar.

Printr-o diagrama pe clase care sa prezinte inclusiv relatiile.

Modelarea logica presupune obtinerea modelului cazurilor de utilizare a sistemului. Acesta contine
actorii, cazurile si relatiile dintre ele. (defapt va indica cerintele care trebuie satisfacute de respectivul
sistem)

Modelarea fizica implica 2 etape :

1. transformarea diagramelor de clase si obtinerea modelului bazei de date

2. construirea componentelor fizice prin care se va construi baza de bate( scrpturi DDL) – pentru a
usura proiectarea bazelor de date UML ofera un cadru de lucru numit ULM profile for database design.

Elementele acestuia se concentreaza, nu asupra construirii aplicatiilor, ci asupra modelarii bazelor de


date. Permite modelarea restrictiilor, trigarilor, schemelor, indecsilor si a procedurilor stocate.

S-ar putea să vă placă și