140 likes | 301 Views
Outline. Questions / points on the first slides (overview) that are marked green are cover by Sagres, if the first characters are gre en, they are at least partially covered by Sagres. Overview of the problem space Scenario Issues Example (plant care example) Discussion conclusion
E N D
Outline Questions / points on the first slides (overview) that are marked green are cover by Sagres, if the first characters are green, they are at least partially covered by Sagres. • Overview of the problem space • Scenario • Issues • Example (plant care example) • Discussion • conclusion • open questions (find more problems!)
Scenario • world is full of events / information, which we sense, analyze and then react • but the world is very complex: fault tolerance ‘plug and play’ minimal configuration security
Scenario (cont.) change observe Sensors notice events and collect ‘data’ Actuators control parametersof our world ‘black box’ store and process the data
Data Store ‘black box’ Sagres? Sensors Services Actuators
? ? ? ? Data Store ‘black box’ Sensors • What data is sent, how & where is the data sent (ID + URL + data)? • What data ‘types’ / sensors? (tmp, temp, temperature??) • How are new sensors integrated (ID)? • What happens if a sensor‘disappears’? (fault tolerance) • What if that sensor ‘reappears’? • How and where is the raw data processed (RMI, Class / local, remote)? • How is the data stored (XML? ODBS? RDBS?)? Services
? ? ? Data Store Sagres !? ‘black box’ • Where are services managed (dir service?)? • How are the features of a service described? • Where does a service live? • Security issues ! (private data) • Dependencies between services (data flow?) • Composition of services. • Communication among services. • Concurrency and consistency issues • How to handle conflicting services? • Data sent back to the ‘Data Store’,multiple ‘Data Stores’? Where? • Create and store an image of our complex world and keep it consistent Services
? Data Store ‘black box’ • Similar issues as with sensors, • What data is sent (protocol)? • How are new actuators integrated (ID)? • How do we notice, that an actuator doesn’t work anymore? (fault tolerance) • Do we have any pure actuators or does an actuator always returns it’s state? • Different time constraints (real time tasks) - how do ‘schedule’ services? Actuators
Summary • Sensor information • integration of different sensors, data processing, data storage, data types ... • Data storage • data integration, distribution of data and remote accessibility, privacy / security, consistency, concurrency ... • Services • service directory,dependencies between services, communication among services, execution space, security, concurrency, priorities ...
Application: Plant monitoring + caring service • User’s perspective • take care of all my plants in my house • User will • buy plants which may come with sensors, other sensors • subscribe to a service say www.plantcare.com • Service will • monitor all plants and inform him of status • may be trigger actuators to automatically take care of plants…like watering plants
What does monitoring involve? • Monitor factors affecting well being of plant • light, heat, moisture • Identify plant and get data for a healthy plant • Co-relate the observed data across a period of time with the “healthy plant ” data • Inform the user • plant in living room next to window needs more water • Graphical representation: Map of house with position of plant in it, which is clickable
D A T A S T O R E User Plant care service mapObject service Information about plant types Integrating multiple XML documents Sensor specific services (to XML) Raw data from sensors
Some other issues • Liveliness of data in Database • depends on services,plants • Where is time stamping of data done • At sensor, or home server or data store….. • Adapting to new sensors/services • or subscribing to mapObjects service will allow him to get a graphical interface • temperature sensors stops working • Reverse path: Service to Actuators • Once you have discovered that some plant need watering how do you discover and invoke how to water it (watering device)
Open architectural issues • What level of standardization is required by a particular architecture? • Service discovery mechanism: • Jini, UPnP, Salutation, SDS ? • Is direct service to service communication allowed? • Do services update DataStore, can they delete old entries? • DataStore implementation issues, distributed, object-oriented, relational, TSpaces • Data integration issues? • How Sagres can be used to address this problem?
Service Discovery Jini (Sun), UPnP (Microsoft) ,SDS(Berkeley) ,Salutation Data integration Sagres Tspaces Distributed Software Architecture Ninja, Georgia Tech’s CyberDesk Distributed technologies like RMI, DCOM, CORBA Work at HP labs, CoolTown, Chai Server Related work