Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts R. Razavi et al. - 1 - .OOPSLA Workshop DSML‘06 Dart: Dart: A Meta-Level Object-Oriented A Meta-Level Object-Oriented Framework for Task-Specific Framework for Task-Specific Behavior Modeling by Behavior Modeling by Domain Experts Domain Experts Reza Razavi University of Luxembourg LUXEMBOURG [email protected]Jean-François Perrot Université Pierre et Marie Curie – CNRS – LIP6, Paris – France jean- [email protected]Ralph Johnson University of Illinois at Urbana Champaign, Illinois – USA [email protected]
21
Embed
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts R. Razavi et al..OOPSLA Workshop DSML‘06 - 1 - Dart:
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 1 -.OOPSLA Workshop DSML‘06
Dart: Dart: A Meta-Level Object-Oriented A Meta-Level Object-Oriented Framework for Task-Specific Framework for Task-Specific
Behavior Modeling by Behavior Modeling by Domain ExpertsDomain Experts
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 2 -.OOPSLA Workshop DSML‘06
Background Photo: http://pinker.wjh.harvard.edu
Connecting together a large number of small computers with sensing and actuating capabilities, to collectively and cost-effectively solve problems, based on real-time
data.
A Wireless Sensor Network
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 3 -.OOPSLA Workshop DSML‘06
Background Photo: http://pinker.wjh.harvard.edu
Query: detect an animal
Query: chart traffic
patterns
Query: photograph
speeding vehicles
Dynamic Macroprogramming of WSNs by End-users (experts)
Requires specifying coordination between tasks
Requires specifying a behavior repeated over
time
Requires specifying correlation of time series of basic sensing data into high-level semantic
data
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 4 -.OOPSLA Workshop DSML‘06
Requirements summary
• End-users• Expressing
• Relatively easily
• Complex behavior
• DSML Programmer: face diversity of application domains
• Business-specific • Ontologies
• Modeling constructs
• Model execution strategies
• DSML Programmers• Developing DSMLs for different application domains by
• Reuse
• Extension
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 5 -.OOPSLA Workshop DSML‘06
Task-Specific Behavior Modeling [B.A. Nardi]
Entities and relationships
collection
Mobile Object
Animal
Pulse
Pulse Pair
Classify Animal Estimate Motion
Detect Beam EventSort EdgesAverage Pulse Pairs
Primitive tasks
Behavior
specification
Animal
Classify Animal
2
1
T2: Identify Animal
Mobile Object
Estimate Motion
3
Pulse Pair 3
Average Pulse Pairs
4
Pulse 1
Detect Beam Event
9
Pulse 2
Detect Beam Event
8
Pulse 3
Detect Beam Event
7
Pulse Pair 1
Sort Edges
6
Pulse Pair 2
Sort Edges
5
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 6 -.OOPSLA Workshop DSML‘06
The Problem
• Method for stepwise development of • Task-specific languages for behavior modeling
• Satisfying both •End-users, and
•Programmers requirements
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 7 -.OOPSLA Workshop DSML‘06
Dart core concepts
-argument
-holds
-instantiates
-method
Process Conscious Product
Task Part Holder
1 1..*
Construct
1..1
0..1
Contract
Ontology Concept
0..1 0..*
1..1
-spec1..1
1
-dependents0..*
0..1
0..1
Execution Strategy
-policy
1..1 0..*
Behavior
1*
0..*
-contributes 0..*
Design decisions explained and motivated in the paper.
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 8 -.OOPSLA Workshop DSML‘06
1
Liz’s query
2
Main
3
T1: Compute Histogram Entry
4
T2: Identify Vehicle
Histogram
5
Plot Histogram
Histogram Entry Collection
6
For a Period of <2 weeks> Do <T1>
Mobile Object
Estimate Motion
8
Pulse Pair 3
Average Pulse Pairs
9
Pulse 1
Detect Beam Event
12
Pulse 2
Detect Beam Event
13
Pulse 3
Detect Beam Event
14
Pulse Pair 2
Sort Edges
Pulse Pair 1
Sort Edges
10 11
Vehicle
Classify Vehicle
7
Vehicle
Do <T2>
16
Histogram Entry
Create Histogram Entry
15
Illustration of behavior representation by Dart
Behavior
Task
Step (Part Holder)
Construct
Concept
contributes
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 9 -.OOPSLA Workshop DSML‘06
Implementation
• Research prototypes• Provides extension hooks
• VisualWorks Smalltalk • Dyctalk
• MiDyctalk
• MetaclassTalk• MxDyctalk
• Squeak and Seaside
• Planned to be released as Open Source software
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 10 -.OOPSLA Workshop DSML‘06
Reuse example: Developing query engines for WSNs
Uses: Seaside framework
(http://www.seaside.st/)
and Squeak (http://www.squeak.org
/)
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 11 -.OOPSLA Workshop DSML‘06
Conclusion
StepStep
AdaptAdapt
FetchLoadCode
Adaptation cycle
Operational level
Knowledge level
IntrospectionIntercession
Dynamically-composed behavior
-argument
-holds
-instantiates
-method
Process Conscious Product
Task Part Holder
1 1..*
Construct
1..1
0..1
Contract
Ontology Concept
0..1 0..*
1..1
-spec1..1
1
-dependents0..*
0..1
0..1
Execution Strategy
-policy
1..1 0..*
Behavior
1*
0..*
-contributes 0..*
Dart supports stepwise development of Adaptive Object-Models
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts
R. Razavi et al. - 12 -.OOPSLA Workshop DSML‘06
Current work
• Reusing Dart to support End-user Macro-programming WSNs
• Dart serves:• Edition (GUI)
• Representation
• Verification
• Optimization
• Security
• Transformation
• Distributed, fine-grained, selective deployment
• Concurrent execution
Dart: A Meta-Level Object-Oriented Framework for Task-Specific Behavior Modeling by Domain Experts