Software Engineering for the cloud: a research roadmap

Published on March 2017 | Categories: Documents | Downloads: 80 | Comments: 0 | Views: 191
of 10
Download PDF   Embed   Report

Comments

Content

 

Software Engineering for the Cloud: a Research Roadmap Elias Adriano Nogueira da Silva

Daniel Lucrédio

Federal University of São Carlos,São Paulo, Brazil Email: elias.silv [email protected] [email protected] .br

Federal University of São Carlos,São Paulo, Brazil Contact: http://www.dc.ufscar http://www.dc.ufscar.br/~daniel .br/~daniel

—Hav aving ing arisen arisen from from the indust industry ry,, cloud cloud com comput put- Abstract—H ing is re recei ceivin ving g incre increasi asing ng att attent ention ion fr from om the aca academ demy y. We ar aree witnes witnessin sing g an incre increasi asing ng num number ber of paper paperss dedic dedicate ated d to experi exp erienc encee re repor ports ts and propo proposal sal of met method hods, s, proce processe ssess and tools focused focused on cloud-re cloud-related lated tech technolog nology. y. Researc Researchers hers are also attempting attemp ting to iden identify tify and form formaliz alizee the main conc concepts epts behind cloud computing, forming a basis for future investigations about how this appro approach ach can be use used d to promo promote te advanc advances es in man many y fieldss of computer field computer scie science. nce. However, However, while while the main resear research ch challe cha llenge ngess and opport opportuni unitie tiess re relat lated ed to cloud cloud com comput puting ing in genera gen erall ar aree alread already y well-k well-know nown, n, in the sof softwa tware re eng engine ineer ering ing ar area ea the sce scenar nario io is less less clear clear.. In this this paper paper,, we prese present nt the re resul sults ts of a sys system temati aticc liter literatu ature re re revie view w whe where re we tri tried ed to understand how researchers from the software engineering field

However Howe ver,, the approach approach followe followed d by the Berkeley Berkeley report was more general. It pointed out some major challenges that relate to cloud computing from a higher perspective, leaving some unanswered unanswered ques questions tions in differe different nt research research areas. One of these area areass is soft software ware engine engineerin ering, g, which is the subject of this paper. In this scenario, some of the first questions that need to be answered by software engineering researchers and practitioners are: what are the main challenges and research opportunities in developing software for the cloud, in terms of meth methodol odologies ogies,, languages, languages, fram framewo eworks, rks, tools tools and other other software engineering concerns? What has already been done in thes thesee fe few w year yearss of cl clou oud d re rese sear arch ch,, fr from om the the soft softwa ware re

are viewing the clou cloud dresearch compu computing ting paradigm paradigm..focused We iden identified tified ten software engineering opportunities specifically on cloud computing, which are presented and discussed in terms of related work. We also present a discussion on some practical issues related to the development of software for the cloud, trying to make some obscure points clearer and aiming to facilitate the work of software engineering researchers and practitioners.

engineering perspecti perspective? ve? To try to ans answer wer this que questi stion, on, we per perfor formed med a sys system tem-atic review review in the av availa ailable ble lite literatur rature, e, including including academic and industrial publications. Our objective was to elicit some gaps,, chal gaps challenge lengess and opportuni opportunities ties for soft software ware engi engineeri neering ng researchers, as well as to provide guidance to practitioners in terms of describing what is involved in the adoption of current cloud technologies. Our res resear earch ch method method and find finding ingss are des descri cribed bed in the remainder of this paper. First, we discuss a brief background (Section (Sec tion II) on clou cloud d comp computin uting g and related concepts concepts.. Next (Secti (Se ction on III III), ), we des descri cribe be the sys system temati aticc re revie view w proces process, s, including the search protocol, the adopted criteria and some interesting data related to the study. In Section IV we present the results of the review and our main findings. We identified ten different research opportunities, which we believe need to be further inve investigated stigated by the software engineering community. community. These may serve as a basis for future work in the field. In Section V we present a secondary result of this study, which includes some observations related to software engineering for the cloud, but from a more practical practical perspectiv perspective. e. We try to clarify some points that we found to be a little confusing in the literature, in order to help software engineering researchers and practitioners in the development of their work. Section VI discusses related work. Finally, in Section VII we present some concluding remarks.

I. I NTRODUCTION The concept of cloud computing has gained recent attention mainly mainly beca because use of the industry’ industry’ss init initiati iative. ve. Compa Companies nies attempted to optimize and even profit from their computing inf infras rastru tructu cture, re, and thu thuss a ple pletho thora ra of rel relate ated d concep concepts ts and proprieta propr ietary ry technolog technology y star started ted to appear, appear, aiming most mostly ly at the potential market. It was only recently that the academic community started to look at these concepts more carefully. Althou Alt hough gh it is pos possib sible le to track track do down wn ear earlie lierr relate related d work  work  describing virtualization, grid computing and clusters [1], [2], [3], which are concepts related to clouds, the first academic papers pap ers dea dealin ling g explic explicit itly ly with with cloud cloud com comput puting ing sta start rted ed to appear app ear aro around und 200 2008-2 8-2009 009 [4], [4], [5], [5], [2]. [2]. Mos Mostt of the these se wer weree attempts to propose a proper definition for cloud computing and its und underl erlyin ying g con concep cepts ts and techno technolog logies ies [4], [4], [2], [2], [6]. [6]. However, up to this date, no definition is widely accepted by the community [2], [7], [8]. One study that stands out is a 2009 technical report from the University of California at Berkeley [9], a prominent academic group gro up in the field. field. The report report discus discusses ses the main main concep concepts ts behind cloud computing, and presents some upcoming challenges and research opportunities for the academic community. Soon report and its authors became widely cited, down this the ground for different research directions in thelaying cloud computing field.

I I . BACKGROUND The concept concept of clo cloud ud did not ari arise se as a new new techno technolog logy y model, but as theinintegration ofto technologies from the past [8], which resulted a new way use and provide computing power as a service through the Internet.

 

The main ideas behind this concept are: to allow companies to acquire computing resources by demand; to enable payment according to the utilization volume; and to make it possible for a company to completely ignore the knowledge about where these resources come from [9]. Theree is stil Ther stilll no widel widely y accep accepted ted academic definit definition ion for cloud computing [7], [8]. Vaquero et al. [2] made a thorough stu study dy of the vario various us defi definit nition ionss fou found nd in the li liter teratu ature re to achie ach ieve ve a mo more re com comple plete te definit definition ion.. Alt Althou hough gh it is sti still ll a

res resour ources ces,, mak making ing it pos possib sible le to deploy deploy and run an any y software,, includin software including g opera operating ting systems systems and applicati applications. ons. It is norm normal ally ly a vi virt rtua uall co comp mput uter er that that ru runs ns on a re real al infrastr infr astructur ucturee main maintain tained ed by a prov provider ider.. The custo customer mer has full control over the (vir (virtual tualized ized)) operating operating system and the runn running ing applicati applications. ons. The most interes interesting ting part of thi thiss approa approach ch is the possib possibili ility ty to rapidl rapidly y inc increa rease se the computational power, which can sometimes be done automati auto maticall cally y by the prov provider ider.. Some example exampless of IaaS

proposal, propos al, the their ir definit definition ion is con consis sisten tentt and com comple plete, te, and the theref refore ore is the one used used in thi thiss work: work: “Cloud “Cloudss are a large large pooll of easily poo easily usa usable ble and access accessibl iblee virtua virtualiz lized ed resour resources ces (such as hard hardware ware,, dev develop elopment ment platform platformss and/ and/or or serv services) ices).. These resources can be dynamically reconfigured to adjust to a variable load (scale), allowing also for an optimum resource utilizat util ization. ion. This pool of resources resources is typi typicall cally y expl exploite oited d by a pay-per-use model in which guarantees are offered by the Infrastructure Provider by means of customized SLAs” [2]. This definition contains the main elements of cloud computing, but it is too general regarding the resources. Apparently, any any kin kind d of res resour ources ces cou could ld be virtua virtualiz lized. ed. To ma make ke thi thiss definit defi nition ion more con concre crete, te, we cou could ld loo look k at the many taxtaxonomies that attempt to characterize which kinds of resources can be mad madee av avail ailabl ablee in a cloud. cloud. Ma Many ny wer weree concei conceived ved

include: Amazon , GoGrid , IBM SmartCloud SmartCloud , among others.

7

under a business perspective [6], and include terms such as HaaS (Hardware as a Service), PaaS (Platform as a Service), DaaS ([Development, Database, Desktop] as a Service), IaaS (Infrastructure as a Service), BaaS (Business as a Services), TaaS (Test (Testing ing as a Ser Servic vicee [10], [10], [11 [11]), ]), Fa FaaS aS (Frame (Framewor work  k  as a Servic Service), e), and ev even en the generic generic XaaS (Every (Everythi thing ng as a Service). The definitions behind those terms are very wide and sometimes misunderstood [12], but there are three categories that seem to be more well established: •





 Software as a Service - SaaS: refers SaaS:  refers to applications that are delivered to customers in the form of services over the Internet [9], [13]. A SaaS normally operates over a cloud inf infras rastru tructu cture, re, but but thi thiss is not nec necess essary ary.. Exampl Examples es of  1 2 3 SaaS inclide: Google Drive , Flickr , Picasa , SkyDrive4 , among others.   Platform as a Ser Service vice - PaaS: PaaS: the  the idea is to provide a full software development platform as a service, including an execution environment, frameworks and different useful integrab inte grable le services services [6], [13]. Normally Normally,, the serv service ice also includes incl udes hosting, testing and a dist distrib ributio ution n chann channel el or 5 market. mark et. Some exampl examples es are: Google App Engi Engine ne and Microsoft Azure6 , among others.  consists in delivering   Infrastructur Infrastructuree as a Service - IaaS: IaaS: consists computational infrastructure as a service [6], [13]. The customer acquires - and pays by demand - services for processi proc essing, ng, storage storage and other fundament fundamental al computing computing

III. T HE  S YSTEMATIC R EVIEW In this study study,, we foll followe owed d a formal formal syst systemat ematic ic lite literatur raturee review process [15], [16], [17]. A systematic review proposes a fair assessment of the research topic as it uses a rigorous and reliable reli able review review methodol methodology ogy,, toge together ther with auditing auditing task taskss to reduce the researcher bias [18]. To enable the documentation of the system systemati aticc re revie view w and to fa facil cilit itate ate the proces process, s, the 11 START tool tool wa wass us used ed [1 [19] 9].. As pa part rt of the the pr proc oces ess, s, we developed a protocol that provided a plan for the review in terms of the method to be followed. Table I shows a synthesis of the systematic review protocol. A total of 122 articles were analyzed, of which 100 were sel select ected ed and the their ir data data ext extrac racted ted and ana analyz lyzed ed accord according ing 7

2

8

4 SkyDrive: 5

http://skydrive.live.com/  Google App Engine: http://code.google.com/appengine 6 Windows Windo ws Azure: http://ww http://www.wi w.windowsazure.co ndowsazure.com/  m/ 

9

Another Anoth er classificat classification ion that can be made considers considers aspe aspects cts such as ownership and sharing of the cloud infrastructure. A cloud environment that is shared among different customers is called a “public” cloud [9], [13]. Such environment is normally owned, hosted and maintained by an organization selling cloud servic services, es, and is pro provid vided ed to the publi publicc in genera generall und under er a contract where many users share the same infrastructure and pay for what they use [13], [6]. Amazon, Google App Engine and Azure are examples of public clouds. Most public cloud providers use many security mechanisms, but if for some reason an organization does not want to deploy it itss data data or busin business ess logi logicc int into o a public public clou cloud, d, it may may build build or rent its own cloud infrastructure. This is called a “private” cloud, i.e. operated solely for an organization. It may be hosted and managed by the organization itself or by a third party, and ma may y be deplo deployed yed on pre premi mise se or of offf premi premise se [13 [13], ], [6] [6].. This This allows organizations to obtain the benefits of cloud computing, such as server virtualization10 and elasticity, without having to share the same physical infrastructure with other organizations. However, Howev er, differently from public clouds, an upfront investmen investmentt on infrastructure needs to be made. A com compro promis misee bet betwee ween n the these se model models, s, whe where re parts parts of an appli app licat cation ion run in a pub public lic clou cloud d and othe otherr parts parts run in a private cloud, is also possible. This is known as a “hybrid” cloud [6], [13].

1

Google Drive: http://dri http://drive.google. ve.google.com/  com/  Flickr: http://www.flickr.com/  3 Picasa: http://p http://picasa.google.com/  icasa.google.com/ 

8

Amazon:http://aws.amazon.com/pt/ec2/  GoGrid: http://www.go http://www.gogrid.com/  grid.com/  9 http://www.ibm.com/cloud-computing/ 

10 Server Virtualization: is the technique of execution of one or more virtual servers over one physical server [14] 11 http://lapes.dc.ufscar http://lap es.dc.ufscar.br/ferramentas/s .br/ferramentas/start-tool tart-tool

 

TABLE I S YTEMATIC  R EVIEW P ROTOCOL

Obje Object ctiv ives es:: Ma Main in Ques Questi tion on::

In Inte terv rven enti tion on:: Control: Populat lation ion: Re Ressul ults ts:: Applica icatio tion: Keyw eywords ords:: Source Sou rce sel selecti ection on criteria criteria:: Studies ies Lang anguages: es: So Sour urce ce Se Sear arch ch Me Meth thod ods: s: Sour Source ce En Engi gine nes: s: Stu Study dy inc inclus lusion ion criteria criteria:: Stu Study dy exclu exclusio sion n crite criteria: ria: St Stud udie iess type typess de defin finit itio ion: n: Initi Initial al stud studies ies selec selectio tion: n: Stu Studies dies qua quality lity ev evalua aluation tion:: Inf Inform ormatio ation n ext extrac raction tion fi fields elds:: Results Res ults sum summar marizat ization: ion:

To id iden enti tify fy th thee main main ch chal alle leng nges es and and re rese sear arch ch oppo opport rtun unit itie iess in deve develo lopi ping ng soft softwa ware re for for th thee cl clou oud, d, and how to adopt the main cloud services, from the software engineering perspective; What What ar aree th thee main main chal challe leng nges es and and re rese sear arch ch oppo opport rtun unit itie iess in deve develo lopi ping ng soft softwa ware re for for th thee cl clou oud, d, in terms of methodologies, languages, frameworks, tools and other software engineering concerns and what has already been done in these few years of cloud research, from the software engineering perspective? Case Casess st stud udy y, surv survey eys, s, defin definit itio ions ns an and d ot othe herr ty type pess of re rese sear arch ch re rela late ted d to cl clou oud d soft softwa ware re de deve velo lopm pmen ent; t; We found no study to use as control; Resear arcch rel elaated ted to cloud softwa tware devel elo opment; Ca Case se stud studie ies, s, surv urveys, eys, defi defini niti tion onss and and re rese sear arch ch work ork re rela late ted d to cl clou oud d softw oftwar aree deve develo lopm pmen ent; t; Cloud computi tin ng software develo lop pmen entt res esea earrch; Cl Clou oud d com computi puting ng;; softw oftwar aree dev devel elop opme ment nt;; so soft ftw ware are engi engine neer erin ing; g; res researc earch h gaps aps; Ava vailab ilabilit ility y of the papers papers over over the web web;; sea search rch eng engines ines usi using ng keywor keywords; ds; Engli lissh and Portu tug guese; The The st stri ring ng wa wass fir first st defin defined ed in Sc Scop opus us,, th then en adap adapte ted d to ot othe herr engi engine ness li like ke ACM and and IE IEEE EE;; Auto Autom mat atic ic se sear arch ch;; Sear Search ch th thro roug ugh h bi bibl blio iogr grap aphi hicc refe refere renc nces es of se sele lect cted ed pape papers rs;; Sear Search ch by grou groups ps and authors; Search over the related conferences and journals Scop Scopus us;; IE IEEE EE;; ACM; CM; Goog Google le Acad Academ emic ic Sear Search ch;; Spri Spring nger er The ful fulll p pape aperr w was as av availa ailable ble;; T The he study study in invol volved ved definitio definitions ns about about clo cloud ud computi computing; ng; The study study contained experience reports about cloud computing software development; The ful fulll pa paper per was not av availa ailable; ble; The study study w was as not directly directly related related to ccloud loud comput computing ing;; The The study study approached approac hed cloud computing computing without considering software deve developmen lopmentt Pa Pape pers rs and and te tech chni nica call re repo port rts; s; Base Based d on ab abst strac ract, t, ke keyw ywor ords ds an and d tit title; le; The quality quality of studi studies es was was eval evaluate uated d in an aad d hoc hoc wa way y, af after ter the read reading; ing; Stu Study dy types; types; Searc Search h domain domain;; main iidea dea;; short short sum summar mary; y; All the acce accepte pted d papers papers were were analyze analyzed, d, and the data data wer weree summar summarized ized into a single single tex textua tuall rep report, ort, where the results were described;

to the recommendat recommendations ions of the revie review w prot protocol ocol.. The entire systematic review was documented, from its conception to the extracti extr action on of resu results, lts, to allo allow w its repetition repetition and audit auditing ing by other researchers interested in the study. The The stud study y was was co cond nduc ucte ted d in a pe peri riod od of ei eigh ghtt mont months hs,, by a sin single gle research researcher er (one (one of the authors authors of this this pap paper) er).. Whenever there was doubt regarding the inclusion/exclusion criteria, analysis or summarization, other researchers from the group were consulted. As mentioned before, the literature related to software engineering for the cloud is recent. Figure 1 shows the distribution of the selected papers by publication year. As it can be seen, all papers included in this study were published after 2008.

of studies per author. The collection of the selected 100 papers included more than 300 different authors, and no author published more than two papers, what indicates that there is not a clear formation of specialized research groups on software engineering for cloud computing. One exception (although not from the soft software ware engineer engineering ing area area)) is the aforemen aforemention tioned ed technical report from University of California at Berkeley [9], which whi ch was inv invite ited d to be pub publis lished hed as a pap paper er [12], [12], being being 12 frequently cited in the cloud literature . IV IV.. S OFTWARE  E NGINEERING FOR THE  C LOUD : A R ESEARCH  R OADMAP In this section we discuss the main findings of the review, i.e. what are the main challenges and research opportunities related to software engineering and cloud computing.  A. Data Lock-In

Fig. 1.

Selected Selected Publicat Publications ions by Year

Another point of interest in the study is the low distribution

Data lock-in is the difficulty developers face when having to port their applications from one cloud platform to another [9]. Such problem can be seen mostly in the PaaS scenario: in order to take advantage of a very flexible cloud architecture, the app applic licati ations ons have have to be spe specifi cifical cally ly devel develope oped d for the chosen platform. For example, in order to offer great elasticity, Google App Engine – a PaaS provider – imposes a specific programming style and has its own way to manage data, and thus an application developed for it may not be easily ported to 12 By the time this paper was written, there were 302 citations, according to http://ww http://www.scop w.scopus.com/  us.com/ 

 

a different PaaS provider, nor can its data. Even if a developer wanted to host an application in his/her own private cloud later, great effort would be necessary to rebuild the code, redeploy it and migrate all the data. It is not difficult to see why this problem is hindering the adoption of the cloud model [20]. The possibility of becoming “locked in” a particular platform, not being able to choose a different one later (customer lock-in), puts the developers in a difficult position. They mostly fear being charged abusive fees later, or having their applications unavailable due to lack of  service quality [9]. There are some initiatives towards solving this problem. They normally revolve around two approaches: •



13

every clou cloud d prov provider ider employs   API standardization: standardization:   if every somee well-k som well-kno nown wn sta standa ndards rds in it itss platf platform orm,, in theory theory an application could be easily ported from one provider to anothe anotherr withou withoutt too muc much h effor effort. t. In thi thiss sen sense, se, the OpenCloud Manifesto [21] is gathering efforts to group companies around the specification of an open standard for cloud computing. However, until the time this paper was written, written, impo importan rtantt comp companies anies such as Googl Googlee and 13 Micros Mic rosoft oft had not joi joined ned the man manife ifesto sto . Th Ther eree are are otherr initiati othe initiatives ves,, such as:   (i)   DMTF (Distrib (Distributed uted Management Task Force), which employs efforts focused on standardi stan dardizing zing inter interacti actions ons betwe between en cloud cloud en enviro vironmen nments ts by dev develop eloping ing specificat specifications ions that deli deliver ver architect architectural ural semantic sema nticss and impl implemen ementati tation on deta details ils to achi achieve eve inte interroperable oper able cloud mana manageme gement nt between between service service prov provider iderss and their their consu consumers mers [22];   (ii)   OCCI-WG OCCI-WG (Ope (Open n Cloud Computing Interface Working Group), which is a protocol and API for all kin kinds ds of ma manag nageme ement nt tasks tasks,, and was created to develop a remote management API for IaaSbased services, allowing the development of interoperable tools for common tasks including deployment, autonomic scaling and monitoring. The current release of the Open Cloud Clo ud Comput Computing ing Int Interf erface ace is sui suitab table le to serve serve man many y other models in addition to IaaS, including e.g. PaaS and SaaS [23]; (iii) [23];  (iii) IEEE  IEEE P230114 , responsible for developing a stan standard dard that will enable portabil portability ity.. To achi achiev evee this goal, it will group the differ goal, different ent opti options ons (interfaces, (interfaces, tile formats and operation conventions) of the cloud elements into logical profiles; and   (iv)  IEEE P230215 , which will define the topol topology ogy,, prot protocol ocols, s, functional functionality ity and govergovernance required to support cloud-to-cloud interoperability and federated (intercloud) operations [24], [25].  Model-driven approaches: the approaches:  the idea is to employ modeldriven driven engineering engineering (MDE) [26] in the develop development ment of  cloud applications. MDE seems to be a viable solution to the lock-i lock-in n pro proble blem, m, becaus becausee throug through h hig higher her le leve vell models and automatic transformations, the developers are able to focus on a more conceptual, platform-independent level when developing applications. However, there is no

The list with all members of the OpenCloud Manifesto can be found at http://www.opencloudmanifesto.org/supporters.htm 14 IEEE P2301: http://g http://grouper rouper.ieee.org/gro .ieee.org/groups/2301/  ups/2301/  15 IEEE P2302: http://g http://grouper rouper.ieee.org/gro .ieee.org/groups/2302/  ups/2302/ 

consensus about the set of mode consensus models, ls, languages languages,, transfor transfor-mation mat ionss and sof softwa tware re proces processes ses that that could could be used used to successfully develop cloud applications using MDE [27]. Current efforts revolve mostly around the identification of  abstractions that would allow one to specify and create systems syst ems indep independen endently tly of the under underlyin lying g platform platform,, and the automatic code generation for some specific platform or service infrastructure [28], [29].  B. Decision-making about migration to the cloud model

In or orde derr to ta take ke adva advant ntag agee of the the be bene nefit fitss of the the cl clou oud d model, man model, many y org organiz anizatio ations ns hav havee the desir desiree and/o and/orr inte intentio ntion n to embrace the cloud for existent and new applications. This decisi dec ision on is inhere inherentl ntly y com comple plex, x, and suf suffer ferss the infl influen uence ce from multiple factors such as cost, availability, performance, security and QoS, each of which have a major influence on every organization [30]. Before making the decision, an organization must take into consideration the viability of the cloud model in its current context. cont ext. It must careful carefully ly analyze analyze the constrai constraints nts rela related ted to cloud clou d plat platform forms, s, both technica technicall [31] and orga organizat nizationa ional, l, and consider its business requirements [32]. The lite literatu rature re contains contains rese research arch providing providing suppo support rt for the decision about migration to the cloud [33], [30], [32], [34], [35]. Ezzat [35]. Ezzat et al. [36] studie studied d the cloud from different different perspectives, in order to determine the aspects that mostly affect the deci decision sion about cloud adoptio adoption. n. Howe However ver,, in this review review we have not found a form formal al process to speci specificall fically y support support this task. If the decisi decision on abo about ut the mi migra gratio tion n is positi positive ve,, the Iaa IaaS S model model is the ide ideal al choice choice to deplo deploy y pre-e pre-exis xisten tentt system systems, s, while PaaS is more adequate for new applications [37]. An incremen incr emental tal stra strategy tegy can be adopt adopted, ed, to eff effecti ectively vely migrate data and applications to the cloud. For pre-existing systems, the migration itself is a whole new challenge, as explains next section. C. Le Legacy gacy software software migration migration

There are many systems There systems still still in use today that bec became ame outdated, either because they make use of unsupported technology or earlier versions of an operating system or platform. However, the costs for their modernization and the fact that the they y may still still prov provide ide essentia essentiall services services keep them activ active. e. These are commonly known as legacy systems. As expected, most most of thes thesee ar aree no nott re read ady y to be migr migrat ated ed into into a cl clou oud d environment, and this is true even for some more recent precloud web applications. One way of solving this problem is a complete reengineering (i.e. a reconstruction of the software for a new platform), but this process is normally too expensiv sive. e. An alte alternat rnativ ivee woul would d be an stra strategy tegy to migr migrate ate legacy software into a cloud infrastructure and to ensure its correct functioning in the new environment, without the need for a complete comp lete reen reengine gineering ering.. There are many many expe experienc riencee reports reports that focus on this problem [38], [39], [40], [42], [43], [44], [45], [31], [46], but more research is still[41], needed, mainly to formalize a strategy that defines a step-by-step process to

 

perform the migration, considering all available cloud services. Such strategy would constitute a very important contribution towards the systematic migration to the cloud model.  D. A reengineering reengineering proces processs for the cloud 

New tech technolog nologies, ies, stan standards dards,, lang languages uages and fram framewo eworks rks related to cloud computing may facilitate the development of  applications, the evolution of current software and make companies more competitive. In these cases, migration alone (as discussed in previous section) is not enough, and companies find themselves in a crossroads between reconstructing their applications to make complete use of new cloud technologies and becoming out of the market. The lite literatu rature re contains contains some successful successful exam examples ples of soft soft-ware reengineeri reengineering ng for the cloud. cloud. For exampl example, e, Zhou et al. [47] proposed a novel approach for reengineering enterprise software soft ware for cloud computi computing. ng. Followin Following g a five five-ste -step p ontol ontol-ogy development process, the enterprise software ontology is created by generating an integrating code ontology, database ontology ontol ogy and Hibernate Hibernate fram framewo ework rk onto ontology logy.. This approach approach can help to identify potential service candidates in the legacy system. However, studies are still needed, to formalize a complete reengineering process focusing on cloud infrastructures, considering sider ing the particul particularit arities ies and the dif differe ferent nt service service mode models ls offered in this paradigm.  E. Mechanisms to facilitate the adoption of the hybrid model

As di disc scus usse sed d in Sect Sectio ion n II, II, the the hy hybr brid id mode modell is the the al al-ternat ternativ ivee fou found nd by som somee compan companies ies to avoid avoid large large upf upfron rontt investments and still maintain some critical parts of its applications under more rigid control. However, the interoperability between public and private cloud infrastructures is not easy to achieve achie ve [24] [24].. The standard standardizat ization ion can help to impr improve ove this model, mod el, but as discus discussed sed in sec sectio tion n IV-A, IV-A, the there re is sti still ll no standard for the development of interoperable applications for cloud computing. The literature has some efforts in this direction. One example is the group IEEE P2302, which has been researching this question. Other examples can also be found in the literature [48], [49]. The existence existence of fram framewo eworks, rks, tools and/ and/or or proc process ess to facilitate the implementation of the hybrid model could be the solution solut ion many many companie companiess are wait waiting ing for before before definitiv definitively ely adopting cloud computing.

MaaS has the potential to leverage the adoption of MDE among software developers, making use of the cloud to facilitate some of the tasks involved in model-driven engineering [50]. [50 ]. The im imple pleme menta ntatio tion n of the MaaS mod model el can lea lead d to different differe nt research opportunities, such as collaborative development issues [51], concurrent modification issues [52], management of large model repositories, among others. Bruneliele, Cabot and Jouault [27] highlight the following possibilities of  MaaS research: •









  One possib possibili ility ty is the creation creation of a too tooll for collabor collaboraativ tivee and distrib distributed uted modeli modeling ng [53]. In this context context,, the cloud would serve as an instrument that would allow the specification and sharing of software models [54] among distributed team members.   Defi Definit nition ion of modeli modeling ng mas mash-u h-ups ps as a com combin binati ation on of  MDE services from different vendors.   Availability Availability of model transformation transformation engines in the cloud to provide platform-independent model management services.   Code generation in the cloud: the transfer of code generation and simulation services for the cloud can facilitate the deplo deploymen ymentt and ev evolut olution ion of software software appli applicati cations, ons, increasi incr easing ng prod producti uctivity vity.. Dev Develope elopers rs would would not need to worry about having to setup and maintain an infrastructure to develop model-based applications.   Dist Distribu ributed ted Globa Globall mode modell mana manageme gement. nt. Compl Complex ex MDE projects proj ects in invol volve ve sev several eral models models (pos (possibl sibly y confo conformin rming g to different metamodels), model transformat transformations, ions, model injector inje ctorss and projector projectors, s, etc. MaaS would would faci facilita litate te the manipu man ipulat lation ion of all the these se modeli modeling ng art artif ifact actss in a disdistributed environment. environment.

G. Billing and auditin auditing g mechanis mechanisms ms

Auditing, usage reports and billing are functionalities that are normally associated to SaaS [55]. The provider of such systems must include administrative functions to support this ki kind nd of ta task sks, s, wh whic ich h ar aree not not ne nece cess ssar ary y in the the tr trad adit itio iona nall software model. In our review we found no study focusing specifically on these problems, and thus we believe there is space for research and implementation on such types of mechanisms, to discover better better way wayss to achie achieve ve the nec necess essary ary bil billin ling g and auditi auditing ng functionalities, according to the reality of different companies. Case studies are also a possibility to help in the identification of the most important issues related to these tasks.  H. Cloud Service Composition

F. Imple Implementat mentation ion of Modeling Modeling as a Servi Service ce - MaaS 

Bruneliele, Bruneliel e, Cabot and Jouau Jouault lt [27] propose proposed d the concept of Mod Modeli eling ng as a Servic Servicee - MaaS. MaaS. Simila Similarr to SaaS, MaaS would allow the deployment and execution of modeling and other model-driven services, such as transformations and code generation, over the Internet. The idea is to provide a model-

As in other fields of computer science, the dynamic nature of cloud-based technologies lead to constant changes in terms of platforms, tools and technologies. In this scenario, it is not uncommon unco mmon to see differ different ent applicat applications ions or sets of serv services ices having to cooperate for mutual benefit. Service composition, in the conte context xt of Servic Service-O e-Orie riente nted d Archit Architect ecture ure,, is sti still ll an

driven engineering (MDE) environment in the cloud, including a repository of models and model-driven engineering tools that could be used by development teams in the form of services.

important research subject in software engineering [56], [57]. In the cloud context, the terms “intercloud”, “multi-clouds” and “cloud-of-cl “cloud-of-clouds” ouds” are used to refe referr to the composit composition ion

 

of cloud providers as an integrated (or federated) cloud environment [58]. In such environments, users can (transparently or not) leverage the resources from different (either public or private) cloud providers [25], [59], [60], [61], [62], [63]. These terms are similar and suggest that cloud computing should not be restricted to a single cloud [59], but a “cloud-of-clouds”. In such environment, it would be possible to have application components deployed and co-existing on multiple clouds. This raises challenges challenges for the devel developer oper,, who has to worry worry about architectural and development issues that consider this multi-cloud scenario. In particular, the composition of services needs an effective communication between providers (interoperability). Abstractions for efficient service orchestration and choreography [64] also need to be conceived or adapted for the cloud. There are some efforts related to cloud service composition in the litera literatur turee [65], [65], [66], [66], [67], [67], [68 [68], ], [69 [69]. ]. Howe Howeve ver, r, the related rela ted tech technolog nologies ies are stil stilll under develo developmen pmentt and more research rese arch is nece necessar ssary y. Stan Standardi dardizati zation on eff efforts orts,, such as those described in Section IV-A, could offer a partial solution, but these are not yet established.  I. Case studies

Organizations are normally afraid to adopt new technologies until relevant relevant succes successs cases are prese presented. nted. In this sense, to reinforce the benefits of the cloud, to show the importance of  this paradigm, and its potential to revolutionize the market, it would be interesting to have a large number of case studies. The literature already has many examples of such efforts. Chauhan & Babar [38] report their experience in the migration of service-o service-orien riented ted systems systems to the cloud cloud comp computin uting g mode model. l. Khajeh-Hosseini et al. [44] show a case study of migrating an enterp enterpris risee app applic licati ation on to Iaa IaaS. S. Tran Tran et al. [40] sho show w a taxonomy of critical factors in migration to cloud computing model. mode l. We should should continue continue to publish publish such type of results, results, and case studies and experience reports should always be on the agenda agenda of sof softwa tware re engine engineeri ering ng resear researche chers. rs. The more more casee stu cas studie diess av avail ailabl able, e, the mor moree con confide fident nt resear researche chers rs and practitioners will become regarding the benefits of the cloud, and the validity of the research.  J. Open source platforms

This last issue may not be considered as an open research question questi on by itsel itself, f, but but it pre presen sents ts a challe challenge nge for man many y researchers. The most important cloud computing platforms are propri pro prieta etary ry and, and, as a conseq consequen uence, ce, not ope open n for in inves vestig tigaation, modification and/or extension. This poses a problem for researche rese archers rs that want to expe experime riment nt with dif differe ferent nt platform platform architectures and setups. In this sense, the existence of open source sou rce alt altern ernati atives ves could could be of great great hel help p to the softwa software re engineering – and cloud computing in general – community. There are some open source options available (like Eucalyptus16 and Nimbus17 ), but these are mostly focused on the IaaS model. We still need more research dedicated to produce 16

http://www.eucalyptus.com/  17 http://www.trynimbus.com/ 

a more comprehensive model that can be improved and used to support cloud adoption in its different possibilities. V. OTHER FINDINGS OF THE STUDY Th Thee choi choice ce of a cl clou oud d serv servic icee depe depend ndss on the the type type of  application that will be used. Some options target developers, some target end users and some target both. During the review, we found some interesting information on studies describing the benefits of cloud computing, and success stories involving the paradi paradigm. gm. These These are practi practical cal iss issues ues re regar gardin ding g the use of cloud services and, more specifically, the development of  software for the cloud paradigm. In the following sections, we try to compile this information, hoping it will be of practical value to researchers and practitioners interested in developing software for this emerging field.  A. SaaS vs SOA

Re Revie viewin wing g the lit litera eratur ture, e, we notice noticed d tha thatt there there is som somee confusion between the terms SaaS and Service-Oriented Architecture (SOA). Laplante et al. [70] also pointed out such confusion. For example, Sharma et al. [71] do not distinguish between the ter terms ms SO SOA A and Saa SaaS, S, propos proposing ing an app approa roach ch foc focuse used d on interoper interoperabili ability ty that uses MDE to generate generate web services services descriptors (WSDL). The authors then refer to the approach as SaaS development, but in fact it is closer to the concept of  SOA. Laplante et al. [70] made a wide study of the characteristics of these models and concluded that the fundamental difference is: SOA is a model for building software and a SaaS is a model for delivering it. While SOA is concerned with the creation of ser servic vices es to compos composee a more more fle flexib xible le arc archit hitect ecture ure for an application, SaaS is concerned with the delivery of software functionality in the form of services, which may be provided independently of the underlying architectural style. To better understand the difference between SaaS and SOA, we can cite Google Apps [72]. Google makes its applications (Google mail, Google calendar, Google sites, etc) available to companies that do not wish to share their information, as happens with normal users. To use such services, companies make a paid subscription and do not need to worry about the internal architecture of the applications, nor with their deployment and maintenance in a private infrastructure. They simply use the service and pay for what they use. In a comparison, we can cite the Application Server Provider (ASP) model, where the customer must acquire a license, and install the software in some particular infrastructure. Oracle’s JD Edwards ERP [73] is an example of ASP. As an example of SOA, we can cite systems that use service composition to provide some final functionality. For example, e-shoppi e-sh opping ng web sites may use servi services ces from deliver delivery y companies to calculate shipping fees and conditions and present them to the user. Other services may help to compose the final function func tionalit ality y. The dist distingui inguishing shing feature feature is that the internal internal architec arch itecture ture makes expl explicit icit use of serv services ices to achieve achieve more

 

flexibility and allow more specialized modules to be built [74], [57]. As we can see, SaaS and SOA are distinct concepts. But they are frequently used together, because these two models compleme comp lement nt each other. other. SaaS helps to prov provide ide the building building blocks blo cks for SO SOA, A, and SO SOA A hel helps ps to imple implemen mentt SaaS SaaS more more rapidly [70], and this may be the source of the confusion.  B. Developing SaaS 

From the software software enginee engineering ring point of vie view w, the implementation of the SaaS model requires some specific concerns. These arise from the service-oriented business model that is normally norm ally adopted adopted.. As a first concern, concern, the system provide providers rs must implement some way to register the use of the services, in order order to allow allow billin billing, g, auditi auditing, ng, usa usage ge and accoun accountin ting g reports [55], in order to support the Cloud Computing business modell [75]. mode [75]. Additional Additional admi administ nistrati rative ve functions functions are requ required ired to support these new kinds of tasks, which are not necessary in the traditional stand-alone software model. More importantly, these extra tasks must not cause problems to the performance or correctness of the software [76]. Anothe Ano therr concer concern n is the ex exist istenc encee of multi multiple ple cus custom tomers ers sharing shari ng the same infr infrastr astructu ucture, re, each one with his/her his/herss own needs in term termss of informati information, on, funct functional ionality ity and inte interfac rface. e. This is known as multi-tenant architecture [77], [78], and is a concern that many SaaS developers have to worry about. Some authors [79], [80], [81] have even proposed a SaaS maturity model to categorize SaaS according to its support for multiple tenants. SaaS Saa S is normal normally ly access accessed ed over over the Int Intern ernet et [9]. [9]. In thi thiss sense,, dev sense develope elopers rs also have to worry worry about avail availabil ability ity,, per per-formance, offline access to the software, and other concerns that arise from this online nature of SaaS. These concerns add extra complexity in relation to traditional stand-alone software. C. Developing Developing Software Software for the IaaS model

The IaaS model provides computational resources that lie on the pro provider vider’s ’s infrastruct infrastructure. ure. The tar target get audie audience nce of this model are normally infrastructure architects. These architects do not need to worry about issues such as dynamic demands, elastici elas ticity ty and scalabili scalability ty,, which are handled handled by the prov provider ider [6]. Regar Regardin ding g the deve develop loper er,, the Iaa IaaS S model model add addss lit little tle to his/her list of concerns. In this model, the development team can create applications just as if it were developing for their own dedicated private infrastructure. Differently from the PaaS model (presented next) here the software usually does not have any particular feature that demands special knowledge about the provider’s infrastructure. In other words, any application can be dep deplo loyed yed in an infras infrastru tructu cture re that that is provid provided ed as a service, as most IaaS providers have many options of virtual machines, mach ines, using the most common application application servers and other deployment technologies. This task also happens much like the traditional way of deployment, because normally the developers have unlimited access to the virtual machines, just as if they were real, private machines.

However Howe ver,, some specifi specificc conc concerns erns arise, such as load balancing, automatic scalability, data storage services and other functionality that may be used by applications and that must be developed develo ped specifically for a particular provider. Open standards and open source implementations, such as JClouds (an OCCIWG implementation) [82] can help to reduce some problems, by pro provid viding ing a commo common n layer layer tha thatt can com commun munica icate te with with different providers. Also, the developer must have in mind that, if a public IaaS provider is being used, the software has to be delivered to the end user thro through ugh the Inte Internet rnet.. The SaaS mode modell is normally normally used, although it is possible to use this infrastructure to host legacy systems [37], to deliver a system under the ASP model, or just to perform some kind of data processing [83].  D. Developing Software for the PaaS model

The Pa PaaS aS model model tries tries to le leve verag ragee the fle flexib xibili ility ty of the cloud model, by providing a complete platform for software development. A cloud platform hides many of the complexit ities ies of devel developi oping ng cloud cloud softwa software, re, and bri brings ngs sca scalab labili ility ty and elastici elasticity ty to a dif differ ferent ent level. level. In the PaaS mod model, el, the develop dev elopment ment platform is pro provided vided as a serv service. ice. Applicati Applications ons that are developed for this particular platform can benefit from a specific programming model, that can be fully managed by the platform provider in a fine grained way [84]. The target audience of PaaS are system developers. When developing for PaaS, a developer must adopt a platform and its particular set of tools, libraries, technologies and standards [37]. These may require some initial training, which may lead to an initial loss of productivity. However, they can later help to red reduce uce deve develop lopmen mentt tim timee by pro provid viding ing use useful ful fun functi ctiononality alit y, facilita facilitating ting the developm development ent and dist distrib ribution ution of cloud appli app licat cation ionss [84 [84], ], [85]. [85]. Fo Forr ex examp ample, le, Google Google App Eng Engine ine (an example of PaaS provid provider) er) has man many y func functiona tionaliti lities es for image processing, image manipulation, user management and authenti auth enticati cation, on, data stor storage, age, loca location tion-base -based d services services,, among among others [86]. As in the IaaS model, applications are hosted in the provider’s infrastructure, and are made available through the Internet, following the SaaS or another model. The pro proble blem m wit with h thi thiss approa approach ch is the loc lock-i k-in, n, alread already y discus discussed sed in Sec Secti tion on IV IV-A, -A, caused caused by the fixed set of techtechnologies that must be adopted. But other than that, the benefits make PaaS a very interesting approach for cloud application development. VI . R ELA ELATED TED WORK The most influential related work in the area is the aforementioned technical report from Berkeley [9]. In this report, Armbru Arm brust st et al. presen presentt the res result ultss of a six six-m -mont onth h bra braininst storm orming ing ef effor fortt about about the sub subjec ject. t. The author authorss attemp attemptt to clarify related terms and provide simple formulas to quantify compar com pariso isons ns betwee between n the clo cloud ud model model and the tradit tradition ional al model. They also identify ten barriers for the success of cloud computin comp uting, g, and pres present ent ten oppor opportuni tunities ties to overcom overcomee them them,, much like we attempted to do in this paper.

 

Other persp Other perspecti ectives ves of the cloud computin computing g mode modell can be found in the literature: Narasimhan and Nichols [87] present the point of view of cloud platform adopters; Wang et al. [7] present a perspective of the technologies that lie behind the cloud model. Many others explore related concepts [1], [88], [89], [90], [91], [4], [92], [6], [40], [93]. Differ Dif ferent ently ly fro from m other other works, works, we att attem empte pted d to presen presentt a software soft ware engi engineer neering ing perspecti perspective ve on clou cloud d comp computin uting. g. Like Armbrust et al., we identified some challenges and research opportunities, but focusing specifically on software engineering. We also attemp attempted ted to clar clarify ify some conce concepts pts and present some practical issues related to the development of software for the cloud. A better understanding of cloud computing will allow allo w the communit community y to design design more efficie efficient nt mechanism mechanismss which, as a consequence, will facilitate the adoption of this model [4]. As discussed earlier, the cloud concept is more connected to the market. Only recently it has been investigated by the scientific scie ntific comm communit unity y. Ther Theree are relativ relatively ely few publi publicati cations, ons, al alth thou ough gh th thee nu numb mber er of pa pape pers rs rela relate ted d to this this subj subjec ectt is increasing. Many of these attempt to propose definitions for cl clou oud d comp comput utin ing g [4 [4], ], [2 [2], ], [6]. [6]. Ho Howe weve verr, ther theree is st stil illl no widely accepted definition. In this paper, we used the one we considered more complete [2]. VII. C ONCLUDING REMARKS The way cloud services are commercialized can cause deep changes in the software industry, as long as software engineers are able to unleash its full potential. This emerging computing model still needs to be studied, and efforts are needed to solve the current problems and overcome the challenges before the cloud model becomes more well established. Althou Alt hough gh cloudcloud-rel relate ated d ter terms ms have have ori origin ginate ated d fro from m the industry indus try,, the acad academy emy has many opportunitie opportunitiess to cont contrib ribute. ute. In this paper we attempted to highlight possible directions in which the software engineering area can approach the cloud comput com puting ing sce scenar nario. io. We wan wanted ted to share share our obs observ ervati ations ons because, after a considerable review work, we believe to have reached a point where we should compile the information. We tried to point out other studies that do a similar job, and to compile some interesting points that were not available in a single study yet, at least not for the software engineering area. In no way we believe the results of our observations are the only and definitive list. The community is welcome to continue the discussion and to increase this list as further research takes place. ACKNOWLEDGMENTS . The The auth author orss woul would d like like to than thank k CA CAPE PES S and and FAPES APESP P (process number 2012/04549-4) for funding this research. We would als would also o lik likee to tha thank nk the revie reviewer werss for their their valua valuable ble and insightful insightful suggest suggestions, ions, in part particul icular ar for pointing pointing out the challenge we describe in Section IV-B.

R EFERENCES [1] I. Foster Foster,, Y. Zhao Zhao,, I. Raicu, and S. Lu, “Clo “Cloud ud Comput Computing ing and Grid Computing 360-Degree Compared,” in   Grid Computing Environments Environments Workshop, 2008. GCE ’08 , 2008, pp. 1–10. [2] L. M. Vaquero Vaquero,, L. Rodero-M Rodero-Merino erino,, J. Caceres, and M. Lindner Lindner,, “A break break in the the clouds clouds,,”   ACM SIGC SIGCOMM OMM Comp Computer uter Communica Communication tion  Review, vo vol. l. 39, 39, no. no. 1, p. 50, 50, 2008 2008.. [O [Onl nlin ine] e].. Ava vail ilab able le:: http http::  //dl.acm.org/citation.cfm  //dl.acm.org /citation.cfm?id=1496091 ?id=1496091.1496100 .1496100 [3] S. Zhang, X. Chen, S. Zhang, and X. Huo, “The comparison comparison betw between een cloud clou d computin computing g and grid computing, computing,”” in   Computer Computer Application and 

[4]

[5]

[6]

[7]

[8]

System Modeling 2010, pp. V11–72(ICCASM), –V11–75. 2010 International Conference on, vol. 11, L. Yo Youseff, useff, M. Butrico, and D. Da Silva, “T “Toward oward a Unified Ontology Ontology of  Cloud Computing,” in  Grid Computing Environments Workshop, 2008. GCE ’08 , 2008, pp. 1–10. L. Mei, W. K. Chan, Chan, and T. H. Tse, “A Tal Talee of Clou Clouds: ds: Paradig Paradigm m Comparisons and Some Thoughts on Research Issues,” in   Asia-Pacific 2008, 8, pp. Services Servic es Computing Computing Conference, Conference, 2008. 2008. APSCC APSCC ’08. IEEE , 200 464–469. B. P. Rima Rimal, l, E. Choi Choi,, and I. Lumb, “A Taxono Taxonomy my and Survey of Cloud Computing Systems,” Systems,” in   INC, INC, IMS and IDC IDC,, 200 2009. 9. NC NCM M ’09 ’09.. Fi Fifth fth  International Joint Conference on , 2009, pp. 44–51. L. Wang, ang, G. vo von n Lasze Laszewsk wski, i, A. You ounge nge,, X. He, M. Kunze Kunze,, J. Tao, and C. Fu, “Cloud Computing: a Perspective Study,”   New Generation Computing, vol vol.. 28, no. 2, pp. 137–146, 137–146, 2010 2010.. [Onl [Online]. ine]. Availab Available: le: http://dx.doi.org/10.1007/s00354-008-0081-5 Y. Chen, X. Li, and F. Chen, “Overvie “Overview w and analysis of cloud computing research and application,” in  E -Business and E -Government (ICEE), 2011 International Conference on, 2011, pp. 1–4.

[9] G. M. Armbrust, R. Griffith, A.in, D. R., Katz, Konwinski, Konwi nski, Lee, Lee, D. A. Patt PaFox, tter erso son, n, Grif A.fith, Rabk Rabkin , Joseph, I. Stoi Stoica ca, and and A.M. Zaha Zahari ria, a, “Abov “Ab ovee the the clouds clouds:: A Berkel Berkeley ey view view of cloud cloud com comput puting ing,,”   Dept.  Electrical Eng. and Comput. Sciences, University of California,  Berkeley, Rep. UCB/EECS , vo vol. l. 28 28,, 20 2009 09.. [O [Onl nlin ine] e].. Ava vail ilab able le:: http://www.eecs.berkeley.edu/Pubs/TechRpts/2009/EECS-2009-28.pdf  [10] G. Candea, S. Bucur Bucur,, and C. Zamfir, “Aut “Automat omated ed softwar softwaree testing testing as a service,”” in Proceedings of the 1st ACM symposium on Cloud computing, service, ser ser.. SoC SoCC C ’10 ’10.. New New York ork,, NY, USA: USA: ACM, ACM, 201 2010, 0, pp. 155–160 155–160.. [Online]. Available: Available: http://d http://doi.acm.org/1 oi.acm.org/10.1145/180 0.1145/1807128.18071 7128.1807153 53 [11] W. K. Chan, Chan, L. Mei, and Z. Zhang Zhang,, “Mod “Modelin eling g and testi testing ng of cloud cloud applications,” in   Services Computing Conference, 2009. APSCC 2009.  IEEE Asia-P Asia-Pacific acific, 2009, pp. 111–118. [12] M. Armbrust, A. Fox, R. Grif Griffith, fith, A. D. Joseph, R. Katz, A. Konwinski, Konwinski, G. Lee, D. Patterson, A. Rabkin, I. Stoica, and M. Zaharia, “A view of cloud computing,”  Commun. ACM , vol. 53, no. 4, pp. 50–58, 2010. [Online]. Available: Available: http://d http://doi.acm.org/1 oi.acm.org/10.1145/172 0.1145/1721654.17216 1654.1721672 72 [13] P. Mell and T. Grance, “The NIST Definit Definition ion of Cloud Cloud Computin Computing g ,” 2009. 2009. [Onl [Online] ine].. Availabl vailable: e: http://w http://www ww.nist .nist.gov .gov/itl /itl/clo /cloud/u ud/uploa pload/  d/  cloud-def-v15.pdf/  [14] J. Dani Daniels, els, “Serv “Server er virt virtuali ualizatio zation n archi architect tecture ure and impl implement ementatio ation, n,”” vol. l. 16, no. 1, pp. 8–1 8–12, 2, 20 2009. 09. [O [Onli nline] ne].. Ava vail ilabl able: e: Crossroads, vo http://doi.acm.org/10.1145/1618588.1618592 [15] K. University University,, “Guidelines for performing Systematic Literature Literature Reviews in Software Engineering,” 2007. [16] B. Kitchenh Kitchenham, am, O. P. Brer Brereton, eton, D. Bud Budgen, gen, M. Tur Turner ner,, J. Bailey, Bailey, and S. Link Linkman, man, “Syst “Systemati ematicc literatu literature re reviews reviews in soft software ware engineerin engineering g – A systematic literature review,”   Information and Software Technology , vo vol. l. 51, no no.. 1, pp. 7–1 7–15, 5, 200 2009. 9. [On [Onlin line]. e]. Ava vail ilabl able: e: htt http:/ p://ww /www w. sciencedirect.com/science/article/pii sciencedirect.com/sci ence/article/pii/S09505849 /S0950584908001390 08001390 [17] J. Biolchini, P P.. G. Mian, A. C. C. Natali, and G. H. Travassos, “Systematic Review in Software Engineering,” 2005. [Online]. Available: http:  //www.cin.ufpe.br/~  //www .cin.ufpe.br/~in1037/leit in1037/leitura/systematicR ura/systematicReviewSE-COPPE.pdf  eviewSE-COPPE.pdf  [18] [18] S. N. Ma Mafr fraa an and d G. H. Tra rav vasso assos, s, “T “Téc écni nica cass de Leit Leitur uraa de Software: Soft ware: Uma Revi Revisão são Siste Sistemáti mática, ca,””   XIX Sim Simpó pósio sio Brasile Brasileir iro o de  Engenharia de Software (SBES 2005), 2005. [Online]. Available: http:  //tcc-tonismar.googlecode.com/  //tcc-tonismar. googlecode.com/svn/trunk/T svn/trunk/TCC/Biblio CC/Bibliografia/05-9612.pdf  grafia/05-9612.pdf  [19] [19] A. D. T. S. F. Elis Elis Hern Hernan ande dess Augu August sto o Zamb Zambon oni, i, “Ava “Avali liac acao ao da ferr ferram amen enta ta StAr StArtt util utiliz izan ando do o mo mode delo lo TAM e o pa para radi digm gmaa GQM,”   Experimental Software Engineering Latin American Workshop,  ESELAW’2010  ESELA W’2010, pp. 30–39, 2010. [Online]. Available: http://ww http://www.in w.inf. f. ufg.br/~eselaw2010/proceedi ufg.br/~eselaw 2010/proceedings-eselaw2010.pdf\# ngs-eselaw2010.pdf\#page=37 page=37

 

[20] A. Ranabahu and A. Sheth, Sheth, “Semantic “Semanticss Cent Centric ric Soluti Solutions ons for Appl Applicaication and Data Portability Portability in Cloud Cloud Comp Computin uting, g,”” in   Cloud Computing Technology and Science (CloudCom), 2010 IEEE Second International Conference on, 2010, pp. 234–241. [21 [21]] (2012) (2012) OpenCl OpenCloud oud Manife Manifesto sto.. [Onlin [Online]. e]. Ava vaila ilable ble:: http:/ http://ww /www w. opencloudmanifesto.org/  [22] (201 (2012) 2) Distrib Distribuite uited d Manag Management ementee Task Forc Force. e. [Onl [Online] ine].. Avai vailabl lable: e: http://www.dmtf.org/standards/cloud [23] (201 (2012) 2) Open Cloud Cloud Comp Computin uting g Inter Interface. face. [Onl [Online] ine].. Availab Available: le: http: http:  //occi-wg.org/  [24] N. Loutas, E. Kamat Kamateri, eri, F. Bosi, and K. Taraba Tarabanis, nis, “Cloud “Cloud Comp Computin uting g Interoper Interoperabil ability: ity: The State of Play Play,” ,” in   Cloud Computing Technology Technology

Migration to Cloud,” in   Cloud Computing (CLOUD), 2011 IEEE International Conference on, 2011, pp. 750–751. [40] [40] V. Tr Tran, an, J. Keung Keung,, A. Liu Liu,, and A. Fekete Fekete,, “Ap “Appli plicat cation ion migrat migratio ion n to cloud: a taxo taxonomy nomy of critical critical factors,” factors,” in   Proceedi Proceedings ngs of the 2nd   International Workshop on Software Engineering for Cloud Computing, ser ser.. SECLOUD ’11. New York, York, NY, NY, USA: ACM, 2011, pp. 22–28. 22–28. [Online]. Available: Available: http://d http://doi.acm.org/1 oi.acm.org/10.1145/198 0.1145/1985500.19855 5500.1985505 05 [41] I. J. A. J. G. R. H. Arriet Arrietaa L.O. L.O.-E., -E., “From software-A software-AS-A-G S-A-GOOD OOD TO SAAS: Challenges and needs: Developing a tool supported methodology for the migration of non-saas applications to SaaS,” in   ICSOFT 2011 - Pro Proceedin ceedings gs of the 6th International International Conference Conference on Software Software and   Database Technologies, vol. 2, 2011, pp. 257–260.

and Science Science (CloudCom (CloudCom), ), 2011 IEEE Thir Third d Internatio International nal Conferen Conference ce on, 2011, pp. 752–757. M. Vuk ukoli oli´cc, ´ , “The “The byz byzant antine ine empire empire in the the int interc erclou loud, d,””   SIGACT  vol. 41, no. 3, pp. 105–111, 105–111, Sep. 2010. [Online] [Online].. Avai vailabl lable: e:  News, vol. http://doi.acm.org/10.1145/1855118.1855137 R. Fran France ce and B. Rumpe, Rumpe, “Model-d “Model-driv riven en Develop Development ment of Complex Complex Softwa Software: re: A Resear Research ch Roadma Roadmap, p,”” in   20 2007 07 Futur Futuree of So Softw ftwar aree ’07. Washington ashington,, DC, USA: IEEE Computer Computer  Engineering, ser. FOSE ’07. Society,, 2007, pp. 37–54. [Online]. Available: Society Available: http://dx.doi.org http://dx.doi.org/10.1109/  /10.1109/  FOSE.2007.14 H. Brun Brunel eliè ière re,, J. Cabo Cabot, t, an and d F. Jo Joua uaul ult, t, “C “Com ombi bini ning ng Mo Mode dellDri Driven Engi Engine neer erin ing g an and d Clou Cloud d Co Comp mput utin ing, g,”” 20 2010 10.. [On[Online]. Available: Available: http://h http://hal.archives-ouvert al.archives-ouvertes.fr/docs/00/ es.fr/docs/00/53/91/68/ 53/91/68/PDF/  PDF/  CombiningMDE-CloudComputing\_2010.pdf  R. Sharma and M. Sood, “A Model Dri Driven ven Approach to Cloud Cloud SaaS Interoperability,”  International Journal of Computer Applications, vol. 30, no. 8, pp. 1–8, 2011. X. Jiang, Jiang, Y. Zhang Zhang,, and S. Liu, “A Well-d ell-design esigned ed SaaS Application Application Platform Based on Model-driven Approach,” in   Grid and Cooperative

[42] P. Moha Mohagheg gheghi, hi, A. Berre, Berre, A. Henr Henry, y, F. Barbier, Barbier, and A. Sadovykh Sadovykh,, “REMICS-REuse and Migration of Legacy Applications to Interoperable Cloud Services,” Services,”  Towards a Service-Based Internet , pp. 195–196, 2010. [43] S. Venug enugopal opal,, S. Desik Desikan, an, and K. Ganes Ganesan, an, “Effecti “Effective ve Migrati Migration on of  Enterpris Enter prisee Appl Applicati ications ons in Mult Multicor icoree Clou Cloud, d,”” in   Utility Utility and Clo Cloud  ud  Computing Comp uting (UCC), 2011 Fourth Fourth IEEE Inter Internatio national nal Conferen Conference ce on, 2011, pp. 463–468. [44] A. Khajeh-Hosseini, D. Greenw Greenwood, ood, and I. Sommerville, “Cloud MigraMigration: A Case Study of Migrating an Enterprise IT System to IaaS,” in Cloud Computing (CLOUD), 2010 IEEE 3rd International Conference on, 2010, pp. 450–457. [45] P. Moha Mohagheg gheghi hi and T. Sæ andt andther her,, “Sof “Softwar twaree Engi Engineeri neering ng Chal Challeng lenges es for Migration Migration to the Service Cloud Parad Paradigm: igm: Ongoin Ongoing g Work in the REMICS Project,” in  Services (SERVICES), 2011 IEEE World Congress on, 2011, pp. 507–514. [46] S. Frey Frey,, W. Hassel Hasselbrin bring, g, and B. Schno Schnoor, or, “Automa “Automatic tic conf conforman ormance ce checki checking ng for migrat migratin ing g sof softw tware are sys system temss to cloud cloud inf infras rastru tructu ctures res and platforms,” platforms,”   Journal Journal of Sof Softwa tware re Mainte Maintena nance nce and Evo Evolut lution ion::  Research and Practice, pp. n/a—n/a—-n/a n/a,, 201 2012. 2. [On [Onlin line]. e]. Ava vail ilabl able: e:

Computing (GCC), Computing (GCC), 2010 9th Internatio International nal Conferen Conference ce on, 2010, pp. 276–281. P. Sari Saripa pall llii and and G. Pi Ping ngal ali, i, “M “MAD ADMA MAC: C: Mu Mult ltip iple le Attr Attrib ibut utee Deci Decisi sion on Me Meth thod odol olog ogy y for for Ad Adop opti tion on of Clou Clouds ds,,” in   2011  IEEE 4th International Conference on Cloud Computing. IE IEEE EE,, Jul. Jul. 2011 2011,, pp. pp. 316– 316–32 323. 3. [Onl [Onlin ine] e].. Availa ailabl ble: e: http http::  //ieeexplore.ieee.org/lp  //ieeexplor e.ieee.org/lpdocs/epic03/wr docs/epic03/wrapper.ht apper.htm?arnumber=600 m?arnumber=6008725 8725 S. Frey and W. Hasselbrin Hasselbring, g, “An Extensible Architecture for Detecting Vio Violations lations of a Cloud Environment’s Environment’s Constraints during Legacy Software System Migration,” in   Software Maintenance and Reengineering (CSMR), 2011 15th European Conference on, Mar. 2011, pp. 269–278. A. Khaj Khajeh-H eh-Hossei osseini, ni, I. Sommervil Sommerville, le, J. Boga Bogaerts erts,, and P. Terego Teregowda, wda, “Decision “Deci sion Support Tools Tools for Clo Cloud ud Migr Migration ation in the Ente Enterpri rprise, se,”” in Cloud Computing (CLOUD), 2011 IEEE International Conference on , Jul. 2011, pp. 541–548. S. Zard Zardar arii an and d R. Bahs Bahsoo oon, n, “C “Clo loud ud ad adop opti tion on:: a go goal al-o -ori rien ente ted d requireme requ irements nts engineeri engineering ng appro approach, ach,”” in   Proc Procee eedi ding ngss of th thee 2n 2nd  d   International Workshop on Software Engineering for Cloud Computing, ser ser.. SECLOUD ’11. New Y York, ork, NY, NY, USA: ACM, 2011, 2011, pp. 29–35. 29–35.

http://dx.doi.org/10.1002/smr.582 [47] [47] H. Zhou, Zhou, H. Yang, ang, and A. Hu Hugil gill, l, “An Ontolo Ontologygy-Bas Based ed App Approa roach ch to Reengi Reenginee neerin ring g Ent Enterp erpris risee Sof Softw tware are fo forr Cloud Cloud Compu Computi ting, ng,”” in 20 2010 10 IEEE IEEE 34 34th th An Annu nual al Co Comp mput uter er So Softw ftwar aree an and d Ap Appl plic icat atio ions ns Conference. IEEE, Jul. 2010 2010,, pp. 383– 383–388. 388. [Online]. [Online]. A Avail vailable: able: htt http: p:  //ieeexplore.ieee.org/lpd  //ieeexplor e.ieee.org/lpdocs/epic03/wrap ocs/epic03/wrapper.ht per.htm?arnumber=567 m?arnumber=5676282 6282 [48] P. Makr Makris, is, D. N. Skoutas, Skoutas, P P.. Rizo Rizomili miliotis otis,, and C. Skianis, Skianis, “A UserUserOriented, Orie nted, Cust Customiz omizable able Infr Infrastru astructure cture Sharing Sharing Approach Approach for Hybrid Hybrid Cloud Computing Environments,” in  Cloud Computing Technology and  Science Scien ce (CloudCom (CloudCom), ), 2011 IEEE Thir Third d Internatio International nal Conferen Conference ce on, 2011, pp. 432–439. [49] S. Yan Yan,, B. S. Lee, G. Zhao Zhao,, D. Ma, and P. Moham Mohamed, ed, “Infra “Infrastru structure cture management of hybrid cloud for enterprise users,” in  Systems and Virtualization Management (SVM), 2011 5th International DMTF Academic  Alliance Wo Workshop rkshop on, 2011, pp. 1–6. [50] [50] C. Atk Atkins inson on,, T. Schulz Schulze, e, and S. Kli Klinge ngert, rt, “Mo “Model dellin ling g as a Servi Service ce (MaaS): Minimizing the Environmental Impact of Computing Services,” in Services (SERVICES), 2011 IEEE World Congress on , 2011, pp. 519– 523.

Available: Available: http://d oi.acm.org/10.1145/198 06 lle, [34] [Online]. A. Khajeh-H Khajeh-Hossei osseini, ni,http://doi.acm.org/1 D. Green Greenwoo wood, d, J. 0.1145/1985500.19855 W. Smith, 5500.1985506 and I. Sommervi Sommerville, “The Cloud Adoption Toolkit: supporting supporting cloud adoption decisions in the enterprise,”   Software: Practice and Experience , vol. 42, no. 4, pp. 447–465, 2012. [Online]. Available: Available: http://dx http://dx.doi.org/ .doi.org/10.1002/spe. 10.1002/spe.1072 1072 [35 [35]] C.C.-Y Y. Yam, A. Baldw Baldwin, in, S. Shi Shiu, u, and C. Ioa Ioanni nnidis dis,, “Mi “Migra gratio tion n to Cloud as Real Option: Investment Decision under Uncertainty,” in  Trust, Security Secur ity and Privacy Privacy in Comp Computing uting and Communica Communications tions (T (TrustC rustCom), om), 2011 IEEE 10th International Conference on, 2011, pp. 940–949. [36] E. M. Ezzat, D. S. E. Zanfaly, and M. M. Kota, “Fly ov over er clouds or drive through thro ugh the crow crowd: d: A clou cloud d adoption adoption framework, framework,”” in   Current Tr Trends ends in Information Technology (CTIT), 2011 International Conference and  Workshop on, 2011, pp. 6–11. [37] M.-E M.-E.. F. D. Esparza-Peidr Esparza-Peidro o J., “To “Toward wardss the next generation generation of mode modell dri driven ven cloud cloud platform platforms, s,”” in   CLOSER CLOSER 201 2011 1 - Pr Proce oceedi eding ngss of the 1st   International Conference on Cloud Computing and Services Science, 2011, pp. 494–500. [38] M. A. Chau Chauhan han and M. A. Baba Babar, r, “Migra “Migrating ting Servic Service-Or e-Orient iented ed System to Clo Cloud ud Compu Computin ting: g: An Experi Experienc encee Rep Repor ort, t,”” in   2011 2011 IEEE IEEE 4t 4th h  International Conference on Cloud Computing. IEE IEEE, E, Jul. Jul. 201 2011, 1, p pp. p. 404–411. [Online]. Available: Available: http://ieeexplore.ieee.or http://ieeexplore.ieee.org/lpdocs/epi g/lpdocs/epic03/  c03/  wrapper.htm?arnumber=6008736 [39] X. Meng, J. Shi, X. Liu, H. Liu, and L. Wang, “Legacy “Legacy Appli Applicatio cation n

[51] velo J. DeFra DeFranco-T nco-Tommar ello and F. Plem . Deek Deek, , ing “Col “Collabo laborati rative ve soft ware development pment: : a ommarello discu discussion ssion of problem prob solv solving models andsoftware groupwar grou pware e technologies,” in  System Sciences, 2002. HICSS. Proceedings of the 35th  Annual Hawaii International Conference on, 2002, pp. 568–577. [52] C.-L. Ignat, “Annotati “Annotation on of concurrent changes in collaborati collaborative ve software development,” developm ent,” in   Intelligent Computer Communication and Processing, 2008. ICCP 2008. 4th International Conference on , 2008, pp. 137–144. [53] [53] M. Farwi Farwick, ck, B. Agr Agreit eiter er,, J. White, White, S. Forst Forster er,, N. Lanzan Lanzanast asto, o, and R. Breu, “A Web-Based Collaborative Metamodeling Environment with Secure Remote Model Access,” in  Web Engineering, ser. Lecture Notes in Computer Science, B. Benatallah, F. Casati, G. Kappel, and G. Rossi, Eds Eds.. Spr Spring inger er Ber Berli lin n / Heidel Heidelber berg, g, 201 2010, 0, vo vol. l. 618 6189, 9, pp pp.. 278 278–29 –291. 1. [Online]. Available: Available: http://d http://dx.doi.org/ x.doi.org/10.1007/9 10.1007/978-3-64278-3-642- 13911-6\_19 [54] [54] F. Pérez Pérez And Andrés rés,, J. Lar Lara, a, and E. Guerra Guerra,, “Appli “Applicat cation ionss of Gra Graph ph Transfor Tran sformatio mations ns with Industri Industrial al Rele Relevan vance, ce,”” A. Schü Schürr, rr, M. Nagl, Nagl, and A. Zün Zündor dorf, f, Eds. Eds. Ber Berlin lin,, Heidel Heidelber berg: g: Spring Springer er-V -Verl erlag, ag, 20 2008, 08, ch. Domain Spe, pp. 82–97. [Online]. Available: http://dx.doi.org/10.1007/  978-3-540-89020-1\_7 [55] L. Liu, M. Song, X. Luo, H. Bai, S. W Wang, ang, and J. Song, “An implementation of the online-payment platform based on SaaS,” in   Web Society (SWS), 2010 IEEE 2nd Symposium on, 2010, pp. 658–662. [56] E. G. da Silva, L. F. Pire Pires, s, and M. van Sinderen, Sinderen, “T “Towa owards rds runtime runtime discovery,, selection and composition of semantic services,”  Computer  discovery

[25 [25]]

[26]

[2 [27] 7]

[28]

[29]

[3 [30] 0]

[31]

[32]

[3 [33] 3]

 

Communications, vol. 34, no. 2, pp. 159–168, 2011. [Online]. Available: http://www.sciencedirect.com/science/article/pii/S0140366410001714 [57] T. P. D. S. L. F. Papazoglo Papazoglou u M.P M.P., ., “Serv “Service-o ice-orien riented ted computing: computing: A research roadmap, roadmap,””   In International ternational Journal of Cooperative Information Systems, vo vol. l. 17, no no.. 2, pp. 223 223–2 –255, 55, 200 2008. 8. [Onli [Online] ne].. Ava vail ilabl able: e: http://www.worldscinet.com/ijcis/17/1702/S0218843008001816.html [58] B. N. R. I. D. J. L. Y. D. A. F. L. M. S. S. P. M. Villega Villegass D., “Cloud federation in a layered service model,”  Journal of Computer and System Sciences, vol. 78, no. 5, pp. 1330–1344, 2012. [59] [59] M. A. AlZa AlZain in,, E. Pa Pard rded ede, e, B. Soh, Soh, an and d J. A. Th Thom om,, “C “Clo loud ud Computin Comp uting g Secur Security: ity: From Sing Single le to Mult Multi-clo i-clouds, uds,”” in   2012 2012 45th  Hawaii International Conference on System Sciences. IE IEE EE, Jan Jan..

Computing. IEE IEEE, E, 201 2010, 0, pp pp.. 509 509–5 –512. 12. [Online] [Online].. Ava vail ilabl able: e: http: http:  //ieeexplore.ieee.org/lpdocs/epic03/wrap  //ieeexplore.ieee.org/lpd ocs/epic03/wrapper.ht per.htm?arnumber=549 m?arnumber=5493445 3445 [76] A. D. H. Farrell, Farrell, M. J. Sergot, Sergot, M. Salle Salle,, C. Barto Bartolini lini,, D. Trastour Trastour,, and A. Christodoulou, “Performance monitoring of service-level agreements for utility computing using the event calculus,” in  Electronic Contracting, 2004. Pro Proceedin ceedings. gs. Fir First st IEEE Inter Internatio national nal Workshop orkshop on, 2004, pp. 17–24. [77] R. A. Sengu Sengupta pta B., “Eng “Engineer ineering ing multi-ten multi-tenant ant Soft Softwareware-as-aas-a-Servi Service ce systems,” in  Procee  Proceedings dings - Inter Internatio national nal Conferen Conference ce on Software Software Engineering, 2011, pp. 15–21. [78] Z. J. L. J. Zhu Y., “Soluti “Solution on for transforming web applicat application ion to multitenant SaaS application,”  Lecture Notes in Electrical Electrical Engineering Engineering, vol.

2012, pp. 5490–5499. 5490–5499. [Online]. Available: Available: http://ieee http://ieeexplore.ieee.or xplore.ieee.org/  g/  lpdocs/epic03/wrapper.htm?arnumber=6149560 T. Liu, Liu, Y. Ka Kats tsun uno, o, K. Sun, Sun, Y. Li, Li, T. Kush Kushid ida, a, Y. Ch Chen en,, an and d M. Itakur Itakura, a, “Mult “Multii Clo Cloud ud Man Manage agemen mentt for uni unified fied clo cloud ud servi services ces acr across oss cloud cloud sites, sites,”” in   2011 2011 IEEE IEEE Int Intern ernati ationa onall Co Confe nfere rence nce on Cloud Clou d Comp Computing uting and Intelligen Intelligence ce Systems Systems. IE IEEE EE,, Sep. Sep. 201 2011, 1, pp. pp. 164–169. [Online]. Available: Available: http://ieeexplore.ieee.or http://ieeexplore.ieee.org/lpdocs/epi g/lpdocs/epic03/  c03/  wrapper.htm?arnumber=6045053 P. Jain Jain,, D. Rane, and S. Patidar Patidar,, “A Novel Cloud Bursting Bursting Brokera Brokerage ge and Aggregat Aggregation ion (CBB (CBBA) A) Algo Algorith rithm m for Mult Multii Clou Cloud d Env Environ ironment, ment,” in   Advanced Computing Communication Technologies (ACCT), 2012 Second International Conference on, 2012, pp. 383–387. J. L. Lucas Simarro, R. Moreno-Vozmediano, R. S. Montero, and I. M. Llorente, “Dynamic placement of virtual machines for cost optimization in multi-cloud environment environments,” s,” in   High Performance erformance Computing Computing and  Simulation (HPCS), 2011 International Conference on, Jul. 2011, pp. 1–7. R. Moreno-Vozmediano, R. S. Montero, and I. M. Llorente, “Multicloud Deployment of Computing Clusters for Loosely Coupled MTC Applica-

141 LNEE, no. VOL. 1, pp. 181–188, 2012. [79] F. Cho Chong ng and G. Carraro, “Architecture strateg strategies ies for catching the long tail,”  MSDN Library, Microsoft Corporation, pp. 9–10, 2006. [80] [80] A. V. Hudl Hudli, i, B. Shiv Shivar arad adhy hya, a, and and R. V. Hudl Hudli, i, “Lev “Level el-4 -4 SaaS SaaS applicati appl ications ons for healthcare healthcare indu industry stry,,” in   Proce Proceedi edings ngs of the 2n 2nd  d  ser. COM COMPUT PUTE E ’09 ’09.. New New  Bangalore Annual Compute Conference, ser. York, NY, NY, USA: ACM ACM,, 2009 2009,, pp. 19:1—-19 19:1—-19:4. :4. [Online] [Online].. Avai vailabl lable: e: http://doi.acm.org/10.1145/1517303.1517324 [81] T. Kwo Kwok, k, T. Ngu Nguyen, yen, and L. Lam, “A Software as a Service with Multitenancy Support for an Electronic Contract Management Application,” in   Services Computing, 2008. SCC ’08. IEEE International Conference on, vol. 2, 2008, pp. 179–186. [82] (2012) Jclouds. [Online]. Available: Available: http://www http://www.jclouds.or .jclouds.org/l g/l [83] D. Warnek Warnekee and O. Kao, “Exploiting Dynamic Resource Allocation for Efficient Parallel Data Processing in the Cloud, Cloud,”” Parallel and Distributed  Systems, IEEE Transactions on, vol. 22, no. 6, pp. 985–997, 2011. [84] [84] C. Lv, Q. Li, Z. Lei, Lei, J. Peng, W W.. Zha Zhang, ng, and T. Wan Wang, g, “PaaS “PaaS:: A revolution revolut ion for information technology platforms,” platforms,” in   Educational and   Network Technology (ICENT), 2010 International Conference on , 2010, pp. 346–349. [85] Z. Shu-Qin Shu-Qing g and X. Jie-B Jie-Bin, in, “The Impr Improve ovement ment of PaaS Platfo Platform, rm,”” in  Networking and Distributed Computing (ICNDC), 2010 First International Conference on, 2010, pp. 156–159. [86] (201 (2012) 2) Google Google App Engi Engine. ne. [Onl [Online] ine].. Avai vailabl lable: e: https:// https://appe appengin ngine. e. google.com/  [87] [87] B. Narasi Narasimha mhan n and R. Nic Nichol hols, s, “State “State of Cloud Cloud Applic Applicati ation onss and Platforms: The Cloud Adopters’ View,”  Computer , vol. 44, no. 3, pp. 24–28, Mar. 2011. [Online]. Available: http://ieeexplore.ieee.org/lpd http://ieeexplore.ieee.org/lpdocs/  ocs/  epic03/wrapper.htm?arnumber=5719574 [88] T. Gran Grandiso dison, n, E. M. Maximi Maximilien lien,, S. Thorpe, and A. Alba, “T “Towa owards rds a Formal Definition of a Computing Cloud,” in   Services (SERVICES-1), 2010 6th World Congress on , 2010, pp. 191–192. [89] R. Guha and D. Al-D Al-Dabass abass,, “Impact of Web 2.0 and Cloud Compu Computing ting Platform on Software Engineering,” Engineering,” in  Electronic System Design (ISED), 2010 International Symposium on, 2010, pp. 213–218. [90] W. Kim, “Cloud architecture: A preliminary preliminary look, look,”” in  ACM International Conferen Conf erence ce Pro Proceedin ceeding g Series, 2011 2011,, pp. 2–6. [Online [Online]. ]. Avai vailabl lable: e: http://www.scop http://ww w.scopus.com/inward us.com/inward/record.url?eid /record.url?eid=2-s2.0-84856938421\  =2-s2.0-84856938421\  &partnerID=40\&md5=8369 &partnerID=40 \&md5=8369a4ca41fa721d6 a4ca41fa721d61f8e2278acca5ce 1f8e2278acca5ce

[6 [60] 0]

[61]

[62]

[63]

[64] [65 [65]]

[66]

[67]

[68]

[69]

[70] [70]

[71]

[72] [73] [74]

[75] [75]

tions,”  Parallel and Distributed no. 6, pp. 924–930, Jun. 2011. Systems, IEEE Transactions on, vol. 22, C. Peltz, Peltz, “W “Web eb services services orchestra orchestration tion and choreogra choreography phy,,”   Computer , vol. 36, no. 10, pp. 46–52, 2003. A. Al Fal Falasi asi and M. Adel Adel Ser Serhan hani, i, “A Fra Framew mework ork for SLA SLA-ba -based sed cloud clou d servi services ces verificati verification on and comp composit osition, ion,”” in   2011 International Conferen Conf erence ce on Inno Innovatio vations ns in Info Informatio rmation n Technolog echnologyy. IE IEEE EE,, Apr Apr.. 2011,, pp. 287– 2011 287–292. 292. [Online] [Online].. Avai vailabl lable: e: http://i http://ieeex eeexplor plore.iee e.ieee.or e.org/  g/  lpdocs/epic03/wrapper.htm?arnumber=5893834 P. de Leuss Leusse, e, P. Periorell Periorellis, is, P. Watson atson,, and A. Maier Maierhofer hofer,, “Secu “Secure re #x00026; Rapid Composition of Infrastructure Services in the Cloud,” in   Sensor Sensor Technologies and Applications, 2008. SENSORCOMM ’08. Second International Conference on, 2008, pp. 770–775. J. O. Guti Gutierrez errez-Garc -Garcia ia and K.-M. Sim, “Self-O “Self-Organ rganizin izing g Agen Agents ts for Service Composition in Cloud Computing,” in  Cloud Computing Technology nolo gy and Science (CloudCom (CloudCom), ), 2010 IEEE Second Second Internation International al Conference on, 2010, pp. 59–66. W.-T. Tsai, P. P. Zhong, J. Balasooriya, Y. Y. Chen, X. Bai, and J. Elston, “An Approach for Service Composition and Testing for Cloud Computing,” in  Autonomous Decentralized Systems (ISADS), 2011 10th International Symposium on, 2011, pp. 631–636. L. Zhang, H. Guo, F. Tao, Y Y.. L. Luo, and N. Si, “Flexible “Flexible management management of resource service composition in cloud manufacturing,” in  Industrial  Engineering and Engineering Management (IEEM), 2010 IEEE International Conference on, 2010, pp. 2278–2282. P P.. A. Lapl Laplan ante te,, J. Zhan Zhang, g, an and d J. Voas, oas, “Wha “What’ t’ss in a Name Name?? Distinguishing between SaaS and SOA,”  IT Professional, vol. 10, no. 3, pp. 46–50, May 2008. [Online]. Avai Available: lable: http://ieeexplore.i http://ieeexplore.ieee.org/  eee.org/  lpdocs/epic03/wrapper.htm?arnumber=4525542 S. M. S. D. Sharma R., “Modeling “Modeling cloud SaaS with SOA SOA and MDA, MDA,”” Communications in Computer and Information Science, vol. 190 CCIS, no. PART 1, pp. 511–518, 2011. (2012) Google Apps. [Online]. Av Available: ailable: http://www http://www.google.com/ .google.com/apps/  apps/  intl/en/business/index.html (201 (2012) 2) Oracl Oracle’s e’s JD Edwa Edwards. rds. [Online] [Online].. Available: vailable: http://w http://www ww.ora .oracle. cle. com/us/products/applicatio com/us/produ cts/applications/jd-edwards-enterpriseone/in ns/jd-edwards-enterpriseone/index.html dex.html M. P. Papazoglou, P P.. Traverso, S. Dustdar, and F. Leymann, “ServiceOriented Computing: State of the Art and Research Challenges,”   Com puter , vol. 40, no. 11, pp. 38–45, 2007. V. Chan Chang, g, D. Baci Baciga galu lupo po,, G. Wills ills,, an and d D. De Rour Roure, e, “A Categori Cate gorisatio sation n of Clou Cloud d Computin Computing g Busi Business ness Mode Models, ls,”” in   2010 10th  IEEE/ACM International Conference on Cluster, Cluster, Cloud and Grid 

[91] L. Mei, Z. Zhan Zhang, g, andIssues W. K.from Chan, Chan , “More of Cloud Clouds: s: Softwa Software re Engineering Research the CloudTales Application Perspective,” in   Computer Software and Applications Conference, 2009. COMPSAC  ’09. 33rd Annual IEEE International, vol. 1, 2009, pp. 525–530. [92] C. E. Rimal B.P., B.P., “A servi service-or ce-orient iented ed taxo taxonomi nomical cal spect spectrum, rum, cloudy challenges and opportunities of cloud computing,”  International Journal of Communication Systems, vol. 25, no. 6, pp. 796–819, 2012. [93] L.-J. Zhang and Q. Zhou, “CCO “CCOA: A: Cloud Comput Computing ing Open ArchitecArchitecture,” in Web Services, 2009. ICWS 2009. IEEE International Conference on, 2009, pp. 607–616.

Sponsor Documents

Or use your account on DocShare.tips

Hide

Forgot your password?

Or register your new account on DocShare.tips

Hide

Lost your password? Please enter your email address. You will receive a link to create a new password.

Back to log-in

Close