Managementul Intreprinderilor

Download Report

Transcript Managementul Intreprinderilor

Arhitecturi Orientate pe Servicii (SOA)
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Introducere in SOA:
1. Ce este SOA?
2. Care sunt beneficiile utilizarii SOA?
3. Proprietati ale implementarii SOA
1. Ce este SOA?
SOA este o arhitectura orientata pe servicii.
Este mai mult o arhitectura deca un produs.
SOA este o arhitectura ce ajuta atat mediul Business cat si cel IT sa lucreze
impreuna si sa creeze o arhitectura IT in modul in care mediul Business are
nevoie.
Introducere in SOA:
1. Ce este SOA?
2. Care sunt beneficiile utilizarii SOA?
3. Proprietati ale implementarii SOA
1. Care sunt beneficiile utilizarii SOA?
1. Beneficii in domeniul Business:
1. Eficienta – transforma procesul business, dintr-un proces greoi intr-un
proces rapid si eficient, ce foloseste servicii cu un cost redus al
mentenantei
2. Adaptabilitate – se pot face schimbari ale sistemului cu un minim de
efort si complexitate, in mai putin timp si cu mai putini bani
2. Beneficii in domeniul IT:
1. Complexitate redusa – avem compatibilitate bazata pe standarde
versus o integrare pas cu pas, care reduce complexitatea
2. Resurse refolosite – se pot refolosi resursele deja create, reducandu-se
astef costurile pentru maintenanta si integrare
Introducere in SOA:
3. Proprietati ale implementarii SOA?
1. Cost scazut
2. Agilitate
3. Adaptabilitate
Servicii – compente ce pot fi
refolosite si reprezinta taskuri
business:
1.
2.
3.
4.
Verificare client
Verificare cont
Validare card
Rezervare hotel
5. Calcularea dobanzii
Influenta folosirii arhitecturii SOA asupra Serviciilor:
1. Serviciile si Costul scazut
2. Serviciile si Agilitatea
3. Serviciile si Adaptabilitatea
Introducere in SOA:
Serviciile si Costul scazut
Aplicatie de procesare
a comenzilor
Aplicatie pentru facturi
Aplicatie CRM
Cautare
Client-2
Cautare
Client-1
Cautare
Client-3
Serviciu
Cautare
Client
Un serviciu cu
acceasi functionalitate poate fi
Implementat si
folosit de toate
cele 3 aplicatii
Introducere in SOA:
Serviciile si Agilitatea
Aplicatie de procesare
a comenzilor
Aplicatie pentru facturi
Aplicatie de procesare
a comenzilor
Cautare
Client-2
Aplicatie CRM
Noua aplicatie poate
sa foloseasca
servicii deja create.
Aplicatie de Management
Cautare
Client-1
Cautare
Client-3
Serviciu
Cautare
Client
Serviciu
Verificare
Credit
Serviciu
Serviciu
Cautare
Cautare
Client
Element
Serviciu
Verificare
Inventar
Noile servicii pot fi
utilizate si de
alte aplicatii.
Un serviciu cu
acceasi functionalitate poate fi
Serviciu
Implementat si
Verificare
folosit de toate
Camera
cele 3 aplicatii
Introducere in SOA:
Serviciile si Adaptabilitatea
Aplicatie de procesare
Aplicatie
de procesare
a comenzilor
a comenzilor
Aplicatie pentru facturi
Aplicatie CRM
Infrastructura SOA
ofera un mecanism
standard de
comunicare intre
aplicatii si servicii.
Cautare
Client-2
Cautare
Client-1
Cautare
Client-3
Infrastructura SOA
Serviciu
Cautare
Client
Serviciu
Serviciu
Serviciu Cautare
VerificareClient Cautare
Element
Credit
Serviciu
Verificare
Inventar
Modifcarile asupra
serviciilor nu au nici
un potential impact
Un serviciu cu
asupra aplicatiilor
acceasi functionaliexistente ce le
tate poate fi
folosesc
Implementat si
folosit de toate
cele 3 aplicatii
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Concepte SOA:
1. SOA ofera arhitectura completa pentru un sistem
SOA reprezinta un pattern/ stil /paradigma si nu insasi arhitectura sistemului.
Un pattern arhitectural ofera ghidaj – elementele concrete si interactiunea lor
reprezinta arhitectura sistemului
SOA nu poate fi cumparat incluzand calitatea sistemului (care trebuie construita pe
arhitectura sistemului), deciziile care trebuie luate(design-ul pentru servicii,
implementarea, tehnologiile)
Concepte SOA:
2. SOA reprezinta Standarde si Standardele sunt ceea ce avem nevoie
Lucrul bun in ceea ce priveste standardele, este ca sunt atat de multe incat
avem de unde alege.
Acest concept gresit vine de la faptul ca SOA si Serviciile Web sunt considerate
ca fiind acelasi lucru.
Standardele de tipul BASIC sunt stabile: WSDL, SOAP, XML
Concepte SOA:
3. Folosind XML si WSDL ni se garanteaza interoperabilitatea intre servicii
Serviciile Web ofera interoperabilitate sintactica:
• Schemele XML definsc structuri si tipuri de date
• WSDL – definesc structuri si tipuri de date
Serviciile Web nu garanteaza interoperabilitatea semantica:
• XML si WSDL nu definesc ceea ce inseamna datele
• WSDL nu defineste ceea ce defineste un serviciu
Interoperabilitatea are nevoie atat de semantica cat si de sintaxa.
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Evolutia SOA:
Etapa1: Nu existau sisteme bazate pe Internet
Organizatia 1
Sistem de
Management
al comenzilor
Singura legatura intre
sisteme care nu apartin
aceleeasi organizatii
se facea prin intermediul
disketelor sau a altor
tipuri de elemente de
stocare a datelor
Organizatia 2
Sistem de
validare a
cardurilor
Sistem
financiar
Singura legatura intre
cele doua organizatii
este prin intermediul
Email-ului sau telefonului
Evolutia SOA:
Etapa2: Existenta Sistemelor Distribuite
Organizatia 1
Sistemele
interne
sunt conectate
via Internet
Sistem de
Management
al comenzilor
Sistem
financiar
Aplicatiile pot
interactiona cu
diferite sisteme
via internet
Organizatia 2
Serviciu
Verificare
Credit
Aplicatie de
procesare
a comenzilor
Aplicatiile pot
interactiona cu
diferite sisteme
via internet
Nu toate organizatiile au optiuni de conectivitate
pentru aplicatii
Evolutia SOA:
Etapa3: Existenta Sistemelor bazate pe SOA
Aplicatiile noi pot fi create usor folosind
functionalitati existente
Organizatia 1
Sistem de
Management
al comenzilor
Aplicatie de
procesare
a comenzilor
Sistem
financiar
Aplicatiile pot
interactiona cu
sistemele interne
prin interfete
standard
Aplicatie CRM
Organizatiile
Externe
pot accesa
functionalitati
interne
Organizatia 2
Serviciu
Verificare
Credit
Aplicatiile pot
interactiona cu
sistemele interne
prin interfete
standard
Organizatia
Clientilor
Aplicatie de
plasare
a comenzilor
Aplicatiile pot procesa automat utilizand
functionalitati externe
Evolutia SOA:
Trei elemente de baza pentru suportul Etapei3
1. Descoperirea Serviciilor
•
Descrierea serviciilor si maintenata devin un challenge
2. Compozitia Serviciilor
•
Serviciile sunt integrate in aplicatii
•
Provocare: Managementul tranzactiilor si conversiilor
3. Invocarea Serviciilor
•
Serviciile sunt invocate, iar codul lor este executat
Evolutia SOA:
Descoperirea Serviciilor
Developerii aplicatiilor
(sau aplicatiile) pot cauta
in registri serviciile care
se potrivesc cel mai bine
scopurilor lor.
Este vreun serviciu care
Sa poata returna toate
Informatiile legate de un
Client daca este dat
ID-ul sau?
Aplicatie de
procesare
a comenzilor
Aplicatie de
Billing
Serviciile sunt
Inregistrate intr-un
Registru de Servicii
Care face parte din
Infrastructura SOA
Sistem de
Management
al comenzilor
Sistem
financiar
Sistem de
Management
al clientilor
Pentru managementul
Clientilor sunt 2
servicii:
-Cautare clienti
- Informatii clienti
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Arhitectura bazata pe componente
O arhitectura bazata pe componente este o arhitectura in care functionalitatea
intregului este impartita in functii mult mai mici, fiecare incapsulata intr-o
componenta.
Un sistem distribuit este o extensie a arhitecturii bazate pe componente la
componente care ar putea exista in locatii fizice diferite.
Un exemplu simplu de sistem distribuit, care are la baza o arhitectura bazata pe
componente este arhitectura email-ului. In aceasta arhitectura interactionaeza Clienti
de Desktop, un serviciu DNS si servere de email. Toate intereractioneaza reciproc,
dar de multe ori se afla in locatii fizice diferite.
Aceasta arhitectura se incadreaza ca o implementare a SOA.
Arhitectura bazata pe componente
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Mecanisme de implementare SOA
1. Servicii Web
Serviciile Web reprezinta un mecanism de implementare a unui mecanism bazat pe o
SOA.
• Interfetele Serviciilor sunt descrise cu ajutorul Web Services Description Language
(WSDL)
• Datele sunt transmise utilizand SOAP prin protocolul HTTP
• UDDI este folosit optional ca si “directory service”
Deoarece este cel mai comun mecanism est e de multe ori echivalat cu SOA.
Mecanisme de implementare SOA
Structura Protocolului Serviciilor Web
Standardele ingrosate sunt cele
mai folosite standarde
Structura
de baza
Mecanisme de implementare SOA
2. Protocolul HTTP
• cel mai utilizat protocol Internet
• metoda principala de transmitere a informatiei
pe Web
• protocol de tip cerere-raspuns intre clienti si
servere
• comunicarea client-server se realizeaza prin
intermediul unei conexiuni TCP(Transmission
Control Protocol) la un anumit port
Avantajul folosirii HTTP in WebServices: Portul TCP 80 este in
permaneta deschis
Mecanisme de implementare SOA
3. WSDL
• Web Services Description Language
• Limbaj bazat pe XML
• Permite specificarea modului de accesare a serviciilor web
• Permite descrierea serviciilor web
• Structura: portType, message, types, binding
Mecanisme de implementare SOA
3. WSDL
Structura de baza a unui WSDL:
Tipuri de date definite utilizand XML
Mesaje definite cu parametri
(bazati pe tipuri)
Definire operatii bazate pe
Mesaje(in/out)
Operatii redefinite bazate pe
mecanismul de binding
Localizarea serviciului
Mecanisme de implementare SOA
3. WSDL: exemplu
Mecanisme de implementare SOA
4. SOAP
• Simple Object Access Protocol
• Format pentru trimiterea de mesaje bazat pe XML
• Protocol de comunicare intre aplicatii (via Internet)
• Independent de platforma sau limbaj
• Simplu si extensibil: envelope, header, body, fault
• Permite evitarea firewall-urilor
• Standard W3C
Mecanisme de implementare SOA
4. SOAP : exemplu
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Implementari SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Implementari SOA
8 pasi pentru o implementare SOA de succes:
1.
Planificati viitorul – identificati obiectivele IT si creati o lista a celor mai noi si perfomante
organizatii pe care le tintiti
2.
Definiti componentele – este esential sa definiti componentele de business si de infrastructura si
persoanele care sa fie asignate fiecarei dintre aceste componenete
3.
Puneti la punct detaliile – creati descrieri detaliate ale tuturor componentelor, serviciilor si
framework-urilor implicate in structura finala a SOA
4.
Determinati interdependentele – stabiliti interdependentele dintre toate componentele, serviciile
si framework-urile pe care le-ati definit
5.
Creati un traseu al valorilor – calculati cresterile inregistrate in tehnologie, cheltuiti pentru a
atinge obiectivele SOA si aratati cum vor scadea costurile operationale in timp
6.
Accentuati lantul valorilor de business – precizati toate activitatile si functiile corporatise care
vor avea de suferit si ce legatura exista intre acestea
7.
Determinati un model al serviciilor de informatie – realizati o imagine de ansamblu a serviciilor
de informatie, de la stocarea lor si pana la modalitatile de aplicare a acestora, incluzand orice
nivel de translatii
8.
Construiti un model de business si infrastructura – determinati modul in care componentele,
serviciile si framework-urile pot functiona armonios atunci cand SOA este pus in aplicare
Implementari SOA
Microsoft:
Cum pot fi utilizate informaţiile şi datele într-un proiect arhitectural SOA?
SOA reprezintă o nouă abordare a IT-ului, nu mai deţinem informaţii şi
aplicaţii izolate, ci deţinem servicii pe care le putem pune la dispoziţia întregii
organizaţii. Schimbarea de viziune reprezintă pasul uriaş către IT
Governance, promisiunea făcută de SOA este foarte puternică, iar iniţiativa
SOA fără un IT Governance care să stabilească foarte clar rolurile,
responsabilităţile şi deciziile asociate cu serviciile oferite poate deraia foarte
uşor
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Infrastructura SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Exemple
Implementarea unui ERP
Exemple
Studiu de caz: Sistemul de laborator dintr-un spital
• Informatia este impartita intre mai multe sisteme
• Este nevoie de mediul SOA pentru a functionare mai rapida
a sistemului
Agenda:
1. Introducere in SOA
2. Concepte SOA
3. Evolutia SOA
4. Arhitectura bazata pe componente
5. Mecanisme de implementare SOA:
1. Servicii Web
2. WSDL
3. SOAP
6. Infrastructura SOA
7. Exemple:
1. Implementare ERP
2. Studiu de caz: Sistemul de laborator dintr-un spital
8. Concluzii
Concluzii
SOA reprezinta un adevarat potential pentru folosirea aplicatiilor de catre un numar
mare de utilizatori.
SOA promoveaza asamblarea aplicatiilor folosind servicii deja existente.
Serviciile Web vs. SOA:
-
Exista doua pareri:
1. SOA se refera la Serviciile Web – W3C
-
Arhitectura de referinta a serviciilor web este la baza SOAP si
WSDL
2. SOA nu este echivalenta cu Serviciile Web
-
Serviciile web sunt o instanta a SOA cu SOAP si WSDL
-
SOA este un concept, nu este legat de o tehnologie anume