Målgruppe: Rapporten vil, ved siden af eksaminator og censor, primært henvende sig til software- og systemudviklere og og andre it-interesserede.



Relaterede dokumenter
CLOUD COMPUTING VEJLEDNING I STORT OG SMÅT NÅR DU OVERVEJER AT GÅ I SKYEN

Hvad er cloud computing?

Copyright SaaS-it Consult Er Cloud Computing blot en hype eller repræsenterer det virkelig værdi? Teknologisk Institut 13.

KLAR, PARAT, CLOUD? 27. september 2018

HYBRID TAKEOFF REDEFINED JOURNEY TO THE CLOUD BY EMC Søren Holm, Proact

Cloud computing. Hvad er fordelene ved Microsoft løsninger - og hvad er begrænsningerne

as a Service Dynamisk infrastruktur

En tur rundt om skyen:

Kom godt i gang med Digital Transformation via din Microsoft ERP-platform

INDHOLDSFORTEGNELSE. Azure på jysk. Hvem bør flytte i skyen? flytte i skyen. Hvad er Microsoft Azure? Om ProInfo. Fordele ved at flytte i skyen

Konference om Cloud Computing 18. maj Proof of Concept for transition til Cloud Lars Ravndrup Thomsen, Solutions Architect, KMD

SAXOTECH Cloud Publishing

Cloud Computing De juridiske aspekter

Hvornår er dit ERP-system dødt?

Microservices. Hvad er det og hvordan kommer du i gang?

MainBrain White Paper: 3 Ukendte Risici Associeret med Førende Skyløsninger. Februar 2016

Hosted løsning Hosted produkter Dedikeret server hosting Virtuel server hosting Shared Office hosting... 7

Produktspecifikationer Private Cloud Version 2.7

Morten Juul Nielsen Produktchef Microsoft Danmark

Store IT-Innovationer TØ5

Cloud Failover Appliance

IBM Network Station Manager. esuite 1.5 / NSM Integration. IBM Network Computer Division. tdc - 02/08/99 lotusnsm.prz Page 1

4 sekunder. 20 sekunder. 1-3 timer. 14% hurtigere. 5-6% bagud. 30/70 split. Vejen til succes med Hybrid Cloud v/cso, Poul Bærentsen, Atea

It-sikkerhedstekst ST4

DOES NOT COMPUTE IT-SIKKERHED ER VENDT PÅ HOVEDET. BESKYT DINE DATA MED VEEAM CLOUD CONNECT

Overlad din serverdrift til Microsoft

19. Bilag Bilag 1: Referenceliste med kontaktoplysninger til virksomheder. Rapportens fire undersøgelsesenheder:

spørgsmål til CATIA 3DEXPERIENCE on the Cloud

Fordele og ulemper ved ERP-systemer

QUICK GUIDE. Skab operationel effektivisering med Microsoft CRM Online

Windows Small Business Server (SBS) 2008

Skal dit næste ERP-system være cloud eller on-premise?

Version 8.0. BullGuard. Backup

Hurtigere time-to-market - SharePoint på Microsoft Azure. Christoffer Grønfeldt, PostNord

Datatekniker med infrastruktur som speciale

One Step Ahead 2011: Fremsyn

NEMID MED ROBOTTER. Muligheder samt en anbefaling til at løse NemID-opgaver med robotter

It-sikkerhedstekst ST2

Hvad er Secure endpoints?

Sikker Drift. Sikker Drift Light inkluderer. Sikker Drift Standard inkluderer

Kompromisløs sikkerhed til alle virtuelle miljøer

Micusto Cloud v2. Micusto Cloud er et fleksibelt, brugervenligt cloudsystem til CMS er, webshop- og intranetsystemer.

Tænk ud af boksen med Microsoft Dynamics NAV og kig på Microsoft Dynamics NAV 2016

Overvejelser i forbindelse MED OUTSOURCING

Skyen der er skræddersyet til din forretning.

Tilbudsmateriale: Udvidelse af eksisterende serverplatform.

Sikker Drift. Sikker Drift Light. Sikker Drift Standard. Sikker Drift Light inkluderer. Sikker Drift Standard inkluderer

\ \ Computerens Anatomi / /

Hyper V og System Center løsninger

Dansk CMS sendt op i skyen med Windows Azure på kun en uge Vidste ikke om C1 ville virke på Azure

Underbilag 2.24 Kommunernes it-miljø Kommunernes Ydelsessystem

Hvordan griber du moderniseringsprocessen an? Peter Janum Sode Senior Security Consultant

Underbilag 2.24 Kommunernes it-miljø

IT Infrastruktur. Nu en broget affære? KENN BACH THOMSEN KEYACCOUNT MANAGER BFIH CERTIFICERET IT-HOSTING PARTNER ÅRETS HOSTING PARTNER HOS MICROSOFT

Begynderens Guide Til Chatbots

Kravspecification IdP løsning

EA3 eller EA Cube rammeværktøjet fremstilles visuelt som en 3-dimensionel terning:

Erfaringer med Information Management. Charlottehaven Jens Nørgaard, NNIT A/S

DSB s egen rejse med ny DSB App. Rubathas Thirumathyam Principal Architect Mobile

RÅDET FOR DIGITAL SIKKERHED GUIDE TIL SIKRING AF FORBRUGER- ELEKTRONIK PÅ INTERNETTET

Succes med CRM. Det behøver slet ikke at være så svært! made for sales people

Ruko ARX Access. Total tryghed og sikkerhed med online adgangskontrol STAND OFF ALONE LINE LINE

10 gode grunde. - derfor skal du vælge Office365

Kendskabet til converged systems er endnu lavt, da næsten halvdelen af IT beslutningstagerene ikke kender til konceptet.

BESKYT DIN VIRKSOMHED UANSET HVOR DEN FØRER DIG HEN. Protection Service for Business

Undervisningsbeskrivelse

Everything-as-a-Service. Afdelingsdirektør, Poul Bærentsen

Kom i trygge hænder med dedikeret support til din Cognos-platform EG IBM. Cognos. Support. EG Performance Management

02.22 It-driftskapacitet Fra simpel serverkapacitet over Cloud til fuld outsourcing

SmartFraming Et vindue til nationale sundhedssystemer. Version 3.0

Markedsføring IV e-business

Internet Information Services (IIS)

Tietgenskolen - Nørrehus. Data warehouse. Database for udviklere. Thor Harloff Lynggaard DM08125

Den digitale virkelighed

Pinpoint Tips & Tricks

Har det en værdi og hvordan kommer du i gang?

Velkommen VI BYGGER DANMARK MED IT

Fart på SAP HANA. Sådan laver du analyser direkte på dine data i realtid. Copyright 2012 FUJITSU. Fujitsu IT Future, København, den 16.

Bilag 10 Nuværende IT-installation

Understøttelse af LSS til NemID i organisationen

Produktspecifikationer Private Cloud Version 2.6

Markedsundersøgelse MAJ 2018

Virksomhedsejerens vejledning til udskiftning af regnskabssoftware

Sikkerhed i cloud computing

Microsoft Pinpoint Guide

Overvejelser i forbindelse MED OUTSOURCING

Hvordan sikres personfølsomme data - og adgangen til disse så persondataloven overholdes. Klaus Kongsted, CRO, Dubex A/S Dubex A/S, den 5.

GENERELLE VILKÅR COOKIEINFORMATIONSLØSNING

Introduktion til projekter

Foranalyse for edagsordensprojekt og devices

Cloud jura hvilke regler gælder I skyen? IT Driftskonferencen, 29. januar 2014

Projektopgave Operativsystemer I

Tilbudsmateriale: Ny Storage løsning. 1. Introduktion. 2. Løsningsoverblik. 2. januar 2012

Indholdsfortegnelse for kapitel 1

Det komplette kontor. Microsoft Dynamics NAV 2017, Office 365, Power BI, CRM & Azure

Produktspecifikationer Private Cloud Version 2.5

Design til digitale kommunikationsplatforme-f2013

Sikkerhedsanbefaling. Forholdsregler ved ophør af serviceopdateringer til Windows XP Embedded

Lærer nye styresystemer Installerer programmer som kun kan bruges i ældre versioner

Vejledning til Teknisk opsætning

Transkript:

Forord Forord Denne rapport er blevet udarbejdet i 5 semester af Datamatikeruddannelsen på Københavns Erhvervs Akademi. Rapporten er prøvegrundlaget for den afsluttende eksamen og blev udarbejdet i lige dele af gruppens medlemmer, som består af Thomas Slott og Jonathan Boltes. Rapporten skal ses som en videnskabelig undersøgelse af begrebet cloud computing og er suppleret med en applikation, der skal ses som en eksemplifikation af dele af de behandlede emner. For at opnå dette mål, har vi udarbejdet en problemformulering og sat os målet at give en konkret definition af begrebt cloud computing. Med udgangspunkt i dette har vi lavet en litteraturstudie og anvendt teknikker og metoder, som tager udgangspunkt i uddannelsens faglige grundlag. Der blev lagt meget vægt på en gennemgående struktur, der ved hjælp af undersøgelse, analyse og praktisk eksemplificering skulle kunne besvare opgavens formål. Litteraturstudiet tog udgangspunkt i bøgerne Cloud Computing Explained: Implementation Handbook for Enterprises (John Rhoton) og Cloud Computing: A Practical Approach(Anthony T. Velte, Toby J. Velte, Robert Elsenpeter). Vi valgte dette emneområde, da det baserer på en ny teknologi, der på nuværende tidspunkt(2010/2011) ikke er særlig undersøgt og veldefineret og vi synes at det ville være interessant at undersøge på bagrund af datamatiker studiet. Målgruppe: Rapporten vil, ved siden af eksaminator og censor, primært henvende sig til software- og systemudviklere og og andre it-interesserede. Rapportens omfang er på 65 normalsider og vedlagt er en CD som indeholder selve rapporten i digital form(dog ikke den finale version med de sidste rettelser, som mindre stavefejl og formuleringer) og kildekoden vedrørende applikationen, samt en kort How to gennemgang af informationer mht. brugen af applikationen. Pga Applikationen natur(cloud applikation) kan den ses og bruges på nettet: http://www.mvc-dev.com/cloudapp/ (Username: admin, Password: admin) Ansvarsområder mht. til rapportskrivning: Jonathan Kapitel 1, 2.1, 2.2, 2.7, 2.8, 4 Thomas Kapitel (1.2.3), 2.3, 2.4, 2.5, 2.6, 3 Mht. ansvarsområder er det et udtryk for, hvem der har haft ansvar for de enkelte dele af rapporten, men er udarbejdet på baggrund af research og diskussion i fællesskab.

Indholdsfortegnelse - Indholdsfortegnelse INDHOLDSFORTEGNELSE... 2 INDLEDNING... 5 PROBLEMSTILLING... 5 PROBLEMFORMULERING... 5 METODEBESKRIVELSE... 6 AFGRÆNSNING... 7 1 INTRODUKTION TIL CLOUD COMPUTING... 9 1.1 INTRODUKTION... 9 1.2 FORSKELLIGE FORMER FOR CLOUD COMPUTING... 10 1.2.1 INFRASTRUCTURE AS A SERVICE... 11 1.2.2 PLATFORM AS A SERVICE... 13 1.2.3 SOFTWARE AS A SERVICE... 14 1.3 DE FORSKELLIGE SLAGS SKYER... 18 1.3.1 PUBLIC CLOUD... 19 1.3.2 PRIVATE CLOUD... 19 1.3.3 HYBRID CLOUD... 21 1.3.4 SAMMENFATNING... 22 1.4 DELKONKLUSION... 23 2 OVERVEJELSER FORBUNDET MED UDVIKLINGEN AF EN SAAS-APPLIKATION... 25 2.1 SIKKERHEDSASPEKTER... 25 2.1.1 UDBYDERNE OG SIKKERHED... 26 2.1.2 KUNDERNE OG SIKKERHED... 28 2.1.3 RISIKO ANALYSE... 30 2.1.4 LØSNINGSFORSLAG MED HENSYN TIL SIKKERHEDSASPEKTER... 34 2.2 HARDWARE... 37 2.2.1 HARDWARE KRAV FOR KUNDEN... 37 2.2.2 HARDWARE KRAV FOR UDBYDERNE... 39 2.3 SKALERBARHED... 40 2.3.1 SKALER APPLIKATIONEN... 41 2.3.2 SKALER DATA... 42 2.4 DATABASE... 42 2.5 ARKITEKTUR... 43 2

Indholdsfortegnelse - 2.6 TEST... 48 2.6.1 IDENTIFICER GÆLDENDE TESTTYPER... 48 2.6.2 VALG AF TESTMILJØ... 49 2.6.3 SPECIELLE HENSYN... 49 2.6.4 SIKKERHEDS TEST... 50 2.6.5 YDEEVNE- OG BELASTNINGSTEST... 51 2.7 SAMMENLIGNING AF UDBYDERE... 51 2.7.1 GOOGLE... 52 2.7.2 AMAZON... 53 2.7.3 MICROSOFT... 54 2.7.4 OPSUMMERING... 54 2.8 KAN DET BETALE SIG?... 55 2.8.1 SWOT ANALYSE... 55 2.8.2 FEASABILITY STUDY... 56 2.9 DELKONKLUSION... 58 3 REPARATIONSSYSTEM SAAS I PRAKSIS... 59 3.1 DET GAMLE SYSTEM... 60 3.2 INTRODUKTION TIL DET NYE SYSTEM... 61 3.3 ANALYSE... 62 3.3.1 KRAVLISTE... 62 3.3.2 USECASES... 63 3.3.3 ANALYSEKLASSEDIAGRAM... 64 3.4 DESIGN... 64 3.4.1 ARKITEKTUR... 64 3.5 KONSTRUKTION... 68 3.5.1 ASP. NET MVC... 68 3.5.2 INPUTVALIDERING... 74 3.5.3 SIKKER LOGIN MED FORM AUTORISATION OG MEMBERSHIP SERVICE... 75 3.5.4 PRAKTISK IMPLEMENTERING AF VORES ARKITEKTUR I ASP.NET MVC... 76 3.5.5 ENTITY FRAMEWORK OG DATABASE... 78 3.6 IMPLEMENTERING... 81 3.6.1 MICROSOFT AZURE... 81 3.7 DELKONKLUSION... 85 4 STUDIERAPPORT... 86 4.1 INTRODUKTION... 86 4.2 COMPLETENESS METRIK... 86 4.3 ESTIMERING AF TIDSFORBRUG... 88 4.4 KVALITETSSIKRING... 91 3

- 4.5 REVIEW... 95 4.6 VERSIONSSTYRING... 97 4.7 PROCESSMODELLEN... 97 5 DISKUSSION... 99 6 KONKLUSION... 99 6.1 PRODUKT... 99 6.2 PROCES... 100 6.3 PERSPEKTIVERING... 101 LITTERATURLISTE... 102 BILAG... 105 BILAG 1 (RIS)... 105 BILAG 2 (RISIKOTJEKLISTE - SIKKERHEDSASPEKTER)... 106 BILAG 3 (RISIKOTJEKLISTE - STUDIERAPPORT)... 107 BILAG 4 (COMPLETENESS METRIK)... 108 BILAG 5 (USECASE BESKRIVELSER)... 109 BILAG 6 (USECASEDIAGRAM)... 111 BILAG 7 (KRAVSLISTE)... 113 BILAG 8 (KLASSEDIAGRAMMER)... 115 BILAG 9 (PROBLEMSTILLING OG FORMULERING AF DEN GAMLE RAPPORT)... 116 BILAG 10 (GANTT-KORT)... 117 4

Indledning - Problemstilling Indledning Problemstilling I de seneste år har begrebet cloud computing været et af de mest omtalte begreber indenfor ITverdenen. Aviser, blogge, bøger og i det hele taget er internettet fyldt til bristepunktet med dette begreb. Alligevel er det nok de færreste der direkte adspurgt kan komme med en entydig definition af begrebet. Ved en hurtig søgning på Google på begrebet cloud computing" vil man blive konfronteret med begreber såsom Software as a Service, Platform as a Service, Infrastructure as a Service, private og public cloud mm, og det vil hurtigt stå klart at cloud computing ikke lader sig definere så nemt og at cloud computing kan være mange forskellige ting. Mange af de store producenter på IT-markedet, såsom Microsoft, Amazon, Apple og Google reklamerer med produkter indenfor området og det virker som om det er her, der vil blive satset stort i fremtiden. Spørgsmålet er om dette er endnu en flygtig hype, der er glemt om nogle år, eller om det er her fremtiden indenfor IT ligger? Det de fleste nok kommer til at tænke på når begrebet cloud computing nævnes, er noget der foregå på internettet hvor logikken er skjult for brugeren. Men findes den slags løsninger ikke allerede og har de eksisteret i mange år i forvejen i form af f.eks. webapplikationer og andre internet baseret løsninger? Den vage definition af begrebet og disse spørgsmål ligger til grund for denne opgave. Problemformulering Denne opgave har som formål at forklare og eksemplificere begrebet cloud computing. Ved hjælp af et praktisk eksempel indenfor cloud computing, vil vi belyse de forskellige aspekter, samt fordele og ulemper, der hænger sammen med dette begreb. Vi vælger at forklare Cloud computing, bl.a. ved hjælp af en softwareløsning til virksomheder. Med udgangspunkt i det ovenstående ser vores problemformulering ud på følgende måde: Hvad er cloud computing? Hvilke typer cloud computing findes der? 5

Indledning - Metodebeskrivelse Hvem tilbyder cloud computing? Hvem gavner af cloud computing? Hvordan udvikler man en løsning som gør brug af cloud computing? Hvori ligger forskellen mellem at udvikle en applikation til cloud computing set i forhold til et traditionelt udviklingsmiljø? Hvilke aspekter gør sig gældende for en virksomhed der overvejer cloud computing? Hvad er det tekniske grundlag for cloud computing? Metodebeskrivelse For at planlægge projektet valgte vi en procesmodel, som vi selv udarbejdede og lavede en tidsplan baseret på identificerede arbejdsopgaver. For at sikre kvalitet gennem hele projektet estimerede vi på omfang og tidsforbrug ved hjælp af metrikker og udførte reviews. Vi lavede en risiko-analyse for at undgå og monitorere risici i projektforløbet. Metodisk set har vi delt rapporten op i tre dele. Den første del skulle belyse de forskellige typer for cloud computing, den anden del skulle behandle aspekter forbundet med cloud computing og den tredje del skulle vise en praktisk demonstration og behandling af de fund, vi gjorde Baseret på research i forskellig litteratur undersøgte vi først hvilke former for cloud computing der eksisterer. Efter at have dannet os et overblik over dette, valgte vi nogle fokusområder, som vi herefter brugte til at undersøge hvilke aspekter, der gør sig gældende, når der arbejdes med cloud computing. Vi undersøgte hvilke sikkerhedsaspekter gjorde sig gældende for området, hvorefter vi udarbejdede en risikoanalyse, baserende på sikkerhedsaspekter. På bagrund af resultaterne fra denne analyse gav vi anbefalinger på hvordan riscisis kan undgås, for senere at blive brugt i det praktiske eksempel. I afsnittene om Hardware, Skalerbarhed, database, arkitektur og test undersøgte vi hvilke aspekter der gør sig gældende indenfor disse områder set i et cloud computings perspektiv og kom med anbefalinger baseret på resultaterne. 6

Indledning - Afgrænsning Derefter sammenlignede vi forskellige udbydere mht. til de forskellige cloudformer vi undersøgte i det indledende kapitel. På baggrund af hele undersøgelsen af hvad en udvikler skal tage hensyn til, sammenfattede vi hvilke kriterier der gør sig gældende for udviklingen af en cloud-applikation. Der blev udviklet et praktisk eksempel med det formål at vise konkrete anvendelser af metoder og teknikker for at demonstrere en praktisk opfølgelse af de kriterier vi kom frem til gennem de foregående resultater. Som grundlag for det praktiske eksempel brugte vi en tidligere udviklet applikation, som skulle reudvikles til en cloud-applikation. For at bestemme om dette kan anbefales ud fra et forretningsmæssigt synspunkt, udførte vi først en SWOT-analyse og en Feasibility Study. Vi valgte at komme med delkonklusioner for hvert kapitel, hvor vi sammenfattede evt. fund og resultater. Til grund for analyse og design blev der brugt objekt-orienterede metoder baseret på UMLprincipper og applikationen blev herefter konstrueret på baggrund af design-dokumentationen. Afgrænsning Da dette projekts formål er en videnskabelig undersøgelse af begrebet cloud computing skal rapporten ses som hovedproduktet. Vi har valgt at eksemplificere og underbygge nogle af rapportens problemstillinger og begreber vha. af en applikation, der blev konstrueret sideløbende. Den færdige applikation vil være af rudimentær karakter, hvor ikke al funktionalitet vil være implementeret, og der er ikke lagt vægt på at udvikle en grafisk brugergrænseflade. Cloud computing er et meget bredt og omfattende emne, og for at give et fyldestgørende svar på opgavens problemformulering og -stilling, har vi valgt at inddrage en række aspekter, der tangerer dette område. Da opgavens tidsramme er begrænset, har vi valgt at give visse afsnit en forholdsvis generel karakter. Vi vil koncentrere rapportens indhold på at udvikle software i relation til cloud computing og vil derfor primært fokusere på de aspekter der, set i dette perspektiv, gør sig gældende. Derfor vil 7

Indledning - Afgrænsning andre aspekter forbundet med cloud computing kun være beskrevet i det omfang det er relevant for dette perspektiv. 8

Introduktion Til Cloud Computing - Introduktion 1 Introduktion Til Cloud Computing 1.1 Introduktion Dette afsnits formål er at introducere læseren til begrebet cloud computing, så det første spørgsmål der skal belyses er: Hvad er cloud computing? Svaret er alt for komplekst til at det kan defineres i en sætning og denne rapport skal ses som et forsøg på at komme tættere på en definition. Der findes selvfølgelig de korte svar på spørgsmålet om hvad cloud computing er. De følgende citater er kun en håndfuld eksempler på definitioner af cloud computing. 1 Forrester/Jupiter Research: A standardized IT capability (services, software, or infrastructure) delivered via Internet technologies in a pay-per-use, self-service way. The 451 Group: [ ]Or, put more simply, the cloud is IT, presented as a service to the user, delivered by virtualized resources that are independent of location. Burton Group: The set of disciplines, technologies, and business models used to render IT capabilities as on-demand services. For at får en fyldestgørende forklaring på hvad cloud computing er, skal man grave lidt dybere, og det er det vi havde tænkt os at gøre. Cloud computing kan være mange ting og findes i forskellige former. Så de første underafsnit i dette kapitel vil handle om den måde vi opdeler og specificerer cloud computing på. Cloud computing har potentiale til at revolutionere it-verdenen, da det indebærer mange muligheder til at forandre den måde, vi behandler data på. Cloud computing indeholder store fordele for både udbydere og kunder. Spørgsmålet er så hvem er udbyder og hvem er kunde? 1 http://jameskaskade.com/?p=594 9

Introduktion Til Cloud Computing - Forskellige former for cloud computing Udbyderne er mangfoldige, det er både de store veletablerede it-giganter såsom Microsoft, Google, Amazon, Apple mfl., men det er også mindre opstarter virksomheder, som prøver at svømme med på cloud computing-bølgen og som fylder de mindre nicher inden for denne verden. Potentialet er stort, og det kan være svært at beholde overblikket over alle dem der har fingrene med i dette fænomen. Drivkræften inden for cloud computing bliver nok mest af alt udgjort af de store it-virksomheder, som investerer stort. Således kan vi konstatere, at f.eks. Microsoft alene i 2010 allerede har investeret omkring 9.5 milliarder USD i cloud computing, og der regnes med, at disse udgifter er stigende. 2 Vi har afsat et afsnit for at holde nogle af de store udbydere op mod hinanden, da der ikke kun er forskel på de produkter de tilbyder, men også den måde deres afregningsmodeller er opbygget på. (2.7 Sammenligning af udbydere side 51) Kunderne indenfor cloud computing strækker sig fra ganske almindelige brugere til store virksomheder. Cloud computing kan betale sig for mange, dog ikke for alle. I de kommende afsnit og kapitler vil vi derfor beskrive de overvejelser, potentielle kunder skulle tage i betragtning, inden de vælger en løsning i skyen. 1.2 Forskellige former for cloud computing Som skrevet i introduktionen, findes cloud computing i mange forskellige former. For at kunne forstå hvad cloud computing er og hvor de store forskelle set i forhold til et traditionelt softwareprodukt ligger, skal man kende disse forskellige former og derfor vil vi her introducere de mest udbredte og vigtigste. I introduktionen er der et citat om hvad cloud computing er: (The 451 Group: [ ]Or, put more simply, the cloud is IT, presented as a service to the user, delivered by virtualized resources that are independent of location. ) Dette definitionsforslag synes vi er meget passende, da det bl.a. siger, at cloud computing er IT i form af en service. 2 https://community.dynamics.com/product/crm/crmnontechnical/b/crmsoftwareblog/archive/2010/11/18/microsoft -s-investment-in-cloud-computing-how-microsoft-dynamics-crm-brings-you-to-the-cloud.aspx 10

Introduktion Til Cloud Computing - Forskellige former for cloud computing I den sammenhæng giver det god mening at beskrive begrebet Everything as a Service (XaaS). XaaS er et koncept, der går ud på, at cloud miljøet kan tilbydes/udlejes som en service af en given udbyder. Dette indebærer bl.a. resurser i form af lagerplads, processorkraft etc., men kan også omfatte udvikling af platforme mm. Konceptet følger tre regler: Den første regel går ud på at man på et hvert tidspunkt kan få den ønskede service, dvs. On Demand (altid tilgængelig). Desuden skal selve konfigurationen af den ønskede service kunne foretages af kunden, fx gennem en webinterface; dette kaldes Self-Service. Den tredje og sidste regel er Risici-minimering, hvilket vil være gældende, da lejeperioderne skal være korte og man jo kun betaler for det man bruger - ergo skal der ikke investeres kapital i nyt udstyr mm, da dette er udbyderens ansvar. 3 Arkitekturen bag cloud computing kan opdeles efter den såkaldte SPI-model som kan inddeles i tre trin: Software as a Service (SaaS), Platform as a Service (PaaS) og Infrastructure as a Service (IaaS). 4 Disse tre services bygger på hinanden, således bygger SaaS på PaaS og PaaS på IaaS. I de følgende underafsnit vil vi belyse disse tre forskellige former for services, som tilsammen danner grundlaget for det der opfattes som cloud computing. 1.2.1 Infrastructure as a Service IaaS danner bundlaget i cloud computing. Det er dette lag, de andre services bygger på. Som navnet allerede antyder, handler denne service om infrastruktur. It-infrastruktur omfatter generelt set alle komponenter, der er nødvendige for at eksekvere software. 5 Hvis vi som eksempel på en traditionel indrettet infrastruktur tager en hjemmeside, dette kunne eksempelvis være www.kea.dk, vil infrastrukturen blandt andet består af en eller flere servere. Disse kan være fysisk tilstede i KEA s lokaliteter eller de kan være lejet i form af et web-hosting tilbud på et såkaldt webhotel. 3 http://www4.informatik.uni-erlangen.de/lehre/ss10/hs_akss/papers/02_ausarbeitung_joerg_brendel.pdf 4 John Rhoton; Cloud Computing Explained: Implementation Handbook for Enterprises; S. 19 5 http://www.oldenbourg.de:8080/wi-enzyklopaedie/lexikon/daten-wissen/informationsmanagement/it- Infrastruktur 11

Introduktion Til Cloud Computing - Forskellige former for cloud computing Begge løsninger kan være forbundet med problemer og omkostninger. Hvis serverne er fysisk tilstede, vil omkostningerne sandsynligvis være rimelig høje, da serverne i første omgang må anskaffes og vedligeholdes. Hvis der er behov for mere plads, må der tilkøbes flere servere. Desuden skal de holdes kølige, hvilket sammen med driften af selve serverne resulterer i et højt strømforbrug. Derudover skal der muligvis tilkøbes licenser til server-software. Da denne løsning er forholdsvis dyr kunne det tænkes, at KEA i stedet kunne leje flere servere på nettet. Dette kan ske via diverse web-hosting udbydere. Her vil der ikke opstå de samme omkostninger mht. strømforbrug, licenskøb vedligeholdelse mm. Dog vil KEA være bundet til en forholdsvis statisk lejekontrakt, som typisk går over en længere periode. Desuden kan det være svært at prognosticere hvor meget serverplads der egentlig vil være behov for. Det er her IaaS kommer ind i spillet som en cloud computing løsningsmodel. IaaS går ud på, at infrastrukturen, i dette tilfælde serverne, bliver oprettet virtuelt i en udbyders datacenter for derefter at kunne blive instantieret som et stykke software. 6 En virtuel server, også kaldt Virtual Machine (VM), kan instatieres på en fysisk server (VM-Node). Dette betyder, at man udfra en fysisk infrastruktur kan kreere en virtuel Infrastruktur. 7 Datacenter server Virtual Machine Virtual Machine Virtual Machine Virtual Machine Virtual Machine Virtual Machine Figur 1 6 http://www4.informatik.uni-erlangen.de/lehre/ss10/hs_akss/papers/02_ausarbeitung_joerg_brendel.pdf 7 http://www4.informatik.uni-erlangen.de/lehre/ss10/hs_akss/papers/02_ausarbeitung_joerg_brendel.pdf(3.2) 12

Introduktion Til Cloud Computing - Forskellige former for cloud computing Virtuelle maskiner danner grundlaget for alle andre komponenter indenfor den virtuelle infrastruktur og målet er, at alle komponenter fra den fysiske infrastruktur står til rådighed virtuelt. 8 Stadigvæk skal det siges, at IaaS er under udvikling og selvom mange komponenter allerede nu tilbydes som virtuelle løsninger, er ikke alle komponenterne tilbudt enkeltvis af udbyderne. IaaS opfylder kravene stillet af XaaS konceptet, da komponenter kan lejes og konfigureres efter behov, og der vil være en risiko minimering, da der ikke skal investeres penge i køb af itinfrastruktur komponenter. 9 Dette har fordelen, at serveren kan tilbydes og behandles som software. Prisen vil blive afregnet on-demand, dvs afhængig af selve forbruget, og lejeperioden kan være forholdsvis kort. Generelt set ligger den store fordel i at produktet kan hentes/bruges efter behov og tilpasses situationen, hvilket gør det rimelig fleksibelt. Infrastruktur som service hører stort set under Utility Computing paradigmet. Dette går ud på at itresurser som infrastruktur, storages etc. skal ses og behandles som allmindelige resurser, dvs. vand, strøm etc. 10 1.2.2 Platform as a Service Platform as a Service (PaaS), skal give en udviklingsplatform til cloudapplikationer. Denne platform kører på resurser stillet til rådighed af IaaS laget. PaaS skal ses som en evolution af konventionelle integrerede udviklings miljøer (integrated development enviroments, kort IDE), da traditionelle udviklingsplatformer, selv om de er virtualiseret, er konciperet til desktop og client-server miljøer og derfor ofte ikke er klar til skyen. 11 Afhængig af udbyderen understøtter PaaS forskellige kodesprog og desuden kan platformen indeholde ekstra services i form af genanvendelige komponenter og biblioteker. Afhængig af udbyderen, kan platformen integreres i kendte udviklingsværktøjer, såsom eksempelvis Eclipse 12, 8 http://www4.informatik.uni-erlangen.de/lehre/ss10/hs_akss/papers/02_ausarbeitung_joerg_brendel.pdf 9 http://www4.informatik.uni-erlangen.de/lehre/ss10/hs_akss/papers/02_ausarbeitung_joerg_brendel.pdf(3.2.3) 10 http://msdn.microsoft.com/en-us/library/dd430340.aspx 11 John Rhoton; Cloud Computing Explained: Implementation Handbook for Enterprises; S. 51 12 http://www.eclipse.org/ 13

Introduktion Til Cloud Computing - Forskellige former for cloud computing som ved hjælp af et plug-in 13 som Google tilbyder, kan integreres i Googles App Engine, som er Googles svar på en PaaS løsning. Ud over dette kan PaaS byde på flere funktioner, som bl.a. kan omfatte forskellige services med det formål at teste, designe, udvikle, implementere og hoste applikationen der udvikles. Derudover kan der være versionskontrol og andre redskaber, der hjælper med at holde overblikket over et givent projekt. 14 I det hele taget kan man nok sammenfatte, at man får en samling af redskaber, som er centraliseret og tilpasset til platformen, som man ellers i traditionel udvikling ville få gennem en række separate programmer, der skal installeres og licenseres. Det skal dog nævnes at antallet af redskaber er varierende, alt efter hvilken udbyder man har valgt. PaaS indeholder begreber såsom webservice, database, scalability og security integration. Det er allesammen begreber vi kender fra traditionel software udvikling, men er også centrale for cloud computing udvikling. 1.2.3 Software as a Service Software as a Service (SaaS) er en software distributionsmodel, hvor applikationer hostes af en leverandør eller en udbyder og stilles til rådighed til kunder over et netværk, typisk på internettet. Modsat PaaS, hvor du udvikler din egen applikation, tilbyder SaaS applikationen til dig. SaaS-modellen er den direkte modsætning til den traditionelle måde at anskaffe og benytte software i virksomheder. Med SaaS er det slut med medier, manualer og licenser. I stedet for at erhverve sig softwarelicenser til en applikation, fx ERP eller CRM, og derefter installere softwaren på en eller flere klienter, tilbydes applikationen af udbyderen til kunden enten som Service on Demand, som abonnement, i en pay as you go model eller simpelthen uden betaling. Dermed slipper kunden for selv at vedligeholde og opdatere såvel selve softwaren, som den hardware der kræves for at kunne køre applikationen. Dette gør det også nemt at vælge applikationer efter behov samt at skifte SaaS-udbyder uden økonomiske og ressourcemæssige tab. Det skyldes at SaaS stiller få krav til virksomhedens eksisterende interne arkitektur. Platformen, som virksomheden anvender, behøves ikke nødvendigvis afspejle den platform SaaS-applikationen 13 http://code.google.com/intl/de-de/appengine/docs/java/tools/eclipse.html 14 http://www.cloudcomputinglive.com/asia/platform-as-a-service.html 14

Introduktion Til Cloud Computing - Forskellige former for cloud computing anvender, da SaaS-applikationer tilgås via en web-browser. SaaS-modellen er derfor velegnet til at levere forretnings-applikationer hvor som helst og når som helst. En SaaS-løsning kan være udviklet ved hjælp af en PaaS og bygget på IaaS, men dette behøver ikke være tilfældet og kan sagtens være hostet på en normal webserver hos en regulær udbyder såsom Surfttown.dk eller One.com. Dog ville der her være begrænsninger i forhold til f.eks. skalerbarhed, som er en af fordelene ved Cloud Computing. Vi har i denne opgave primært valgt at fokusere på SaaS og hvilke faktorer der spiller ind når en SaaS-løsning skal udvikles. Derfor vil vi i dette afsnit uddybe begrebet en smule og komme lidt ind på nogle af fordelene og ulemperne ved dette denne form for service. SaaS kan hovedsageligt deles op i 2 kategorier 15 : Line of Business (forretningsrelateret): Disse er forretningsløsninger til selskaber og virksomheder. De sælges typisk ved abonnement. Applikationer i denne kategori omfatter forretningsprocesser, såsom håndtering af suply-chain manegement, CRM og lignende forretningsorienterede værktøjer. Customer-oriented services (forbrugerorienterede services): disse tjenester udbydes til offentligheden på abonnementbasis, "pay as you go" eller gratis (reklamebaseret). Eksempler i denne kategori er webmail-tjenester, online gaming, webbaseret officeprogrammer (word) og online-banking. Vi kender allerede SaaS fra vores hverdag og det er nok den form for Cloud Comptuing, der har eksisteret i længst tid. Her følger et par eksempler på allerede eksisterende SaaS-løsninger: Hotmail & Gmail Et af de ældste eksempler på SaaS er Microsofts Hotmail. Tjenesten blev lanceret i 1996 og året efter i 1997 blev den opkøbt af Microsoft. På kort tid gik tjenesten fra at have 8,7 millioner brugere til få år efter at have 30 millioner brugere. Ifølge Wikipidia har de i dag op mod 364 millioner brugere i 2010. I starten tilbød tjenesten 2 mb plads per konto. I 2004 lanceret Google 15 Anthony T. Velte, Toby J. Velte, Robert Elsenpeter; Cloud Computing: A Practical Approach; S. 174 15

Introduktion Til Cloud Computing - Forskellige former for cloud computing tjenesten Gmail, som på samme måde tilbyder gratis online emailservice. Fra starten tilbød de 1GB, hvilket senere er vokset til 7GB i 2010 og på dette tidspunkt var det betydeligt mere end Hotmail kunne tilbyde, som på dette tidspunkt tilbød noget nær 10 MB per konto. Gmail er gratis og datalagerpladsen stiger stadig den dag i dag, men til gengæld forbeholder Google sig retten til at præsentere reklamer, der knytter sig til ord og begreber i den modtagne post. Salesforce.com Salesforcorce var en af de første SaaS-udbydere til Line Of Business-markedet og leverede CRM software. I dag er Salesforce en kæmpe spiller på markedet med over 1.1 millioner kunder rundt omkring i verden alene på CRM slagsområdet. 16 Ifølge (CLOUD COMPUTING) kan deres CRM services i dag brydes ned i 5 underkategorier: Salg, Marketing, Service, Samarbejde og Analyse. I dag tilbyder Salesforce også PaaS-løsninger så firmaer kan bygge deres egne løsninger. 1.2.3.1 Fordele og ulemper Selvom et utal af medier og IT-blogs taler om at Cloud Computing, og dermed også SaaS, er fremtiden så har der i de seneste år også været en del skepsis; og bestemt ikke uden grund! I et interview fra 2008 siger Sikkerhedsekspert Jeff Kalwerisky fra firmaet Alpha Software B i en artikel, at Cloud computing, hvor beregninger og data bliver foretaget i generiske datacentrer, er en tvivlsom fornøjelse for virksomheder. 17 Han opridser nogle af de faktorer som han ser som en udfordring i fremtiden: 1. Manglende standarder besværliggør at forskellige cloud-løsninger kan kommunikere med hinanden. 2. Integritet og sikkerhed er en udfordring, idet intet firma er interesseret i at nysgerrige sjæle kigger i deres data. 3. Tilgængelighed: kan virksomhederne stole på at deres data altid til alle tider er tilgængelig? Dette er et interview fra 2008 og der er selvfølgelig sket en del bare på de 2 år, men betragtningerne er stadig højaktuelle og derfor meget relevante. 16 Anthony T. Velte, Toby J. Velte, Robert Elsenpeter; Cloud Computing: A Practical Approach; S. 59. 17 http://www.version2.dk/artikel/8535-cloud-computing-er-rasende-usikkert 16

Introduktion Til Cloud Computing - Forskellige former for cloud computing I artiklen Derfor er virksomhederne bange for skyen 18 skriver Filip S Kirkegaard, at der på det tidspunkt artiklen er skrevet, som er august 2010, kun er 2 procent af de største virksomheder der har taget springet ind i skyen, men samtidig forventer cirka 40 procent at benytte cloudteknologier om 3 år. Cloud-teknologierne giver ofte umiddelbare fordele, da de eksempelvis er lette at implementere og gør det lettere at øge kapaciteten. Folkene bag undersøgelsen mener selv, at cloud computing er blevet moden til de store virksomheder, og at der venter en "eksplosiv vækst". "Cloud-teknologierne giver ofte umiddelbare fordele, da de eksempelvis er lette at implementere og gør det lettere at øge kapaciteten, når det kræves. Omvendt kan det være komplekst at vurdere den samlede økonomiske effekt ved cloud, og risikoen ved stor afhængighed til en enkelt leverandør bør overvejes, siger manager Nils Bundgaard, Rambøll Management Consulting, i en pressemeddelelse. 19 Så ingen tvivl om at der er megen skepsis på området, men fordelene er heldigvis også til at få øje på. Her er nogle af de fordele vi ser ved at benytte en SaaS-model: 1. Det er hurtigere for virksomheder at erhverve sig ny software og man slipper for at installere det på alle virksomhedens computere. 2. Man kan hurtigere afvikle virksomheders nuværende software og skifte til anden udbyder, hvis man ikke er tilfreds med denne eller virksomhedens behov ændrer sig i takt med markedet eller andre indre/ydre faktorer. 3. Omkostninger til licenser forsvinder helt i traditionel forstand, idet SaaS-kunden kun betaler for det omfang man bruger servicen. 4. I princippet kan SaaS-udbyderen gå fra at være en lille til stor virksomhed på få dage, idet det ikke kræver indkøb af nye servere. Dermed er løsningen utrolig skalerbar, hvis altså den valgte service understøtter dette. 5. Samlet set kan det give brugeren af en SaaS nedsatte omkostninger til interne ITafdelinger, der konstant skal installere, vedligeholde, fejlfinde software på stedet. 18 http://www.comon.dk/nyheder/derfor-er-virksomhederne-bange-for-skyen-1.368893.html 19 http://www.comon.dk/nyheder/derfor-er-virksomhederne-bange-for-skyen-1.368893.html 17

Introduktion Til Cloud Computing - De forskellige slags skyer 6. Opdateringer og fejlfinding sker i skyen og er usynlig for brugeren. Derfor arbejder medarbejderne altid med den seneste udgave af programmet. 7. Ofte vil de valgte services være generelle løsninger og derfor kræver de ikke at virksomheden skal bruge en masse penge på specialiseret software og kan bruge disse penge andre steder. 1.3 De forskellige slags skyer I de ovenstående afsnit har vi beskrevet de forskellige servicelag, som man kan opdele cloud computing i, men for at kunne give det store overblik, skal vi nævne, at der også findes forskellige måder, hvorpå selve hardware-arkitekturen kan være opbygget på. Således taler vi her om de forskellige slags skyer. Begrebet cloud computing er blevet til et såkaldt buzzword (modeord), men cloud computing er stadigvæk forbundet med skepsis både hos private, offentlige og erhvervsmæssige brugere. Grundlaget for denne skepsis er stort set altid baseret på spørgsmålet om sikkerhed. At lægge sine data, hemmelige eller ej, op på nettet, hvor det skal ligge side om side med andre kunders på et stort datacenter, et eller andet sted i verdenen, kan virke skræmmende for mange virksomheder og fremkalder oftest den usikkerhed der er forbundet med dette nye it-teknologi. Vi har dedikeret et afsnit til sikkerhedsaspekter forbundet med cloud computing. (2.1 Sikkerhedsaspekter side 25) Men spørgsmålene angående sikkerhed, er blandt andet et grundlag for, at der findes forskellige slags skyer. For at undgå, at virksomheder og andre potentielle kunder skal lægge deres data op i et datacenter af ukendt lokation side om side med andre kunder, har man valgt at give flere muligheder for at gøre brug af cloud computing. Således findes der en række løsninger der kan vælges i mellem. Vi har valgt at nævne og forklare de tre mest gængse slags skyer; Public Cloud (Offentlig sky), Private Cloud (Privat Sky) og Hybrid Cloud (Hybrid Sky), for derefter at kunne holde dem op mod hindanden og finde fordele og ulemper ved brugen af disse. Efterfølgende gives en objektiv anbefaling af hvad der skal bruges hvornår og hvad vi har tænkt os at bruge. 18

Introduktion Til Cloud Computing - De forskellige slags skyer 1.3.1 Public Cloud Begrebet public cloud dækker over det største felt i cloud computing verdenen. Microsoft, Amazon og Google er blandt de største udbydere på dette marked. Public clouden omfatter det konventionelle marked og kan byde på et skræddersyet tilbud af forskellige services i form af infrastruktur, platform og software. Systemet bygger på en virtualisering af de forskellige resurser, der gør det mulig at give et on demand tilbud, der kan afregnes efter tid og forbrug. Cloud computing i en public cloud forgår fysisk set på forskellige datacentre fordelt på kloden. Disse datacentre er ofte ejet af resursestærke udbydere, som fx Microsoft, der kan sikre den enorme kapacitet der er nødvendig for at levere den skalerbarhed og fleksibilitet som cloud computing reklamerer for. På et typisk datacenter (Se 2.2.2 Hardware krav for udbyderne side 39, for flere informationer om datacenter), vil en stor række kunder have deres data liggende, og meningen er, at den til ethvert tidspunkt skal være tilgængelig, forudsat man har en internet forbindelse. Figur 2 Datacenter Internetforbindelse 1.3.2 Private Cloud Teknisk set baserer en private cloud på public cloudens design og opbygning. Den fungerer efter de samme principper, men skælder sig ud fra public clouden grundet organisatoriske forskelle. 20 20 http://www.computerwoche.de/management/cloud-computing/1906429/ 19

Introduktion Til Cloud Computing - De forskellige slags skyer De organisatoriske forskelle baserer på et øget sikkerhedsbehov og på den bagrund kan det siges, at en private cloud er dedikeret til kun en kunde per datacenter, i forhold til de mange kunder der kan ligge på et datacenter der kører med en public cloud. Desuden vil datacentrets geografiske sted være festlagt, så at der ofte er tale om datacentre der fysisk ligger internt i en virksomhed. Man taler her ofte om on premise og off premise. Private clouds opbygning og dermed kapacitet er som regel meget mindre end den kapacitet en public cloud kan levere. Private clouds vil ofte være ejet og drevet af kunden selv og kan betragtes som en større investering, da infrastruktur og supportering i modsætning til en public cloud ikke stilles til rådighed af en udbyder. Dog kan de softwaremæssige rammer og grundkoncepter omkring virtualisering og management af infrastrukturen, som udgør fleksibiliteten bag cloud computing, købes som færdig pakkeløsning. Bl.a. har Microsoft i samarbejde med Dell, Fujitsu, Hitachi, HP, IBM og NEC udviklet programmet Hyper-V, der i samspil med Microsofts Server Platform skal levere det der er nødvendig for at oprette en Private Cloud. 21 I modsætning til en public cloud, vil en private cloud ofte blive angået gennem et virksomheds eget intranet eller/og en vpn forbindelse, hvis clouden f.eks. skal blive angået udefra af eventuelle samarbejdspartnere mm. 21 http://www.microsoft.com/germany/presseservice/news/pressemitteilung.mspx?id=533266 20