Abstract.
In 1988 X-machines were proposed as a basis for a specification language and, since then, a number of further investigations have demonstrated the value of this idea. A number of classes of X-machines have been identified and studied, most importantly the class of stream X-machines. A theory of testing based on stream X-machines has also been developed. This allows the generation of test sets which, if satisfied, guarantee, under certain constraints, the correctness of implementation with respect to specification. This paper extends this theory in two ways. Firstly, it considers the general X-machine model rather than the particular stream X-machine class. Secondly, the theoretical results proved give rise to at least two different testing strategies. These results are then particularised to the stream X-machine class.
Similar content being viewed by others
Explore related subjects
Discover the latest articles, news and stories from top researchers in related subjects.References
Bălăanescu, T., Gheorghe, M., Ipate, F., Holcombe, M.: Formal black box testing for partially specified deterministic finite state machines. Foundations of Computing and Decision Systems 28/1, (2003)
Barnard, J., Whitworth, J., Woodward, M.: Communicating X-machines. Infor. Software Technol. 38, 401–407 (1996)
Băalăanescu, T.: Generalised stream X machines with output delimited type. Fornal Aspects of Comput. 12, 473–484 (2001)
Băalăanescu, T., Cowling, T., Georgescu, H., Gheorghe, M., Holcombe, M., Vertan, C.: Communicating Stream X-machines Systems are no more than X-machines. J. Universal Comput. Sci. 494–507 (1999)
Băalăanescu, T., Gheorghe, M., Holcombe, M.: Deterministic stream X-machines based on grammar systems. In: C. Martin-Vide and V. Mitrana (eds.) Words, sequences, grammars, languages: where biology, computer science, linguistics and mathematics meet, Vol. 1. Kluwer 2000
Bernot, G., Gaudel, M., Marre, B.: Software testing based on formal specifications: a theory and a tool. Software Eng. J. 6, 387–405 (1991)
Cheng, K.-T., Krishnakumar, A.S.: Automatic functional Test generation using the extended finite state machine mode. Proc. DAC 1–6 (1993)
Chow, T.S.: Testing software design modelled by finite state machines. IEEE Transactions on Software Eng. 4, 178–187 (1978)
Chun, W., Amer, P.D.: Test case generation for protocols specified in estelle. Proc. of the Third International Conference on: Formal Description Techniques, 197–210 (1990)
Dauchy, P., Gaudel, M., Marre, B.: Using algebraic specifications in software testing: a case study on the software of an automatic subway. J. Syst. Software 21, 229–244 (1993)
Eilenberg, S.: Automata, languages and machines. Vol. A, Academic Press, 1974
Fairtlough, M., Holcombe, M., Ipate, F., Jordan, C., Laycock, G., Duan, Z.: Using an X-machine to Model a Video Cassette Recorder. Current issues in electronic modelling 3, 141–161 (1995)
Fujiwara, S., Bochmann, G.v., Khendek, F., Amalou, M., Ghedamsi, A.: Test selection based on finite state models. Publication #716, Departement d’informatique et de recherche operationnelle, University of Montreal, 1990
Fujiwara, S., Bochmann, G.v.: Testing non-deterministic finite state machines. Publication #758, Departement d’informatique et de recherche operationnelle, University of Montreal, 1991
Fujiwara, S., Bochmann, G.v., Khendek, F., Amalou, M., Ghedamsi, A.: Test selection based on finite state models. IEEE Transactions on Software Eng. 17, 591–603 (1991)
Gheorghe, M.: Generalised Stream X-Machines and Cooperating Distributed Grammar Systems. Formal Aspects of Computing 12, 459–472 (2001)
Hierons, R.M.: Testing from a Z specifications. Software Testing, Verification and Reliability 7, 19–33 (1997)
Holcombe, M.: X-machines as a basis for dynamic system specification. Software Eng. J. 3, 69–76 (1988)
Holcombe, M., Ipate, F., Grondoudis, A.: Complete functional testing of safety-critical systems. Safety and Reliability in Emerging Control Technologies: A Postprint volume from the IFAC Workshop on Safety and Reliability in Emerging Control Technologies. Daytona Beach, Florida, USA, 1995, pp. 199–204
Holcombe, M., Ipate, F.: Correct Systems: Building a Business Process Solution. Berlin: Springer, 1998
Ipate, F., Holcombe, M.: Another look at computability. Informatica 20, 359–372 (1996)
Ipate, F., Holcombe, M.: An integration testing method that is proved to find all faults. Intern. J. Comput. Math. 63, 159–178 (1997)
Ipate, F., Holcombe, M.: Specification and testing using generalized machines: a presentation and a case study. J. Software Testing, Verification and Reliability 8, 61–81 (1998)
Ipate, F., Holcombe, M.: A method for refining and testing generalised machine specifications. Intern. J. Computer Math. 68, 197–219 (1998)
Ipate, F., Holcombe, M.: Generating test sequences from non-deterministic generalised stream X-machines. Formal Aspects of Computing 12, 443–458 (2001)
Kefalas, P., Eleftherakis, G., Kehris, E.: Communicating X-machines: a practical approach for modular specification of large systems. Tech. Rep. CS-09/00, City College of Thessaloniki, 2000
Kwast, E.: Automatic test generation for protocol data aspects. Proc. IFIG WG6.1 12th Intl. Symp. on Protocol Specification, Testing and Verification. North Holland, 211–226 (1992)
Laycock, G.: Formal specification and testing. J. Software Testing, Verification and Reliability 2, 7–23 (1992)
Lee, D.Y., Lee, J.D.: Test generation for the specification written in Estelle. Proc. IPIF WG6.1 11th Intl. Symp on Protocol Specification, Testing and Verification. North-Holland, 1991, pp. 317–332
Lee, D., Yannakakis, M.: Principles and methods of testing finite state machines – a survey. Proceedings of the IEEE 84, 1090–1123 (1996)
Pressman, R.S.: Software engineering – a practitioner’s approach. 5th edn. McGraw Hill, 2000
Stocks, P., Carrington, D.: Test template framework: a specification-based test case study. SIGSOFT Software Eng. Notes 18, 11–18 (1993)
Wang, C.-J., Liu, M.T.: Generating test cases for EFSM with given fault models. Proc. INFOCOM, 774–781 (1993)
Author information
Authors and Affiliations
Corresponding author
Additional information
Key words: Testing, Finite state machine, (stream) X-machine, Formal specification.
Rights and permissions
About this article
Cite this article
Ipate, F., Gheorghe, M. & Holcombe, M. Testing (Stream) X-machines. AAECC 14, 217–237 (2003). https://doi.org/10.1007/s00200-003-0132-6
Received:
Revised:
Issue Date:
DOI: https://doi.org/10.1007/s00200-003-0132-6