Towards application development for the physical cyber-social systems
-
Upload
pankesh-patel -
Category
Technology
-
view
135 -
download
0
description
Transcript of Towards application development for the physical cyber-social systems
Towards Application Development for the Physical-Cyber-Social Systems
Pankesh Patel and Sanjay Chaudhary
Open Data Camp, Indian School of Business (ISB)
Hyderabad, June 28, 2014
2
Physical-Cyber Systems
Plants notify its users on twitter whether it needs water[http://www.botanicalls.com/ ]
Can track user’s run and report him through the cyber world [http://www.nike.com/]
- Communication capability
- Computational component
- Sensors, actuators attached
- Involved in info. exchange between physical & cyber world
image credit to organizations, who own copyrights of used images
3
Cyber-Social Systems
a social networking platform for individuals to publicly share their medical data (e.g., medications, mood) [http://www.patientslikeme.com/]
Delhi Traffic Police sends SMS to its subscribing citizens about traffic conditions periodically*
- People share their activities, knowledge, opinions, experiences- Humans in loops
* Pramod Anantharam and Biplav Srivastava, City Notifications as a Data Source for Traffic Management. In Proceedings of the 20th ITS World Congress 2013,Tokyo, Japan.
4
Envisioning a holistic approach
Computational components leverages observations from sensors, information from people to understand, correlate, and act for addressing challenges in various domains.
Physical-Cyber-Social Computing*
* Amit Sheth, Pramod Anantharam, and Cory Henson, Physical-Cyber-Social Computing: An early 21st Century Approach, IEEE Intelligent Systems, 2013.
5
Example: Traffic
Social/textual observations about city events, which may influence traffic
Data from machine sensors (speed, noise, camera, location)
- Which places are prone to events, how often and for how long ?- For different event types, what places are most likely to be affected?- How does one city compare with another in terms of different events?
Active (accident, breakdown) & scheduled (planned/ sporting event) event list
Pramod Anantharam and Biplav Srivastava., City Notifications as a Data Source for Traffic Management. In Proceedings of the 20th ITS World Congress 2013,Tokyo, Japan.
6
Goal
“Enable development** of PCS applications with minimal effort by various stakeholders* involved in
development process”
**Development -- “a set of related activities that leads to a production of a software product.’’ [Ian Sommerville, Software Engineering (9th edition) , 2010]
*Stakeholders in software engineering to mean – people, who are involved in the application development. Examples of stakeholders defined in [Taylor et al., Software Architecture, 2009] are software designer, developer, domain expert, technologist, etc.
7
Application development challenges
Heterogeneity Types (e.g., sensor, actuator,
storage, processing element, user interface, web service)
Interaction modes (e.g., publish/subscribe, request/response, command)
Platforms (e.g., Android, JavaSE)
Communication protocols (e.g., REST, MQTT, XMPP)
Spreads into the application code, Makes the portability of
code difficult image credit to organizations, who own copyrights of
used images
8
Application development challenges
Heterogeneity Large number
Application logic in terms of a set of distributed tasks for
hundreds to thousands of objects
To reason at such levels of scale is impractical in
general image credit to organizations, who own copyrights of
used images
9
Application development challenges
Heterogeneity Large number Multiple expertise
Knowledge from multiple concerns intersect
Application domain
Software design
Algorithm design,programming languages
Platform-specific knowledge
Clear conflict with skill possessed by the individual
developer image credit to organizations, who own copyrights of
used images
10
Towards PCS application development A development framework*
Separate application development into different concerns.
Provide high-level programming abstractions, addressing heterogeneity and scale.
Automate application development where possible.
*It includes support programs, code libraries, high-level languages or other software that help stakeholders to develop and glue together different components of a software product [Ian Sommerville, Software Engineering (9th edition) , 2010].
11
Domain
Sensor(s)
Actuator(s)
Computational service
sense
act
Sense-Compute-Control (SCC)
Slide credit: Damien Cassou - http://www.slideshare.net/DamienCassou/phd-thesis-defense
- Computing low-level data to high-level knowledge
12
Domain
Traffic
(e.g. Smart city)
Separation of concerns
Functionality
Parking guidance &
info.
Traffic control &monitoring
Energy
image credit to organizations, who own copyrights of used images
Computationalservice
Computationalservice
StorageSensor
retrievalsensor measurement
Actuator
action
Publish/subscribe
Request/Response
Command
13
Domain
Traffic
(e.g. Smart city)
Separation of concerns
Functionality
Parking guidance &
info.
Traffic control &monitoring
Energy
image credit to organizations, who own copyrights of used images
Computationalservice
Computationalservice
StorageSensor
retrievalsensor measurement
Actuator
action
Vocabulary Language (VL)
Vocabulary Language (VL)
Architecture Language
(AL)
14
Domain expert
Vocabulary
spec.
Compilationof
vocabulary
Device develop
er
Device driver
Vocabulary
framework
Architecture
spec.Compilation
of architecture
Application developer
Application logic
Architecture
framework
Software designer
Linker
Android devices
PC
PC
Our approach
Generated codeFor Device X
Middleware
15
Summary Physical-cyber-social systems - holistic
approach
Challenges: Heterogeneity, Large number Multiple expertise
Development framework Separation of concerns Abstractions Automation
16
Thanks for listening me Email: [email protected]
Implementation of this work with documentations, running on both Android and JavaSE device and MQTT middleware
https://github.com/pankeshlinux/IoTSuite/wiki