Mobile Middleware Course. Mobile Platforms and Middleware. Sasu Tarkoma

Similar documents
Mobile Middleware Course. Introduction and Overview Sasu Tarkoma

Mobile Platforms and Application Development. Prof. Sasu Tarkoma

Contents. Mobile Middleware Course. Introduction and Overview Sasu Tarkoma. Lecture Outline. Course Book. Mobile Evolution.

Mobile development initiation

T Mobile Systems Programming (5 cr)

Mobile Middleware Course. Mobile Platforms and Middleware. Sasu Tarkoma

Open Mobile Platforms. EE 392I, Lecture-6 May 4 th, 2010

Software Development for Mobile Devices

Mobile Computing. Juha-Matti Liukkonen, Nov 17, 2010

INTERNATIONAL JOURNAL OF PURE AND APPLIED RESEARCH IN ENGINEERING AND TECHNOLOGY

Introduction. Distributed Systems IT332

Overlay and P2P Networks. Introduction and unstructured networks. Prof. Sasu Tarkoma

Distributed Systems COMP 212. Lecture 18 Othon Michail

3C05 - Advanced Software Engineering Thursday, April 29, 2004

Introduction to Worklight Integration IBM Corporation

Mobile Devices prioritize User Experience

Developing Enterprise Cloud Solutions with Azure

Mobile Middleware Course. Mobile Platforms Sasu Tarkoma

EMBEDDED SYSTEMS AND MOBILE SYSTEMS

Tips and Tricks: Designing low power Native and WebApps. Harita Chilukuri and Abhishek Dhanotia

A1. Technical methodology

Embedded Software: Its Growing Influence on the Hardware world

In(sta)Security: Managing the BYOD Risk. Davi Ottenheimer flyingpenguin

Extending Enterprise Applications to Mobile - Key Considerations. Zensar Technologies Sep 2011

Secure Storage and Protecting Data at Rest

Announcements. me your survey: See the Announcements page. Today. Reading. Take a break around 10:15am. Ack: Some figures are from Coulouris

Mobile Application Development. Introduction. Dr. Christelle Scharff Pace University, USA

Kony MobileFabric. Release Notes. On-Premises. Release 6.5. Document Relevance and Accuracy

Android Overview. Francesco Mercaldo, PhD

Porting of Real-Time Publish-Subscribe Middleware to Android

GPS AND MOBILE HANDSETS

Lecture 3 MOBILE PLATFORM SECURITY

Porting mobile web application engine to the Android platform

Introduction to Distributed Systems (DS)

SMARTPHONE MARKETS AND TECHNOLOGIES

In the Driver s Seat

Now SMS/MMS Android Modem Quick Start Guide

Broad Objectives/Outcomes of the course

Mobile and Social Computing

Vortex Whitepaper. Intelligent Data Sharing for the Business-Critical Internet of Things. Version 1.1 June 2014 Angelo Corsaro Ph.D.

february 2013 part 1 of 3

Copyright

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

TechNote AltitudeCDN Multicast+ and OmniCache Support for Citrix

Service Mesh and Microservices Networking

AdMob Mobile Metrics Report

Requirements for TINA Platform towards Information Sharing Business. Long-term Trend of Telephone Business

5G and Licensed/Unlicensed Convergence

CROSS PLATFORM APPLICATION DEVELOPMENT WITH COMPATIBLE GUI SOLUTIONS

Smartphone as a Road Sensor. Mark Shtern York University Adaptive System Research Lab

02 - Distributed Systems

Architectures for Carrier Network Evolution

Mobile Application Development Concept

ANDROID NATIVE APP: INTRODUCTION TO ANDROID. Roberto Beraldi

RapidIO.org Update.

Cycle Sharing Systems

HTML5 Mobile App Development

References. K. Sohraby, D. Minoli, and T. Znati. Wireless Sensor Networks: Technology, Protocols, and

Nokia for developers. Alexey Kokin. Developer Relations

Testing & Assuring Mobile End User Experience Before Production Neotys

Mobile Internet Devices and the Cloud

Lesson 1 Key-Terms Meanings: Web Connectivity of Devices and Devices Network

Cisco Cloud Strategy. Uwe Müller. Leader PreSales Cloud & Datacenter Germany

Ch 1: The Mobile Risk Ecosystem. CNIT 128: Hacking Mobile Devices. Updated

Developing with the Cloud

Industry-leading Application PaaS Platform

1 Introduction Requirements Architecture Feature List... 3

Introduction of Web-based Signage JS Player and proposal of APIs

Airplane mode Android app application Back key bandwidth

Xytech MediaPulse Equipment Guidelines (Version 8 and Sky)

How to Secure ipads, Tablets and Android Devices for Corporate Use. John Masserini CISO Dow Jones

Current Challenges on SDN Research

IJRDTM Kailash ISBN No Vol.17 Issue

MOBILE COMPUTING Unit V

Understanding mobile programming and applications

CrossMount MediaTek White Paper April2015

Next Generation Enterprise Solutions from ARM

Copyright

Introduction to Distributed Systems (DS)

Mobile Cloud Computing: Issues, Challenges and Future Trends

Embedded HW/SW Co-Development

Xytech MediaPulse Equipment Guidelines (Version 8 and Sky)

Google on BeyondCorp: Empowering employees with security for the cloud era

User Manual. Mobile Viewer Mobile Manager Software (MMS) 1 st Edition : 10 Jan nd Edition : 31 Mar rd Edition : 20 May 2010

Developing a Comprehensive Mobile Test Strategy STC Analyst Quality Assurance. inautix Technologies

The IBM MobileFirst Platform

Developing corporate mobile applications. An alternative approach to native development

Video recorders Series DH

Copyright 2014, Oracle and/or its affiliates. All rights reserved.

TAMZ. Department of Computer Science VŠB-Technical University of Ostrava

WebSphere Puts Business In Motion. Put People In Motion With Mobile Apps

02 - Distributed Systems

MOBILE DEVELOPER GUIDANCE

FlexiNet 2.1 Roundup. Richard Hayton ANSA Consortium

AirKey release notes, 19 June 2018

Architecting Microsoft Azure Solutions (proposed exam 535)

Mobile Device Architecture CS 4720 Mobile Application Development

1 Technical methodology

F5 comprehensive protection against application attacks. Jakub Sumpich Territory Manager Eastern Europe

Innovation Technology for Future Convergence Network

Transcription:

Mobile Middleware Course Mobile Platforms and Middleware Sasu Tarkoma

Role of Software and Algorithms Software has an increasingly important role in mobile devices Increase in device capabilities Interaction with sensors and other devices Integration with the Web and cloud Applications and services Development processes Testing of mobile sw Deployment and management

Smartphone Software APPLICATION APPLICATION FRAMEWORK AND COMMON APIs Cloud integration Context awareness File System Networking Media and Input Security LIBRARIES RUNTIME OS and drivers

Applications Middleware provides various Middleware transparencies (HW, OS, location, fault,..) for apps. Transport Layer APIs (TCP/UDP) for: RPC, messaging, transactions, session management, storage, directories, trading, etc. Networking Layer (IP) Underlying network (link layer, physical)

The Hourglass diverse applications divergence transport layer (TCP/IP) convergence diverse physical layers

Mobile Platforms Collections of central services and libraries with both reactive and proactive functions APIs typically logically centralized Distributed between elements of the environment Multi-tier client-server Peer-to-peer Hybrids The platform running on the mobile terminal and the characteristics of the device determine how service is rendered for the end user

Wireless and Cloud Wireless hop is the limiting factor Bandwidth, connectivity, reachability, tail energy, costs Server side scalability can be achieved by using traditional solutions: clusters, caching, geographical distribution, load balancing, data centers Cloud computing Integration, offloading Web apps vs. native apps

Mobile Service Development The mobile landscape is fragmented Heterogeneous device base Many different wireless technologies The situation is challenging for the developer Many APIs Open vs. private APIs Many middleware platforms APIs evolve over time Current challenge of the industry pertains to improving the development processes

PC World Mobile World Idea Idea SW-Design SW-DesignX SW-DesignY Implementation Implementation OS X Implementation OS Y Build Build Device A Build Device B Build Device C Build Device D Build Device E Test Test Device A Test Device A Test Device C Test Device D Test Device E Deployment Operation Deployment A Deployment Downloading B Deployment A Deployment Downloading B Deployment Downloading B Operation Operation Operation Operation Operation

Introduction to Platforms Mobile middleware aims to support the development, deployment, and execution of distributed applications in the heterogeneous and dynamic mobile environment. The goals for mobile middleware include adaptability support, fault-tolerance, heterogeneity, scalability, and contextawareness. The industry solution to these challenges has been to create middleware platforms. A platform collects frequently used services and APIs under a coherent unified framework.

Platforms 2009 Java Micro Edition (Java ME) ios Symbian and Series 60 Windows Mobile Linux Maemo (MeeGo) Android BREW WAP 2012 ios Android Windows Phone 8 HTML5 web apps and Firefox OS 2014 Sensing and Internet of Things platforms

Android Linux ios FireFox OS Linux Windows Phone 8 Development Java, native code with JNI and C/C++ Objective-C Javascript ant HTML5 C# and.net, various Network features Basic APIs: Bluetooth, WiFi, cellular, NFC Network information Enumerate access points Signal strength Basic APIs: Bluetooth, WiFi, cellular, NFC Network information No (only for preinstalled applications) Basic APIs: Bluetooth, WiFi, cellular, NFC Network information Set connection preferences Background processing Yes (services) Task based multitasking since version 4 No (planned) Multitasking API Push notification Yes (Google Cloud Messaging) Yes (ios Push Notification) Yes (Firefox Push Notification) Yes (Microsoft Push Notification Service) Energy and power monitoring Battery status Monitoring since 3.0 Battery status Battery status HTML 5 Yes Yes Yes Yes Open Source Yes No Yes No 3rd party application installation Certificate, Google Play Certificate, Apple AppStore Certificate, app stores and web sites Certificate, Windows Phone Store

Context awareness Sensing Multitasking Applications Mobile OS and Platform Wireless connectivity Feature phone Smartphone Application developer OS provider / device manufacturer Application developer OS provider / device manufacturer Telecom operator Telecom equipment manufacturer Device manufacturer End user

Application Trends WP8 ios Native apps, cloud integration Native apps, cloud integration Potential for Web apps Android Native apps, cloud integration WebOS Web apps with HTML5 Obsolete (open source) Blackberry Native and Web apps

Challenges Fragmentation is a major problem device-level fragmentation standard fragmentation implementation fragmentation Energy consumption Modelling: where is the energy going Optimization: how to improve things Security is also a problem Sandboxed environments and privileged operations require certification Certification is difficult for developers Current trend is towards application stores and more lightweight certification processes No malware for ios, plenty for Android

Current state of the art Communications WiFi and LTE for mobile data WiFi and Bluetooth for local communications (also NFC) Applications More APIs available, cloud integration Fragmentation and control challenges Cloud-based APIs, storage, control functions Cloud offerings from operators and manufacturers Cloud in the access network Mobile traffic Machine-to-machine as a new component in mobile traffic Increasing video component Crowdsourcing

Examples Classical examples WAP Java ME Symbian MAEMO / MeeGo Current Platforms Windows Phone 8 iphone Android Web apps