200 likes | 335 Views
Serviceorienteret arkitektur. SOA. SOA bygger på. Der findes en serviceleverandør, som udstiller en formåen til at udføre en veldefineret og afgrænset aktivitet, en service. Der findes en serviceanvender, som efterspørger denne service. Servicen er beskrevet af en servicekontrakt.
E N D
SOA bygger på Der findes en serviceleverandør, som udstiller en formåen til at udføre en veldefineret og afgrænset aktivitet, en service. Der findes en serviceanvender, som efterspørger denne service. Servicen er beskrevet af en servicekontrakt.
Forretningsrelaterede services Services understøtter forretningens processer. Efterlevelse af dette princip vil bidrage til, at SOA bliver et redskab, der sikrer, at forretningen og it går i takt og arbejder efter de samme mål – de forretningsmæssige mål.
Generelle principper • Genbrugelige services • Services designes med genbrug for øje – også selv om en service ikke umiddelbart skal genbruges. • Kontraktbaserede services • Services beskrives af en kontrakt og serviceanvendelse sker på grundlag af kontrakten.
Generelle principper • Løst koblede services • Services i SOA er løst koblede og kan findes og anvendes under etablering af et minimum af afhængigheder mellem anvender og leverandør af en service. • Platformsuafhængig anvendelse af services • Anvendelse af en service bør foregå uafhængigt af den platform, servicen er implementeret på.
Generelle principper • WSDL (Web Service Description Language), er et XML-baseret sprog beregnet til at beskrive de forskellige karakteristika, en webservice besidder. • SOAP (Simple Object Access Protocol), er en XML-protokol til udveksling af data. • Lokationsuafhængig anvendelse af services • Anvendelse af en service kan foregå uafhængigt af den fysiske lokation, servicen er implementeret på.
Generelle principper • Sammensætning af services • Services kan sammensættes af andre services, hvilket muliggør en lagdeling af services, hvor generelle standardiserede services i de nederste lag gradvist sammensættes af services i de øvre lag.
Generelle principper • Services er en abstraktion over forretningsfunktionalitet og information • Servicen udgør et abstraktionslag, der skjuler alle de komplicerede underliggende implementeringsdetaljer.
Generelle principper • Services versioneres • Da en serviceleverandør ikke nødvendigvis har kendskab til alle service anvendere, er det i forbindelse med igangsætning af ændringer nødvendigt at versionere services. • SOA er baseret på standarder • Services baseres på anvendelse af fælles begrebsdannelse og standarder fastlagt af den offentlige sektor. • Se OIO-kataloget på http://www.oio.dk for en oversigt over anbefalede standarder.
Generelle principper • Services registreres og er synlige • Serviceleverandøren skal registrere og publicere disse i et servicekatalog. Her kan serviceanvendere finde de enkelte services, og hente den information, der er nødvendig for at kunne anvende disse.
SOA som en lagdelt arkitektur Lagdeling har med fokus på organisering og placering af ansvar for forskellige aspekter i arkitekturen. Der er forskellige måder at anskue lagdelingen af SOA på. De væsentligste lag i SOA er illustreret her
Præsentationslaget • Præsentationslaget har ansvar for håndtering af alle aspekter omkring præsentation af en given it-løsning over for brugeren. • Præsentationslaget er bindeleddet mellem it-løsningerne, brugere og de underliggende forretningsregler og forretningsprocesser.
Serviceorkestrerings- og workflowlaget • En orkestrering er en beskrivelse af • hvorledes enkeltstående services sammensættes til en større helhed og automatiserer enten helt eller delvist gennemførslen af en forretningsproces. • En orkestrering beskriver : • hvilken sekvens de involverede services kaldes i. • hvilke informationer der udveksles mellem de involverede services.
Serviceorkestrerings- og workflowlaget • Et workflow defineres i denne sammenhæng som en orkestrering, der også omhandler: • Aspekter forbundet med den menneskelige interaktion med systemet, • Tilknytning af de rigtige aktører til en given aktivitet. • Sikring af at aktiviteter gennemføres inden for de givne tidsrammer. • Aspekter forbundet med at aktivere og forbinde forskelligartede it-løsningers brugergrænseflader, således at brugerens arbejdsgang fremstår sammenhængende og integreret.
Servicelaget • Servicelaget er det lag, der har ansvar for, at services kan : • udstilles • fremfindes • anvendes.
Serviceimplementeringslaget • SOA udmærker sig ved at, funktionalitet fra eksisterende systemer kan indpakkes og udstilles som services og kombineres med eksterne services. • Dermed vil - og kan - overgangen til SOA ofte være gradvis. • Serviceimplementerings -laget realiserer services.
Teknisk fundament • Det tekniske fundament under SOA er i vid udstrækning baseret på åbne standarder. • En webservice er en service, der anvender en række åbne standarder, protokoller og teknologier, og som bruger Internettet som netværksfundament. • Webservice konceptet bygger på modulær opbygning.
Webservice konceptet • Det betyder, at man kan nøjes med at anvende den del, som er nødvendig i den aktuelle kontekst. • Eksempelvis kan man starte med at bruge de grundlæggende elementer som UDDI, WSDL, SOAP og HTTP og efterhånden udbygge fundamentet med mere avancerede WS-* standarder. Webservices offentliggøres via UDDI (Universal Description Discovery and Integration), som er et XML-baseret register til offentliggørelse og fremfinding af webservices.
SOA, komponenter og objektorientering • Sammenhæng mellem services, komponenter og objekter.