AUTOMATED CODE GENERATION FOR SAFETY-RELATED APPLICATIONS: A CASE STUDY
DOI:
https://doi.org/10.7494/csci.2007.8.3.37Keywords:
Software Enginnering Process, Software Tools, Automatic Code GenerationAbstract
This paper addresses issues relating to the suitability of using automated code generation(ACG) technologies for the development of real-time, safety-critical systems. This researchexplored the characteristics of model-based software development methodologies and the automatedcode generation tools that support them. Specifically, data related to the engineeringchallenges, skills, and effort associated with ACG practices and technologies were collectedas part of a case study. Characteristics such as the generated code’s organization, size, readability,traceability to model, real-time constructs, and exception handling were identified. Inaddition, the case study involved software engineering practices that incorporate integratedanalysis and design iterations throughout a model-based development process. The researchinvestigated both the static and dynamic characteristics of the selected techniques and tools,identified characteristics of ACG tools with potential impact on safety, and considered thesemantic consistency between representations.Downloads
References
Denney E., Fischer B., Schumann J.: Adding Assurance to Automatically Generated Code. Proceedings of Eighth IEEE International Symposium on High Assurance Systems Engineering (HASE’04), March 2004
Federal Aviation Administration, Software Tools Forum, Embry Riddle University, Daytona Beach, Fl., May 2004 http://www.erau.edu/db/campus/softwaretoolsforum.html
Halbwachs N., Raymond P., Ratel C.: Generating efficient code from data-flow programs. Third International Symposium on Programming Language Implementation and Logic Programming, Passau (Germany), August 1991
Heitmeyer C. L., Jeffords R. D., Labaw B. G.: Automated Consistency Checking of Requirements Specifications. ACM Transactions of Software Engineering and Methodology, 5(3):231–261, July 1996.
Hohman W.: Supporting Model-Based Development with Unambiguous Specifications, Formal Verification and Correct-By-Construction Embedded Software. SAE World Congress, Detroit, MI, 2004, March 8–11
Humphrey W.: Introduction to the Personal Software Process. Addison-Wesley, Reading, Mass, 1994
Keenan D. J., Heimdahl M.: Code Generation from Hierarchical State Machines. Proceedings of the International Symposium on Requirements Engineering, 1997
Kornecki A., Zalewski J.: Experimental Evaluation of Software Development Tools for Safety Critical Real-Time Systems. NASA Journal Innovations in Systems and Software Engineering, July 2005
Kornecki A., Zalewski J.: Assessment of Software Development Tools for Safety Critical Real Time Systems. Invited Paper in IFAC Workshop on Programmable Devices and Systems, Ostrava, Czech Republic, February 2003, pp. 2–7
Kornecki A., Erwin J.: Characteristics of Safety Critical Software. Proceedings of the 22nd International System Safety Conference, System Safety Society, ISBN 0-9721385-4-4, Providence, RI, August 2004
O’Halloran C.: Issues for the Automatic Generation of Safety Critical Software. 15th IEEE International Conference on Automated Software Engineering (ASE’00), 2000
Stepney S.: High Integrity Compilation. Prentice Hall, 1993
Vestal S.: Assuring the Correctness of Automatically Generated Software. AIAA/IEEE Digital Avionics Systems Conference, volume 13, 1994, pp. 111–118
Whalen M. W., Heimdahl M.: An Approach to Automatic Code Generation for Safety-Critical Systems. Proceedings of the 14th IEEE International Conference on Automated Software Engineering, Orlando, October 1999