Web Services

Vad är Web Services?

Web Services löfte tyder på en ny era av datoriserad automatisering och fördelar för företag och konsumenter via en speciell mjukvara. En Web Service applikation skall till exempel göra det möjligt för ett företags inventerings databas koppla sig till en leverantör för automatisk beställning av varor, en annan applikation skall göra det möjligt för en persons kalender att kommunicera med en boknings databas hos en läkare och automatiskt fastställa tidpunkten för en undersökning.
Web Services är en form av applikationer som är självbeskrivande, självframställda och som kan bli publicerade, lokaliserade och anropade via webben. Webbservice är en samling funktioner som är paketerade som en enkel entitet och publicerade i nätverket för att kunna användas av andra program.
Web Services tillåter företagen och människor att snabbt och billigt göra sin digitala tillgångar tillgängliga för allmänheten. Ett tidigt exempel är Microsoft Passport: ett bekvämt autenticitets service skapad av Microsoft.
Web Services utgör funktioner som kan variera från enkla begäran till komplicerade affärsprocesser. Efter att en webbservice är skapad, kan andra applikationer eller andra Web Services upptäcka och anropa denna service.
Web Services ska förändra sättet som vi utvecklar mjukvara, den ska förändra sättet vi gör affärer (Gartener pratar om dynamisk business webb och flexibelt Internet- baserad applikationer) som ska tillåta företag skapa nya produkter och services snabbare än redan existerande metoder, nå nya kunder, ändra/lägga till kundens relationer, ägna sig åt nya affärs modeller och erbjuda erfarenheter, den ska förändra sättet som vi beställer och säljer mjukvara.

Som andra exempel för Web Services har vi:

-    En kreditkontroll service som returnerar kredit information efter en given person nummer

-    En beställningsservice som tillåter datorsystemet att realisera kontorets leveranser med en given kodex och kvantitet

En webbservice kan samarbeta med andra webbservice för att erbjuda mer komplicerade tjänster. Till exempel, en webbservice kan erbjuda en bättre tjänst för resemål genom samarbetning med en lågnivå webbservice (för hantering av bil hyrning, flygresor och hotell).

Web Services omfattar en vision av ett fullt integrerat datanätverk som inkluderar PC:s, servers, handeln utrustning, program , applikationer och nätverksutrustning, som alla arbetar ihop. Det här nätverket kan utföra distribuerad databehandling med den bäst matchade apparaten för uppgiften och leverera informationen i rätt tid i den form som användaren behöver.

Strukturen

Web services är baserad på XML (Extensible Markup Language), SOAP (Simple Object Accses Protocol), UDDI (Universal Description Discovery och Integration) en sorts av Web Services Gula Sidor för utvecklare, och WSDL (Web Service Description Language) som beskriver funktioner av en given Web Service.
 
WSDL the Web Services Description Language - (det beskrivande språket för web-tjänster) är ett XML format för beskrivning av nätverkstjänster som en mängd slutpunkter som opererar på meddelanden innehållande antingen dokumentorienterad eller procedur orienterad information. Operationerna och meddelandena är beskrivna abstrakt och sedan slutna till ett konkret nätverksprotokoll och meddelande format för att definiera en slutpunkt. Relaterade konkreta slutpunkter är kombinerade i abstrakta slutpunkter. WSDL är tillräckligt flexibelt för att tillåta beskrivningar av slutpunkter och dess meddelanden oavsett vilket meddelande format eller nätverksprotokoll som används för kommunikationen.
 
SOAP står för the Simple Object Access Protocol, och härleddes från XML-RPC, skapad av Dave Winer 1998. Det är ett enkelt XML/HTTP- baserat protokoll som är utformat för att utbyta strukturerad och tryckt information på webben. SOAP använder XML meddelanden för att anropa avlägsna metoder på ett plattform oberoende sätt. Fast en web tjänst kan interagera med avlägsna maskiner genom HTTPs sända och hämta metoder, är SOAP bättre p g a att det är mer robust och flexibelt. SOAPs två viktig element är service Contract Language och DISCO (Discovery of Web Services) som ingår i Visual Studio.Net.
 
UDDI står för Unicersal Description Discovery and Integration of Web services. Upptäckts- utforskningsföretag världen över som erbjuder just de produkter och tjänster som du behöver. Registrera ditt eget företags produkter och tjänster som du vill att andra ska upptäcka Den funkar som en global elektronik " Gula sidor". Teknologi- och affärs eliten leder utvecklingen och spridningen av en öppen Internet baserad universell beskrivning, upptäckt och integration (UDDI) specifikation. UDDI är byggstenen som kommer att göra det möjligt för företag att snabbt, enkelt och dynamiskt hitta och göra affärer med varandra genom att använda de applikationer som de fördrar. De som låg bakom SOAP var Microsoft, IBM, och Ariba men medlemslistan för UDDI konsortiumet omfattar nu nästan alla ledande mjukvaruleverantörer.
 
WSFL Web Service Flow Language (Web tjänsternas flödes språk) definierar arbetsflöden sammansatta av Web tjänster från arbetsflöden av lägre nivå. WSFL är det senaste inom Web tekniken som arbetar med sina partner som standardiserar ett språk som bemöter dessa behov. WSFL är IBMs standardiseringsprocess. Då ett definitionsspråk för ett arbetsschema såsom WSFL blir standard, stödjer förmodligen andra företag det.

Bill Gates ger följande förklaringar om strukturerna Web Services använder sig av för att kommunicera:

1. Ett fysiskt medium där kommunikationen äger rum. Det har vi redan : internet.

2. Beståndsdelarna av en Web Services bär information om sig själva, eg. , de är självbeskrivande, och kan hitta varandra på internet. Antagandet är att skapandet av en bindning mellan komponenter kan ske så sent som under körning. Det måste vara ett universalt accepterat sätt för service att hitta varandra på internet. Denna funktion är tillhandahållen av UDDI, eller Universal Description, Discovery and Intergration. Produktenav en bred industri insats.

3. Ett gemensamt kommunikationsspråk som program kan förstå. Extended Markup Language eller XML har tagit den rollen.

4. Med internet som utbytesmedium behövs ett Internetprotokoll för utbytet ska äga rum. Det protokollet är ?The simple objekt access protokol(SOAP),också skapad genom en gemensam ansträngning inom industrin.
 

Fördelar

Applikationer i framtiden skall byggas från Web Services som är dynamisk valda under körning baserad på deras pris, kvalitet och tillgänglighet.
Web service är garanterad att bli hjärtat av nästa generations distribuerade system på grund av följande:
Interoperability. En Web service kan samspela med andra Web service tack vare SOAP ( den nya standard protokoll stödjas av dem flesta leverantörer). Problemen för konvertering mellan CORBA, DCOM och andra protokoller är på vägg att försvinna . Och eftersom Web Service kan vara skriven i vilket språk som helst (även Cobol I bet) olika utvecklaren behöver inte ändra sina utvecklingsmiljöer för att producera eller konsumera Web Service.
Ubiquity (överallt förekommande). Web services kommunicerar genom http och XML. Därför alla maskiner som stödjer dessa teknologier kan både skapa och access Web Service. Snart ska vi ha dem i telefoner, bilar och även i soda maskiner. Soda supplier getting low? Inget problem, trådlösa nätverk för soda maskiner kan kontakta den lokala leverantörens webb service för beställning av mera av din favorit dricka.

Få spärrningar. Koncepten bakom Web Services är att den är lätt att förstå och att det finns tillgängliga verktygslådor från leverantörer som IBM och Microsoft som tillåter Web Service utvecklare att snabbt skapa och sprida Web Services. Dessutom några av dessa verktygslådor tillåter pre-existerande COM komponenter och Java beans att på ett enkel sätt används som Web Services.

Industri stöd. Dem flesta stora leverantörer stödjer SOAP och den omgivande Web Service teknologi , till exempel Microsoft.NET plattformen är baserad i Web Service. Därmed gör det enkelt för komponents skrivna i Visual Basic bli utvecklad som Web Service, och konsumerad av Web Services skrivna med IBM visualAge ,och viceversa.
 

Utmaningar

Så länge låter allting bra, men för att Web Services ska lyckas finns det fortfarande många utmaningar som måste mötas.
Många av dem är relaterad till den öppna ovänligt miljö där den måste överleva. Här är några av dem orsaker:
Upptäckt. Hur kan en Web service annonsera sig själv för att bli upptäckt av andra webb services? Vas händer om services ändras eller flyttas efter att ha blivit upptäckt? WSLD (Web service definition language) och UDDI (Universal Description, Discovery and Integration) är två nya standarder som inriktar sig på denna fråga.
Pålitlighet. Några Web services är mer pålitliga än andra. Hur kan denna pålitlighet bemötas och kommuniceras? Vad händer om en webb Services värd går ner tillfälligt? Lokaliserar du en möjlig service värd av en annan leverantör, eller väntar du tills den första kommer tillbaka? Hur vet du vilka andra leverantörer kan du lita på?

Säkerhet. Några Web Services skall vara publika , tillgängliga och osäkra, men dem flesta affärsrelaterade services skall använda enkrypterad kommunikation med authentifikation. Om du har ett avtal med en levernatör som förser hela världen med Web Services, hur kan dessa leverantörer veta om dina säkerhetsrättigheter?

Transaktioner. Traditionella transaktioner system använder en två-phase commit där alla deltagande resurser är samlad och låsta tills hela transaktionen slutförs. Detta lyckas i en stängd miljö där transaktioner har kort liv , men inte i öppna miljöer där transaktioner kan tar timmar eller dag.

-    Förvaltning. Vilken sorts mekanism behövs för att förvalta ett stort distribuerat system. Är det möjligt att "outsource" förvaltningen av en webb Service till andra Web Services.