Abstract
Software in critical embedded systems used in aerospace, military, and transport applications, that is, systems where quality and reliability are imperative, continues to become more complex. For example, the Boeing 787 aircraft flight control system will have about 6.5 million lines of code, the avionics software for the F-22 Raptor consists of 1.7 million lines of code and avionics software for the F-35 Joint Strike Fighter is expected to have 5.7 million lines of code. The Ada programming language has been a key component in these applications and is a language of choice for critical systems where reliability matters. As these systems are becoming more sophisticated, software development organizations must meet stringent software quality objectives that are mandated by the organization itself or required by customers or by government regulations. For software teams to meet these objectives, and to ideally achieve software with minimal defects, the Ada programming language alone may not provide sufficient reliability margins. Coupling the Ada language with state of the art testing and verification solutions may improve the predictability of risk. This paper examines software verification and testing approaches that have been applied to Ada programs.
- Mecham, M. 2007. Boeing Faces Pretty Tight 787 Delivery Schedule. Aviation Week. 9 September 2007.Google Scholar
- Pace, S. 1999. F-22 Raptor: America's Next Lethal War Machine. Mcgraw-Hill.Google Scholar
- Goebel, G. 2001. The Lockheed Martin F-35 Joint Strike Fighter (JSF). http://www.vectorsite.net/avf35.html.Google Scholar
- Zemskyy D. Safety and Reliability Considerations in DO-178B.Google Scholar
- Pan, J. 1999. Dependable Embedded Systems. Software Testing.Google Scholar
- Reihle R. "Can Software Be Safe?-An Ada Viewpoint". Embedded Systems Programming.Google Scholar
- Feldman, M. Who is using Ada. http://www.seas.gwu.edu/~mfeldman/ada-project-summary.html.Google Scholar
- Fagan M. 1976. Design and Code Inspections to Reduce Errors in Program Development. IBM Systems Journal. Google Scholar
Digital Library
- Cousot, P. 1977. Abstract interpretation: a unified lattice model for static analysis of programs by construction or approximation of fixpoints. 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages. Google Scholar
Digital Library
- Cousot P., Cousot R. 1992. Comparing the Galois Connection and Widening / Narrowing Approaches to Abstract Interpretation. Symposium on Programming Language Implementation and Logic Programming. Google Scholar
Digital Library
- Cousot P. 1996. Abstract Interpretation. ACM Computing Surveys. Google Scholar
Digital Library
- Cousot P., Cousot R., 2001. Abstract Interpretation Based Formal Methods and Future Challenges. Informatics. 10 Years Back. 10 Years Ahead,. Google Scholar
Digital Library
- Deutsch A. 2003. Static Verification of Dynamic Properties. SIGAda.Google Scholar
- Regehr, J., Reid, A., Webb, K. 2003. Eliminating stack overflow by abstract interpretation. In Proc. of the 3rd International Conf. on Embedded Software (EMSOFT).Google Scholar
Cross Ref
- DAEDALUS. 2011. http://www.di.ens.fr/~cousot/projects/DAEDALUS.Google Scholar
- Spoto A. 1982. JULIA: A Generic Static Analyser for the Java Bytecode.Google Scholar
- Polyspace. 2011. http://www.mathworks.com/products/polyspace.Google Scholar
Index Terms
Improving quality of Ada software with range analysis
Recommendations
Improving quality of Ada software with range analysis
SIGAda '11: Proceedings of the 2011 ACM annual international conference on Special interest group on the ada programming languageSoftware in critical embedded systems used in aerospace, military, and transport applications, that is, systems where quality and reliability are imperative, continues to become more complex. For example, the Boeing 787 aircraft flight control system ...
Improving quality of Ada software with range analysis
SIGAda '11: Proceedings of the 2011 ACM annual international conference on Special interest group on the ada programming languageAda is a strong language with built-in mechanisms that naturally lead to less risky software programs. This is possible because Ada is a structured and strongly typed language with built-in run-time protection mechanisms. For example, subtyping allows ...
Improving quality of Ada software with range analysis
Ada is a strong language with built-in mechanisms that naturally lead to less risky software programs. This is possible because Ada is a structured and strongly typed language with built-in run-time protection mechanisms. For example, subtyping allows ...







Comments