ABSTRACT
Since the advent of the computer and computer programming there have been many attempts to improve the quality of the software systems developed. At various stages in this evolution of development techniques, processes, and methodologies, a review of the current trend in software development is conducted. One such current trend is in the realm of safety-critical system development. Safety-critical systems are characterized by the resulting potential of harm to or loss of life if such systems should fail during operation. A strategy applied in developing such systems is the use of formal specification techniques. Formal specification techniques are the application of rigorous techniques to assess the correctness of system design. The use of formal specification techniques in safety-critical system development has been in place for a number of decades and there have been multiple reviews and comparisons of the successful and failed application of formal specification techniques. This report reviews examples of the application of formal specification techniques in a number of application domains, with a focus on the types of error detection and correction associated with the particular technique. The benefit of this work is towards the assessment of the suitable of a specific formal specification technique with a particular problem domain.
- Jones, C. 2018. Software Methodologies: A Quantitative Guide. CRC Press, Taylor & Francis Group, Boca Raton, FL.Google Scholar
- Bedrij, O. J. 1962. Carry-Select Adder, IRE Trans. Electron, 11, 3,(June 1962), 340--346.Google Scholar
- Wing, J. M., 1990. A specifier's introduction to formal methods. Computer, 23, 9, (Sept. 1990), 8--22.Google Scholar
- ISO/IEC 13568, 2002. Information Technology: Z Formal Specification Notation - Syntax, Type, System, and Semantics First ed. ISO/IEC.Google Scholar
- Martins, L. E. G. and Gorschek, T. 2017. Requirements engineering for safety-critical systems: overview and challenges, IEEE Software, 34, 4, (July/Aug. 2017), 49--57.Google Scholar
- Xiang, J.; Futatsugi, K.; He, Y. 2004. Fault Tree and Formal Methods in System Safety Analysis, Proceedings. The Fourth International Conference on Computer and Information Technology (ICCICT), Wuhan, China, 1108--1115.Google ScholarDigital Library
- Tay, K. M. 2009. On Fuzzy Inference System Based Failure Mode and Effect Analysis (FMEA) Methodology, Proceedings of the 2009 International Conference of Soft Computing and Pattern Recognition, (SOCPAR), 2009. 329--334.Google ScholarDigital Library
- Daramola, O.; Stalhane, T.; Sindre, G.; Omoronyia, I. 2009. Enabling hazard identification from requirements and reuse-oriented HAZOP analysis, Proceeding of the Proceedings of the 2009 International Conference of Soft Computing and Pattern Recognition (SOCPAR), 3--11.Google Scholar
- Martins, L. E. G. and Gorschek, T. 2011. A method for evaluating rigor and industrial relevance of technology evaluations. Empirical Software Engineering. 16. (June 2011). 365--395.Google Scholar
- Lutz, R. R. 1993. Analyzing software requirements errors in safety-critical, embedded systems, Proceedings of the IEEE International Symposium on Requirements Engineering, California, USA 126--133.Google Scholar
- Hamilton D., Covington R., and Kelly, J. 1995. Experiences in applying formal methods to the analysis of software and system requirements, Proceedings of the IEEE Workshop on Industrial-Strength Formal Specification Techniques, Boca Raton, FL. 30--43.Google Scholar
- Bowen, J. 1993 Formal methods in safety-critical standards, Proceedings of the Software Engineering Standards Symposium, Brighton, 168--177.Google ScholarCross Ref
- RTCA, Software Considerations in Airborne Systems and Equipment Certification. DO-178C, Radio Technical Commission for Aeronautics (RTCA), Washington DC, USA,. 2011.Google Scholar
- Jacky, J. 1995. Specifying a safety-critical control system in Z, IEEE Transactions on Software Engineering. 21, 2. (Feb. 1995) 99--106.Google ScholarDigital Library
- Fang, Q., Zhang, C., Ye, X., Shi, J. Zhang, X. 2014. A new approach for developing safety-critical software in automotive industry, IEEE 5th International Conference on Software Engineering and Service Science, Beijing, 64--69.Google ScholarCross Ref
- Bellairs, R. 2019 What Is ISO 26262? An Overview. Preforce.Google Scholar
- OSEK 2005. OSEK/VDK Operating System, version 2.2.3, OSEK.Google Scholar
- Jin Song Dong, N., Fulton, Zucconi L., Colton, J. 1997. Formalising process scheduling requirements for an aircraft operational flight program. First IEEE International Conference on Formal Engineering Methods, Hiroshima, Japan. 161--168.Google ScholarCross Ref
- Budiyanto, I. B., Kistijantoro, A. I., Trilaksono, B. R. 2015 Formal verification of integrated modular avionics (IMA) health monitoring using timed automata. International Seminar on Intelligent Technology and Its Applications (ISITIA), Indonesia. 291--296.Google Scholar
- Bharadwaj, R., Heitmeyer, C. 2000. Developing high assurance avionics systems with the SCR requirements method. Proceeding of the 19th Digital Avionics Systems Conference. 1. 1--8.Google ScholarCross Ref
Index Terms
- A Review of Applications of Formal Specification in Safety-Critical System Development
Recommendations
Towards a Formal Basis for the Formal Development Method and the Ina Jo Specification Language
Special issue on computer security and privacyIn carrying out SDC's Formal Development Method, one writes a specification of a system under design in the Ina Jo™ specification language and proves that the specification meets the requirements of the system. This paper develops an abstract machine ...
A Formal Framework for ASTRAL Intralevel Proof Obligations
ASTRAL is a formal specification language for real-time systems. It is intended to support formal software development, and therefore has been formally defined. This paper focuses on how to formally prove the mathematical correctness of ASTRAL ...
Informal and Formal Requirements Specification Languages: Bridging the Gap
The differences between informal and formal requirements specification languages are noted, and the issue of bridging the gap between them is discussed. Using structured analysis (SA) and the Vienna development method (VDM) as surrogates for informal ...
Comments