Slide 1
Curs 9 Proiectarea arhitecturii sistemelor
informaticeCuprinsAspecte generale ale proiectrii sistemelor
informaticePrincipiul proiectrii ealonate a sistemelor
informaticeProiectarea arhitecturii sistemului
informaticArhitectura client serverArhitecturi
distribuiteArhitectura orientat pe serviciiDiagrama de
componenteDiagrama de desfurareDiagrama de pachete
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea1Autori: prof.dr. Ion Lungu, conf.dr. Anca
Andreescu, lect.dr. Alexandra FloreaAspecte generale ale proiectrii
sistemelor informaticeProiectarea sistemului informatic const n
stabilirea soluiilor logice i specificarea din punct de vedere
fizic a componentelor noului sistem. Proiectarea se bazeaz n
principal pe rezultatele obinute din cele dou grupe de activiti
premergtoare: definirea soluiei de realizare a noului
sistemmodelarea noului sistem.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaAspecte generale ale proiectrii sistemelor
informaticen etapa de proiectare se face n primul rnd evaluarea i
revizuirea componentelor din punct de vedere logic, dup care se
trece efectiv la proiectarea fizic n concordan cu soluiile tehnice
propuse.Unele metodologii mpart proiectarea sistemelor informatice
n: proiectare general/proiectare de ansamblu / conceperea
sistemului informatic proiectarea de detaliu.n cadrul acestor
etape, sistemul este proiectat din punct de vedere logic i din
punct de vedere fizic, separat sau nu.Autori: prof.dr. Ion Lungu,
conf.dr. Anca Andreescu, lect.dr. Alexandra FloreaPrincipiul
proiectrii ealonate a sistemelor informaticePrin ealonare se nelege
ordinea n care vor fi abordate subsistemele/modulele sistemului
informatic de la proiectare pn la implementare, cu asigurarea
condiiilor pentru integrarea lor treptat, pe msura realizrii
condiiilor evideniate n etapa de analiz.La stabilirea ordinii de
prioritate n abordarea structurilor sistemului informatic pot fi
avute n vedere urmtoarele criterii:prioritatea obiectivelor
componente;asigurarea legturilor ntre componente;disponibilitatea
resurselor(limita fondurilor ce pot fi alocate n timp pentru
realizarea sistemului informatic;nivelul de dotare cu tehnic de
calcul existent n etapa de concepere i cel prevzut a fi atins n
timp;forele de proiectare pe care le va antrena
proiectul;personalul de specialitate existent i n pregtire, la
unitatea beneficiar, necesar pentru implementarea i exploatarea
curent a sistemului informatic).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea4Proiectarea arhitecturii sistemului
informaticArhitectura sistemului informatic definete tehnologiile
folosite, cu specificarea ansamblului de date, procese, interfee i
componente de reea folosite. Proiectarea arhitecturii sistemului
informatic presupune, in primul rnd, identificarea tipului reelei i
al protocolului de comunicaii ce pot fi utilizate. Cele mai
cunoscute tipuri de reele sunt:Reea punct la punct (bus); Reea inel
(ring);Reea stea (star); Reea ierarhic. Dup alegerea tipului de
reea, echipa de analiz trebuie s identifice protocolul de
comunicaie. Cele mai cunoscute protocoale de comunicaii sunt:
TCP/IP. Este un protocol indicat n cazul utilizrii unei reele
Ethernet sau n cazul n care calculatoarele din reea au arhitecturi
diferite;SNA. Este utilizat, n general pentru conectarea
mainframe-urilor IBM.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea5Arhitectura client/serverArhitectura client/server
este un ansamblu de trei componente principale: server, client i o
reea care conecteaz calculatoarele client la servere pentru a
colabora la ndeplinirea sarcinilor.Tipurile de aplicaii
client/server sunt:Sisteme cu baze de date Pota electronic (E-mail)
Sisteme de tip groupware Sisteme motenite O arhitectur distribuit
presupune existena unor baze de date multiple (care se gsesc pe
calculatoare distincte) i a unor aplicaii care manipuleaz datele de
la diferite staii de lucru locale cu ajutorul unor sisteme de
gestiune a bazelor de date (SGBD).
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea6Sistem client serverAutori: prof.dr. Ion Lungu,
conf.dr. Anca Andreescu, lect.dr. Alexandra Florea Interfaa
utilizator Logica aplicaiei Conectare Acces la baza de date Logica
aplicaiei Protecie i securitateCereri de
regsireActualizriRezultateCLIENTSERVER7Distribuirea datelora)
Distribuire prin fragmentare. Fragmentarea este operaia de
descompunere logic a coleciilor globale, dintr-o baz de date
distribuit, n pri disjuncte numite fragmente. Fragmentarea se
realizeaz prin intermediul unor operatori speciali aplicai
coleciilor globale. Reguli:Completitudinea Reconstrucia Disjuncia
Metode:Metoda orizontal Metoda vertical Metoda mixtaAutori:
prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra
FloreaDistribuirea datelorb) Distribuire prin replicare. Replicarea
este operaia de stocare (memorare) a unor poriuni dintr-o baz de
date, sub form de copii, pe mai multe calculatoare dintr-o reea.
Sistemul de gestiune a bazelor de date asigur automat inerea la zi
simultan a tuturor copiilor n caz de actualizare a datelor. Soluia
este util atunci cnd diferii utilizatori, de la diferite noduri de
reea, au nevoie simultan de ultimele informaii, iar baza de date
este distribuit local. Din punct de vedere al replicrii,
proiectarea replicrii se poate realiza astfel:Datele nereplicate
Datele replicate parial Datele replicate total
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaDistribuirea datelorb) Distribuire prin replicare.
Replicarea este operaia de stocare (memorare) a unor poriuni
dintr-o baz de date, sub form de copii, pe mai multe calculatoare
dintr-o reea. Sistemul de gestiune a bazelor de date asigur automat
inerea la zi simultan a tuturor copiilor n caz de actualizare a
datelor. Soluia este util atunci cnd diferii utilizatori, de la
diferite noduri de reea, au nevoie simultan de ultimele informaii,
iar baza de date este distribuit local. Din punct de vedere al
replicrii, proiectarea replicrii se poate realiza astfel:Datele
nereplicate Datele replicate parial Datele replicate total
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaDistribuirea datelorc) Distribuirea mixt. Aceast
tehnic de distribuire a datelor, aa cum indic i numele ei,
presupune aplicarea succesiv a replicrii i fragmentrii pentru
aceeai colecie de date dintr-o baz de date.d) Distribuirea prin
ncrcare. Este o tehnic mai simpl de distribuire, care const n
copierea periodic a ntregii baze de date centralizate sau a unei
poriuni din ea pe noduri locale. Tehnica se folosete atunci cnd
datele sunt stabile, deci se actualizeaz rar, sau atunci cnd nu toi
utilizatorii trebuie s aib acces la datele de ultim or.Dup alegerea
tipului de distribuire, se vor proiecta elementele specifice
fiecrui tip.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaDistribuirea datelor din catalogCatalogul bazei de
date distribuite conine:informaiile despre schema global: numele
coleciilor globale, numele caracteristicilor (cmpurilor) din
fiecare colecie;informaii despre fragmentare: calificarea
fragmentelor (pentru metoda orizontal), cmpurile din fragmente
(pentru metoda vertical), arborele de fragmentare prin calificare i
descrierea fragmentelor prin cmpuri (pentru metoda mixt).informaii
despre alocare: legturile dintre fragmentele i imaginile fizice ale
coleciilor globale, precum i legturile dintre imaginile fizice i
datele (prin numele lor) memorate pe fiecare calculator din
reea.informaii despre accesul la date: metadatele de acces
utilizate pe fiecare calculator din reea (index, hash, pointeri
etc.), restriciile de integritate impuse la descrierea datelor,
securitatea datelor (drepturi de acces etc.).informaii statistice:
indicatori statistici care dau profilul bazei de date.
.Distribuirea catalogului poate fi realizat n urmtoarele variante:
Catalogul replicat Catalogul local Catalogul centralizatCatalogul
mixt
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea Sistem distribuitDup luarea n calcul a tuturor
avantajelor i dezavantajelor diferitelor modaliti de distribuire a
sistemelor, datelor i catalogului de date i, mai ales, n funcie de
complexitatea sistemului i de cerinele beneficiarului, se va
realiza proiectarea sistemului distribuit
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaSistem cu aplicaii distribuite client serverAutori:
prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra
FloreaCLIENT12 CLIENT11 CLIENT13 CLIENT21 CLIENT22 CLIENTn
SERVER1SERVER2SERVERn14Arhitectura orientat pe servicii poate fi
vzut ca o paradigm pentru rezolvarea problemelor de integrare a
ntreprinderii la nivel de aplicaie. SOA se bazeaz pe un mecanism de
cerere/rspuns convenional: un consumator de serviciu invoc un
furnizor de serviciu prin reea i ateapt pn cnd se va realiza
operaia la furnizor. Astfel, SOA divide o aplicaie ntr-un
coordonator de serviciu, care reprezint funcionalitatea la
utilizator i furnizorii de servicii, care implementeaz
funcionalitatea. n timp ce coordonatorul tinde s fie unic pentru o
aplicaie particular, un serviciu poate fi reutilizat i partajat de
multiple aplicaii compozite.Coordonatorul serviciului, n mod
explicit, specific i invoc serviciile dorite .Arhitectura orientat
pe servciiSOA- Service Oriented ArchitectureAutori: prof.dr. Ion
Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea15n timp
ce coordonatorul tinde s fie unic pentru o aplicaie particular, un
serviciu poate fi reutilizat i partajat de multiple aplicaii
compozite.Coordonatorul serviciului, n mod explicit, specific i
invoc serviciile dorite .Arhitectura orientat pe servciiSOA-
Service Oriented Architecture
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea16O arhitectur orientat pe servicii poate aduce
multe beneficii, cum ar fi: promovarea reutilizrii, abilitatea de a
combina serviciile pentru crearea de noi aplicaii compozite,
utilizarea serviciilor decuplate prin interfaa standard, oferind n
acelai timp un comportament tehnologic pentru dezvoltare de soluii
de afaceri.Gestionarea eficient a acestor schimbri implic
utilizarea de soluii BPM, contribuind totodat la guvernare SOA i
automatizarea proceselor .Relaia dintre BPM i SOA
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea17n ceea ce privete relaia dintre Cloud Computing i
SOA / BPM se poate spune c: 1. la nivel de organizaie Cloud
Computing reprezint o extindere a SOA i 2. Cloud Computing creeaz
noi oportuniti pentru furnizorii de produse i servicii BPM. Relaia
dintre Cloud computing i SOA/BPM
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea18Arhitectur pentru servicii web care s permit
BPMS
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea19Instrumentul de modelare a afacerii. Proiectanii
i dezvoltatorii de procese de afacere pot utiliza instrumentele de
modelare pentru a crea modele de procese de afacere sau abloane.
Instrumentele de management de procese. Exist trei instrumente de
management de procese care ajut utilizatorii s coordoneze instanele
proceselor de afacere prin intermediul ciclurilor de via:
Instrumentul pentru procesarea operaiei, Instrumentul pentru
monitorizarea procesului i Instrumentul de procesare a msurrii
performanei. Motorul de execuie a proceselor de afacere. Acesta
execut procesele de afacere n concordan cu modelele de procese i
starea instanelor acestora meninut de BPMS (Business Process
Management System). Motorul de reguli de afaceri. Motorul folosete
o varietate de reguli pentru planificarea i selecia serviciilor n
timp real.Serviciile de mesagerie. Pentru a suporta tranzacii de
execuie mari, n general, se dezvolt o infrastructur de serviciu de
mesagerie care permite schimburi asincrone.Registrul de servicii
web. Un registru de servicii web (privat sau public) stocheaz
metadatele despre serviciile web publicate de aplicaiile
organizaiei sau partenerii de comer. El este folosit pentru
accesarea serviciilor web de la alte aplicaii.
Componentele arhitecturii pentru servicii web care s permit
BPMSAutori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea20Diagrama de componenteO diagram de componente
prezint dependenele existente ntre diverse componente software ce
compun un sistem informatic. Aceste dependene sunt:statice - au loc
in etapele de compilare sau link-editaredinamice - au loc in timpul
execuieiO component este un modul soft (cod sursa, cod binar, dll,
executabil etc) cu o interfa bine definit.
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaDiagrama de componenten general numele unei
componente este numele fiierului reprezentat de component.
Obiectele implementate de o instan a componentei se reprezint
grafic n interiorul simbolului instanei componentei.
Reprezentarea grafic a componentelor n UML
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra Florea
Diagrama de componenteDiagrama de componente este un graf de
componente ntre care exist relaii de dependen sau de compunere
(componente incluse fizic n alte componente).Dependenele ntre
componente se reprezint grafic prin linii ntrerupte ntre o
component client i o component furnizor de servicii, orientate spre
componenta furnizor. Relaia de dependen semnifica faptul c clasele
incluse n componenta client pot moteni, instania sau utiliza clase
incluse n componenta furnizor.De asemenea, pot exista relaii de
dependen ntre componente i interfee ale altor componente, relaii
care semnific faptul c un client utilizeaz operaii ale componentei
furnizor
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaDiagrama de componenteExemple de stereotipuri
predefinite pentru componente:programe principale ()subprograme
()pachete ()librarii cu legare dinamica ()procese ( )executabile (
Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr.
Alexandra FloreaExemplu de diagram de componenteAutori: prof.dr.
Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea
Diagrama de desfurareAutori: prof.dr. Ion Lungu, conf.dr. Anca
Andreescu, lect.dr. Alexandra FloreaDiagramele de desfurare prezint
configuraia elementelor de procesare din timpul execuiei i
componentele, procesele i obiectele care le conin.O diagram de
desfurare este un graf de noduri conectate prin asocieri de
comunicare. Un nod este o entitate fizic ce reprezint o resurs de
procesare, avnd o memorie i anumite capabiliti de procesare
(dispozitive de calcul, resurse umane, resurse de procesare
mecanic).Un nod este reprezentat grafic prin intemediul unui
paralelipiped. Un tip de nod are asociat un nume, iar o instan a
unui nod are asociate (opional) un nume de instan i un nume de tip
(nume instan : nume tip). O asociere ntre dou noduri indic existena
unei ci de comunicare ntre noduri.
Diagrama de desfurareAutori: prof.dr. Ion Lungu, conf.dr. Anca
Andreescu, lect.dr. Alexandra FloreaDiagramele de desfurare pot fi
utilizate pentru reprezentarea componentelor ce pot aparine
anumitor noduri prin imbricarea grafic a simbolului componentei n
cadrul simbolului ce reprezint nodul.ntre componente pot exista i
relaii de dependen.
Diagrama de desfurareAutori: prof.dr. Ion Lungu, conf.dr. Anca
Andreescu, lect.dr. Alexandra FloreaDiagramele de desfurare conin
dou tipuri de noduri: medii de execuie si dispozitive. Mediile de
execuie reprezint componente hardware capabile s execute programe.
Dispozitivele reprezint componente hardware fr putere de calcul.
Numele asociat unui dispozitiv este in general unul generic (ex.
imprimanta, modem, terminal etc)O conexiune reprezint o legatur
hardware (n general bidirecional) ntre dou dispozitive sau
procesoare.
Exemplu de diagram de desfurareAutori: prof.dr. Ion Lungu,
conf.dr. Anca Andreescu, lect.dr. Alexandra Florea
Diagrama de pacheteElementele din cadrul diagramelor pot fi
grupate in pachete.ntr-un pachet pot fi incluse alte pachete,
clase, cazuri de utilizare, colaborri etc. Un pachet arat doar
structurile pe care le conine, nu i comportamentul elementelor
sale. Un element de modelare aparine unui singur pachet, dar alte
pachete pot consulta acest element. Dac se arat explicit coninutul
pachetului, atunci numele pachetului se trece pe etichet.Un pachet
este un mecanism destinat unor scopuri generale, care organizeaz
elementele n grupuri. Fiecare pachet are un nume care poate fi
simplu sau cu cale (path name).
Diagrama de pacheteUn pachet poate conine clase, interfee,
componente, noduri, colaborri, cazuri de utilizare, diagrame i
chiar alte pachete. A conine este o relaie compus, ceea ce nseamn c
fiecare element este declarat n pachet. Din punct de vedere al
vizibilitii, pachetele se comport precum clasele.UML definete cinci
stereotipuri care se aplic pachetelor:facade - un pachet care este
doar o vizualizare a altui pachet;framework - un pachet care conine
n principal modele (patterns);stub - este un proxy pentru coninutul
public al altui pachet;subsystem - un pachet ce reprezint o parte
independent a sistemului modelat;system - un pachet ce reprezint
tot sistemul modelatExemplu de diagram de pachete
Figura 7.27. Diagrama pachet (Package Diagram)