cloud computing and android

35
Presentation Presentation on on Major Project Major Project Submitted by: Mohit Singh Roll no: 104507 M.Tech 2 nd Year

Upload: mohit-singh

Post on 12-May-2015

8.680 views

Category:

Education


1 download

TRANSCRIPT

Page 1: cloud computing and android

Presentation Presentation on on

Major ProjectMajor Project

Submitted by:Mohit SinghRoll no: 104507M.Tech 2nd Year

Page 2: cloud computing and android

Student Oriented Cloud ComputingStudent Oriented Cloud Computing and and

Android Based Application Android Based Application for for

lean mobile computing Systems lean mobile computing Systems

Page 3: cloud computing and android

ObjectiveObjective

The main objective of the project is to develop a Cloud Computing Application for Java program creation, compilation and execution on lean mobile computing systems like smart phones, ipads and netbooks.

Setup a server and deploy the application on the cloud to test it across the range of lean mobile computing systems.

Develop an Android based application for Java program development and using a cloud computing facility to execute the developed Java programs.

Develop Android based application for students.

Page 4: cloud computing and android

Motivation behind ProjectMotivation behind Project

The next generation of open operating systems won’t be on desktops or mainframes but on the small mobile devices we carry every day. The openness of these new environments will lead to new applications and markets and will enable greater integration.

Page 5: cloud computing and android

Aakash (Tablet)Aakash (Tablet)Aakash world's cheapest internet device was conceived under the Human Resources and Development Ministry's National Mission on Education through Information and Communication Technology (NME-ICT) to provide students a device that could be used as an EBook reader, to access online streaming course material and web based research

But there are no applications which can enable the students to develop and execute programs using these tablets.

Page 6: cloud computing and android

Cloud Computing Cloud Computing

Page 7: cloud computing and android

……

Cloud computing provides computation, software, data access, and storage services that do not require end-user knowledge of the physical location and configuration of the system that delivers the services.

Page 8: cloud computing and android

……Cloud Computing is a general term used to describe a new

class of network based computing that takes place over the Internet, basically a step on from Utility.

In other words, this is a collection/group of integrated and networked hardware, software and Internet infrastructure (called a platform).

Using the Internet for communication and transport provides hardware, software and networking services to clients.

These platforms hide the complexity and details of the underlying infrastructure from users and applications by providing very simple graphical interface or API (Applications Programming Interface).

Page 9: cloud computing and android

……

In addition, the platform provides on demand services, that are always on, anywhere, anytime and any place.

Pay for use and as needed, elastic (scale up and down in capacity and functionalities).

The hardware and software services are available to the general public, enterprises, corporations and businesses markets.

Page 10: cloud computing and android

Cloud SummaryCloud Summary

Cloud computing is an umbrella term used to refer to Internet based development and services.

A number of characteristics define cloud data, applications services and infrastructure:◦ Remotely hosted: Services or data are hosted on remote

infrastructure.

◦ Ubiquitous: Services or data are available from anywhere.

◦ Commodified: The result is a utility computing model similar to traditional that of traditional utilities, like gas and electricity - you pay for what you would want!

Page 11: cloud computing and android

Cloud ArchitectureCloud Architecture

Page 12: cloud computing and android

Software as a service (SaaS)

Software as a service , sometimes referred to as "on-demand software," is a software delivery model in which software and its associated data are hosted centrally (typically in the (Internet) cloud) and are typically accessed by users using a thin client, normally using a web browser over the Internet.

SaaS has become a common delivery model for most business applications, including accounting, collaboration, customer relationship management (CRM), enterprise resource planning (ERP), invoicing, human resource management (HRM), content management (CM) and service desk management.

Page 13: cloud computing and android

Platform as a service (PaaS)

Platform as a service (PaaS) is the delivery of a computing platform and solution stack as a service.

PaaS offerings facilitate deployment of applications without the cost and complexity of buying and managing the underlying hardware and software and provisioning hosting capabilities.

PaaS providing all of the facilities required to support the complete life cycle of building and delivering web applications and services entirely available from the Internet

Page 14: cloud computing and android

Infrastructure as a service" (IaaS)Cloud infrastructure services, also known as “Infrastructure as

a service" (IaaS), deliver computer infrastructure – typically a platform virtualization environment – as a service, along with raw (block) storage and networking.

Rather than purchasing servers, software, data-center space or network equipment, clients instead buy those resources as a fully outsourced service.

Suppliers typically bill such services on a utility computing basis; the amount of resources consumed (and therefore the cost) will typically reflect the level of activity.[

Page 15: cloud computing and android

Cloud StorageCloud Storage

Several large Web companies (such as Amazon and Google) are now exploiting the fact that they have data storage capacity that can be hired out to others.

This approach, known as cloud storage allows data stored remotely to be temporarily cached on desktop computers, mobile phones or other Internet-linked devices.

Amazon’s Elastic Compute Cloud (EC2) and Simple Storage Solution (S3) are well known examples.

Page 16: cloud computing and android

Advantages of Cloud ComputingAdvantages of Cloud ComputingLower computer costs Improved performanceReduced software costs Instant software updates Improved document format compatibility.Unlimited storage capacity Increased data reliabilityUniversal document accessLatest version availabilityEasier group collaborationDevice independence

Page 17: cloud computing and android

Disadvantages of Cloud ComputingDisadvantages of Cloud Computing

Requires a constant Internet connectionDoes not work well with low-speed connectionsCan be slowFeatures might be limitedStored data might not be secureStored data can be lostHPC SystemsGeneral Concerns

Page 18: cloud computing and android

AndroidAndroid

Android is a software stack for mobile devices that includes an operating system, middleware and key applications.

Page 19: cloud computing and android

About Android and its featuresAbout Android and its features

Android is an operating system based on Linux with a Java programming interface.

It provides tools, e.g. a compiler, debugger and a device emulator as well as its own Java Virtual machine (Dalvik Virtual Machine - DVM).

Android is created by the Open Handset Alliance which is lead by Google.

Android uses a special virtual machine, e.g. the Dalvik Virtual Machine. Dalvik uses special bytecode. Therefore you cannot run standard Java bytecode on Android.

Android provides a tool "dx" which allows converting Java Class files into "dex" (Dalvik Executable) files.

Page 20: cloud computing and android

……Android applications are packed into an .apk (Android

Package) file by the program "aapt" (Android Asset Packaging Tool) To simplify development Google provides the Android Development Tools (ADT) for Eclipse.

The ADT performs automatically the conversion from class to dex files and creates the apk during deployment.

Page 21: cloud computing and android

……

Android supports 2-D and 3-D graphics using the OpenGL libraries and supports data storage in a SQLite database.

Every Android applications runs in its own process and under its own userid which is generated automatically by the Android system during deployment.

Therefore the application is isolated from other running applications and a misbehaving application cannot easily harm other Android applications.

Page 22: cloud computing and android

FeaturesFeatures

OpenBreaking down BoundariesAll applications are equalFast & Easy development

Page 23: cloud computing and android

Android Framework and ToolsAndroid Framework and Tools

Android Tools include SDK, ADT for eclipse integration support and an emulator.

Let’s discuss them one by one in brief:

Page 24: cloud computing and android

Introduction to Android SDK and ADTIntroduction to Android SDK and ADTfor Eclipsefor Eclipse

The Android SDK archive initially contains only the basic SDK tools. It does not contain an Android platform or any third-party libraries. In fact, it doesn't even have all the tools you need to develop an application.

In order to start developing applications, you must install the Platform-tools and at least one version of the Android platform, using the SDK Manager. Platform-tools contains build tools that are periodically updated to support new features in the Android platform (which is why they are separate from basic SDK tools), including adb, dexdump, and others.

To install Platform-tools, Android platforms and other add-ons, you must have an Internet connection, so if you plan to use the SDK while offline, please make sure to download the necessary components while online. To start the SDK Manager, please execute the program "SDK Manager.exe". From the command-line you can also directly trigger an update by Executing:

tools\Android.bat update sdk

Page 25: cloud computing and android

Dalvik Virtual MachineDalvik Virtual Machine The Dalvik virtual machine is simple Java interpreter machine,

completely optimized for Android platform and which is developed to run on low-end memory mobile devices.

One of the prominent aspects in Dalvik is its capability to run along an application compilation enhancing the runtime performance of the applications.

Dalvik is not exactly, a Java machine, because Dalvik could not read Java code, but consists its own byte code called “dex” and so the executable files compacted using Dalvik holds the file type name '.dex'.

Google states that the credit for Androids successful development goes to Dalvik VM, because this type of virtual machine, delivers a good performance over various stages of an application runtime environment, conserving more battery-power during long run of an application.

Page 26: cloud computing and android

……

Page 27: cloud computing and android

Android ArchitectureAndroid Architecture

Page 28: cloud computing and android

Building Android ApplicationBuilding Android Application

Page 29: cloud computing and android

……

Page 30: cloud computing and android

Components of Android ApplicationComponents of Android Application

ActivityViewsServicesContent Provider IntentsBroadcast Receiver

Page 31: cloud computing and android

……

Page 32: cloud computing and android

……

Page 33: cloud computing and android

Progress TrackProgress Track

Learnt program development for Android and Cloud Computing.Linking Android SDK and ADT plugin with Eclipsedeveloping Android programs and debugging it with both Emulator and Android smart phone.Presently designing the GUI and the other components of the above mentioned application.

Page 34: cloud computing and android

ReferencesReferenceshttp://en.wikipedia.org/wiki/Cloud_computinghttp://www.thinkgrid.com/docs/computing-whitepaper.pdfhttp://www.awsug.com/wp-content/uploads/2008/10/

saas_and_cloud_computing.ppthttp://acet.rdg.ac.uk/~mab/Talks/Clouds-La-Coruna09/Talk.ppthttp://developer.android.com/guide/index.htmlhttp://en.wikipedia.org/wiki/Androidhttp://developer.android.com/resources/tutorials/hello-

world.html

Page 35: cloud computing and android