Abstract
Review and testing are the most practical verification techniques that complement each other, and their effectiveness can be enhanced by utilizing formal specifications. In this paper, we describe a verification method that integrates specification-based review and testing for detecting errors of programs in three phases. First, inspection is used to check whether all the relevant conditions defined in a specification are implemented in the corresponding program and whether there are any errors that may prevent the program from normal termination. Second, testing is carried out to detect errors through dynamic executions of the program and to build a useful relation between the specification and the program. Finally, walkthrough analysis is performed to check whether every functional scenario defined in the specification is correctly implemented by the traversed execution paths in the program and whether any untraversed paths exist and are desired. We present an example to show how our method is applied in practice.
This work is supported by the Ministry of Education, Culture, Sports, Science and Technology of Japan under Grant-in-Aid for Scientific Research (No. 18500027).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
Bernot, G., Gaudel, M.C., Marre, B.: Software testing based on formal specifications: a theory and a tool. Software Engineering Journal, 387–405 (November 1991)
Stocks, P., Carrington, D.: A Framework for Specification-Based Testing. IEEE Transactions on Software Engineering 22(11), 777–793 (1996)
IEEE. 1028-1997 IEEE Standard for Software Reviews. IEEE Computer Society (1997)
Wheeler, D.A., Brykczynski, B., Meeson, R.N.: Software Inspection: An Industry Best Practice. IEEE Computer Society Press, Los Alamitos (1996)
Menachem, M.B., Marliss, G.S.: Software Quality: Producing Practical, Consistent Software. International Thomson Computer Press (1997)
Heyer, T.: Semantic Inspection of Early UML Designs. IEEE Transactions on Software Engineering 28(4), 413–430 (2002)
Liu, S., Nagoya, F., Chen, Y., Goya, M., McDermid, J.A.: An Automated Approach to Specification-Based Program Inspection. In: Lau, K.-K., Banach, R. (eds.) ICFEM 2005. LNCS, vol. 3785, pp. 421–434. Springer, Heidelberg (2005)
Nagoya, F., Liu, S., Chen, Y.: A Tool and Case Study for Specification-Based Program Review. In: COMPSAC 2005, Edinburgh, Scotland, July 25-28, pp. 375–380. IEEE Computer Society Press, Los Alamitos (2005)
Liu, S.: Formal Engineering for Industrial Software Development Using the SOFL Method. Springer, Heidelberg (2004)
Liu, S., Wang, H.: An Automated Approach to Specification Animation for Validation. Journal of Systems and Software 80, 1271–1285 (2007)
Liu, S.: Verifying Consistency and Validity of Formal Specifications by Testing. In: Wing, J.M., Woodcock, J., Davies, J. (eds.) Proceedings of the World Congress on Formal Methods in the Development of Computing Systems, Toulouse, France. LNCS, pp. 896–914. Springer, Heidelberg (1999)
Miller, T., Strooper, P.: A Framework and Tool Support for the Systematic Testing of Model-Based Specifications. ACM Transactions on Software Engineering and Methodology 12(4), 409–439 (2003)
Liu, S., Chen, Y.: A Relation-Based Method Combining Functional and Structural Testing for Test Case Generation. Journal of Systems and Software (to appear, 2007)
Dick, J., Faivre, A.: Automating the Generation and Sequencing of Test Cases from Model-based Specifications. In: Larsen, P.G., Woodcock, J.C.P. (eds.) FME 1993. LNCS, vol. 670, pp. 268–284. Springer, Heidelberg (1993)
Offutt, A.J., Liu, S.: Generating Test Data from SOFL Specifications. Journal of Systems and Software 49(1), 49–62 (1999)
Offutt, A.J., Liu, S., Abdurazik, A., Ammann, P.: Generating Test Data from State-Based Specifications. Journal of Software Testing, Verification and Reliability 13, 25–53 (2003)
Parnas, D.L., Madey, J., Iglewski, M.: Precise Documentation of Well-Structured Programs. IEEE Transactions on Software Engineering 20(12), 948–976 (1994)
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 2007 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Liu, S. (2007). Integrating Specification-Based Review and Testing for Detecting Errors in Programs. In: Butler, M., Hinchey, M.G., Larrondo-Petrie, M.M. (eds) Formal Methods and Software Engineering. ICFEM 2007. Lecture Notes in Computer Science, vol 4789. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-76650-6_9
Download citation
DOI: https://doi.org/10.1007/978-3-540-76650-6_9
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-76648-3
Online ISBN: 978-3-540-76650-6
eBook Packages: Computer ScienceComputer Science (R0)