Ambient Composition of Active Documents

Ambient
Composition
of Active Documents
(Summary Slides)
Prof. Dr. Uwe Aßmann
Research Center for Integrational Software Engineering (RISE)
Linköping University, Sweden
EASYCOMP Consortium
EASYCOMP - Uniform Composition of
Active Documents
EU IST FET Basic
Research Project
6/2000 - 11/2003
http://www.easycomp.org
Project will deliver a
uniform composition
technology for active
documents, scalable in
1
Component languages
Composition time
Component models
Component Model
Language
Composition Time
The EASYCOMP
Uniform Composition Machine
UNICOMP
<<instance>>
Fragment
component model
Code Fragment
Components
XML Fragment
Components
Java
1
XHTML
E
U
Q
I
N
U
<<instance>>
<<instance>>
Generic COTS
component model
COTS
components
CORBA
BEANS
WSDL
Runtime
component model
Run time
components
Java objects
Event-based AOP
Why EASYCOMPs Technology is
Most Suited for AmI
AmI applications must have an architecture (a composition)
Easier to integrate, update, negotiate, also dynamically
Documents and software can be treated uniformly
Europe has developed the basic technology, it must be
transfered to a larger community
EASYCOMP is leading world-wide
2nd generation aspects (event-based aspects)
Software composition systems, and others
EASYCOMP's composition technology must be broadened to
more dynamic architectures
EASYCOMP's advance can create a leading edge of 5-7
years in Ambient Composition
1
Strategic Investment Into Base
Markets Makes the Difference
Composition Systems are the new base market for AmI
Win a base market, and the application markets will be yours
Similar to office systems or business systems
Not yet clear, who will win it -- Europe or US
[3rd FW Project COMPARE: The CoSy story]
ACE b.V, Amsterdam, conquers the compiler market by a
more strategic market, compiler frameworks
A strategic investment could gain the base market
But must be built on component and composition technology
HERE IS THE OPPORTUNITY!
1
Ambient
Composition
of Active Documents
(Expanded Talk)
Prof. Dr. Uwe Aßmann
Research Center for Integrational Software Engineering (RISE)
Linköping University, Sweden
EASYCOMP Consortium
Documents will be active (active documents)
Uniformly based on XML, the ASCII of the 21st
century
Tags will have active semantics <if> <then> <else>
Active Documents will penetrate
The future Web,
Future documents, and
Future software
Vision stems from [Orfali/Harkey: Instant CORBA]
Taken up by ISTAG
Entering the Age of Active
Documents
1
Everything Will Be An
Active Document
Mobile Reflective
Agents
Reflective (Agents)
Shippable
(Active paper, Wearables)
Introspective
(Traders)
Stationary Web Sites
Office Documents
1
Stationary Active Documents
(Web Objects, Office Documents)
Examples
Office Documents
Web pages
Web sites
Browser
Desktop
Basic operation
1
Document Embedding
Shippable Active Documents
(Active Paper)
A shippable active
document can be shipped
easily to other phyisical
places
Applet
Wearable computers
Active paper
Reintegration problem
1
Prof. Aßmann, Linköping,
works two months in
Karlsruhe
Composition Problems of Active
Paper
1
He carries his active
desktop as wrist watch
In Karlsruhe, many subdocuments change
When he comes home, he
integrates his wrist watch
These systems will be
complex
Introspective
(Traders)
Stationary
Web Sites
1
Office
Documents
Shippable
(Active paper,
Wearables)
Reflective
(Agents)
Mobile
Reflective
Agents
How Do We Build Such Systems?
They will migrate
They will contact other
unknown documents
They will negotiate
How Do We Build Such Systems?
Mobile
Reflective
Agents
Shippable
(Active paper,
Wearables)
Reflective
(Agents)
??
Introspective
(Traders)
Stationary
Web Sites
EASYCOMP
1
Office
Documents
The State of Software and Document
Engineering
Modular systems
Object-oriented technology
Component-based programming
The Essence of the 60s-90s:
LEGO Software
CORBA, EJB, DCOM, COM+, .NET
Architecture languages
Blackbox composition
1
Blackbox
Composition
Components
Connectors
Component-based
applications
1
Composition
recipe
Aspect-oriented Programming
Software Composition Systems
1
Graybox software components
Turing-complete composition languages
[Invasive Software Composition, Aßmann, Springer 2003]
Uniform Composition Systems
EASYCOMP
Active documents
Uniform treatment of software and data
Component Integration
Structure
Interfaces
Pipe Plan
Light Plan
Integrated House
1
Components
Software
composition
Invasive composition
operations
Uniform
composition
Integrated system
1
Composition
recipe
Ambient
Composition Systems
EASYWEAR
Uniform Composition Systems
Software
Composition Systems
Invasive Composition
Metaclass Composition
Aspect Separation
Aspect/J
Architecture as Aspect
Darwin
ACME
Classical
Component Systems
Standard Components
.NET CORBA
Beans EJB
Object-Oriented Systems
Objects as
Run-Time Components
C++
Modular Systems
Modules as CompileTime Components
Modula
Aspect Systems
Architecture Systems
1
Composition
Language
EASYCOMP
Java
Ada-85
Ambient
Composition
Active Document
Integrated Active Document
1
Active Document
Uniform Composition in
the EASYCOMP Project
EU IST FET Basic Research Project
1
6/2000 - 11/2003
2.5 Mio Euro Funding
U Karlsruhe (coordinator), U Kaiserslautern, U Linköping,
Ecole des Mines Nantes, TU Vienna, U Twente
HEI Mannheim, QLABS Paris, ILOG Paris
Provide a uniform composition technology
EASYCOMP - Uniform Composition
of Active Documents
Easy
Powerful
EASYCOMP Uniformity in 3 Dimensions
Component
Model
Language
Composition Time
1
The EASYCOMP
Uniform Composition Machine
UNICOMP
<<instance>>
Fragment
component model
Code Fragment
Components
XML Fragment
Components
Java
1
XHTML
E
U
Q
I
N
U
<<instance>>
<<instance>>
Generic COTS
component model
Runtime
component model
COTS
components
Run time
components
CORBA
BEANS
WSDL
Java objects
Leading Edge: 3-5 years
over Aspect/J, Eclipse, Rational, VisualStudio
Based on
Component Workbench (CWB), an architectural editing
environment (Prof. Jazayeri, TU Vienna)
COMPOST 2.0 (RISE, UKA)
The EASYCOMP
Uniform Composition Machine
1
XML refactorer XML-RECODER (RISE)
Java refactorer RECODER (UKA)
JDRUMS runtime update engine (RISE)
SWEDE ontology checker (RISE)
OPTIMIX analysis generator (RISE)
Ubiquitous Composition in
EASYCOMP-II
EASYCOMP-II
1
People meet
Active Documents will also meet
Component- and composition based technology for
ambient and ubiquitous computing
Meeting Active Documents need
EASYCOMP-II
1
Integration, merge
Update, upgrade
Comparison and difference
Negotiation
Many of the ISTAG scenarios rely on such technologies
EASYCOMP and ISTAG
1
Maria: Powerpoint, Custom negotiation, Car Rental
Amos: Reconfiguration
Dimitrios: D-Me must migrate and integrate
Component- and composition based systems are simpler
than standard systems
Why EASYCOMPs Technology is
Most Suited for AmI
Have an architecture
Easier to integrate, update, negotiate
Documents and software must be treated uniformly
HERE IS THE OPPORTUNITY
1
EASYCOMP is leading world-wide
2nd generation aspects, software composition systems
Extend the leading edge to 5-7 years
Why EASYCOMPs Technology is
Most Suited for AmI
Ambient composition
HERE IS THE OPPORTUNITY
1
New Base Market for Composition Systems
[3rd FW Project COMPARE: The CoSy story]
A strategic investment of 40 Mio Euro could gain the base
market (see DAML initiative)
1
Win a base market, and the application markets will be yours
Similar to office systems or business systems
Not yet clear, who will win it..
Strategic Investment Makes the
Difference
But even an IP could be very good.
Who Will Win the New Base Market?
Blackbox-based
applications
Graybox-based
applications
Structure
Interfaces
Pipe Plan
Light Plan
Integrated
House
1
Architectural Styles for
Active Documents
EASYCOMP Results
Architectural Styles
Describe large systems easily
Tool support possible
Uniform composition allows for transfering architectural
styles to active documents
Excellent Basis for
Ambient Composition
1
Architectural Styles for Active
Documents
Automatic Roundtrip
Documents
Staged Composition
Documents
Stream-based Documents
Spreadsheet-Documents
Script-Parameterized
Wizard-parameterized
1
Wizard-Parameterized Documents
Web sites, series letters
Scripts embed their results into templates
Web sites with database generation
Spread-Documents
1
A wizard asks the user interactively and fills in global
parameters
Script-Parameterized Documents
Architectural Styles for Active
Documents
Like spreadsheets, but with graybox components and
scriptlets
Complex documents
Stream-Documents
Stream-Documents are open
1
They take in data streams over stream ports
Web sites with forms, document workflows
Staged Composition Documents
Architectural Styles for Active
Documents
Staged composition combines all these architectural styles
Composition scriptlets are expanded at different times
Web sites with servlets and applets
Content management systems
The End
1
www.easycomp.org
www.the-compost-system.org
www.ida.liu.se/~uweas