A Decentralized Adaptive Architecture for Ubiquitous

Download Report

Transcript A Decentralized Adaptive Architecture for Ubiquitous

A Decentralized Adaptive
Architecture for Ubiquitous
Augmented Reality Systems
Dissertation
Asa MacWilliams
Lehrstuhl für Angewandte Softwaretechnik
Institut für Informatik
Technische Universität München
[email protected]
June 27, 2005
Summary
• Ubiquitous augmented reality: convergence of
augmented reality and ubiquitous computing
• I address software engineering challenges with:
– Adaptive service dependency architecture
– Distributed middleware
– Design at run time
• Approach:
– Constructive: problem analysis, existing approaches
– Explorative: show feasibility in DWARF and its systems
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
2/12
Ubiquitous Augmented Reality (UAR)
Extension of augmented reality interaction into
ubiquitous computing environments
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
3/12
Developing Software for UAR
Basic technology available; many application areas:
Navigation
Construction and Maintenance
Collaborative design
...and more
– Health care,
– Campus,
– Rescue team…
However, few real systems built to date
One reason: software development challenges
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
4/12
UAR Software Development Challenges
UAR Software Development Challenges
Ill-defined
requirements
addresses
Performance
constraints
Component
uncertainty
• New technology
•
• Development
Many people,
•
process
many
disciplines
depends on
• Users in the field
addresses
addresses
• Low latency for
Middleware
immersive
AR
• infrastructure
Scalability for
depends on ubiquitous
computing
Mobile users
Software
Limited
sensor &
architecture
network
range
Proposed Solution
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
5/12
Related Work
• Augmented Reality and Ubiquitous Computing projects
– Studierstube, Tinmith, Coterie, ARVIKA, ImageTclAR, Aura, Ninja,
Gaia, Context Toolkit, Fluidum, UbiCom, … (many more)
– Interesting approaches: data flow architectures, latency layering,
reflection, service discovery, prototyping
• Current software engineering techniques
– Distributed component architectures: CORBA Component Model,
Web Services
– Agile development methods: Extreme Programming, Scrum
• DWARF (Distributed Wearable Augmented Reality
Framework) research project at TUM
– DWARF 2001: No development process, limited adaptivity, limited
interaction, used for only one system
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
6/12
Proposed Solution
Approaches:
• Data flow architecture
• Service discovery
Approaches:
• Reflection
• Latency layering
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
Approaches:
• Agile development
• Prototyping
June 27, 2005
7/12
Adaptive Service Dependency Architecture
New architectural style:
• Loosely coupled
distributed services
• Parameterized
dependencies
between services
• Dependencies
change based on
context
• Middleware
Service
maintains
adaptive graph
of services
• Used to build
frameworks
Stationary computer
Wearable computer
Ability
Need
Marker
Description
Optical
Tracker
Viewer
Scene
Description
Type=PoseData
Type=PoseData
manages
source=AR lab
source=AR lab
Dependency
target=head
Servicetarget=head
Manager
Video
Grabber
communicates
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
manages
Service
Manager
June 27, 2005
8/12
Decentralized Middleware
• Distributed middleware maintains adaptive system
• Middleware’s tasks can be decomposed:
– Manage a single service
– Set up communication
between two services
– Adapt a service
Viewer
to its context
– Manage adaptive
service graph
Video
Optical Grabber
Tracker 1
Tracker
Optical
Inference
Marker
Tracker
1
Description
A
Inference
Tracker
2
Inference
Marker
2
Description
B
Tracker
3
Viewer
Inference
Optical
Inference
3
Tracker
• Decentralized implementation possible
Marker
Description C
– e.g. using CORBA and SLP in DWARF
• Based on externalized service descriptions
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
9/12
Process: Design at Run Time
• Continuous, incremental
development process
• Users provide synchronous
and asynchronous feedback
• Developers improve running
system
• Synchronous: Jam Sessions
• Asynchronous: Continuous
Extension
• Supported by architecture
• Supported by tools
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
10/12
Results
• Several UAR systems were built using
implementation of architecture, middleware and
process within DWARF – and they worked.
– Component uncertainty well addressed by architecture
– Ill-defined requirements addressed by process
– Middleware performance (latency, scalability, resource
use) are adequate
• Feedback from users on systems:
– Well understood; good for prototyping
– Industrial partners: adaptivity of limited real-world use
• Feedback from developers on framework:
– Complexity and manageability concerns
– “Larger system than we could have built with X”
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
11/12
Conclusion
• The software engineering challenges of UAR can be
addressed with the Adaptive Service Dependency
Architecture, its Middleware and Design At Run Time
• But:
– Only been shown for prototypes
– Middleware and tools in DWARF are not of industrial quality
(manageability and scalability limitations)
– Model does not handle stateful services well
– Development process is mostly conceptual
– Experimental infrastructure for experimental systems… dangerous
• Future work: empirical validation
– “Harden” framework and middleware implementation
– Build UAR systems for real-world use (commercial, industrial)
Decentralized Adaptive Archicture for UAR Systems
Asa MacWilliams
June 27, 2005
12/12
A Decentralized Adaptive
Architecture for Ubiquitous
Augmented Reality Systems
Dissertation
Asa MacWilliams
Lehrstuhl für Angewandte Softwaretechnik
Institut für Informatik
Technische Universität München
[email protected]
Thank you…
for your attention - and for your support.
Any questions?
[email protected]
June 27, 2005