Presentation is loading. Please wait.

Presentation is loading. Please wait.

IDU0075 Sissejuhatus veebiteenustesse

Similar presentations


Presentation on theme: "IDU0075 Sissejuhatus veebiteenustesse"— Presentation transcript:

1 IDU0075 Sissejuhatus veebiteenustesse
Tarvo Treier

2 Tarvo Treier tarvo.treier@gmail.com
Sisukord WSDL Kandidaatide tuvastamine Teenuse definitsioon Teenuste tüübid Modelleerimine WSDL kui süsteemile esitatud nõuete fikseerimise vahend WSDL kui süsteemi simuleerimise alus Tarvo Treier

3 Veebiteenustega seotud standardid
Tarvo Treier Tarvo Treier 3

4 WSDL (Web Service Definition Language)
WSDL on XML põhine keel, mis kirjeldab veebiteenuseid Operatsioonid Sõnumid Andmetüübid Viited Tarvo Treier Tarvo Treier 4

5 Tarvo Treier tarvo.treier@gmail.com
5

6 Operatsioonid ja sõnumid
Allikas: Tarvo Treier

7 WSDL’i elemendid <definitions> <types>... </types>
<message>... </message> <portType>... </portType> <binding>... </binding> <service>... </service> </definitions> Tarvo Treier Tarvo Treier 7

8 WSDL’i elemendid Types – siin saame XSD importida või kohapeal deklareerida Messages – iga requesti ja response jaoks on siin üks sõnum PortType – kirjeldab operatsioonid ja nende sisend ning väljund sõnumid. Binding - määratakse sõnumivahetuse transport iga operatsiooni kohta (document+literal recommended) Service – nimi ja asukoht Tarvo Treier Tarvo Treier 8

9 Näide <message name="getTermRequest">
<part name="term" type="xs:string"/> </message> <message name="getTermResponse"> <part name="value" type="xs:string"/> <portType name="glossaryTerms"> <operation name="getTerm"> <input message="getTermRequest"/> <output message="getTermResponse"/> ... </operation> </portType> Tarvo Treier Tarvo Treier 9

10 Teenuse kanditaatide tuvastamine
Kui sul on haamer, siis kõik asjad näivad naeltena. Kas kõiki süsteemis olevaid meetodeid on mõtet teha veebiteenusteks? Miks? Tarvo Treier

11 Mis on veebiteenus? (Eben Hewitt)
Defineeritud liidese abil, mis võib olla platvormist sõltumatu Kättesaadav üle võrgu Liideses defineeritud operatsioonid esinavad äri(toimimis)-funktsioone, mis opereerivad äriobjektidega Tarvo Treier

12 Tarvo Treier tarvo.treier@gmail.com
Teenuste tüübid 1/2 Olemiteenus (entity) Esindab ühte või mitut äriolemit. CRUD operatsioonid. Näiteks CustomerAccount võib vajada juba teiste osapooltega suhtlemist ja pole enam lihtne olemiteenus. Funktsionaalne teenus Tehnoloogiale orienteeritud teenus (mitte ärile). Abiteenused, mida teised saavad kasutada(logimine, i saatmine...) Tarvo Treier

13 Tarvo Treier tarvo.treier@gmail.com
Teenuste tüübid 2/2 Protsessiteenus Esinab teenust, kus on terve seeria omavahel seotud ülesandeid. Selliste teenuste tükeldamine muudab need teenused veel keerulisemaks. Tarvo Treier

14 Teenuste modelleerimine
Üldistamine Klient on inimene ja töötaja on inimene Dekomponeerimine Mida väiksemad tükid, seda suurem on tn taaskasutada Agregeerimine Analüüsime, millise teise elemendi osa see teenus olla võiks. See aitab ka dekomponeerida paremini. Tarvo Treier

15 Modelleerimise soovitus
Ära seo teenusega ühtegi kindlat äriprotsessi. Protsessi koodi hoia BPEL-s või mõnes muus protsessi teenuses. Näide Kui ühel protsessil on vaja kliendi andmeid koos krediidikontrolliga ja teisel ilma, siis tuleks eraldi teha teenus kliendi andmete küsimiseks ja krediidikontrolliks. Tarvo Treier

16 WSDL kui süsteemile esitatud nõuete fikseerimise vahend
WSDL-i saab edukalt kasutada kasutusjuhtumi lühikirjelduse või kasutusjuhtumi operatsioonide kirjelduse asendusena. Sarnaselt kasutusjuhtumitega saab WSDL-s kirjeldada eeltingimused ja järeltingimused. Eelis antud lähenemisel on võimalus kiirelt kogu protsessi simuleerida ja testida. Tarvo Treier Tarvo Treier 19

17 WSDL kui süsteemi simuleerimise alus
Kui meil on WSDL-ga kirjeldatud teenus, mida me soovime kasutada, kuid reaalset veebiteenust veel ei eksisteeri, pole võrgust kättesaadav või on tasuline, kuid me soovime siiski WSDL-le vastavat teenust enda testkeskkonnas kasutada, siis aitavad meid Mock teenused. Tarvo Treier Tarvo Treier 20

18 Teenuse simulatsiooni (ServiceMock) kasutamine
genereeri WSDL-i põhjal töötav teenuse Mock näiteks SoapUI-ga. Arendada enda süsteemi kasutades Mock teenust. Hiljem asenda lihtsalt Mock teenuse endpoint reaalse teenuse asukohaga. Tarvo Treier Tarvo Treier 21

19 WSDL-i põhjal loodud Mock-ide kasutamise eelised
Reaalse teenusega asendamine on valutu. Me ei pea ootama reaalse teenuse arenduse või teenuse kättesaadavaks tegemise tõttu. Saame raha kokku hoida, kui kasutame arenduskeskkonnas reaalse tasulise teenuse asemel ise tehtud teenuse simulatsiooni. Tarvo Treier Tarvo Treier 22

20 Mobiil-id simuleerimise näide
WSDL Loome ServiceMock-i antud WSDL-i põhjal SoapUI-ga järgmistele operatsioonidele: MobileAuthenticate GetMobileAuthenticateStatus SoapUI WebStart Tarvo Treier Tarvo Treier 23

21 Mobiil-id näitepäringud MobileAuthenticate
<soapenv:Envelope xmlns:xsi=" xmlns:xsd=" xmlns:soapenv=" xmlns:dig="    <soapenv:Header/>    <soapenv:Body>       <dig:MobileAuthenticate soapenv:encodingStyle="          <IDCode xsi:type="xsd:string">382xxxxxxxx</IDCode>          <CountryCode xsi:type="xsd:string">EE</CountryCode>          <PhoneNo xsi:type="xsd:string">+372xxxxxxx</PhoneNo>          <Language xsi:type="xsd:string">EST</Language>          <ServiceName xsi:type="xsd:string">Testimine</ServiceName>          <MessageToDisplay xsi:type="xsd:string">Message</MessageToDisplay>          <SPChallenge xsi:type="xsd:string"> </SPChallenge>          <MessagingMode xsi:type="xsd:string">asynchClientServer</MessagingMode>          <ReturnCertData xsi:type="xsd:boolean">1</ReturnCertData>          <ReturnRevocationData xsi:type="xsd:boolean">1</ReturnRevocationData>       </dig:MobileAuthenticate>    </soapenv:Body> </soapenv:Envelope> Tarvo Treier Tarvo Treier 24

22 Mobiil-id näitepäringud GetMobileAuthenticateStatus
<soapenv:Envelope xmlns:xsi=" xmlns:xsd=" xmlns:soapenv=" xmlns:dig="    <soapenv:Header/>    <soapenv:Body>       <dig:GetMobileAuthenticateStatus soapenv:encodingStyle="          <Sesscode xsi:type="xsd:int"> </Sesscode>          <WaitSignature xsi:type="xsd:boolean">true</WaitSignature>       </dig:GetMobileAuthenticateStatus>    </soapenv:Body> </soapenv:Envelope> Tarvo Treier Tarvo Treier 25

23 ÕIS-ile nõuete fikseerimise näide
getTänaneTunniplaan Minu päevik (klient) ÕIS (server) getTänaneTunniplaanResponse SOAP/HTTP WSDL Tarvo Treier Tarvo Treier 26

24 REST teenused iseseisvaks uurimiseks
Tarvo Treier


Download ppt "IDU0075 Sissejuhatus veebiteenustesse"

Similar presentations


Ads by Google