Det bliver formentlig en travl, intensiv og spændende uge for en række it-folk hos Microsoft og Banedanmark denne uge.
Mandag klokken 9 startede et proof-of-concept-forløb (PoC), der skal undersøge, om Microsofts Azure-platform er velegnet som cloud computing-platform for Banedanmarks trafikinformations-system.
Mere tastatur, mindre whiteboard
Fem it-folk fra Banedanmark og Fire Microsoft-folk mødes på Microsofts innovations-center i Vedbæk, hvor Martin Born, premier development manager hos Microsoft, vil fungere som projektleder for PoC.
Efter at Microsoft og Banedanmark holdt en arkitektur-design-session for en måneds tid siden, skal PoC nu undersøge potentielle showstoppere for en succesfuld omlægning af trafikinformations-systemet til Windows Azure.
"Vi skifter fra idé-fase til noget, der minder om implementering. Ugen bliver ikke så meget whiteboard og meget mere tastatur," siger Martin Born og uddyber om PoC-forløbet:
"Proof-of-concept er, som navnet siger, en afprøvning af et koncept. Konceptet blev fastlagt på ADS (arkitekturdesign-sessionen, red.). Der blev samtidig specificeret nogle områder, som krævede en nærmere undersøgelse. Vi skal nu undersøge, hvordan vi bedst løser opgaverne på de områder. Dels om det kan lade sig gøre, og i givet fald hvordan man så gør. Ideen er at give nogle praktiske eksempler på, hvordan man kan løse de forskellige spørgsmål, som blev rejst."
Performance og database-logik
På arkitektur-design blev udpeget opgaver som valg af brugergrænseflade-model, replikering af data mellem Oracle-database og SQL Azure-databae, etablering af testmiljø og flytning af forretningslogik fra stored procedures i den nuværende Oracle-database til noget tilsvarende på Azure-platformen.
Migreringen af stored procedures var noget, som fik Computerworlds læsere til at kommentere første artikel om Banedanmarks sky-projekt. Blandt andet blev der stillet spørgsmål om, hvorvidt et kommende Azure-baseret system vil komme til at performe lige så godt, som det gamle.
Der er kun tale om to stored procedures, som skal migreres, men de er på tilsammen 3.000 linjers kode.
"Der er kun to stored procedures, men de er ganske omfattende. Vi skal vise, at den logik, der ligger i de stored procedures, kan håndteres i skyen. Vi skal finde ud af, hvordan vi bedst gør det. Vil vi gøre det direkte i databasen, skal det ske i et data-access-lag, eller skal det ske i de services, som skal kalde databasen?
Der ligger nogle design-beslutninger, som vi skal træffe i ugens løb. Her skal vi se nærmere på, hvad procedurerne gør, hvilke data de trækker på, og hvordan de mest effektivt kan flyttes op i skyen," siger Martin Born, der fremhæver, at den egentlige detailplanlægning af PoC finder sted som det første.
"Mandag sætter vi os sammen og hilser på hinanden. Der er en del personer, som ikke har set hinanden før. Umiddelbart derefter går de enkelte taskgrupper i gang med at detaljere, hvad de skal levere i ugens løb. De skal blandt andet se på, hvor der er risici inden for deres område, hvordan de kan håndteres, og hvad der kan gøres for at komme omkring dem, hvis der er noget som ikke er muligt," siger Martin Born og understreger igen, at proof-of-concept er en afprøvning af konceptet, ikke en fuld implementering af systemet.
Stress-test af arkitekturvalg
"Vi satser på at få en form for demo-løsning kørende, så vi kan prøve nogle ting af. Den vil ikke have den fulde forretningslogik, men den vil kunne så meget, at vi kan vise, at vi kan flytte data fra Oracle-databasen op til SQL Azure og så have en implementering af logikken i en eller anden rudimentær udgave, som vi kan køre noget test på," forklarer Martin Born.
En vigtig del af denne uges aktiviteter bliver etablering af et testmiljø, der kan bruges til løbende test af forskellige designvalgs indflydelse på performance og svartider for et fremtidigt system.
"Vi skal have etableret et testmiljø formentlig i form af lokale maskiner, der er udstyret med test-suites, så maskinerne kan emulere et antal brugere. Det skal give en form for stress-test af den demo-løsning, vi bygger. Det vil give målinger på performance og de forskellige services på Azure-platformen efterhånden som belastningen øges," siger Martijn Born.
"Konceptet er besluttet i form af SQL Azure-databasen og Windows Azure. På vejen fra et koncept mod et system, der performer, ligger der er en masse beslutninger der skal træffes undervejs. Jo tidligere, vi træffer de beslutninger, jo nemmere kommer vi igennem - forudsat at det er de rigtige beslutninger. Derfor gælder det om at finde ud af, hvor de mulige flaskehalse er og få prøvet det af så hurtigt som muligt. Hvor ligger flaskehalsene, hvad trigger CPU-belastning, hvor meget båndbredde er påkrævet? Det skal give os en fornemmelse af, hvordan det vil virke i den virkelige verden," siger Martin Born
Scrum-inspireret projektforløb
Det fem dage lange proof-of-concept vælger en agil udviklingsform, der løbende følger op på det opnåede og eventuelle problemer, der opstår i processen.
"Vi lægger op til at køre et Scrum-agtigt forløb. Vi holder et dagligt statusmøde og et par gange gange i løbet af ugen prøver vi at sætte delene sammen i en integration.
De enkelte grupper præsenterer, hvor langt de er kommet, hvilke udfordringer de står overfor, og hvad de skal i gang med," siger Martin Born.
Planen er, at PoC slutter fredag eftermiddag med en præsentation af demo-systemet for personer hos Microsoft og Banedanmark, der har en aktie i projektet.
"Et succeskriterie for mig er, at vi viser, at løsningen kan bygges, den kan performe, og vi viser, hvordan vi etablerer den datamæssige integration med det eksisterende system. Hvis det opnås, kan jeg ikke se, at der er noget til hinder for at gå videre med en full-scale implementering," lyder det fra Martin Born.