1.6.3.2 Teenusorienteeritud arhitektuur

Teenusorienteeritud arhitektuur (SOA - Service Oriented Architecture) on samuti olemuselt mitmekihiline ja seda kasutatakse veebirakenduste loomisel. Arhitektuur moodustub üksteisega suhtlevatest (veebi)teenustest, mis ei sõltu üksteise kontekstist ega olekust ning töötavad hajussüsteemide mudelil. Teenuste vahel puuduvad tugevad seosed ning ükski teenus pole teadlik teise teenuse tehnilistest detailidest nagu näiteks andmestruktuurid, tarkvaraline platvorm, operatsioonisüsteem, kasutatav andmebaasisüsteem jne. SOA-d võib käsitleda kui rakenduste väljatöötamise kõrgeimat tasandit, kus kasutajate eest on peidetud kogu tehnilise keskkonna keerukus.
SOA eelised.
- SOA abil on võimalik integreerida erinevaid infosüsteeme. Arendajad ei pea töötama välja uusi lahendusi erinevate süsteemide kasutamiseks. Oluline on kasutada standardseid protokolle (nt andmevahetusprotokollid). Standardeid mittejärgivaid teenuseid on raske juurutada.
- Liidesed on taaskasutatavad. Liidest, mida kasutati ühe konkreetse süsteemi arendamisel, saab kasutada ka kõikide teiste analoogsete süsteemide arendamisel.
- Kasvab arendusprojektide tootlikkus. Taaskasutamine aitab sarnaseid lahendusi ehitada kiiremini, odavamaks ja kiiremaks muutub ka süsteemide integratsioon.
SOA on asendamatu veebiportaalide ehitamisel. Portaal võib hankida uudiseid ja ilmateateid kolmanda osapoole veebiteenuste vahendusel. Veebikauplused ja tootjate veebilehed võivad vahendada kaupade andmeid oma andmebaasidest teineteisele edasimüügiks. Seejuures suhtlevad infosüsteemid teenustega automaatselt. Võibki öelda, et SOA levinumaid ärilisi kasutusi on tellijate ja tarnijate infosüsteemide liidestmine. Samamoodi saab panna SOA abil suhtlema sama firma erinevad infosüsteemid, sõltumata kasutatud tehnoloogiatest ja platvormidest - operatsioonisüsteem, andmebaas jne.
Erinevad SOA-tehnoloogiad on ellu kutsutud selleks, et lihtsustada eri süsteemide omavahelist suhtlust. (kirjeldus firma DT veebilehelt)