Mobile Application Development Project

Post on 03-Jan-2022

2 views 0 download

Transcript of Mobile Application Development Project

Mobile Application Development Project MTAT.03.266

Fall 2015

Satish Sriramasatish.srirama@ut.ee

Course Purpose

• Practice the mobile application development• Apply well‐known techniques to develop applications for the mobile devices

• Glance of research at Mobile & Cloud Lab

• https://courses.cs.ut.ee/2015/MADP/fall/

2/14/2014 Satish Srirama 2/26

Questions

• Have you ever programmed for mobile devices?– This course assumes you have experience with at least one mobile technology

– Or you are taking or have taken MTAT.03.262Mobile Application Development course

• Which mobile platforms have you used already?• How comfortable you are with programming?

– Java ? • External APIs?

– Web programming?• Have you heard of cloud computing?

2/14/2014 Satish Srirama 3/26

Related Courses

• MTAT.03.262Mobile Application Development (3 ECTS)– Fri. 14.15 – 18.00, J Liivi 2 ‐ 122

• MTAT.03.280Mobile and Cloud Computing Seminar (3 ECTS)– Wed. 08.15 ‐ 10.00, J. Liivi 2‐ 512 

• MTAT.08.036 Large‐scale Data Processing on the Cloud (3 ECTS) – Wed. 10.15 – 12.00, J. Liivi 2 ‐ 512

• MTAT.08.027 Basics of Cloud Computing (3 ECTS) – Spring 2016

2/14/2014 Satish Srirama 4/26

Grading

• No written exam • Just deliver a project 

–Max 4 persons per group

• Activities– Design the application– Develop using the platform of your choice; Android is preferred

– Deliver the project with detailed reports

2/14/2014 Satish Srirama 5/26

To pass

• One must attend 80% of the sessions• Submission of project report • Final presentation and demonstration • Max 5 min Video which will be uploaded to youtube

• Source code properly managed 

2/14/2014 Satish Srirama 6/26

Grading ‐ progress• Prototype 1 (20%)

– Presentation (5%)– Progress (10%)– Punctuality (5%)

• Prototype 2 (20%)– Split same as Prototype 1

• Final Presentation (60%)– Presentation (10%)– Demo (20%)– Report (10%)– Video (10%)– Managed Source (10%)

• Bonus – People’s Choice (5%)

9/8/2015 Satish Srirama 7/16

Outline

• Mobile Application Development• Introduction to the projects• General discussion and forming groups

2/14/2014 Satish Srirama 8/26

MOBILE APPLICATION DEVELOPMENT

Lecture 1

2/14/2014 Satish Srirama 9

2/14/2014

[Tomi T Ahonen]

Satish Srirama 10

Popular consumer mobile applications

• Location‐based services (LBSs)– Deliver services to users based on his location

• Mobile social networking–Most popular social networking platforms have apps for mobiles

• Mobile commerce– An extension of e‐commerce

• Mobile payment– Near field communication (NFC) payment

2/14/2014 Satish Srirama 11/26

Popular consumer mobile applications ‐ continued

• Context‐aware services– Context means person's interests, history, environment, connections, preferences etc.

– Proactively serve up the most appropriate content, product or service

• Mobile instant messaging (MIM)– Skype for mobiles

• Mobile e‐mail• Mobile video

2/14/2014 Satish Srirama 12/26

Variety of languages and platforms to choose from

2/14/2014http://en.wikipedia.org/wiki/Mobile_application_developmenthttp://en.wikipedia.org/wiki/Mobile_operating_systemSatish Srirama 13/26

Popular platforms – Market share

9/8/2015

http://en.wikipedia.org/wiki/Mobile_operating_system

Satish Srirama 14/16

The devices we use

2/14/2014

http://mc.cs.ut.ee

Satish Srirama 15/26

GENERAL TOPICS OF INTEREST

2/14/2014 Satish Srirama 16

Mobile Web Services

• Provisioning of services from the smart phones

• Invocation of web services from smart phones• Mobile web service discovery• Addressing mobiles in 3G/4G networks• Push notification mechanisms• Mobile positioning 

– Indoor and Outdoor

2/14/2014{srirama, chang, liyanage}@ut.ee, 

Satish Srirama 17/26

Mobile Cloud Computing

• One can do interesting things on mobiles directly– Today’s mobiles are far more capable–We can even provide services from smart phones

• However, some applications need to offload certain activities to servers– Processing sensor data 

• Resource‐intensive processing on the cloud – To enrich the functionality of mobile applications

2/14/2014 Satish Srirama 18/26

Mobile Cloud Access Schemes

Delegation Code Offloading

MCM

{srirama, chang}@ut.ee2/14/2014

[Flores & Srirama, JSS 2014]

Satish Srirama 19/26

Code offloading

• Decision making–When is it ideal to offload a task from mobile to cloud?

– Fuzzy logic– Linear Programming 

• We also think the decision making should be a continuous learning process–Machine learning 

{srirama}@ut.ee

2/14/2014 Satish Srirama 20/26

Internet of Things

• Internet of Things (IoT) represents a cyber‐physical world that interconnects physical things to the Internet. Ideally, IoT “allows people and things to be connected Anytime, Anyplace, with Anything and Anyone, ideally using Any path/network and Any service” —(Vermesan et al.)

• Cisco System predicts that in the year 2020, 50 billion things will be connected to the Internet. (Bradley et al. 2013)

• Gartner predicts IoT will bring a total economic value‐add of $1.9 trillion by 20201

1 https://kemptechnologies.com/white‐papers/designing‐application‐centric‐network‐19‐trillion‐internet‐things‐economy/

Research Roadmap

Energy‐Efficient and Cost‐Efficient Connected Things

Reliable Adaptive Middleware

Big Data Acquisition & Analytics

Domain SpecificService

Provisioning

• Healthcare; • Environmental Monitoring;• Real‐time Sensing; etc.

• Elastic Cloud Processing;• MapReduce

• Service‐Oriented Computing;

• Process Management;

• Mobile Computing;• Wireless Sensor &

Actuator Network

Federated Grid System Architecture for IoT

THINGS

THINGS

Grid Computing Grid ComputingDatabase Servers Database Servers

Mediators Mediators

Proxy Proxy

ESB ESB

Research Challenges

Atomic Service

Composite Service

Intermediate Node

Embedded Service

Edge Node

Large Scale Federated Service Discovery

Autonomous —• Proximal Service 

Discovery;• Opportunistic 

Network;• Device‐to‐Device;• Machine‐to‐Machine;

Discovery Things

Adaptability Compensability / SLA

Interoperability Self‐organized / Self‐governable

Scalability Reliability / QoS

Connectivity Energy‐efficiency / Cost‐efficiency

Discoverability Self‐manageability / Self‐configuration

Mobility / Accessibility

Self‐healing / Fault tolerant

Management

Back‐end

 ( Clou

d )

Fron

t‐en

d

{srirama, chang}@ut.ee

WE ALWAYS WELCOME NEW IDEAS!email: srirama@ut.ee

?

2/14/2014

?

Satish Srirama 25

Course Schedule

• Today we introduce you the projects• Lecture 2 (15.09)

– Second meeting to finalize the topics• Lecture 3 (22.09)

– Deadline for choosing a project– Presentation by students about their topics– Deliver a preliminary report of the project

• Meaningful report explaining (architecture, design, similar solutions etc.) 

• Remaining schedule will be notified later

2/14/2014 Satish Srirama 26/26

Project selection

• Projects are available at https://courses.cs.ut.ee/2015/MADP/fall/Main/Projects

• Responsible persons– Satish Srirama (srirama AT ut DOT ee)– Chii Chang (chang AT ut DOT ee)–Mohan Liyanage (liyanage AT ut DOT ee)

2/14/2014 Satish Srirama 27/26

THANK YOUsrirama@ut.ee

2/14/2014 Satish Srirama 28