Title: CORBA Component Model (CCM)-based Design, Analysis, and Infrastructure for DRE Systems
1CORBA Component Model (CCM)-basedDesign,
Analysis, and Infrastructurefor DRE Systems
http//cadena.projects.cis.ksu.edu
DARPA Order K203/AFRL Contract F33615-00-C-3044
Principal Investigators
Matt Dwyer John Hatcliff Masaaki Mizuno Mitch
Neilsen Gurdip Singh Jesse Greenwald
Gary Daugherty Dave Haverkamp
2Cadena
Cadena
CORBA Component Model IDL
CCM Interface Definition Language
Java/C Component Code
Cadena Property Specification (CPS)
RT Aspect Specs
UML Design Artifacts
State Transitions
System Configuration
ltCONFIGURATION_PASSgt ltHOMEgt ltgt
ltCOMPONENTgt ltIDgt ltgtlt/IDgt
ltEVENT_SUPPLIERgt ltevents this component
suppliesgt lt/EVENT_SUPPLIERgt
lt/COMPONENTgt lt/HOMEgt lt/CONFIGURATION_PASSgt
Component Assembly Description (CAD)
High-level Specification Language
Eclipse Plug-In
Bold Stroke XML Configurator Info
Integrated Development Environment
Analysis and QoS Aspect Synthesis
3Emphasis This Period
- Extensive interaction with Boeing with successive
versions of Cadena leading to a public release. - tutorials and simple development guides
- OEP recast to CCM designs with Java
implementations - automated support for translating OEP scenarios
to CCM - CCM OEP scenario repository
- Intensive technology development on
model-checking OEP scenarios leading to Bogor - a novel extensible model-checking tool for OO
systems - Significant interaction with CIAO groups
(Vanderbilt, Wash U) and Boeing on integrating
Cadena with CIAO as well as moving forward on a
number of important issues.
4OEP Delivery Plan (through 6/03)
What we promised at the last meeting
Organization Product 1 January 1 February 1 March 1 April 1 May 1 June
KSU Cadena pre-releases CCM Product Scenarios Version 1 Java, FACET Interfaces OEP Config Version 1.1 C, CIAO integration
Product Scenarios BasicSP w/ OpenCCM Demos ModalSP MediumSP MultirateSP, BasicMP, MultirateMP
5Cadena
- Five deliveries this Spring
- 4 to Boeing (Feb, March, April, May)
- 1 public binary release (June)
- Features
- Languages CCM IDL, CAD, CPS
- Editors Textual, Forms-based
- Analyses Slicing, Dependences, Cycle-checks
- Advice Rate Assignment, Distribution
- Visualizations Structural, Analysis Results
- System Generation ORB integration
6Textual View
7Graphical View
8Spreadsheet View
ports for component type
port types
port connections
9Spreadsheet View
10Cadena ORB/EC Integration
- Integration with FACET 1.5 (March, 2003)
- Integration with OpenCCM 0.5 (May, 2003)
- extended OpenCCM with event-channel
implementation - Identified generic Cadena-ORB Interfaces
- eases integration of CORBA-compliant
event-channels - End-to-end Development Support
- from Cadena CCM/CAD specifications
- to executable Java versions of OEP scenarios
- Generates fully-compliant OEP XML config files
- from OEP scenarios modeled as CCM/CAD
11Supporting Documentation
- Cadena tutorial
- delivered with releases
- Event-channel integration and QoS properties in
Cadena/OpenCCM - delivered to Boeing, WashU Vanderbilt in
support of generic ORB integration - OEP to CCM via CAD
- delivered to Boeing, WashU Vanderbilt in
support of CIAO integration - KSU CCM Workshop (documents and slides)
- 2-day workshop at KSU with WashU Vanderbilt
- http//www.cis.ksu.edu/santos/KSU-CCM-Workshop/
12Technologies Developed (but not yet Delivered)
- Languages Behavioral, Property Specification
- Cadena/BoldStroke Model Checking
- CCM/CAD reverse-engineering from OEP XML
- Reachable system mode generation
- Advanced correlation facilities
- Visualization zooming and layout support
- Integration of
- event-channel with QoS properties
- Avionics Data Service (from Rockwell Collins)
13Model Checking BoldStroke Systems
- Design-time validation technique
- property test goal
- analysis run set of test case runs
- Domain-specific model checking
- Customizable framework (Bogor)
- BoldStroke-specific customization
- Significant progress in scaling
- Medium SP state-space gt13x106 ? 7000, 8sec
14CCM/CAD Reverse Engineering
- Lowers entry barrier to using Cadena
- and other CCM-based tools on OEP
- Rule based approach for reverse-engineering CCM
from OEP scenarios - Based on discussions with Boeing
- Tool-support under development
- automatically convert OEP configuration XML to
CCM IDL3, CAD, and CPS - Prototype seems effective on multiple OEP
scenarios
15OEP Delivery Plan (6/03-12/03)
Organization Product 1 July 1 August 1 Sept 1 October 1 Nov 1 December
KSU Model Checking Bogor Model Checker Event-Channel Scenario Models In Bogor Basic Support in Cadena Realistic SP in Cadena
Integration OpenCCM 0.6 (w/ RT Event Channel) Basic CIAO (pending availability) CIDL Support
CCM Reverse-Engineering Basic Support Realistic SP
Cadena Releases Binary Binary Binary Binary Binary Source
16OEP Experimentation (through 6/03)
- Conducted a broad range of experiments
- KSU gt40 experiments addressing 10 metrics
- Boeing 4 end-to-end experiments using various
analysis capabilities - In all cases, significant improvement over
baseline was shown for all metrics - Released experiment documentation
- Delivered to Boeing (May-June, 2003)
17OEP Experimentation (6/03-12/03)
- Integrated end-to-end experiments with CIAO
- Current OEP support is adequate
- Model checking
- More OEP support is required
- Property specification test plans with explicit
test goals for scenarios - Seeded errors versions of scenarios with a
variety of errors relative to test goals
18If we are successful
- Reductions in development time
- Errors found early via pre-code analysis
- Auto-generation of 80 of code-base
- Hand-written code is small, simple and sequential
- Improvements in quality
- Explicit specifications of correctness properties
- Designs checked against properties
- Implementations generated to preserve properties
- Improvements in performance
- Generation of optimized middle-ware
configurations - Platform independence
- Eases retargeting of components and applications
19Publications (6 accepted, 4 submitted)
- Cadena An Integrated Development, Analysis, and
Verification Environment for Component-based
Systems, Twenty-fifth International Conference on
Software Engineering, May, 2003 - Specifying Synchronization in Distributed Shared
Memory Systems, International Journal on Parallel
and Distributed Computing Practice, 2003. - Model-checking Middleware-based Event-driven
Real-time Embedded Software, First International
Symposium on Formal Methods for Components and
Objects, (to appear). - Model-driven Design and Implementation of
Distributed Real-time Embedded Systems in Cadena,
OMG Workshop on Distributed Object Computing for
Real-time and Distributed Systems, (to appear) - Bogor An Extensible and Highly-Modular Software
Model Checking Framework, Fourth joint meeting of
the European Software Engineering Conference and
ACM SIGSOFT Symposium on the Foundations of
Software Engineering, (to appear). - Adapting Side Effects Analysis for Modular
Program Model Checking, Fourth joint meeting of
the European Software Engineering Conference and
ACM SIGSOFT Symposium on the Foundations of
Software Engineering, (to appear). - On-the-fly Independence-based Reductions for
Software Model Checking, Journal of Formal
Methods in System Design, (submitted) - Space Reductions for Model Checking Quasi-Cyclic
Systems, Third International Conference on
Embedded Software, (submitted) - Space-Reduction Strategies for Model Checking
Dynamic Software, SoftMC 2003 Workshop on
Software Model Checking, (submitted)
20Current Cadena/CIAO Integration
Configuration Information
Component Implementation
Cadena
CCM-based modeling analysis
- local interface CCM_BMLazyActive_Context
- ComponentsCCMContext
-
- // To obtain the connected interface
- ReadData get_connection_outData()
-
CCM XML .cad format
Integration Points
CIDL
CIAO
CIAO IDL3 Compiler
CIAO CIDL Compiler
CIAO Deployment Facilities
CCM Implementation w/ RT QoS
KSU/Vanderbilt/WashU Collaboration
21Future Cadena/CIAO Integration
Configuration Information
Component Interfaces
Component Implementation
- local interface CCM_BMLazyActive_Context
- ComponentsCCMContext
-
- // To obtain the connected interface
- ReadData get_connection_outData()
-
Cadena
CCM-based modeling analysis
CIAO Deployment Facilities
CCM Implementation w/ RT QoS
CIAO CIDL Compiler
CIAO IDL3 Compiler
CIAO
Middleware, RT QoS attributes (XML)
Configurable Containers and RT Event Channel
Tight integration via programmatic interfaces
22KSU Cadena
- CCM versions of OEP scenarios
- Java versions of OEP scenarios
- Provides end-to-end development support now
- Optimized middle-ware support forthcoming via
CIAO integration - Significant analysis capabilities available
- More coming in early Fall
- Thanks to the Boeing folks there is a pretty
solid version of Cadena for you to try out - http//cadena.projects.cis.ksu.edu
- http//bogor.projects.cis.ksu.edu