1 / 17

SOA Service-Oriented Architecture -Notiuni de baza-

SOA Service-Oriented Architecture -Notiuni de baza-. Cristina Surdu 341 C5. Cuprins. Istoric Definire Caracteristici Principiile SOA Componentele de baza Avantaje SOA Bibliografie. Istoric SOA.

blake
Download Presentation

SOA Service-Oriented Architecture -Notiuni de baza-

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. SOAService-Oriented Architecture-Notiuni de baza- Cristina Surdu 341 C5

  2. Cuprins • Istoric • Definire • Caracteristici • Principiile SOA • Componentele de baza • Avantaje SOA • Bibliografie

  3. Istoric SOA • Termen introdus de Yefim Natis intr-o lucrare de cercetare (1994): SOA este o arhitectura software care porneste de la o definitie de interfata si construieste intreaga topologie a aplicatiei ca o topologie de interfete, implementari de interfete si apeluri de interfete • A devenit popular numai la inceputul anilor 2000 -> o data cu aparitia serviciilor Web si proceselor de business care respecta WSDL

  4. Definire SOA -un stil arhitectural- • Stil de design care ghideaza toate aspectele crearii si utilizarii serviciilor prin tot ciclul lor de viata (de la conceptie la retragere). • Modalitate de a defini si oferi o infrastructura IT pentru a permite aplicatiilor diferite sa schimbe date si sa participe la procese, indiferent de sistemul de operare si indiferent de limbajele de programare care stau la baza acestor aplicatii • O abordare de constructie a sistemelor IT in care primeaza necesitatea pentru business

  5. Caracteristici SOA • Functionalitateaunei aplicatiieste impartitain unitati mai mici, distincte (servicii) care pot fi distribuite intr-o retea si pot fi utilizate impreuna pentru a crea aplicatii destinate afacerilor • Promoveaza reutilizarea software-ului • Deseori vazuta ca o evolutie a programarii distribuite si a programarii modulare.

  6. Caracteristici SOA(2) -Servicii- • Unitati functionale neasociate care nu au apeluri unele catre altele inglobate in ele => sunt implementate functionalitati pe care majoritatea oamenilor le-ar recunoaste ca si serviciu • Nu au in codul propriu implementat modul in care acestea sa comunice intre ele (acest lucru este implementat in cadrul protocoalelor)

  7. Principiile SOA • Explicit boundaries: cand este nevoie de functionalitatile unui anumit serviciu, sa fie oferite & accesul la serviciu sa fie numai prin interfata sa publica • Shared Contract and Schema, not Class: serviciul trebuie sa vina impreuna cu o descriere (contract) => ofera consumatorului si providerului toate informatiile necesare despre serviciu

  8. Principiile SOA(2) • Policy-driven: pentru a interactiona cu un serviciu: functionalitatea, semantica si sintaxa providerului trebuie sa corespunda cerintelor utilizatorului & toate nevoile si capacitatile tehnice trebuie sa se potriveasca; • Autonomy: unica legatura a serviciului cu lumea de afara este prin interfata sa; serviciile trebuie sa poata fi modificate independent unele de altele

  9. Principiile SOA(3) • Wire formats, not Programming Language APIs: accesibilitate – un serviciu trebuie sa fie accesibil independent de platforma, atata timp cat sunt respectate cerintele din interfata • Document-oriented: pentru a interactiona cu serviciul, data este pasata in documente; functiile serviciului sunt descrise in aceste documente

  10. Principiile SOA(4) • Loosely coupled: un serviciu poate fi accesat de oriunde, oricand & descompunerea in servicii independente => scaderea dependentei de un singur proces • Standards-compliant: serviciile trebuie sa functioneze dupa anumite standarde, nu in functie de API-uri & serviciul trebuie sa depinda numai de descriere

  11. Principiile SOA(5) • Vendor independent: asigura interoperabilitatea si portabilitatea & transmiterea de mesaje bazate de exemplu pe XML => cresterea capacitatii de a atinge neutralitatea de platforma • Metadata driven: toata metadata din SOA trebuie sa fie stocata intr-un mod in care sa fie usor descoperita si interpretata, si ca design si ca functionalitate (interfete, participanti, legaturi, scheme, relatii consumator-provider)

  12. Principiile SOA(6) • Reusability: logica aplicatiei divizata in unitati logice mici => servicii usor reutilizate • Scalability: procesele descompuse in unitati mici => adaugarea de noi logici usor de realizat & noua logica poate fi adaugata ca o unitate extinsa a unui serviciu curent sau poate fi construita ca un serviciu nou

  13. Componentele de baza SOA • Furnizor de serviciu (Serviciu) - ofera procese in forma de servicii • Consumator de serviciu (Consumator) – serviciile oferite de furnizor sunt apelate de consumator • Servicii director (permise de Broker) – intre furnizor si consumator

  14. Componentele de baza SOA(2) • Serviciul care este disponibil consumatorului este publicat in serviciile director la broker. • Consumatorul descopera serviciile de la broker • Daca serviciul este gasit, se ofera legatura la serviciu si se executa logica de procesare

  15. Avantajele SOA Beneficii in domeniul Business: • Eficienta – transforma procesul business, dintr-un proces greoi intr-un proces rapid si eficient, ce foloseste servicii cu un cost redus al mentenantei • Adaptabilitate – se pot face schimbari ale sistemului cu un minim de efort si complexitate, in mai putin timp si cu mai putini bani

  16. Avantajele SOA(2) Beneficii in domeniul IT: • Complexitate redusa – compatibilitate bazata pe standarde versus o integrare pas cu pas, care reduce complexitatea • Resurse refolosite – se pot refolosi resursele deja create, reducandu-se astfel costurile pentru mentenanta si integrare

  17. Bibliografie • http://www.infoq.com/articles/tilkov-10-soa-principles • Curs Sisteme distribuite – Tehnologii: Arhitecturi orientate spre servicii • http://en.wikipedia.org/wiki/Service-oriented_architecture

More Related