tisdagen den 10:e november 2009

Svenskt försök till definition av Cloud Computing

IASA Sverige som är en del av internationella IASA (International Association of Software Architects), eller Sveriges IT-arkitekter som de kallas, har gjort ett försök att definiera begreppet Cloud Computing. Nedan är deras definitionsförsök inklippt:

====================================================================================
Termen Cloud Computing relaterar både till applikationer som levereras som tjänster över Internet och till den hårdvara och systemmjukvara som tillhandahåller dessa tjänster.
Applikationstjänsterna talar vi om som Software as a Service.

Hårdvaran och systemmjukvaran är det vi kallar för molnet (The Cloud).
Cloud Computing karaktäriseras av två viktiga egenskaper; upplevt oändliga resurser och betalning per resursförbrukning. Den tjänst som erbjuds av molnet kallas Utility Computing, vilket närmast kan jämföras med resursförbrukning av t.ex. el och vatten.

När ett moln är publikt tillgängligt kallas det för ett publikt moln (Public Cloud). Ett moln som inte görs publikt tillgängligt kallas för ett privat moln (Private Cloud). Ett moln som inte kan erbjuda upplevt oändliga resurser och betalning per resursförbrukning erbjuder inte cloud computing.

Cloud Computing kan därför anses bestå av tjänsterna Utility Computing och Software as a Service
======================================================

IASA tar ett bra initiativ med att försöka få till en definition med "molnet" och Cloud Advisor antar att det är den interna definitionen för IASA´s medlemmar.

Tyvärr är definitionen inte tillräcklig för "gemene man" och kan dessutom ställa till det mera än det reder ut:

- Att blanda in ytterligare terminologi (Utility Computing) är inte önskvärt. Dessutom är "Utility Computing" en mera av en funktion och/eller leveransmodell. Från slutanvändar- och verksamhetshåll är det irrelevant vad IT-tekniker/utvecklare sätter för betydelse i olika begrepp. Istället är det funktionen som kommer ut av det som betyder något. Den funktionen är redan beskriven som "... upplevt oändliga resurser och betalning för resursförbrukning." Tjänsterna är något helt annat. Exempelvis kan man använda molntjänster som tillhandahåller utvecklingsplattformar (Google App Engine, OpenSocial, Microsoft Azure) eller tjänster som CRM, kontorsapplikationer, projektplanering eller e-post (Salesforce, Google Apps, Projectplace, Hotmail).
- Gruppen nämner begreppet SaaS (Software as a Service) men nämner inte de andra stora begreppen IaaS (Infrastructure as a Service) och PaaS (Platform as a Service). Det kan vara bra att inte blanda in en massa hajpade förkortningar, men då måste man göra det konsekvent.
- Cloud Computing behöver inte bestå av "Utility Computing" och SaaS som IASA avslutar sin definition. Cloud Computing kan mycket väl enbart vara att man köper kapacitet från Amazon, 3Tera eller MyCityCloud.

Det här var bara några konkreta exempel och det finns en hel del till att diskutera, exempelvis att beskriva den generiska termen "molnet" som:

- Leveransmodell/funktion (Betala för aktuell resursförbrukning, skala upp/ner med mera)
- Infrastruktur efter behov (beräkning, minne, nätverkstjänster, lagring med mera)
- Utvecklarplattformar för vidareförädlning (App Engine, Azure)
- Applikationer/tjänster över Internet (klientberoende/klientoberoende)

Sammanfattningsvis är det viktigt att poängtera behovet av tydligare definitioner och terminologi. Molnet är komplext och aktörer lovar mycket. Det leder till oseriösa spekulanter som vill "roffa" åt sig marknadsandelar. Tydlighet och transparens är två nyckelord då vi är på väg mot molnen och där har IASA gjort ett viktigt bidrag.

2 kommentarer:

  1. Tack för kommentaren Predrag; definitionen kommer antagligen behöver förändras när begreppen i sin tur mognar och sätter sig. Vi hoppas dock den ger en inspiration och tar bort de värsta missförstånden som te.x http://us.cnn.com/video/?/video/tech/2009/11/03/cloud.computing.test.cnn

    En kommentar kring PaaS, IaaS och SaaS då det är intressant och jag skall berätta hur vi tänkt. I vår definition så ingår begreppen PaaS och IaaS i begreppet ”Utility Computing” även om de inte explicit används. Det skulle kunna vara möjligt att använda PaaS och IaaS i definitionen också men då skulle de behövas tydlig åtskiljas och jag undrar om det verkligen går att göras på ett bra sätt; var går gränsen mellan plattform och infrastruktur, egentligen? Är det viktigt att särskilja dem? Då är det enklare att använda begreppet ”utility computing” (som funnit länge men inte används lika frekvent inom just ”Cloud Computing”). SaaS däremot är ett mer definierat begrepp som tydligt särskiljer sig mot Utility Computing.

    Skall bli kul att läsa din bok!

    Daniel Akenine, ordf. IASA

    SvaraRadera
  2. Hej Daniel.

    Tack för utförligt och tydligt svar! Jag måste erkänna att jag var lyckligt ovetande om videon hos CNN med Frank. Nästan så att jag önskar mig tillbaka till det läget :)

    Jag förstår resonemanget kring Utility Computing som samling för PaaS/IaaS och anser att ni har diskuterat rätt frågeställningar (vad är infrastruktur/vad är plattform?). Fortsätter gärna diskussionen framöver när vi ses. Har en del tankar och idéer att resonera kring.

    Mvh,

    Predrag

    SvaraRadera