220 likes | 338 Views
CORBA Component Model (CCM)-based Design, Analysis, and Infrastructure for 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.
E N D
CORBA 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
Cadena Cadena CORBA Component Model IDL CCM Interface Definition Language Cadena Property Specification (CPS) Java/C++ Component Code RT Aspect Specs UML Design Artifacts State Transitions System Configuration <CONFIGURATION_PASS> <HOME> <…> <COMPONENT> <ID> <…></ID> <EVENT_SUPPLIER> <…events this component supplies…> </EVENT_SUPPLIER> </COMPONENT> </HOME> </CONFIGURATION_PASS> Component Assembly Description (CAD) High-level Specification Language Eclipse Plug-In Bold Stroke XML Configurator Info Integrated Development Environment Analysis and QoS Aspect Synthesis PCES PI Meeting --- June 4, 2003
Emphasis 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. PCES PI Meeting --- June 4, 2003
OEP Delivery Plan (through 6/03) What we promised at the last meeting… PCES PI Meeting --- June 4, 2003
Cadena • 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 PCES PI Meeting --- June 4, 2003
Textual View PCES PI Meeting --- June 4, 2003
Graphical View PCES PI Meeting --- June 4, 2003
Spreadsheet View RT Attributes …distribution sites …rate group …ports for component type …port types …port connections PCES PI Meeting --- June 4, 2003
Spreadsheet View Results of automatic rate group synthesis are fed back into spreadsheet PCES PI Meeting --- June 4, 2003
Cadena 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 PCES PI Meeting --- June 4, 2003
Supporting 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/ PCES PI Meeting --- June 4, 2003
Technologies 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) PCES PI Meeting --- June 4, 2003
Model 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:>13x106 7000, 8sec PCES PI Meeting --- June 4, 2003
CCM/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 PCES PI Meeting --- June 4, 2003
OEP Delivery Plan (6/03-12/03) PCES PI Meeting --- June 4, 2003
OEP Experimentation (through 6/03) • Conducted a broad range of experiments • KSU : >40 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) PCES PI Meeting --- June 4, 2003
OEP 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 PCES PI Meeting --- June 4, 2003
If 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 PCES PI Meeting --- June 4, 2003
Publications (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) Automated Environment Generation for Software Model Checking, 18th IEEE International Conference on Automated Software Engineering, (submitted) PCES PI Meeting --- June 4, 2003
Current Cadena/CIAO Integration Component Interfaces IDL3 Component Implementation Configuration Information Cadena local interface CCM_BMLazyActive_Context : ::Components::CCMContext { // To obtain the connected interface ReadData get_connection_outData(); CCM-based modeling & analysis 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 PCES PI Meeting --- June 4, 2003
Future Cadena/CIAO Integration Component Interfaces Component Implementation Configuration Information local interface CCM_BMLazyActive_Context : ::Components::CCMContext { // 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 PCES PI Meeting --- June 4, 2003
KSU 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 PCES PI Meeting --- June 4, 2003