mobile cloud computing: big picture

70
Mobile Cloud Computing: Big Picture M. Reza Rahimi, DONALD BREN SCHOOL OF INFORMATION AND COMPUTER SCIENCE, Irvine, CA.

Upload: reza-rahimi

Post on 09-May-2015

4.475 views

Category:

Technology


1 download

DESCRIPTION

Presented at Computer Science Department, University of California Irvine (Distributed Systems Course).

TRANSCRIPT

Page 1: Mobile Cloud Computing: Big Picture

Mobile Cloud Computing: Big Picture

M. Reza Rahimi,DONALD BREN SCHOOL OF INFORMATION AND

COMPUTER SCIENCE, Irvine, CA.

Page 2: Mobile Cloud Computing: Big Picture

2

“You don't generate your own electricity. Why generate your own

computing?” Jeff Bezos, CEO, Amazon

Page 3: Mobile Cloud Computing: Big Picture

3

Outline

• Cloud Computing: Concepts and Terminologies• What is Cloud Computing?• Essential Characteristics• Service Models• Deployment Models

• Cloud Computing Modeling• Cloud Computing Modeling: Functional View• Cloud Computing Modeling: Qos View

• Mobile Cloud Computing Application: Toward Pervasive Computing• Motivation• Related Works: Cloudlet , MapGrid and Calling the

Cloud• Mobile Cloud Computing Architecture

• Conclusions• References

Page 4: Mobile Cloud Computing: Big Picture

4

Cloud Computing: Concepts and Terminologies

Page 5: Mobile Cloud Computing: Big Picture

5

What is Cloud Computing?

• Cloud computing is a model for enabling convenient, on-demand network access to a shared pool of configurable computing resources (e.g., networks, servers, storage, applications, and services) [Mell_2009], [Berkely_2009].

• It can be rapidly provisioned and released with minimal management effort.

• It provides high level abstraction of computation and storage model.

• It has some essential characteristics, service models, and deployment models.

Page 6: Mobile Cloud Computing: Big Picture

6

Essential Characteristics

• On-Demand Self Service: • A consumer can unilaterally provision computing

capabilities, automatically without requiring human interaction with each service’s provider.

• Heterogeneous Access: • Capabilities are available over the network and

accessed through standard mechanisms that promote use by heterogeneous thin or thick client platforms.

Page 7: Mobile Cloud Computing: Big Picture

7

• Resource Pooling: • The provider’s computing resources are pooled to

serve multiple consumers using a multi-tenant model.

• Different physical and virtual resources dynamically assigned and reassigned according to consumer demand.

• Measured Service: • Cloud systems automatically control and optimize

resources used by leveraging a metering capability at some level of abstraction appropriate to the type of service.

• It will provide analyzable and predictable computing platform.

Essential Characteristics (cont.)

Page 8: Mobile Cloud Computing: Big Picture

8

Service Models

• Cloud Software as a Service (SaaS): • The capability provided to the consumer is to use the

provider’s applications running on a cloud infrastructure.

• The applications are accessible from various client devices such as a web browser (e.g., web-based email).

• The consumer does not manage or control the underlying cloud infrastructure including network, servers, operating systems, storage,…

• Examples: Caspio, Google Apps, Salesforce, Nivio, Learn.com.

Page 9: Mobile Cloud Computing: Big Picture

9

• Cloud Platform as a Service (PaaS): • The capability provided to the consumer is to

deploy onto the cloud infrastructure consumer-created or acquired applications created using programming languages and tools supported by the provider.

• The consumer does not manage or control the underlying cloud infrastructure.

• Consumer has control over the deployed applications and possibly application hosting environment configurations.

• Examples: Windows Azure, Google App.

Service Models (cont.)

Page 10: Mobile Cloud Computing: Big Picture

10

• Cloud Infrastructure as a Service (IaaS): • The capability provided to the consumer is to

provision processing, storage, networks, and other fundamental computing resources.

• The consumer is able to deploy and run arbitrary software, which can include operating systems and applications.

• The consumer does not manage or control the underlying cloud infrastructure but has control over operating systems, storage, deployed applications, and possibly limited control of select networking components (e.g., host firewalls).

• Examples: Amazon EC2, GoGrid, iland, Rackspace Cloud Servers, ReliaCloud.

Service Models (cont.)

Page 11: Mobile Cloud Computing: Big Picture

11

Service Model at a glance: Picture From http://en.wikipedia.org/wiki/File:Cloud_Computing_Stack.svg

Service Models (cont.)

Page 12: Mobile Cloud Computing: Big Picture

12

Deployment Models

• Private Cloud: • The cloud is operated solely for an organization. It

may be managed by the organization or a third party and may exist on premise or off premise.

• Community Cloud: • The cloud infrastructure is shared by several

organizations and supports a specific community that has shared concerns.

• It may be managed by the organizations or a third party and may exist on premise or off premise.

Page 13: Mobile Cloud Computing: Big Picture

13

• Public Cloud: • The cloud infrastructure is made available to the

general public or a large industry group and it is owned by an organization selling cloud services.

• Hybrid cloud: • The cloud infrastructure is a composition of two or

more clouds (private, community, or public).

Deployment Models (cont.)

Page 14: Mobile Cloud Computing: Big Picture

14

Service Model at a glance: Picture From http://en.wikipedia.org/wiki/File:Cloud_computing_types.svg

Deployment Models (cont.)

Page 15: Mobile Cloud Computing: Big Picture

15

Cloud Computing Modeling

Page 16: Mobile Cloud Computing: Big Picture

16

Cloud Computing Modeling: Functional View

• Two categories could be considered: Functional Modeling and Non-Function Model (Qos Model ).

• Functional Model:• Cloud Pool is the set of different clouds or :

• Service Pool is the set of all supporting services in the system or:

• Cloud-Service Matching Graph is the bipartite graph which matches the clouds to their related services.

},...,,{ ||21 poolCpool cccC

},...,,{ ||21 poolSpool sssS

Page 17: Mobile Cloud Computing: Big Picture

17

c1

c2

c3

c4

cn

s1

s2

s3

s4

sn

cloud-service matching graph

Cloud Computing Modeling: Functional View (cont.)

Page 18: Mobile Cloud Computing: Big Picture

18

• Workflow, Plan or Application is a Directed Acyclic Graph (DAG) with the following properties and semantics [Zeng_2003], [Chen_2003], [Ko_2008]:

• Node Semantic:• It has only one node which is called Start Node.• It has only one node which is called End Node.• Except for start and end nodes, each node is

annotated with an object from service pool.• Edge Semantic:

• If a node has only one outgoing edge to the other node then it is called sequential edge (Sequential Semantic). si sj sk

Sequential edges

Cloud Computing Modeling: Functional View (cont.)

Page 19: Mobile Cloud Computing: Big Picture

19

• If a node has more than one outgoing edges to the other nodes then it is called concurrent edges (Fork Concept or AND-Parallel):

• If a node has two outgoing edges with weight then it is called conditional edges (or XOR-Parallel).

si sj sk

sl

sm

Concurrent edges Sequential edges

p1

p2

si sj sk

slConditional edges Sequential edges

p1+p2=1; 0<p1,p2<1

Cloud Computing Modeling: Functional View (cont.)

Page 20: Mobile Cloud Computing: Big Picture

20

• The loop node is considered as:

• It could be easily converted to sequence edges with the upper bound loop limit.

• The loop in this graph could be avoided as:

sj

While/Loop

sj

While/Loop

sj sj sj sjLoop Bound=4

sj si sjsj si

Cloud Computing Modeling: Functional View (cont.)

Page 21: Mobile Cloud Computing: Big Picture

21

• Critical Service: The services in the plan with the highest number of inputs and outputs edges.

Cloud Computing Modeling: Functional View (cont.)

Page 22: Mobile Cloud Computing: Big Picture

22

Cloud Computing Modeling: Qos View

• The cloud quality of service is defined as:

• Some important Single Cloud Qos are:

),...,,(: 21 npoolpool qqqSCQos

.or level service define also could we serviceFor

. cloudon

of received are results theandsent isrequest awhen

moment ebetween th secondsin Delay ),(

. cloudon service using of Price),(

Leveljj

ij

jiduration

ijjiprice

ss

cs

scq

csscq

Page 23: Mobile Cloud Computing: Big Picture

23

),,,,,(:

[0,5]Amazon like

service theofRank Social ),(

time.specific within accessible is

service y that teprobabilit The ),(

recieve. could on

that clients of maximum The),(

time.specific

whithin answeredcorrectly is

request y that theprobabilit The ),(

reputationtyavailabiliCapacityyreliabilitdurationpricepoolpool

jireputation

jityavailabili

i

jjiCapacity

jiyreliabilit

qqqqqqSCQos

scq

scq

c

sscq

scq

Cloud Computing Modeling: Qos View (cont.)

Page 24: Mobile Cloud Computing: Big Picture

24

Job Qos (end-to-end Qos)

• The Qos is also defined for work flow.

job. executablein

services all of reputation avaerage The)(

1. else 0 services

critical-nonfor )(

1. else 0 services

critical-nonfor )(

job. executablein path longest The)(

job. executablein prices theof Sum)(

1

),(

1

),(

wf

z

ewf

z

ewf

wf

wf

Qos

Qos

Qos

Qos

Qos

reputation

i

N

i

zscq

tyavailabili

i

N

i

zscq

yreliabilit

duration

price

ijityavailabili

ijiyreliabilit

Page 25: Mobile Cloud Computing: Big Picture

25

• The typical optimization problem that happens in this area is to find appropriate cloud compositions that satisfied the required constraints and maximize or minimizes the utility function.

• The following is the general architecture for cloud computing system.

Task Query+ Desired Qos

Task Query to Job (DAG)

Cloud Composition to Satisfy Qos Model

Page 26: Mobile Cloud Computing: Big Picture

26

spaces. service and cloudsover isselection The

5

11

)(

)(

)(

)(

)(

:Subject to

max)

)(

)((5)

)(

)((4

))(

)((3)

)((2)

)((1

i iw

reputationcwfQosreputation

tyavailabilicwfQos tyavailabili

yreliabilitcwfQos yreliabilit

durationcwfQosduration

pricecwfQos price

wfQosreputation

reputationcwfQosreputationw

wfQos tyavailabili

tyavailabilicwfQos tyavailabiliw

wfQos yreliabilit

yreliabilitcwfQos yreliabilitw

durationc

wfQosdurationc durationwpricec

wfQospricecprice

w

one possibleoptimization problem

when the target function is linear.

Page 27: Mobile Cloud Computing: Big Picture

27

Mobile Cloud Computing: Toward Pervasive

Computing

Page 28: Mobile Cloud Computing: Big Picture

28

“The most profound technologies are those that

disappear. They weave themselves into the fabric of every day life until they are indistinguishable from it.”

“Mark Weiser”, Xerox Scientist

Page 29: Mobile Cloud Computing: Big Picture

29

Motivation

• Pervasive computing names the third wave in computing, just now beginning.

• First were mainframes, each shared by lots of people.

• Now we are in the personal computing era, person and machine staring uneasily at each other across the desktop.

• Next comes Pervasive computing, or the age of calm technology, when technology recedes into the background of our lives.

• Alan Kay of Apple calls this "Third Paradigm" computing.

Page 30: Mobile Cloud Computing: Big Picture

Evolution of Computing Environment: [Satyanarayanan_2001] :

Toward Pervasive Computing environment30

Cloud Computing

Promises

Motivation (cont.)

Page 31: Mobile Cloud Computing: Big Picture

31

• Mobile Cloud computing technology promises the realization of pervasive computing era.

• Many different application could be considered in this area, such as M-Commerce, M-learning, M-entertainment.

• In this work we consider the M-Multimedia application in mobile computing environment.

• It is called multimedia streaming in mobile computing area.

Motivation (cont.)

Page 32: Mobile Cloud Computing: Big Picture

32

Page 33: Mobile Cloud Computing: Big Picture

33

• In the next section we are trying to review some important works done related to mobile cloud computing.

• Based on the previous work we are going to propose an architecture for mobile cloud computing for multimedia streaming application.

Motivation (cont.)

Page 34: Mobile Cloud Computing: Big Picture

34

Related Works: Cloudlet MapGrid

and Calling the Clouds

Page 35: Mobile Cloud Computing: Big Picture

35

Cloudlet

• It has been shown that one hop connection from mobile device to internet is not efficient.

• Human are sensitive to the current delay in clouds.

• It seems that latency is unlikely to be improved.

• Considering different layer for software such as security and firewall it is unlikely that latency improves (although increase in bandwidth).

• This motivate us to use cloudlet between mobile devices and cloud pools (Infrastructure).

• A cloudlet (I refer it as the micro edition of cloud)only contains soft states such as cache copies of data or code.

Page 36: Mobile Cloud Computing: Big Picture

36

Cloudlets are as the infrastructure for mobile cloud computing. From: [Satyanarayanan_2009]

The prototype based on this systems is implemented in CMU and called Kimberley [Satyanarayanan_2009] .

Cloudlet (cont.)

Page 37: Mobile Cloud Computing: Big Picture

37

MapGrid (Mobile Application on Grid)

• Base on the work [Huang_2002] , [Huang_2005] , [Huang_2007] which is middleware approach.

• It uses Grid as the cache proxy for mobile applications.

• Resources on grid (storage and computation) are intermittently available.

• MapGrid uses the interval tree data structure for storing the information about available resources on grid.

• Mobility pattern has been used to optimal data replication policy in MapGrid.

• The proposed middleware does:1. Execute load-base adaptive Grid source

selection.2. Satisfy User Qos.3. Bound the number of grid source switches.

Page 38: Mobile Cloud Computing: Big Picture

38

Mobile Client

Broker

Mobile ClientMonitoring

Directory Service

Request Scheduler

Resource Reservation

Placement Management

Tertiary Storage

Volunteer Servers(Grids)

Grid Monitoring

MapGrid Middleware Service Architecture

Req

Info

Moving_Profile

Req Req*

Req#

Req@

Data

1. Resource Discovery2. Schedule Planning

Reports changes in grid resources

Admission Control

Contains information about available resources on Grid

and Clients

Replace the data to grid resources

Mobility Pattern detection

Page 39: Mobile Cloud Computing: Big Picture

39

MapGrid Definitions and Notations

• Request: R(VID, itinerary) where VID is the video and itinerary is mobility information.

• Grid Loading Factor:

• Grid Factor:

10 j. gridon resource available to

resource requested of ratio theis X where

},,,max{),(

a

j

aaaaj

LF

DBWNBWMEMCPUtRLF

),(),(

),(),(

RjDisttRLF

tjtyAvailabilitRGf

jj

If grid j is available at time t equal 1 else 0.

Distance of grid J from request R.

Page 40: Mobile Cloud Computing: Big Picture

40

• Segment size: Sd the unit size of data.• The MapGrid algorithm has the following tree

steps:• PartitionServicePeriod():

• partition the request according to the segment size or other fast startup policies (to start the service as fast as possible).

• VolunteerGridAllocation():• Maps chunks to the specific grid according to

LF and proximity. The biggest Grid factor could be selected. The start point could be used to initialized the algorithm.

• MobilityBasedRescheduling():• Keep track of the mobility pattern and if

needed reschedule.

MapGrid Definitions and Notations (cont.)

Page 41: Mobile Cloud Computing: Big Picture

41

MapGrid Optimization• With the knowledge of the mobility pattern,

we could optimize the first two function, service period and grid resource allocation.

• Service Period Optimization:• Policy 1: MajoritySpreadOver attempts to

minimize number of Grid switches. • Assign the chunks of data according to the duration

that mobile client spends in each cell.• Weakness: Delay in startup.

• Policy 2: DistancePartition partition the service time according to distance traversal. Long distance long chunk of data.

)],(),...,,[( 11 nn CellTimeCellTimeitinenary

Page 42: Mobile Cloud Computing: Big Picture

42

• Volunteer Service Optimization:• With knowing the mobility pattern and the

time duration that mobile client spend in each cell our task is to find grid resources to maximize the following utility function.

location. grid theis y)(x, andcenter cell is

)b,(a .cellin spendsclient mobile

the timeofduration theis where

)()(),(

iii

22

1

i

ii

n

ii

D

byaxDyxf

MapGrid Optimization (cont.)

Page 43: Mobile Cloud Computing: Big Picture

43

Calling The Cloud

• It is based on the optimal task migration between server and mobile client [Giurgiu_2009].

• They have used OSGi (Open Services Gateway Initiative) and AlferedO platform (component based architecture) for prototype implementation.

• The key Idea is to make an application graph and try to make a cut (some tasks will be done on server side and remaining will be done on mobile side) to meet the required optimization issues.

• The following figure shows the main idea.

Page 44: Mobile Cloud Computing: Big Picture

44

S1 S2 S3

S4

S5S7

S6

S8

S1 S2 S3

S4

S5S7

S6

S8

Mobile CutMobile Cut

S1 S2 S3

S4

S5S7

S6

S8

Original Plan

Page 45: Mobile Cloud Computing: Big Picture

45

“You usually use your cell phone for communication service. Why not getting computation service?” 

Reza, UCI Student

Page 46: Mobile Cloud Computing: Big Picture

46

• Lesson that we have learned:• For pervasive environment location-based services

considered as the important element in design.• So we should consider the location of cloud as an

important optimization factor which is lead to cloudlet as mentioned before.

• This suggests 3-tier architecture.• Cloudlet has minimum capability, usually storage and

limited processing (for example Multimedia Streaming).

• The following figure shows this architecture.

Page 47: Mobile Cloud Computing: Big Picture

47

Cloud Pool(Amazon, Google, Microsoft,….)

Cloudlet or Wireless Cloud

Cloudlet or Wireless Cloud

Cloudlet or Wireless Cloud

Page 48: Mobile Cloud Computing: Big Picture

48

Location-Base Service Composition

• For mobile computing application we could define the Time Location Workflow.

• It is the same as general work-flow with additional information about the location of the service.

• Based on different criteria we could optimize the solution for different mobile and movment pattern.

S1|L0|T6 S2|L1|T7 S3|L2|T1

S4|L3|T5

S5|L4|T4S7|L1|T2

S6|L0|T0

S8|L0|T3

Time_LocationWorkflow

Page 49: Mobile Cloud Computing: Big Picture

49

Mobile Cloud Computing Applications (cont.)

• We are thinking about the middleware approach as the solution for achieving Qos.

• Before going ahead let’s see what sort of atomic and implementable elements and technology we have in the cloud pool.

• Web Service: Application Programming Interfaces (API) or web APIs that can be accessed over a network and executed on a remote system hosting the requested services. It has 3 important protocols:1. WSDL (Web Service Description Language): XML-based

interface for definig Web Service functionality.2. SOAP (Simple Object Access Protocol): Protocol for

exchanging structured information in the implementation of web services.

3. UDDI (Universal Description Discovery and Integration): For publishing and registering web services in the internet.

Page 50: Mobile Cloud Computing: Big Picture

50

• UDDI has tree parts:• White Pages: Address, contact, and known

identifiers;• Yellow Pages: Industrial categorizations based on

standard taxonomies;• Green Pages: Technical information about services

exposed by the business.• Some people are thinking about the Blue

Pages which described the quality of services.• IBM [IBM], also introduced WSLA (Web

Service Language Agreement) where obligation factors related to Qos between service provider and client are specified.

Mobile Cloud Computing Applications (cont.)

Page 51: Mobile Cloud Computing: Big Picture

51

UDDI Registry Important API

• [Alonso_2004] UDDI Inquiry API: find_business(), find_service(), find_tmodel() get_businessDetail(), get_serviceDetail(),

get_tmodelDetail().• [Alonso_2004] UDDI Publishers API:

save_business(), save_service(), save_tmodel() delete_business(), delete_service(),

delete_tmodel().• [Alonso_2004] UDDI Security API:

get_authToken(), discard_authToken().

Page 52: Mobile Cloud Computing: Big Picture

Mobile Client Middleware(Broker) Cloudlet and Cloud Pool

Cloud Service Registry and Discovery

AdmissionControl

Mobile Profile Monitoring

Qos Monitoring , Service Discovery

Scheduler

Mobile Client

Cloudlet Pools

Mobile Profile Analyzer

Qos Analyzer

Cloud Pools

Qos Monitoring

Page 53: Mobile Cloud Computing: Big Picture

53

Functionalities Middleware Blocks

Accepts or rejects mobile client requests according to the resources available and mobile profile (it could be power-aware, resource –aware and…. Policies, Maybe Game Theory could be used for optimal admission policy).

Admission Control

Monitors mobile profile. Mobile Profile Monitoring

Analyzes mobile profile specially power level, location pattern,… for optimal scheduling.

Mobile Profile Analyzer

It schedules the accepted requests and design a plan according to the negotiations done with Cloudlets (Schedule Queue).

Scheduler

It discovers cloudlets (maybe based on ontology and semantics) in the area (like UDDI), its Qos during service from mobile client. It also registers its services and middleware business on UDDI for accessing mobile clients.

Qos Monitoring, Service Discovery (Cloud and Cloudlets)

It is analyzing the Cloudlets services and make a list of suitable cloudlets and policy of admission.

Qos Analyzer

Functionalities Mobile Client Block

Reports the Middleware about the Qos of the cloudlets.

Qos Monitoring

Page 54: Mobile Cloud Computing: Big Picture

54

Sample Prototype

• Simple barcode reader service has been implemented.

• In this scenario the user takes a picture of the barcode for getting some information about the object, for example the cheapest price location.

• The picture is send to cloudlet for processing.• The cloudlet extract the information and

query Amazon or other clouds for the price.• The price will be return back to user.• The next picture shows the scenario sequence

diagram [Rahimi_2008].

Page 55: Mobile Cloud Computing: Big Picture

55

CloudCloudlet

Page 56: Mobile Cloud Computing: Big Picture

56

Cloud(Amazon)

Cloudlet

Cloud(Yahoo)

Yahoo Cloud (Flicker) as a Cache.

Page 58: Mobile Cloud Computing: Big Picture

58

Class Diagrams:

Mobile Client

Page 59: Mobile Cloud Computing: Big Picture

59

Page 60: Mobile Cloud Computing: Big Picture

60

Page 61: Mobile Cloud Computing: Big Picture

61

Page 62: Mobile Cloud Computing: Big Picture

62

Page 63: Mobile Cloud Computing: Big Picture

63

Class Diagrams: Cloudlet

Page 64: Mobile Cloud Computing: Big Picture

64

Page 65: Mobile Cloud Computing: Big Picture

65

Page 66: Mobile Cloud Computing: Big Picture

66

Page 67: Mobile Cloud Computing: Big Picture

67

Conclusions and Research Direction

• We talked about the new era in Information Technology which is know as cloud computing.

• Several different aspects of this area have been reviewed and discussed.

• The deployment of cloud computing in mobile environment were discussed.

• This middleware could be implemented as the Local web services (as in barcode reader example).

• Good simulation environment should be considered in this area (Currently I am working on OMNet++ to develop for service composition in mobile environment)

Page 68: Mobile Cloud Computing: Big Picture

68

References1. [Alonso_2004] G. Alonso, F. Casati, H. Kuno, V. Machiraju “Web

Services, Concepts, Architectures and Applications” , Springer 2004.

2. [Berkely_2009] “Above the Clouds: A Berkeley View of Cloud Computing”, Tech. Report 2009.

3. [Chen_2003] H. Chen, T. Yu and K. Lin. “QCWS: An Implementation of QoS-Capable Multimedia Web Services”, In Proc. of IEEE 5 th Symposium on Multimedia Software Engineering (MSE03), Taiwan, Dec 2003

4. [Giurgiu_2009] Giurgiu, I., Riva, O., Juric, D., Krivulev, I., and Alonso, G ” Calling the Cloud: Enabling Mobile Phones as Interfaces to Cloud Applications” In Proceedings of the 10th ACM/IFIP/USENIX international Conference on Middleware (Urbana, Illinois, November 30 - December 04, 2009).

5. [Huang_2007] Huang, Y. and Venkatasubramanian, N. “ Supporting Mobile Multimedia Applications in MAP Grid ” In Proceedings of the 2007 international Conference on Wireless Communications and Mobile Computing (Honolulu, Hawaii, USA, August 12 - 16, 2007).

Page 69: Mobile Cloud Computing: Big Picture

69

6. [Huang_2005] Huang, Y., Mohapatra, S., and Venkatasubramanian, N ”An Energy-Efficient Middleware for Supporting Multimedia Services in Mobile Grid Environments” In Proceedings of the international Conference on information Technology: Coding and Computing (Itcc'05) - Volume II - Volume 02 (April 04 - 06, 2005).

7. [Huang_2002] Y. Huang, N. Venkatasubramanian, "QoS-Based Resource Discovery in Intermittently Available Environments," pp.50, 11th IEEE International Symposium on High Performance Distributed Computing , 2002.

8. [IBM], "WSLA Web Service Level Agreement“ http://www.research.ibm.com/wsla/

9. [Ko_2008] Ko, J. M., Kim, C. O., and Kwon, “Quality-of-Service Oriented Web Service Composition Algorithm and Planning Architecture”. J. Syst. Softw (Nov. 2008).

10. [Mell_2009] P. Mell, T. Grance, "The NIST Definition of Cloud Computing", Version .15, Oct 2009.

References (cont.)

Page 70: Mobile Cloud Computing: Big Picture

70

11.[Mabrouk_2009]N. Mabrouk, S. Beauche, E. Kuznetsova, N. Georgantas, and Issarny “ QoS-Aware Service Composition in Dynamic Service Oriented Environments ” In Proceedings of the 10th ACM/IFIP/USENIX International Conference on Middleware (Middleware '09).

12.[Rahimi_2008] M. R. Rahimi, J. Hengmeechai, N. Sarshar “Ubiquitous Application of Mobile Phones for Getting Information from Barcode Picture”, in the iCORE2008, Edmonton, Canada.

13.[Satyanarayanan_2001] Satyanarayanan, M. "Pervasive Computing: Vision and Challenges“ IEEE Personal Communications, August 2001.

14.[Satyanarayanan_2009] Satyanarayanan, M., Bahl, P., Caceres, R., and Davies, N. 2009. “The Case for VM-Based Cloudlets in Mobile Computing” IEEE Pervasive Computing 8, 4 (Oct. 2009), p. 14-23.

15.[Zeng_2003] Zeng, L., Benatallah, B., Dumas, M., Kalagnanam, J., and Sheng, Q. Z. 2003. “Quality Driven Web Services Composition”. In Proceedings of the 12th international Conference on World Wide Web (Budapest, Hungary, May 20 - 24, 2003).

References (cont.)