
![]()
This project provides support for the pattern driven
analysis and adaptation of software for use in High Assurance applications. It takes a target
language independent approach.
Software source code and UML models are mapped to a common
intermediate language (XCIL) that directly supports UML modeling and the
JVM and .NET virtual machine execution models. Analysis and
adaptation of the software is based on a catalog of user defined
“patterns”, defined formally in a pattern specification language XPSL. The patterns in the current catalog are
intended to address a number of common HA software issues, based on
FAA/NASA guidelines for the use of OO software in Aviation, modeling and
coding standards for DO-178B certified software, and language standards for
safety critical software (such as SPARK). To verify the
correctness of the adaptations identified and performed by toolset, a set
of test cases is generated based on formal specifications of the modules
that have been changed. Translation is
also possible between supported programming languages and various modeling
representations (in addition to UML).
Support is provided by Iowa State University based on their
Knowledge Centric Software (KCS) toolset. To date, this
approach has been successfully applied to the Boeing OCP software, a large
middleware services layer written in C++. Follow the link at
left or the Services link (below) to contact us about the analysis and
adaptation of other software. Additional links
are provided to related documents, past PI meeting presentations, and an
overview of the OCP results (at left), and to other SEC web pages (below).

