PSI - Curs 9 Proiectarea Arhitecturii_v3

32
Curs 9 – Proiectarea arhitecturii sistemelor informatice Cuprins Aspecte generale ale proiectării sistemelor informatice Principiul proiectării eşalonate a sistemelor informatice Proiectarea arhitecturii sistemului informatic Arhitectura client server Arhitecturi distribuite Arhitectura orientată pe servicii Diagrama de componente Diagrama de desfăşurare Diagrama de pachete Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, lect.dr. Alexandra Florea

description

PSI

Transcript of PSI - Curs 9 Proiectarea Arhitecturii_v3

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)