Pilotprojekt
Scandinavian IT Group (SIG) har sammen med dets datterselskab Scandinavian Mobility i foråret udført et pilotprojekt for Scandinavian Airline Systems (SAS) på Microsofts .Net platform. Projektet gik ud på at programmere en XML webtjeneste bygget under .Net og Visual Studio .Net, hvor projektdeltagerne først skulle lære om .Net strukturen og Visual Studio .Net samt lære at programmere C# - Microsofts objektorienterede programmeringssprog. SIG valgte at bruge .Net, da firmaet i forvejen bruger Microsofts systemer, og da SIG om nogle år formentlig skal skifte alle dets Windows platforme ud med .Net platforme.
XML webtjenesten blev færdig i juni, og blev faktisk verdens første XML webtjeneste bygget på .Net, der blev publiceret til UDDI. Webtjenesten, der hedder "FlightStatus", kan vise flystatus for alle SAS' fly. Det tog syv udviklere omkring to en halv måned at få webtjenesten og Mobile Rebooking til at virke, og dette er inklusiv den tid det tog at lære C#, blive undervist i .Net strukturen og Visual Studio .Net samt at implementere .Net, ASP .Net med videre.
"FlightStatus" kan afprøves her, men man skal bruge et flynummer og dato for at afprøve, og det kan man finde på SAS website.
Flyet er forsinket
Flyet er forsinket
Vi har afprøvet webtjenesten med en rejse den 31. august fra København til Stockholm med flynummer SK412, afrejsetid kl. 13.20 og ankomsttid kl. 14.25. Det nedenstående program blev returneret, og af dette kan man læse at flyet er blevet forsinket, da det først lettede kl.13.40, og den forventede ankomsttid er kl. 14.46. Af nedenstående program kan man også se, at vi afprøvede webtjenesten, mens flyet var i luften: Den rigtige ankomsttid er derfor ikke kendt og markeret med "--:--" i stedet for et tidspunkt.
<?xml version="1.0" encoding="utf-8" ?>
<string xmlns="http://webservices.scandinavian.net/"><Flight FlightNo="412" Date="20010831" Cancelled="false"><Segments><Segment Index="0"><From>CPH</From><To>ARN</To><STD>13:20 </STD><STA>14:25 </STA><ETD>13:40 </ETD><ETA>14:46 </ETA><ATD>13:40 </ATD><ATA>--:--</ATA></Segment></Segments></Flight></string>
Man kan måske mangle et slags præsentationslag, som viser tidspunkterne på en brugervenlig måde, men webtjenester er rettet imod at være maskin-læsbare og skulle servicere andre applikationer. En applikation kan for eksempel benytte den ovenstående information til at præsentere resultatet på en mere brugervenlig måde, eller måske inkludere oplysningerne i en helt tredie applikation, som for eksempel en elektronisk kalender.
Fordele
SIG ser mange fordele ved brug af .Net fremfor de gamle Windows systemer. En af fordelene er, at man kan bruge flere sprog på platformen, men SIG har dog kun prøvet Microsofts eget C# og Visual Basic. Derudover har SIG oplevet, at svartider på forespørgsler, opslag på websites med videre blev væsentlig hurtigere under .Net.
Struktur
Struktur
De nedenstående overskrifter: Internettet, Web/Præsentation, Business Logic og Backend Systems henviser til diagrammet nederst i dette afsnit.
Internettet
På SAS' website www.scandinavian.net, kan man blandt andet få oplysninger om flytider. Ideen med pilotprojektet var at bygge en XML webtjeneste og en mobiltjeneste mobile.scandinavian.net på en .Net platform, hvor man kunne få samme information som på websitet. XML webtjenesten bruges af andre applikationer, mens mobiltjenesten eksempelvis kan benyttes fra en WAP-telefon.
Web/Præsentation
Både COM platformen og .Net platformen benytter DCOM (Distributed COM). DCOM er en protokol, der angiver, hvordan software komponenter skal kommunikere pålideligt, sikkert og effektivt direkte over et netværk. DCOM er designet til brug over flere forskellige netværks transportformer inklusive HTTP-protokollen. DCOM virker både med Java appletter og ActiveX komponenter ved brug af COM.
COM platformen: Websitet www.scandinavian.net er bygget på Windows NT 4 ved brug af ASP, COM og MTS.
ASP (Active Server Pages) er små programmer indbygget i koden for et website, som afvikles af serveren inden brugeren får websitet at se.
COM (Component Object Model) er en software arkitektur, som gør det muligt at bygge applikationer ved brug af binære software komponenter. COM er altså en underliggende arkitektur, der er basis for højere-ordens software tjenester.
MTS (Microsoft Transaction Server) bruges til at bygge server applikationer, der kan udvides, ved brug af ActiveX komponenter. MTS inkluderer blandt andet transaktioner og point-and-click administration.
.Net platformen: Platformen, .Net Framework, var kun i beta 2, da pilotprojektet blev udført. .Net platformen blev bygget på Windows 2000 med AppCenter 2000.
COM interop er et kommunikationslag mellem .Net platformen og COM /DCOM. En .Net udvikler kan således bruge eksisterende COM komponenter og typer ved brug af COM interop værktøjer uden at COM komponenter skal ændres.
Der bruges de samme .Net objekter (klasser), som er skrevet i C#, til både WAP/internet og webtjenesten på UDDI.
ASP .Net er mere end blot den næste version af ASP. ASP .Net er også en ny form for udviklingsmodel og en ny infrastruktur, som både understøtter ASP og .Net platformen.
MMIT (Microsoft Mobile Internet Toolkit) indeholder en række værktøjer til brug for hurtig bygning af mobile web applikationer. SIG brugte MMIT til den mobile tjeneste, hvilket gjorde at de ikke har implementeret en eneste linje HTML eller WML-kode - det har MMIT gjort automatisk.
Business Logic
Der er stor sammenhæng mellem .Net platformen og COM platformen, og derfor kunne SIG genbruge mange af de eksisterende COM komponenter i opbygningen på .Net platformen.
Backend systems
COM komponenterne bruger oplysninger fra de bagvedliggende databaser såsom booking-systemer, kundedatabaser og lignende.
Projektdeltagerne hos SIG har følt at projektforløbet har været en succes og det har været let at lære .Net strukturen og C# - især når man var vant til C++ og Java.. Microsoft har været meget til stor hjælp, men Microsoft har også set pilotprojektet som en god reklame for .Net.