MOBILE ARCHITECTURE FOR DYNAMIC GENERATION AND SCALABLE DISTRIBUTION OF SENSOR-BASED APPLICATIONS



Similar documents
COPYRIGHTED MATERIAL. Chapter 1: Introduction

55014-Upgrading Your Development Skills to SharePoint 2013

Testing & Assuring Mobile End User Experience Before Production. Neotys

Smartphone Enterprise Application Integration

MOBILIZING ORACLE APPLICATIONS ERP. An Approach for Building Scalable Mobility Solutions. A RapidValue Solutions Whitepaper

ios SDK possibilities & limitations

Upgrading Your Development Skills to SharePoint 2013 Course 55014A; 5 Days, Instructor-led

Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD

Mobile Application Development

Best Practices in Enterprise Smartphone Development

SaaS-Based Employee Benefits Enrollment System

Middleware- Driven Mobile Applications

Mobile Application Development

OpenEdge and Mobile Applications

Cisco Enterprise Mobility Services Platform

Big Data for Better Innovation. Professor Yike Guo Director, Data Science Institute Imperial College London

Charith Pereral, Arkady Zaslavsky, Peter Christen, Ali Salehi and Dimitrios Georgakopoulos (IEEE 2012) Presented By- Anusha Sekar

ORACLE ADF MOBILE DATA SHEET

Fast Innovation requires Fast IT

ORACLE MOBILE APPLICATION FRAMEWORK DATA SHEET

Ensuring the security of your mobile business intelligence

Skynax. Mobility Management System. System Manual

What s New in VMware vsphere 5.1 VMware vcenter Server

DESIGN OF A PLATFORM OF VIRTUAL SERVICE CONTAINERS FOR SERVICE ORIENTED CLOUD COMPUTING. Carlos de Alfonso Andrés García Vicente Hernández

PEGA MOBILITY A PEGA PLATFORM WHITEPAPER

Junos Space for Android: Manage Your Network on the Go

Best Practices: Extending Enterprise Applications to Mobile Devices

Single Sign On. SSO & ID Management for Web and Mobile Applications

Horizontal IoT Application Development using Semantic Web Technologies

APPENDIX B1 - FUNCTIONALITY AND INTEGRATION REQUIREMENTS RESPONSE FORM FOR A COUNTY HOSTED SOLUTION

Software Engineering II

Donky Technical Overview

CHAPTER 7 SUMMARY AND CONCLUSION

Developing Mapping Applications with ArcGIS Runtime SDK for Windows Mobile. Jay Chen Justin Colville

Short Paper: Enabling Lightweight Semantic Sensor Networks on Android Devices

User Manual for Version Mobile Device Management (MDM) User Manual

Building native mobile apps for Digital Factory

Mobile Application Platform

Module Title: Software Development A: Mobile Application Development

Enterprise Mobile App Management Essentials. Presented by Ryan Hope and John Nielsen

Spring 2011 Conference Sandanski, May 13th 15th 2011 Oracle SOA Suite 11g Rapid service integration and process automation with a no-coding approach

A framework for Itinerary Personalization in Cultural Tourism of Smart Cities

Video Collaboration & Application Sharing Product Overview

Enterpise Mobility Lexicon & Terminology

2X SecureRemoteDesktop. Version 1.1

DDS-Enabled Cloud Management Support for Fast Task Offloading

Mr. Apichon Witayangkurn Department of Civil Engineering The University of Tokyo

Apigee Edge API Services Manage, scale, secure, and build APIs and apps

Presents. WITSML Solutions For Your Business

Six ways to accelerate Android mobile application development

Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems

Securely. Mobilize Any Business Application. Rapidly. The Challenge KEY BENEFITS

In the pursuit of becoming smart

Mobile Cloud Middleware: A New Service for Mobile Users

Sisense. Product Highlights.

Self-Service Business Intelligence

Integrating Mobile apps with your Enterprise

WAITER: A Wearable Personal Healthcare and Emergency Aid System

Huawei One Net Campus Network Solution

WEB, HYBRID, NATIVE EXPLAINED CRAIG ISAKSON. June 2013 MOBILE ENGINEERING LEAD / SOFTWARE ENGINEER

3D web visualization of huge CityGML models

Software AG TechEd 2015 User Conference Mobile Enabler for Natural

Assignment # 1 (Cloud Computing Security)

Advanced TIBCO Monitoring When Your Business Relies on TIBCO

Collaborative Open Market to Place Objects at your Service

24-Hour Road Service Mobile Apps

Building Apps for iphone and ipad. Presented by Ryan Hope, Sumeet Singh

Mobile Field Service Engineer Application

Resco Mobile CRM Vision

A Standards-based Mobile Application IdM Architecture

Experimental Comparison of Hybrid and Native Applications for Mobile Systems

Dell World Software User Forum 2013

AN INTEGRATION APPROACH FOR THE STATISTICAL INFORMATION SYSTEM OF ISTAT USING SDMX STANDARDS

Open Directory. Apple s standards-based directory and network authentication services architecture. Features

Pervasive Software + NetSuite = Seamless Cloud Business Processes

Mitra Innovation Leverages WSO2's Open Source Middleware to Build BIM Exchange Platform

Deploy. Friction-free self-service BI solutions for everyone Scalable analytics on a modern architecture

LogicNets Expert Decision Support Automation. Excel at anything Expertise without limits

Troubleshooting BlackBerry Enterprise Service 10 version Instructor Manual

A Survey Study on Monitoring Service for Grid

Modern Mobile Resource Management Solutions

1. Introduction Activation of Mobile Device Management How Endpoint Protector MDM Works... 5

Here to take you beyond Mobile Application development using Android Course details

Mini Project - Phase 3 Connexus Mobile App (Android)

Machine Data Analytics with Sumo Logic

Distributed systems. Distributed Systems Architectures

SmartContacts: A Large Scale Social Context Service Discovery System

Programming the Internet of Things

How To Develop An Open Play Context Framework For Android (For Android)

CARRIOTS TECHNICAL PRESENTATION

Oracle Mobile Solutions. Filip Huysmans Contribute Group

How To Make A System Context Aware

Distributed Database for Environmental Data Integration

Present and Act Upon. Register. Consume. Stream Analytics. Event Hubs. Field Gateway. Applications Cloud Gateway. Legacy IoT (custom protocols)

MBAM Self-Help Portals

QAME Support for Policy-Based Management of Country-wide Networks

Mobile App Framework For any Website

Mission-Critical Database with Real-Time Search for Big Data

Configuration Guide. BlackBerry Enterprise Service 12. Version 12.0

Operational Analytics for APO, powered by SAP HANA. Eric Simonson Solution Management SAP Labs

Transcription:

MOBILE ARCHITECTURE FOR DYNAMIC GENERATION AND SCALABLE DISTRIBUTION OF SENSOR-BASED APPLICATIONS Marco Picone, Marco Muro, Vincenzo Micelli, Michele Amoretti, Francesco Zanichelli Distributed Systems Group (http://dsg.ce.unipr.it) RimLab (http://rimlab.ce.unipr.it/) Università degli Studi di Parma, Parma, Italy Mobilware 2011 - June 22-24, 2011 - London, UK

OUTLINE Introduction Proposed Architecture - Mobile Platform - Service Platform QoS and QoI Management Analyzed Scenarios Prototype Conclusion & Future Work

INTRODUCTION The widespread and ubiquitous nature of mobile devices makes them attractive as providers of information collected from their rich equipment of sensors (camera, microphone, accelerometers, compass, GPS), and also from external sensors (placed on persons, or in the environment). We envision large-scale sensor networks that use mobile devices as raw data sources, but also aggregated information producers - merging raw data coming from sensors distributed in the environment. With the growing of the mobile application market, new solutions for software distribution have been recently introduced, with the dominance of online application stores (such as AppStore and Android Market). These virtual marketplaces have solved many problems to developers and common users. If on one hand this approach allows for widespread distribution of applications, on the other hand it appears to quite unsuitable for highly dynamic scenarios where application needs may change very frequently within a week or even the same day, according to user credentials, location or purposes.

PROPOSED ARCHITECTURE Mobile Device-Centric Approach for sensor-based distributed application Mobile devices allows to : Collect a huge amount of data from local and external inputs/sensors. Mobile Engine Share collected data within the network through a cloud service. Dynamically compose the user interface according to the service nature and user profile. Simplify the application update managing new services entirely remotely though the mobile engine. User Interface Generator Sensor Communication Layer

PROPOSED ARCHITECTURE Mobile device-centric approach has a number of advantages over the centralized approach for sensor data collecting: Energy efficiency: In a mobile user scenario sensors will be storing data locally and provide it at request to mobile collectors. The data can be sent directly when the appropriate connection is available or in a second moment according to user preferences reducing environment sensors battery. Improved availability of sensor networks: it allows to access remote and disconnected parts. In this way some parts of the network could be just partially connected and central data collection could be in any way possible. Ubiquity. Users can query the network and collect data from any location in sensor network. User interaction may contribute to enhance the quality and effectiveness of the application enriching collected data before they are shared within the network.

Push Notification Cloud Knowledge Mobile UI Specifications Definition DB Engine Web Data Exchange Server Mobile Devices Communication Layer External Modules Communication Layer EM1 EM2 EM3

PROPOSED ARCHITECTURE Mobile Device (MD): Is the principal entity of the system, interacting with external sensors to collect data, exchanging them with the cloud and allowing user to enter extra information. The Cloud: Provides personalized environments with services for storing information generated by MDs, as well as mobile Web user interfaces to view collected and analyzed data. MD Communication Layer: Allows the communication between the Cloud and the MD in terms of login procedure, data exchange, UI specification transmission and notification pushing to the device. EM Communication Layer: Allows the communication between the Cloud and EMs to transmit and receive data.

MOBILE PLATFORM On the mobile side there is the necessity to communicate with different types of external sensors and to generate a rich user interface to collect user input. For this reasons there is the need to develop the mobile engine using native programming languages - such as Java, C++ or Objective-C - in order to provide the capabilities to: - generate all user interface from a standardized UI Specification Language. - discover and exchange data with internal and external sensors. This approach reduce the complexity of the mobile platform dissemination and update process for the UI. (App should be downloaded once) Designed elements are: Mobile Engine, Sensor Communication Layer, Service Communication Layer.

User Interface Read User Inputs Generate Mobile Engine Read Sensor s Info & Data Send Data Read & Parse WSDL File Sensor Communication Layer WS Communication

SERVICE PLATFORM Semantic Service Engine: The core of the service platform, managing all available modules in order to provide different types of services to final users. Database Communication Layer: A middleware for storing and retrieving data and information from system databases. Service Ontology: A Web 3.0 knowledge base encompassing all the characteristics of each service, user, sensor and inputs. Client Communication Layer: A middleware that enables mobile devices to connect transmit and receive data. Security Layer: A middleware that provides protocols for securing the communication between service platform and mobile clients. Web Interface Builder: A component that builds dynamic Web pages forshowing real-time or cached data in personalized fashion, according to user needs, profile and credentials.

Web Interface Provide WS Engine Security Layer Read & Store Data Read Send and Receive Data Database Communication Service Knowledge (WSDL) Client Communication

UI DEFINITION Service: Defines a specific functionality with different UI sections and a list of required sensors with the following parameters. (Name, Storing Type, Storing Location). - UI-Section: Defines a single section of service s UI allowing the designer to divide data entry in different slices, that may be either mandatory or not, and may contain labels and figures to show useful information, or input fields. (Name, Description, Mandatory) Input: Represent a generic input for the data entry. (Name, Type, Mandatory) Label: Represent a text label with an associated image. (Name, Text, Image) Sensor List: Contains the list of sensors required by the service - Sensor: Type, Mandatory, Working Frequency, Reading Limit Type (TIME, SAMPLE), Reading Limit Value

QOS & QOI MANAGEMENT In terms of QoS each service may specify a minimum guaranteed quality of service, defined in terms of transmission rate, packets error, computational power, connection type, etc. During the connection establishment phase, the server could ask to the client to check if it is able to send data with the requested QoS. This kind of test could be also repeated periodically during the data delivery phase, to identify possible lowering of performance and QoS. Another important aspect we took into account is the quality of information (QoI), that refers to the ability to figure out if available information coming from sensors is fit-for-use for a particular service. - QoI management provides mechanisms for investigating new task admission and resource utilization, for controlling the individual QoI pro- vided to new and existing tasks. The QoI can be characterized by a set of quality attributes, such as accuracy, latency, and spatio-temporal relevancy.

WORKFLOW - DATA EXCHANGE Mobile Sensor Management Authentication QoS/QoI Management Service Discovery Web Service User Interface Generation Data Exchange

MOBILE SENSOR MANAGEMENT Local sensors/inputs discovery (GPS, Accelerometers,Compass, etc..) Additional sensors discovery: The user searchs for available external inputs like remote camera, environment sensors, barcode reader, etc... connected through Bluetooth, WiFi, USB cable, etc... Additional sensors pairing: The user selects which external discovered sensor wants to use in his workflow. (This operation can be repeated several time to add or remove external sensors)

SERVICE DISCOVERY 1 WS Service List Request + User Info (Location) 2 3 WSDL file with available services and related requirements Check user s information and location (if necessary) and select from the list of available service those are compatible with user s profile. ( For example a particular service can be only available for client connect from a certain geographic region or for a user that has specific credentials).

USER INTERFACE GENERATION Mobile Engine reads UI specifications and: - Shows the list of available services. - User selects the desired service and the engine: Shows an interface to select the right sensors for the service. If there are more than one sensor of the same type the user can select witch of them must be used. If one or more mandatory sensors are not yet available the engine shows an error message and avoid next interaction. Generates Graphic User Interface for the user s manual input.

DATA EXCHANGE 1 2 WS Starts sending data to the server according to the frequency of user inputs and sensor behaviors. 5 Check server response to show errors or connection status. Send Data (JSON Format) 4 Server Response (JSON Format) QoS/QoI Procedure 3 Read received information and store them in the appropriate databases according to the right service and data type. Randomly and according to the type of selected service the server can send a request to check the connection status of the client in order to keep the requested QoS/ QoI.

WORKFLOW - DATA VISUALIZATION Data Visualization is provided through a Web Interface using specific CSS sheet in order to be customized for each mobile platform and traditional PCs. WS Also for data visualization there will be an authentication layer to show the right content only to users with the right credentials.

SCENARIOS Car Tracking - Geo Localization - Engine monitoring - Brake status - Street status Environment Monitoring - Weather - Chemical - Biological - Radiological - Populations e-health - Non-invasive parameters diagnostics - Patient s data entry - Fall detection - Patient Behaviors monitoring - Body sensors interaction Industrial - Production line monitoring - Machine status - Workers feedbacks

production line feedbacks from workers sensor sensor wine bottlers sensor new sensor Mobile Engine water bottlers dynamic data External Modules sensor discovery & pair synchronization when can retrieve and analyze peers connection is available data

feedbacks from the patient AFO Mobile Engine discovery & pair external sensors dynamic data synchronization when connection is available External Actors and Modules can retrieve and analyze data

IOS-PROTOTYPE

IOS-PROTOTYPE

CONCLUSION & FUTURE WORK In this paper we have illustrated a novel architecture for agile development and deployment of mobile, sensor-based applications. The distinctive features are: - The mobile device-centric approach - Mobile Engine that allows to : Dynamically generate User Interface according to service provider specification. Interact with available sensors (internal/external). Simplify the application update and dissemination. As future work, we are going to : - Complete the development of the Service Platform. - Improving the semantic service engine develop versions of the Mobile Engine for the Android platform. - Build the first ehealth full prototype.

Q&A?