MOBILE APPLICATIONS AND CLOUD COMPUTING
Roberto Beraldi
MOBILE APPLICATIONS AND CLOUD COMPUTING Roberto Beraldi Course - - PowerPoint PPT Presentation
MOBILE APPLICATIONS AND CLOUD COMPUTING Roberto Beraldi Course Outline 6 CFUs Topics: Mobile application programming (Android) Cloud computing To pass the exam: Individual working and documented application Answer to
Roberto Beraldi
Language Run-time support Development Protocols REST
INTERNET Mobile cellular Networks, wi-fi Telephone network
space, virtual machine, sw modules, etc..)
is possible
QR-code QR-reader Internet URI
Same applies to books, newspapers, encyclopedia, etc.
Cloud
‘backend’
(CPU, storage, DB) using RPC- like calls … but cloud is more than this (see later)…
req reply
req reply
Cloud real time data on transportation available from ATAC via XML-RPC
http://www.agenziamobilita.roma.it/progetti/open-data/ http://www.agenziamobilita.roma.it/it/progetti/open-data/api-real-time.html
code offloading computation and result
cloudlet (nearby resources)
*from: Transient Clouds: Assignment and Collaborative Execution of Tasks on Mobile Devices. Terry Penner et al. Globecom 2014
(*)Collaborative Mobile-To-Mobile Computation Offloading, Beraldi et al., 3rd International Workshop on Collaborative Cloud (CollabCloud 2014), Miami October 2014
Distributed System Distributed applications
run on
Resources
virtualizes
Operating System HW device CPU Local Communication
Higher abstractions :
controlling SW, which is ‘embedded’, hard wired)
external events (interrupts)
‘controlled’
Memory Socket Socket OS C M D Comm Remote Protocol (i.e. HTTP)
SW SW
Wire protocol Computer Computer Application
SW A SW B
Wire Protocol
HTTP OTHER
Application layer Middleware layer / run-tine support Operating System HW
be displayed
(that can run on a mobile device, for example)
e.g., javaScript, or any language
http://game.org/ttt.php?move=7
HTML Put an X at position 7
Client Server
HTTP HTML
User Agent
mod_php
TCP/IP connection 3306,…
Client Server
HTTP HTML
Embedded Objects
User Agent
mod_php
TCP/IP connection 3306,…
Client Server
HTTP HTML
+JS
User Agent
mod_php
TCP/IP connection 3306,…
Web API init
current state
new state Interface (remote functions) backend front end
WEB-API INRTENET Client Application A Web API allows to design and develop an application that exploits software modules accessed via Internet via a simple wire protocol
User Service Provider Application
4.send token acess and get info 1.register the application
Programmatic Service Access (many methods) Web URL (standard HTTP methods)
web brower
HTTP
Application
HTTP
Rest,XML-RPC,etc
(Web API)
Provide A Provider B … API WEB CLIENT s=A.methodName(par1) … z=B.methodName(s,par2)
Client Server Web API
Server Web API … JSON-RPC Server Web API AJAX Python ..
HTTP
(e.g.,dynamic pages Php) WEB API XML-RPC SOAP
WEB-API Client Application (Technology A) Client Application (Technology B) Client Application (Technology C) ….
iPhone iPad Windows Linux MAC
.mp3 .avi .jpg
Freemium business model REST / JSON calls