43
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 A. Arhitectura client server B. Arhitecturi distribuite C. Arhitectura orientată pe servicii Diagrama de componente Diagrama de desfăşurare Diagrama de pachete Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

  • Upload
    vobao

  • View
    338

  • Download
    8

Embed Size (px)

Citation preview

Page 1: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

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

A. Arhitectura client server

B. Arhitecturi distribuite

C. Arhitectura orientată pe servicii

Diagrama de componente

Diagrama de desfăşurare

Diagrama de pachete

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 2: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Aspecte generale ale proiectării sistemelor informatice

• Proiectarea sistemului informatic constă în stabilirea soluţiilor logice şi specificarea din punct de vedere fizic a componentelor noului sistem.

• Proiectarea se bazează în principal pe rezultatele obţinute din cele două grupe de activităţi premergătoare: definirea soluţiei de realizare a noului sistem modelarea noului sistem

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 3: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Obiectivele proiectarii

Activitati de analiza Obiective: sa inteleaga: • Evenimentele si

procesele din companie • Activitatile sistemului si

cerintele de procesare • Stocarea si necesarul de

informatii

Activitati de proiectare Obiective: • Sa defineasca, sa

organizeze, sa structureze componentele sistemului solutie

Modele de analiza

Documente

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 4: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Aspecte generale ale proiectării sistemelor informatice

• Unele metodologii împart proiectarea sistemelor informatice în: A. proiectare generală/proiectare de ansamblu /

conceperea sistemului informatic B. proiectarea de detaliu – include proiectarea detaliilor

specifice ale programelor: i. Proiectarea fiecarui caz de utilizare ii. Proiectarea bazei de date iii. Proiectarea interfetelor cu utilizatorul si cu alte sisteme iv. Proiectarea controlului si a securitatii

• Î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, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 5: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Principiul proiectării eşalonate a sistemelor informatice

La stabilirea ordinii de prioritate în abordarea structurilor sistemului informatic pot fi avute în vedere următoarele criterii: prioritatea obiectivelor componentelor; asigurarea legăturilor î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 prevăzut a fi atins în timp; forţele de proiectare pe care le va antrena proiectul; personalul de specialitate existent şi în pregătire, la

unitatea beneficiară, necesar pentru implementarea şi exploatarea curentă a sistemului informatic).

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 6: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Intrebari cheie ale activitatii de proiectare

Activitate de proiectare Intrebare

Proiectarea mediului de executie A fost specificat in detaliu mediul de executie software cu toate optiunile?

Proiectarea arhitecturii aplicatiei si software-lui

Au fost specificate in detaliu toate elementele software-lui si cum va fi realizat fiecare caz de utilizare?

Proiectarea interfetelor cu alte sisteme A fost specificat in detaliu modul in care sistemul va comunica cu toate celelalte sisteme din interior/exteriorul organizatiei?

Proiectarea bazei de date Au fost specificate in detaliu toate cerintele de stocare ale datelor, inclusiv toate elementele schemei BD?

Proiectarea controalelor si securitatii sistemului

Au fost specificate in detaliu toate elementele pentru a asigura siguranta sistemului, securitatea si protectia datelor?

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 7: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

i. Proiectarea mediului

MEDIUL reprezinta toate tehnologiile necesare pentru a sustine aplicatia software Calculatoare server sau desktop

Dispozitive mobile, sisteme de operare

Facilitati de comunicatie, de intrare si de iesire

Se mai numeste si Arhitectura tehnica

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 8: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

ii. Proiectarea arhitecturii aplicatiei si software-lui

Impartirea sistemului in subsisteme

Definirea arhitecturii software

Pe trei niveluri sau model-view-controller

Proiectarea detaliata a fiecarui caz de utilizare

diagrame de clase de proiectare

diagrame de secvente

diagrame de stari

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 9: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

iii. Proiectarea interfetelor cu utilizatorii

Proiectarea dialogului pleaca de la cerinte

Fluxul de activitati din cazurile de utilizare

Diagramele de secventa ale sistemului

In prezent este necesara proiectarea de interfete pentru diverse medii si dispozitive: Telefoane smart

Tablete, iPad, etc

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 10: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

iv. Proiectarea interfetelor cu alte sisteme

Sistemul informatic interactioneaza cu alte sisteme interne sau externe, fiind necesara integrarea acestora

Conectarea la alte sisteme se poate realiza in multiple feluri: Se pot salva datele utilizate de alte sisteme

Se pot utiliza date salvate din alte sisteme

Se pot face solicitari de informatii in timp real

Se poate apela la servicii software

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 11: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

iv. Proiectarea bazei de date

Se pleaca de la modelul claselor domeniului

Se alege structura bazei de date

De obicei se lucreaza cu baze de date relationale, dar pot exista platforme care lucreaza cu baze de date orientate obiect

Se proiecteaza arhitectura BD (distribuita, etc)

Se proiecteaza schema bazei de date

Tabelele si coloanele in relational

Se proiecteaza restrictiile de integritate referentiala

Referinte prin chei externe

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 12: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

v. Proiectarea securitatii si controalelor

Scopul este de a proteja bunurile companiei

Este un element crucial in Internet si retele wireless

Se vor proiecta controale la nivel de: Interfata cu utilizatorul

Aplicatie

Baza de date

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 13: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Modele de analiza si modele de proiectare

Diagrame de clase

Diagrame de cazuri de utilizare

Diagrame de secvente

Descrieri ale cazurilor de

utilizare

Diagrame de stari

Diagrame de activitati

Diagrame de pachete

Diagrame de clase -

proiectare

Diagrame de secvente

Schema bazei de date

Interfata cu utilizatorul

Diagrama de componente

Diagrama de desfasurare

Securitatea si controlul

sistemului

ANALIZA PROIECTARE

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 14: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Proiectarea arhitecturii tehnice (mediului)

1. Proiectarea unui sistem cu implementare interna

a. Sisteme software stand alone - care ruleaza pe un singur dispozitiv, fara conectare la retea

b. Sisteme software bazate pe o retea interna – Arhitectura client-server, retea LAN

Aplicatii desktop si aplicatii bazate pe browser

c. Arhitecturi client server pe trei niveluri

Nivelul datelor, nivelul aplicatiei si nivelul prezentare

Aplicatii desktop si aplicatii bazate pe browser

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 15: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Proiectarea arhitecturii tehnice

2. Proiectare pentru implementare externa Configurare pentru implementare pe Internet – cu

avantaje si riscuri Alternative de gazduire pentru implementare pe

Internet Colocatie Servicii de management Servere virtuale Cloud computing

Diversitatea dispozitivelor client Laptop, tablete si notebook, telefon smart etc Autori: prof.dr. Ion Lungu, conf.dr. Anca

Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 16: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Configuratie pentru implementare in Internet

Avantaje Accesibilitate numar mare de utilizatori potentiali Costuri reduse ale comunicatiei Standarde utilizate pe scara larga – standarde Web

arhicunoscute Probleme potentiale:

Securitate – brese de Securitate pe serverele Web, atacuri hacker https – Hypertext Transfer Protocol Secure TLS – Transport Layer Security – ver. avansata a protocolului de retea

SSL Volumul datelor trasmise prin retea - daca traficul este

incarcat, volumul datelor transmise si durata sunt ridicate

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 17: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Proiectare pentru mediu distribuit, la distanta

Se folosesc doua interfete ale aceleiasi aplicatii Web pentru utilizare interna, respective externa

Securitate mai redusa

Virtual private network (VPN) Retea inchisa cu securitate si acces inchis construita pe

baza unei retele publice (Internet)

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 18: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Proiectarea arhitecturii sistemului informatic

Cele mai cunoscute tipuri de reţele sunt: Reţea punct la punct bus ;

Reţea inel (ring);

Reţea stea star ;

Reţea ierarhică.

După alegerea tipului de reţea, echipa de analiză trebuie să identifice protocolul de comunicaţie. Cele mai cunoscute protocoale de comunicaţii sunt: TCP/IP. Este un protocol indicat în cazul utilizării unei

reţele Ethernet sau în cazul în care calculatoarele din reţea au arhitecturi diferite;

SNA. Este utilizat, în general pentru conectarea mainframe-urilor IBM.

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 19: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

A. Arhitectura client/server

Arhitectura client/server este un ansamblu de trei componente

principale: server, client şi o reţea care conectează calculatoarele client la servere pentru a colabora la îndeplinirea sarcinilor.

Tipurile de aplicaţii client/server sunt: Sisteme cu baze de date

Poşta electronică E-mail)

Sisteme de tip „groupware“

Sisteme moştenite

O arhitectură distribuită presupune existenţa unor baze de date multiple care se găsesc pe calculatoare distincte şi a unor aplicaţii care manipulează datele de la diferite staţii de lucru locale cu ajutorul unor sisteme de gestiune a bazelor de date

(SGBD).

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 20: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Sistem client server

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

• Interfaţa utilizator • Logica aplicaţiei

• Conectare • Acces la baza de date • Logica aplicaţiei • Protecţie şi securitate

Cereri de regăsire Actualizări

Rezultate

CLIENT SERVER

Page 21: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

B. Arhitecturi distribuite - Distribuirea datelor

a) Distribuire prin fragmentare Reguli:

Completitudinea Reconstrucţia Disjuncţia

Metode: Metoda orizontală Metoda verticală Metoda mixta

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 22: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Distribuirea datelor

b) Distribuire prin replicare. Soluţia este utilă atunci când diferiţi utilizatori, de la

diferite noduri de reţea, au nevoie simultan de ultimele informaţii, iar baza de date este distribuită local.

Din punct de vedere al replicării, proiectarea replicării se poate realiza astfel: Datele nereplicate Datele replicate parţial Datele replicate total

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 23: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Distribuirea datelor

c) Distribuirea mixtă. d) Distribuirea prin încărcare.

Tehnica se foloseşte atunci când datele sunt stabile, deci se actualizează rar, sau atunci când nu toţi utilizatorii trebuie să aibă acces la datele de ultimă oră.

După alegerea tipului de distribuire, se vor

proiecta elementele specifice fiecărui tip.

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 24: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Distribuirea datelor din catalog

Catalogul bazei de date distribuite conţine: informaţiile despre schema globală: numele colecţiilor globale, numele

caracteristicilor câmpurilor din fiecare colecţie; informaţii despre fragmentare: calificarea fragmentelor (pentru metoda

orizontală , câmpurile din fragmente pentru metoda verticală , arborele de fragmentare prin calificare şi descrierea fragmentelor prin câmpuri pentru metoda mixtă .

informaţii despre alocare: legăturile dintre fragmentele şi imaginile fizice ale colecţiilor globale, precum şi legăturile dintre imaginile fizice şi datele prin numele lor memorate pe fiecare calculator din reţea.

informaţii despre accesul la date: metadatele de acces utilizate pe fiecare calculator din reţea index, hash, pointeri etc. , restricţiile de integritate impuse la descrierea datelor, securitatea datelor (drepturi de acces etc.).

informaţii statistice: indicatori statistici care dau profilul bazei de date. . Distribuirea catalogului poate fi realizată în următoarele

variante: Catalogul replicat Catalogul local Catalogul centralizat Catalogul mixt

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 25: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Sistem distribuit

După luarea în calcul a tuturor avantajelor şi dezavantajelor diferitelor modalităţi de distribuire a sistemelor, datelor şi catalogului de date şi, mai ales, în funcţie de complexitatea sistemului şi de cerinţele beneficiarului, se va realiza proiectarea sistemului distribuit

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 26: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Sistem cu aplicaţii distribuite client server

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

CLIENT12

CLIENT11

CLIENT13 CLIENT21 CLIENT22 CLIENTn

SERVER1

SERVER2

SERVERn

Page 27: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

SOA se bazează pe un mecanism de cerere/răspuns convenţional: un consumator de serviciu invocă un furnizor de serviciu prin reţea şi aşteaptă până când se va realiza operaţia la furnizor.

Astfel, SOA divide o aplicaţie într-un coordonator de serviciu, care reprezintă funcţionalitatea la utilizator şi furnizorii de servicii, care implementează funcţionalitatea.

C. Arhitectura orientată pe servicii

SOA- Service Oriented Architecture

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 28: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

În timp ce coordonatorul tinde să fie unic pentru o aplicaţie particulară, un serviciu poate fi reutilizat şi partajat de multiple aplicaţii compozite.

Coordonatorul serviciului, în mod explicit, specifică şi invocă serviciile dorite .

Arhitectura orientată pe servcii

SOA- Service Oriented Architecture

Cerere

RăspunsFuncţionalitatea

utilizator

Consumatorul

de serviciu

Implementarea

funcţionalităţii

Furnizorul

de serviciu

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 29: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

O arhitectură orientată pe servicii poate aduce multe beneficii, cum ar fi: promovarea reutilizării, abilitatea de a combina serviciile pentru crearea de noi aplicaţii compozite, utilizarea serviciilor decuplate prin interfaţa standard, oferind în acelaşi timp un comportament tehnologic pentru dezvoltare de soluţii de afaceri.

Gestionarea eficientă a acestor schimbări implică utilizarea de soluţii BPM, contribuind totodată la guvernare SOA şi automatizarea proceselor .

Relaţia dintre BPM şi SOA

Procese şi servicii de

afacere compozite

(BPM)

Procese şi servicii de

afacere compozite

(BPM)

Direcţia afacerii în privinţa

evaluării IT necesare pentru executarea funcţiilor de afacere

Direcţia afacerii în privinţa

evaluării IT necesare pentru executarea funcţiilor de afacere

Servicii compozite IT

(SOA)

Servicii compozite IT

(SOA)Modelare orientată

pe servicii

Agilitatea afacerii

O arhitectură IT flexibilă,

uşor şi rapid de adaptat la

schimbările cerute de afacere

O arhitectură IT flexibilă,

uşor şi rapid de adaptat la

schimbările cerute de afacere

Flexibilitate IT

Mediul operaţionalMediul operaţional

Procese şi servicii de afacereProcese şi servicii de afacere

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 30: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

În ceea ce priveşte relaţia dintre Cloud Computing şi SOA / BPM se poate spune că: 1. la nivel de organizaţie Cloud Computing reprezintă o extindere a SOA şi 2. Cloud Computing creează noi oportunităţi pentru furnizorii de produse şi servicii BPM.

Relaţia dintre Cloud computing şi SOA/BPM M

od

ele

de

de

zvo

ltare

Mo

dele

de

serv

icii

Cloud Computing

La

ce

rere

Service

Oriented

Architecture

(SOA)

Servic

iuP

latformă

Infrastru

ctură

Platforme

Maşini

virtuale

şi fizice

Cloud

public

Cloud

privat

Cloud

hibrid

Cloud

comunitate

IaaS

Management

PaaS

Management

SaaS

Management

Infrastructure as a Services (IaaS)

Platform as a Services (PaaS)

Software as a Services (SaaS)

Servere Reţea StocareSisteme de

operareCalcul

Mediu de

programareMiddleware

Baze de

date

Mediu de

execuţie

Aplicaţii Procese de

afacereColaborare

Informaţii student

Aplicaţiiorientate pe

serviciu

Business

Process

Management

(BPM)

Orchestrarea

proceselor

de afacere

Modelarea,

simularea,

reproiectarea

Monitorizare

Managementul

conturilor

Managementul

ciclului de

viaţă

Monito

rizarea

perfo

rmanţelo

r

Imple

men

tarea

pro

cesulu

i

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 31: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Arhitectură pentru servicii web care să permită BPMS

Definiţiile proceselor

de afacere &

Regulile de afacere

Instrumentul

de modelare

a proceselor

Instanţele procesului

de afacere

Instrumentul de

management

al procesului

Motorul de execuţie

al procesului

Motorul de reguli

de afacere

Registrul

serviciilor Web

Internet Intranet

Aplicaţii ale

partenerilor de afaceri

ERP, Sisteme legale

şi flux de lucru

:Interfeţe

Servicii Web

Servicii de mesagerie

Utilizatorii/managerii

de afacere

Dezvoltatorii de

procese de afacere

Execuţia şi monitorizarea

procesului de afacere

Definirea procesului

de afacere şi analize ale lui

internet intranet

serviciilor webRegistrul

serviciilor web

internet intranet

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 32: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de componente

O diagramă de componente prezintă dependenţele existente între diverse componente software ce compun un sistem informatic.

Aceste dependențe sunt: statice - au loc in etapele de compilare sau link-editare dinamice - au loc in timpul execuţiei

O componentă este un modul soft (cod sursa, cod binar, dll, executabil etc) cu o interfaţă bine definita(API)

API – Application Program Interface - setul de metode publice disponibile din exterior

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 33: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de componente

În general numele unei componente este numele fişierului reprezentat de componentă.

Obiectele implementate de o instanţă a componentei se reprezintă grafic în interiorul simbolului instanţei componentei.

Reprezentarea grafică a componentelor în UML

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 34: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de componente

Diagrama de componente este un graf de componente între care există relaţii de dependenţă sau de compunere (componente incluse fizic în alte componente).

Dependenţele între componente se reprezintă grafic prin linii întrerupte între o componentă client şi o componentă furnizor de servicii, orientate spre componenta furnizor.

Relaţia de dependenţă semnifica faptul că clasele incluse în componenta client pot moşteni, instanţia sau utiliza clase incluse în componenta furnizor.

De asemenea, pot exista relaţii de dependenţă între componente şi interfeţe ale altor componente, relaţii care semnifică faptul că un client utilizează operaţii ale componentei furnizor

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 35: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de componente

Exemple de stereotipuri predefinite pentru componente: programe principale (<<Main Program>>)

subprograme (<<SubProgram>>)

pachete (<<Package>>)

Biblioteci cu legare dinamica (<<DLL>>)

procese ( <<Task>> )

executabile ( <<EXE>>

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 36: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Exemplu de diagramă de componente

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 37: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de desfăşurare

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Diagramele de desfăşurare prezintă configuraţia elementelor de procesare din timpul execuţiei şi componentele, procesele şi obiectele care le conţin.

O diagramă de desfăşurare este un graf de noduri conectate prin asocieri de comunicare.

Un nod este o entitate fizică ce reprezintă o resursă de procesare, având o memorie şi anumite capabilităţi 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 opţional un nume de instanţă şi un nume de tip (nume instanţă : nume tip). O asociere între două noduri indică existenţa unei căi de comunicare între noduri.

Page 38: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de desfăşurare

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Diagramele de desfăşurare pot fi utilizate pentru reprezentarea componentelor ce pot aparţine anumitor noduri prin imbricarea grafică a simbolului componentei în cadrul simbolului ce reprezintă nodul.

Între componente pot exista şi relaţii de dependenţă.

Page 39: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de desfăşurare

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Diagramele de desfăşurare conţin două tipuri de noduri: medii de execuţie si dispozitive. Mediile de execuţie reprezintă componente hardware

capabile să execute programe.

Dispozitivele reprezintă componente hardware fără 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 bidirecţională între două dispozitive sau procesoare.

Page 40: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Exemplu de diagramă de desfăşurare

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 41: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de pachete

Elementele din cadrul diagramelor pot fi grupate in pachete. Într-un pachet pot fi incluse alte pachete, clase, cazuri de

utilizare, colaborări etc. Un pachet arată doar structurile pe care le conţine, nu și

comportamentul elementelor sale. Un element de modelare aparţine unui singur pachet, dar alte

pachete pot consulta acest element. Dacă se arată explicit conţinutul 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).

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 42: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Diagrama de pachete

Un pachet poate conţine clase, interfeţe, componente, noduri, colaborări, cazuri de utilizare, diagrame şi chiar alte pachete. „A conţine“ este o relaţie compusă, ceea ce înseamnă că fiecare element este declarat în pachet.

Din punct de vedere al vizibilităţii, pachetele se comportă precum clasele.

UML defineşte cinci stereotipuri care se aplică pachetelor: facade - un pachet care este doar o vizualizare a altui pachet; framework - un pachet care conţine în principal modele (patterns); stub - este un proxy pentru conţinutul public al altui pachet; subsystem - un pachet ce reprezintă o parte independentă a

sistemului modelat; system - un pachet ce reprezintă tot sistemul modelat

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea

Page 43: Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... - Curs 9 Proiectarea arhitecturii... · Curs 9 ² Proiectarea arhitecturii sistemelor informatice ... un serviciu poate

Exemplu de diagramă de pachete

Autori: prof.dr. Ion Lungu, conf.dr. Anca Andreescu, conf. dr Ramona Bologa, lect.dr. Alexandra Florea