Title: and Levels of Abstraction
1andLevels of Abstraction
Clichés, Languages,
- OMG Model Integrated Computing PSIG,
- September 8, 2003
- Joe Cross, DARPA/IXO
2Definitions
3DRE Middleware is Really Hard
An Analogous Problem
- Deliverable A love poem
- Requirements
- The poem shall be to Pat.
- The poem shall be very beautiful.
- Pats hair color, eye color, gender, and species
shall not be specified until after the poem is
delivered. - Additional Requirement (for dynamic systems)
- Pats hair color, eye color, gender, and species
may change while the poem is being read.
4Where MIC Works Today
MIC works beautifully to create systems when the
poems are already written
pre-existing poems
Such systems areconstructed by assembly. Whats
generated is glue and configuration code.
But DRE systems often require unique
poetry(e.g., management of military radios)
5Can We Auto-Generate Poetry?
- Not today, and not tomorrow, and thats okay.
- Every problem has an inherent level of abstraction
Let our goal be to let programmers work atthe
appropriate level of abstraction, not to force
all problems to one level.
6Can Middleware be a Poetry Collection?
Trivially, yes. But adequately optimally no.
Can middleware be cut up into poems, and then
each instantiation constructed by assembly from
those poems?
Conclusion MIC that implements only construction
by assembly will not be adequate for DRE
middleware.
7What MIC Needs
- We need a software representation thats
optimized not for code generation but for code
adaptation. - Previous work has gotten close
- ifdef
- C templates
- AspectJ
- But were not there yet.
Innovation, anyone?
8Domain-Specificity
- Domain-specific languages and tools
- Require more effort to define and maintain
- Have fewer providers
- Have fewer users
- Must we have domain-specific languages and tools,
or can one set suffice for all domains? - It looks like domain-specificity is needed, in
view of the great variety of our domains
requirements - Diamond-hard real-time
- electronic support measures spoofing
- identification friend-or-foe
- Multi-level security
- Life-critical reliability
But there is a middle ground
9Domain Specificity and the DoD
The models must be delivered, or the benefits
(platform independence, etc.) are lost to the
customer
Example Consider a MIC toolset specific tothe
shipboard combat systems domain
- What does the developing contractor deliver?
- Generated code? or
- Models and tools to process them?
There is no good answer. But there is that middle
ground
- Who owns the domain-specific languages and tools?
- The contractor? or
- The Navy? (remember CMS-2?)
- The DoD? (remember Ada?)
10The Middle Ground of Domain Specificity
We need a generator tool that can accept
domain-specifying extensions
Module TargetingRadar ...
11You talk now
12BACKUP
13Levels of Abstraction A Debate
14Where MIC Works Today
MIC works beautifully to create systems when the
poems are already written
Driving distance between two addresses
Fourier Transform
Credit card number validation
But DRE systems often require unique poetry
(e.g., management of military radios)
Such systems areconstructed by assembly.