Tool Support
There are two main areas where tool support is vital in order to reap the full benefits of the MDA process. First, iUML is used to provide the modelling and simulation environment for the xUML models. This tool provides dedicated intelligent support for xUML and allows models to be simulated on host and "debugged" visually at the UML level of abstraction.
The second part of the tool-chain is the translation environment (level 2 in Figure 3 above) where application models are extracted from the iUML database and used to populate the translation engine. The translation engine is a specialisation of the intelligent Configurable Code Generator (iCCG). iCCG allows developers to capture their mapping rules as xUML models and so produce any target implementation of which they can conceive. The specification of a mapping from PIM to PSM in Executable UML is itself highly reusable, allowing any set of application models to be generated onto the target.
Benefits realized
The use of MDA with Executable UML has provided many benefits to the F-16 project:
- The application models are expressed in a completely platform independent way and so can be reused across multiple hardware and software platforms
- UML modelers are isolated from the software and hardware details and so can concentrate on a thorough exploration of the problem space
- The hardware and software platforms can be upgraded without impacting the application models
- Models can be tested at the earliest opportunity by executing them in the iUML Simulation environment
- Rework is reduced with validated models
- The mapping from PIM to PSM is specified in xUML with iCCG and is highly reusable
- Code generation eliminates manual coding and eliminates the defects traditionally introduced in the coding phase
- The xUML models are the primary source. Code is not maintained
Taken altogether these MDA benefits have reduced application development time by 20% on the F-16 MMC program in addition to helping them achieve complete cross-platform compatibility.
Acknowledgments
This article was based upon a presentation prepared by:
Lauren E. Clark, Chief Engineer, F-16 Modular Mission Computer Software
Terry Ruthruff, Staff Specialist, Software Engineering Core
Bary D. Hogan, Methodology, Lead F-16 Modular Mission Computer Software
All of the Lockheed Martin Aeronautics Company
