Modularized middleware architecture for smart home & smart home lab Software Engineering Laboratory Department of Computer Science Iowa State University.

Slides:



Advertisements
Similar presentations
웹 서비스 개요.
Advertisements

Web Service Architecture
Enhancing Residential Gateways: OSGi Service Composition Consumer Electronics, IEEE Transactions /February 2007/Volume: 53, Issue: 1 /On page(s): 87-95Issue:
Service Oriented Architecture for Mobile Applications Swarupsingh Baran University of North Carolina Charlotte.
Web Service Ahmed Gamal Ahmed Nile University Bioinformatics Group
SelfCon Foil no 1 Dynamic component systems 1. SelfCon Foil no 2 Pre-structured systems vs. dynamic component systems Pre-structured – emphasis on content.
WEB SERVICES DAVIDE ZERBINO.
A Java Architecture for the Internet of Things Noel Poore, Architect Pete St. Pierre, Product Manager Java Platform Group, Internet of Things September.
Ch. 7. Architecture Standardization for WoT
UNDERSTANDING JAVA APIS FOR MOBILE DEVICES v0.01.
G O B E Y O N D C O N V E N T I O N WORF: Developing DB2 UDB based Web Services on a Websphere Application Server Kris Van Thillo, ABIS Training & Consulting.
Technical Architectures
Notes to the presenter. I would like to thank Jim Waldo, Jon Bostrom, and Dennis Govoni. They helped me put this presentation together for the field.
Component Models and Technology Component-based Software Engineering
Introduction to Enterprise JavaBeans. Integrating Software Development Server-side Component Model Distributed Object Architecture –CORBA –DCOM –Java.
Web Services Andrea Miller Ryan Armstrong Alex. Web services are an emerging technology that offer a solution for providing a common collaborative architecture.
2006 IEEE International Conference on Web Services ICWS 2006 Overview.
Software Engineering Module 1 -Components Teaching unit 3 – Advanced development Ernesto Damiani Free University of Bozen - Bolzano Lesson 2 – Components.
Page 1 Building Reliable Component-based Systems Chapter 4 - Component Models and Technology Chapter 4 Component Models and Technology.
Jun Peng Stanford University – Department of Civil and Environmental Engineering Nov 17, 2000 DISSERTATION PROPOSAL A Software Framework for Collaborative.
Community Manager A Dynamic Collaboration Solution on Heterogeneous Environment Hyeonsook Kim  2006 CUS. All rights reserved.
Web-based Portal for Discovery, Retrieval and Visualization of Earth Science Datasets in Grid Environment Zhenping (Jane) Liu.
Java Beans Component Technology Integrated, Visual Development Environments Reusable Platform-Independent Modular.
AGENT-BASED GATEWAY OPERATING SYSTEM FOR RFID- ENABLED UBIQUITOUS MANUFACTURING ENTERPRISE - JI FANG, TING QU, ZHI LI, GANGYAN XU, GEORGE Q. HUANG HKUZIRI.
THE NEXT STEP IN WEB SERVICES By Francisco Curbera,… Memtimin MAHMUT 2012.
OSGi.
Introduction to the Atlas Platform Mobile & Pervasive Computing Laboratory Department of Computer and Information Sciences and Engineering University of.
1 Web Services Distributed Systems. 2 Service Oriented Architecture Service-Oriented Architecture (SOA) expresses a software architectural concept that.
Web services: Why and How OOPSLA 2001 F. Curbera, W.Nagy, S.Weerawarana Nclab, Jungsook Kim.
Web Services Igor Wasinski Olumide Asojo Scott Hannan.
Enterprise JavaBeans. What is EJB? l An EJB is a specialized, non-visual JavaBean that runs on a server. l EJB technology supports application development.
Component Architecture (CORBA – RMI) -Shalini Pradhan.
Fundamentals of Database Chapter 7 Database Technologies.
第十四章 J2EE 入门 Introduction What is J2EE ?
Enterprise Java Beans Java for the Enterprise Server-based platform for Enterprise Applications Designed for “medium-to-large scale business, enterprise-wide.
Evaluation of a Publish/Subscribe System for Collaboration and Mobile Working Collaborative Advertising over Internet with Agents Independent Study: Wireless.
Web Services Kanda Runapongsa Dept. of Computer Engineering Khon Kaen University.
Web Services based e-Commerce System Sandy Liu Jodrey School of Computer Science Acadia University July, 2002.
Linked-data and the Internet of Things Payam Barnaghi Centre for Communication Systems Research University of Surrey March 2012.
Comparing JavaBeans and OSGi Towards an Integration of Two Complementary Component Models HUMBERTO CERVANTES JEAN-MARIE FAVRE 09/02.
Middleware for FIs Apeego House 4B, Tardeo Rd. Mumbai Tel: Fax:
Open Service Gateway Initiative (OSGi) Reporter : 林學灝 侯承育 1.
1 Advanced Software Architecture Muhammad Bilal Bashir PhD Scholar (Computer Science) Mohammad Ali Jinnah University.
Database Systems: Design, Implementation, and Management Eighth Edition Chapter 14 Database Connectivity and Web Technologies.
ICT Strategy Intelligent Highways: Endpoint Adapters.
Distribution and components. 2 What is the problem? Enterprise computing is Large scale & complex: It supports large scale and complex organisations Spanning.
GRID Overview Internet2 Member Meeting Spring 2003 Sandra Redman Information Technology and Systems Center and Information Technology Research Center National.
Dynamic and Selective Combination of Extension in Component-based Applications Eddy Truyen, Bart Vanhaute, Wouter Joosen, Pierre Verbaeten, Bo N. Jørgensen.
The Gator Tech Smart House: A Programmable Pervasive Space Real/Research Application In Pervasive Computing Lee Hae Dong, ICU CSE.
Abstract A Structured Approach for Modular Design: A Plug and Play Middleware for Sensory Modules, Actuation Platforms, Task Descriptions and Implementations.
An Introduction to Web Services Web Services using Java / Session 1 / 2 of 21 Objectives Discuss distributed computing Explain web services and their.
1 Registry Services Overview J. Steven Hughes (Deputy Chair) Principal Computer Scientist NASA/JPL 17 December 2015.
Getting Started with the Open Services Gateway Initiative (OSGi) CNT 5517 Dr. Sumi Helal, Ph.D. Professor Computer & Information Science & Engineering.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Internet of Things. IoT Novel paradigm – Rapidly gaining ground in the wireless scenario Basic idea – Pervasive presence around us a variety of things.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
On Using BPEL Extensibility to Implement OGSI and WSRF Grid Workflows Aleksander Slomiski Presented by Onyeka Ezenwoye CIS Advanced Topics in Software.
Intro to Web Services Dr. John P. Abraham UTPA. What are Web Services? Applications execute across multiple computers on a network.  The machine on which.
Java Programming: Advanced Topics 1 Enterprise JavaBeans Chapter 14.
Computer Science and Engineering Department The University of Texas at Arlington MavHome: An Intelligent Home Environment.
Web Services Blake Schernekau March 27 th, Learning Objectives Understand Web Services Understand Web Services Figure out SOAP and what it is used.
Software Architecture Patterns (3) Service Oriented & Web Oriented Architecture source: microsoft.
By Jeremy Burdette & Daniel Gottlieb. It is an architecture It is not a technology May not fit all businesses “Service” doesn’t mean Web Service It is.
AMSA TO 4 Advanced Technology for Sensor Clouds 09 May 2012 Anabas Inc. Indiana University.
Service Oriented Architecture (SOA) Prof. Wenwen Li School of Geographical Sciences and Urban Planning 5644 Coor Hall
WEB SERVICES.
Distribution and components
Week 01 Comp 7780 – Class Overview.
Presented by Jinpeng Zhou
WEB SERVICES DAVIDE ZERBINO.
Presentation transcript:

Modularized middleware architecture for smart home & smart home lab Software Engineering Laboratory Department of Computer Science Iowa State University

Design goals Reconfigurability –Service coordinator (Service composer) A new description language or a extended version of BPEL4WS –Service execution engine Scalability –Fully modularized/Impendent layers operating system independent Application interchangeability by supporting Uniform APIs –Easy to add/remove new services Component-based services to support “plug-and-play” Modularity –Boundary between the layers for the smart home and the ones for the smart home lab Our architecture includes the features that are required for experiments and help write lab-only-used applications Two Java-based frameworks –Minimize overhead at the deployment phase

Design characteristics Service –All the services of the smart home are context-aware. Thus, service design also includes context analysis. –Two levels of services to be associated Context-based service (high-level) –The service delivered to a customer based on their necessity or preference Device-specific service (low-level) –The description of basic functionalities of a device such as sensors or controllers Layered Middleware architecture –Clear interface definitions between the layers EJB-based component support –Java can work with (or over) OSGi –JavaME is available for small devices –Easy to interact with other services by extending smart home services to web services

Middleware architecture overview Physical Device normalization/Integration Service support Security Safety Application Web-based interface Dev/Exp support Design module Design module Case- Based module Case- Based module Service Execution module Service Execution module Context analysis module Availability Audit module Audit module Service DB (SDB) Service DB (SDB) Knowledge DB (KDB) Knowledge DB (KDB)

Middleware architecture layers (1/4) Physical –Consist of a variety of devices and appliances such as cell phones, PCs, PDAs, sensors, detectors, controllers (for example, X10), etc. Device normalization/Integration –Wrap any devices and appliances of the physical layer in a software service to construct device-specific services Register them with service framework interfaces (SFIs) –Java-based integration environment for services Communication management, Message processing, etc. Shared databases –Knowledge database (KDB) for context-awareness –Service database (SDB) for service publication and discovery

Middleware architecture layers (2/4) Service support –Context analysis module Reason a situation based on diverse context through the KDB Associate a context with a service in order to construct context-based services Types of context –Static context: Bar code, RFID tag, … –Dynamic context: the data of sensors/controllers –Service execution module Binding a service with real software –Question: Need dynamic service composition?  Inference engine Invoke services though the SDB –Implicitly based on the context analysis –Explicitly by the occupant

Middleware architecture layers (3/4) Development/Experiment support –Design module Register/Publish an service Manage the SDB Describe using a standard service description language such as WSDL –Case-based module Define an association of a context with services Manage the KDB Describe using a new language or an extended version of BPEL4WS –Audit module Logging/Extracting data and status information –Publish exceptional conditions Interact with the SDB and the KDB

Middleware architecture layers (4/4) Application –Manage/Scheduling independent programs to monitor/control services –Examples Context descriptor Audit analyzer Service composer Service simulator Service administrator Web-based Interface –Optional to offer a consistent interface to occupants –Provide ubiquitous accessibility by making applications web-accessible Support remote access via both wired and wireless internet

Requirements for smart home lab (1/3) The key requirements for the smart home lab 1.SHL/SH shall have wireless/wire network 2.SH shall be operated normally when the middleware architecture is abnormal 3.SHL/SH shall have the security mechanism 4.SH shall have the ability to detect occupants’ context and identification if there are more than one occupant 5.Middleware Architecture 1)The middleware architecture shall accept inputs/commands from i.Cell phones ii.PCs iii.PDAs iv.Sensors v.detectors vi.Controllers (such as X10) 2)The middleware architecture shall have the ability to communicate with other organizations

Requirements for smart home lab (2/3) The key requirements for the smart home lab (cont) 5.Middleware Architecture (cont) 3)The middleware architecture shall give commands/outputs to i.Cell phones ii.PCs iii.PDAs iv.Devices v.Other organizations 4)The middleware architecture shall store data such that it can be imported/exported in some specific formats (efficiently) 5)The middleware architecture shall be able to discover plug-in devices 6)The middleware architecture shall have the ability to integrate appliances/devices 7)The middleware architecture shall automatically turn on/off some appliances/devices if some specific events occur 8)The middleware architecture shall be able to change its behavior for time- and situation-awareness 9)The middleware architecture shall be able to remind the occupants for some specific things

Requirements for smart home lab (3/3) The key requirements for the smart home lab (cont) 6.Device Control 1)Researchers shall be able to enable/disable devices 2)Researchers shall be able to view/retrieve the status of a device 3)Researchers shall be able to operate all the functions of a device 7.Experiment Simulation Capability 1)Researchers shall be able to create the services/simulations/experiments over the middleware architecture 2)Researchers shall be able to extract system status information 3)Researchers shall be able to develop their new applications

Device Normalization/Integration OSGi (Open Services Gateway Initiative) EJB (Enterprise Java Beans) B/S/ H/ Resi denti al Gate way Tablet PC Mobile telephone WLAN GSM Powerline Indoor Communication Outdoor Communication

Why EJB/OSGi? (1) To support component-based software architecture –Modular Components (EJB/OSGi) –Reusability (EJB/OSGi) –Collaborative Model (OSGi) –Highly Dynamic (OSGi) –Software Lifecycle Management (OSGi) EJB –Visual assembly of applications OSGi –Open industry framework and service-oriented architecture –Deployment of services in platforms

Why EJB/OSGi? (2) Advantages of OSGI –OSGi defines a framework to mange bundles (units of distribution) and the services they export –Services can be obtained by querying the framework through a set of properties Disadvantage of OSGi (cons of EJB) –Assemblies are not static. Connections between bundles occur depending on the availability of services Solutions [Cevantes02] –Use bundles as distribution units that contain JavaBeans –Make these bundles export some particular services that allows for the creation of instances of the JavaBeans they export –Give JavaBeans access to the OSGi framework, so that they can quey for services in a complete way [Cevantes02] H. Cervantes and J. Favre, “Comparing JavaBeans and OSGi Towards an Integration of Two Complementary Component Models”, Euromicro Conference, 2002.