Programming Models in Pervasive Spaces CNT 5517-5564 Dr. Sumi Helal Computer & Information Science & Engineering Department University of Florida, Gainesville,

Slides:



Advertisements
Similar presentations
Programming Languages for End-User Personalization of Cyber-Physical Systems Presented by, Swathi Krishna Kilari.
Advertisements

Presented by: Thabet Kacem Spring Outline Contributions Introduction Proposed Approach Related Work Reconception of ADLs XTEAM Tool Chain Discussion.
A SLA evaluation Methodology in Service Oriented Architectures V.Casola, A.Mazzeo, N.Mazzocca, M.Rak University of Naples “Federico II”, Italy Second University.
Information Day on Embedded Systems - Call 5 Jens Schumacher The Product Avatar Concept as a Platform for Networked Embedded.
OASIS Reference Model for Service Oriented Architecture 1.0
Fasten the seat belt, here we Go. Home sweet home, where the lights along the corridor flicker.
Programming Models in Pervasive Spaces Part 2 CNT Dr. Sumi Helal & Dr. Eun-Sun Cho Computer & Information Science & Engineering Department University.
Object-Oriented Analysis and Design
ICT 1 “Putting Context in Context: The Role and Design of Context Management in a Mobility and Adaptation Enabling Middleware” Marius Mikalsen Research.
Programming Languages WHY MORE? Wasn’t ONE ENOUGH? Introduction to CS260.
L4-1-S1 UML Overview © M.E. Fayad SJSU -- CmpE Software Architectures Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I.
A First Attempt towards a Logical Model for the PBMS PANDA Meeting, Milano, 18 April 2002 National Technical University of Athens Patterns for Next-Generation.
How can Computer Science contribute to Research Publishing?
Marakas: Decision Support Systems, 2nd Edition © 2003, Prentice-Hall Chapter Chapter 7: Expert Systems and Artificial Intelligence Decision Support.
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and are provided with permission by.
FI-WARE – Future Internet Core Platform FI-WARE Security July 2011 High-level Description.
Agent-Based Acceptability-Oriented Computing International Symposium on Software Reliability Engineering Fast Abstract by Shana Hyvat.
Building Knowledge-Driven DSS and Mining Data
1 FM Overview of Adaptation. 2 FM RAPIDware: Component-Based Design of Adaptive and Dependable Middleware Project Investigators: Philip McKinley, Kurt.
Course Instructor: Aisha Azeem
Software Process and Product Metrics
Cloud Usability Framework
©Ian Sommerville 2004Software Engineering, 7th edition. Chapter 18 Slide 1 Software Reuse.
Katanosh Morovat.   This concept is a formal approach for identifying the rules that encapsulate the structure, constraint, and control of the operation.
Introduction to the Atlas Platform Mobile & Pervasive Computing Laboratory Department of Computer and Information Sciences and Engineering University of.
Patterns for Location and Context-based access control
Topics covered: Memory subsystem CSE243: Introduction to Computer Architecture and Hardware/Software Interface.
Knowledge representation
The Ubiquitous Web as a model to lead our environment to its full potential Juan Ignacio Vazquez, Joseba Abaitua, Diego López de Ipiña W3C Workshop on.
A service-oriented middleware for building context-aware services Center for E-Business Technology Seoul National University Seoul, Korea Tao Gu, Hung.
Linked-data and the Internet of Things Payam Barnaghi Centre for Communication Systems Research University of Surrey March 2012.
A Framework to Evaluate Intelligent Environments Chao Chen Supervisor: Dr. Sumi Helal Mobile & Pervasive Computing Lab CISE Department April 21, 2007.
Design engineering Vilnius The goal of design engineering is to produce a model that exhibits: firmness – a program should not have bugs that inhibit.
updated CmpE 583 Fall 2008 Ontology Integration- 1 CmpE 583- Web Semantics: Theory and Practice ONTOLOGY INTEGRATION Atilla ELÇİ Computer.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Wireless Sensor Network Wireless Sensor Network Based.
Illustrations and Answers for TDT4252 exam, June
Unified Modeling Language* Keng Siau University of Nebraska-Lincoln *Adapted from “Software Architecture and the UML” by Grady Booch.
Modeling Component-based Software Systems with UML 2.0 George T. Edwards Jaiganesh Balasubramanian Arvind S. Krishna Vanderbilt University Nashville, TN.
Cerberus: A Context-Aware Security Scheme for Smart Spaces presented by L.X.Hung u-Security Research Group The First IEEE International Conference.
L6-S1 UML Overview 2003 SJSU -- CmpE Advanced Object-Oriented Analysis & Design Dr. M.E. Fayad, Professor Computer Engineering Department, Room #283I College.
The Atlas Sensor Platform Architecture - Part II CNT Dr. Sumi Helal Computer & Information Science & Engineering Department University of Florida,
Towards a Method For Evaluating Naturalness in Conversational Dialog Systems Victor Hung, Miguel Elvir, Avelino Gonzalez & Ronald DeMara Intelligent Systems.
1 COSC 4406 Software Engineering COSC 4406 Software Engineering Haibin Zhu, Ph.D. Dept. of Computer Science and mathematics, Nipissing University, 100.
Project II Rule Optimizer for the Atlas Reactivity Engine CNT Dr. Sumi Helal Computer & Information Science & Engineering Department University.
Service Discovery Protocols Mobile Computing - CNT Dr. Sumi Helal Professor Computer & Information Science & Engineering Department University.
6. Protocol Standardization for IoT 1.  TCP/IP  HTML and HTTP  The difference between the Internet and the World Wide Web The Internet is the term.
Application Ontology Manager for Hydra IST Ján Hreňo Martin Sarnovský Peter Kostelník TU Košice.
Architecture View Models A model is a complete, simplified description of a system from a particular perspective or viewpoint. There is no single view.
A Context-Driven Programming Model for Pervasive Spaces Hen-I Yang, Jeffrey King, Sumi Helal, Erwin Jansen Pervasive Computing Lab, University of Florida.
INSTRUCTIONAL OBJECTIVES
Getting Started with the Open Services Gateway Initiative (OSGi) CNT 5517 Dr. Sumi Helal, Ph.D. Professor Computer & Information Science & Engineering.
HIT Policy Committee NHIN Workgroup HIE Trust Framework: HIE Trust Framework: Essential Components for Trust April 21, 2010 David Lansky, Chair Farzad.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
© Drexel University Software Engineering Research Group (SERG) 1 The OASIS SOA Reference Model Brian Mitchell.
An Ontology-based Approach to Context Modeling and Reasoning in Pervasive Computing Dejene Ejigu, Marian Scuturici, Lionel Brunie Laboratoire INSA de Lyon,
Introduction to virtual engineering László Horváth Budapest Tech John von Neumann Faculty of Informatics Institute of Intelligent Engineering.
Artificial Intelligence: Research and Collaborative Possibilities a presentation by: Dr. Ernest L. McDuffie, Assistant Professor Department of Computer.
February 19, February 19, 2016February 19, 2016February 19, 2016 Azusa, CA Sheldon X. Liang Ph. D. Software Engineering in CS at APU Azusa Pacific.
Semantic Web in Context Broker Architecture Presented by Harry Chen, Tim Finin, Anupan Joshi At PerCom ‘04 Summarized by Sungchan Park
From Use Cases to Implementation 1. Structural and Behavioral Aspects of Collaborations  Two aspects of Collaborations Structural – specifies the static.
Models of the OASIS SOA Reference Architecture Foundation Ken Laskey Chair, SOA Reference Model Technical Committee 20 March 2013.
Safety-Oriented Programming Model Pervasive Computing Systems are Intimate The failure and unreliability can result in strong feeling of betrayal and frustration.
From Use Cases to Implementation 1. Mapping Requirements Directly to Design and Code  For many, if not most, of our requirements it is relatively easy.
Making meaningful connections
Software Engineering: A Practitioner’s Approach, 6/e Chapter 12 User Interface Design copyright © 1996, 2001, 2005 R.S. Pressman & Associates, Inc.
CSSSPEC6 SOFTWARE DEVELOPMENT WITH QUALITY ASSURANCE
Project II Rule Optimizer for the Atlas Reactivity Engine CNT
Automated Analysis and Code Generation for Domain-Specific Models
Subject Name: SOFTWARE ENGINEERING Subject Code:10IS51
From Use Cases to Implementation
Presentation transcript:

Programming Models in Pervasive Spaces CNT Dr. Sumi Helal Computer & Information Science & Engineering Department University of Florida, Gainesville, FL

Reading Materials 1.H. Yang and A. Helal, "Safety Enhancing Mechanisms for Pervasive Computing Systems in Intelligent Environment", In Proceedings of the Middleware Support for Pervasive Computing Workshop, held in conjunction with IEEE PerCom 2008, Hong Kong, March (pdf)pdf 2.H. Yang, E. Jansen and A. Helal, "A Comparison of Two Programming Models for Pervasive Computing," Proceedings of the Workshop on Ubiquitous Networking and Enablers to Context Aware Services. In conjunction with the IEEE/IPSJ International Symposium on Applications and the Internet (SAINT), Phoenix, Arizona, January (pdf)pdf 3.C. Chen and A. Helal, "Device Integration in SODA using the Device Description Language," Proceedings of the IEEE/IPSJ Symposium on Applications and the Internet, July 2009, Seattle, Washington, USA. 4.Scott de Deugd, Randy Carroll, Kevin E. Kelly, Bill Millett, and Jeffrey Ricker, "SODA: Service-Oriented Device Architecture," IEEE Pervasive Computing, vol. 5, no. 3, 2006, pp. 94-C3. (pdf)pdf 5.R. Bose, A. Helal, V. Sivakumar and S. Lim, "Virtual Sensors for Service Oriented Intelligent Environments," Proceedings of the Third IASTED International Conference on Advances in Computer Science and Technology, Phuket, Thailand, April 2-4, (pdf)pdf

The Need for Programming Models Development with ad-hoc strategy in integrated environment is not scalable Programmability is essential if a full life-cycle of the pervasive space is to be supported Cost of deployment is high without proper programming model, preventing mass real-world deployments Proper programming model can incorporate and enforce critical features such as security, privacy and safety

What is Programmable? User Safety User Desires and Expectations User Concerns and Frustrations User Privacy Space (Environment) Safety Space Rules Human Computer Interface Availability of Service (AoS)

Emerging Models Service Oriented Models Reactive Models Context Driven Models Safety Oriented Models

Safety Perspective Service Oriented Models Safety Oriented Models Minimal Accepted Safety Context Driven Models Expressiveness Mortar & Brick Safety

Service Oriented Model Each sensor, actuator or device in the space is represented by a service –How? (See [3][4]) - Role of standards Software services Service composition into applications, also represented as services Main Gain: –Automatic Integration –Openness –Programmability using well-established model & tools

Automatic Integration (Plug & Play into the Pervasive Space) A joining entity should be able to explore the pervasive space to self-integrate itself as a service and to possibly enable the activation of other composite services A joining entity should be able to contribute meaningful knowledge to the pervasive space to enable powerful programming models. A leaving or failed entity is automatically and cleanly removed from the pervasive space.

Openness (Nov 22, 2007, Silicon Valley, CA: XYZ, Inc. “opens doors” with its SmartKnob product for smart homes) The pervasive space is open and flexible to embrace a variety of entities without any special favor towards particular participants or their underlying technology. Openness via the use of well-established existing standards. Additional “needed” standards are proposed.

Programmability (Visual Studio/eclipse for Pervasive Spaces ) Pervasive Space aware of its sensors, actuators, contexts & applications (goals) Pervasive space able to map itself automatically into a project in an IDE. Program the pervasive space via “logical wiring” within the IDE. Notice IDE is used here as both a development tool and a run-time control and information environment. Different IDE’s for different programmers: –Computer scientist programmers –Domain expert programmers.

SOA Model: Critical Consequence Ease of Integration via SOA Fault-Tolerance due to SOA

Virtual Sensors Sustaining SOA Model in Pervasive Spaces Collection of Sensors Knowledge Service

Virtual Sensors Classification Single Physical Sensor Type of Phenomena Measurement Unit Location.... Knowledge Singleton Virtual Sensor Basic Virtual Sensor Derived Virtual Sensor Singleton Virtual Sensor Physical Sensor

Virtual Sensors Classification Collection of Singleton Virtual Sensors Type of Phenomena Aggregation Formula DQI.... Knowledge Singleton Virtual Sensor Basic Virtual Sensor Derived Virtual Sensor Basic Virtual Sensor

Virtual Sensors Classification Collection of Basic and other Derived Virtual Sensors Type of Phenomena Aggregation Rules Location.... Knowledge Singleton Virtual Sensor Basic Virtual Sensor Derived Virtual Sensor Physical Sensor

Virtual Service Composition User Application Knowledge Base Framework Controller Temperature Sensor (Basic VS) Humidity Sensor (Basic VS) Weather Sensor (Derived VS) select ‘weather’ from location = ‘area51’ area51 area50 area48 area49

Extending Availability Collect similarity statistics to determine groups of sensors exhibiting similar behavior over time When a sensor fails, approximate its readings using other live sensors Decision regarding which live sensor to choose is made using similarity statistics such as Euclidean distance

Measuring Data Quality [5] Data Quality Indicator (DQI) associated with reading from each virtual sensor service Gives a quantitative measure of sensor data quality Takes into account whether sensor readings are originating from live and intended sensors, or are being approximated DQI = 100 * (N C + Σg(t s – T start )W s ) / N s є S F

Comparison of Data Quality Gain in Availability Gain in Reliability Data Quality Threshold

Context-Driven Programming Model A formal framework for contexts and action semantics, based on domain ontology. Capable of evaluating potential actions based on currently active context Capable of defining and detecting conflicting actions Capable of defining and preventing dangerous contexts

Context-Driven Programming Model (cont’d) Simple programming procedure to program the pervasive space –Defines –Mappings of Contexts to Actions –Reporting Less expressive than the SOA model –Limits by the procedure, which follows the model (no time capture), simple logic.

Programming Procedure Design the Context Graph: –Decide what the domains of interest are, and what the contexts of interest within these domains are. Interpret Sensor Readings: –Define interpretation functions from ranges or enumerated possible reading values from various sensors to atomic contexts appearing in the context graph. Describe Intended Behaviors: –Describe intended behaviors in terms of action statements associated with each context in the context graph, so that smart space knows which actuators to manipulate when various contexts become active.

How does it work? Build the context graph that captures all possible states of interest in the smart space. Contexts are marked as desirable, transitional, or impermissible. Programmers define the intentional effects of actuators in terms of transitions from one context to another. The system identifies active contexts from sensor readings and choosing actions toward more desirable contexts.

IDE (Context Model) Entity View

IDE (Context Model) Behavior View

Safety-Oriented Programming Model High expressive with explicit safety guarantees / enforcements Expressiveness: relies on SOA (e.g. Atlas) Safety: No absolute safety guarantees –Large safety net open for expansion –Enforcement and guarantees throughout the entire pervasive space life cycle.

Comparing Programming Safety Computer System vs. Pervasive Space Memory access violation Y = X/0 Divide by 0 Interrupt Fire Alarm Impermissible Context Out of Range Exception

Four Critical Elements 1.Devices: Sensor & Actuator 2.Services & Applications 3.User 4.Space

The Auto scooter Concept The all-around rubber bumper The flat-out speed The over-turning wheels Corrective driving

Device Safety Ensure inclusion of device exception handling routine Avoid conflicting directives and unsafe/unacceptable operations (utilizing context) Regulate the incoming commands and detect abnormal command, access pattern (frequency) and out of range setting (operational compliance)

Service Safety Define impermissible contexts Map impermissible contexts to services (M-M) On detecting impermissible contexts, deactivate corresponding services.

User Safety Express user safety concerns in form of user profile Device mechanisms that map and enact safety concerns (knowledge) into compile- time and run-time safeguards

Space Safety Similar to user safety, express space safety concerns as a user profile Allow for space safety to integrate with user safety (personalizing the space safety concerns) Map and enact space safety into compile- time and run-time safeguards

Piecing Space element Safety Device Safety Service Safety Space Safety User Safety “SAFE” SPACE Space