Skip to main content
Log in

A scalable method for testing real-time systems

  • Published:
Software Quality Journal Aims and scope Submit manuscript

Abstract

Real-time systems (RTSs) are used in different domains such as telephone switching systems, air traffic control systems and patient monitoring systems. The behavior of RTSs is time-sensitive; that is, RTSs interact with their environment with input and output events under time constraints. The violation of such time constraints is the main cause of the misbehavior of RTSs, and may result in severe damage to human lives and the environment [Mandrioli, D., Morasca, S., & Morzenti, A. 1995. ACM Transactions on Computer Systems, 13(4), 365–398]. To prevent failures in RTSs, we must verify that the implementation of an RTS is correct before its deployment. Testing is one of the formal techniques that can be used to achieve this goal. It consists of three main phases: test generation, test execution, and test results analysis. This paper presents a test case generation method for RTSs modeled as Timed Input Output Automata (TIOA). The approach is made in two steps. First, the TIOA describing the system being tested is sampled to construct a subautomaton, which is easily testable (i.e., easy to generate test cases from it). Then, the resulting subautomaton is traversed to generate test cases. Our method is scalable in the sense that it generates a small number of test cases even when the specifications are significant. Moreover, the test cases derived by our method are executable (i.e., they can be run on any error-free implementation of the system being tested).

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6

Similar content being viewed by others

References

  • Alur, R., & Dill, D. (1994). A theory of timed automata. Theoretical Computer Science, 126, 183–235.

    Article  MATH  MathSciNet  Google Scholar 

  • Cardell-Oliver, R., & Glover, T. (1998). A practical and complete algorithm for testing real-time systems. In 5th international symposium on formal techniques in real-time and fault tolerant systems FTRTFT’98, Lyngby, Denmark, pp. 251–261, September 1998.

  • Čerāns, K. (1992). Decidability of bisimulation equivalences for parallel timer processes. In G. von Bochmann & D. K. Probst (Eds.), Proceedings of the 4th international workshop on computer aided verification, Montreal, Canada, volume 663 of Lecture Notes in Computer Science, pp. 302–315. Springer-Verlag.

  • Chow, T. S. (1978). Testing software design modeled by finite state machine. IEEE Transactions Software Engineering, SE-4(3), 178–187.

    Article  Google Scholar 

  • Clarke, D., & Lee, I. (1997). Automatic generation of tests for timing constraints from requirements. In Proceedings of the third international workshop on object-oriented real-time dependable systems, Newport Beach, California, February 1997.

  • Dasarathy, B. (1985). Timing constraints of real-time systems: Constructs for expressing them, methods of validating them. IEEE Transactions on Software Engineering, 11(1), 80–86.

    Article  Google Scholar 

  • De Nicola, R., & Hennessy, M. (1984). Testing equivalences for processes. Theoretical Computer Science, 34, 83–133.

    Article  MATH  MathSciNet  Google Scholar 

  • En-Nouaary, A., & Dssouli, R. (2003). A guided method for testing timed automata. In TESTCOM Nice, France, May 2003.

  • En-Nouaary, A., Dssouli, R., & Elqortobi, A. (1997). Génération de Tests Temporisés. In Proceedings of the 6th Colloque Francophone de l’ingénierie des Protocoles, HERMES, ISBN 2-86601-639-4

  • En-Nouaary, A., Dssouli, R., & Khendek, F. (2002). Timed Wp-method: Testing real-time systems. IEEE Transactions on Software Engineering, 28(11), 1023–1038.

    Article  Google Scholar 

  • En-Nouaary, A., Dssouli, R., Khendek, F., & Elqortobi, A. (1998). Timed test cases generation based on state characterisation technique. In 19th IEEE real-time systems symposium (RTSS’98), Madrid, Spain, pp. 220–230, December 2–4, 1998.

  • En-Nouaary, A., Khendek, F., & Dssouli, R. (1999). Fault coverage in testing real-time systems. In 6th international conference on real-time systems computing systems and applications (RTCSA’99), Hong Kong, December 13–15, 1999.

  • Fecko, M. A., Amer, P. D., Uyar, M. U., & Duale, A. Y. (2000). Test generation in the presence of conflicting timers. In TESTCOM Ottawa, Canada, pp. 91–105.

  • Fujiwara, S., Bochmann, G. V., Khendek, F., Amalou, M., & Ghedamsi, A. (1991). Test selection based on finite-state models. IEEE Transactions Software Engineering, SE-17(6), 591–603.

    Article  Google Scholar 

  • Garland, S. J. (2005). The tioa language and toolset, http://tioa.csail.mit.edu/

  • Gonenc, G. (1970). A method for the design of fault detection experiment. IEEE Transactions on Computers, C-19, 551–558.

    Article  Google Scholar 

  • Higashino, T., Nakata, A., Taniguchi, K., & Cavalli, A. (1999). Generating test cases for a timed I/O automaton model. In Proceedings of the international workshop on testing communica ting systems (IWTCS’99), Budapest, Hungary, pp. 197–214.

  • ISO9646. (1991). Information processing systems – open systems interconnection – osi conformance testing methodology and framework, part 1: General concepts, part 2: Abstract test specification, part 3: The tree and tabular combined notation (ttcn), part 4: Test realization, part 5: Requirements on test laboratories and clients for the conformance assessment process. International Standard 9646, International Organization for Standardization – Information Technology – Open Systems Interconnection, Genève.

  • Khoumsi, A., Akalay, M., Dssouli, R., En-Nouaary, A., & Granger, L. (2000). An approach for testing real-time protocols. In TESTCOM Ottawa, Canada, August–September 2000.

  • Khoumsi, A., En-Nouaary, A., Dssouli, R., & Akalay, M. (2000). A new method for testing real-time systems. In RTCSA, Cheju Island, South Korea, pp. 441–451, December 2000.

  • Koné, O., Laurencot, P., & Castanet, R. (1998). On the fly test generation for real-time protocols. In Proceedings of the seventh international conference on computer communications and networks, Lafayette, Louisiana, USA, pp. 378–387, October 1998.

  • Larsen, K. G., & Yi, W. (1993). Time abstracted bisimulation: implicit specification and decidability. In: Proceedings mathematical foundations of programming semantics (MFPS 9), volume 802 of Lecture Notes in Computer Science, pp. 160–176, New Orleans, USA, April 1993. Springer-Verlag.

  • Mandrioli, D., Morasca, S., & Morzenti, A. (1995). Generating test cases for real-time systems from logic specifications. ACM Transactions on Computer Systems, 13(4), 365–398.

    Article  Google Scholar 

  • Naito, S., & Tsunoyama, M. (1981). Fault detection for sequential machines by transition-tours. Proceedings of fault tolerant computer systems, pp. 238–243.

  • Nielsen, B., & Skou, A. (1998). Automated test generation from timed automata. In 5th international symposium on formal techniques in real-time and fault tolerant systems FTRTFT’98, Lyngby, Denmark, pp. 59–77, September 1998.

  • Sabnani, K., & Dahbura, A. T. (1988). A protocol testing procedure. Computer Networks and ISDN Systems, 15(4), 285–297.

    Article  Google Scholar 

  • Salva, S., Petitjean, E., & Fouchal, H. (2001). A simple approach to testing timed systems. In Proceedings of the first workshop on formal approaches to testing of software, (FATES’01), Aalborg, Denmark, pp. 93–108, August 2001.

  • Springintveld, J., & Vaandrager, F. (1996). Minimizable timed automata. In B. Jonsson & J. Parrow (Eds.), Proceedings of the fourth international school and symposium on formal techniques in real time and fault tolerant systems, Uppsala, Sweden, volume 1135 of Lecture Notes in Computer Science. Springer-Verlag.

  • Springintveld, J., Vaadranger, F., & Dargenio, P. (2001). Testing timed automata. Theoretical Computer Science, 254, 225–257.

    Article  MATH  MathSciNet  Google Scholar 

  • Taylor, B. (1980). Introducing real-time constraints into requirements and high level design of operating systems. In In Proceedings of national telecommunications conference, Houston, TX, Vol. 1, pp. 18.5.1–18.5.5.

  • Tretmans, J. (1992). A formal approach to conformance testing. Ph.D. Thesis, Department of Computer Science, University of Twente, December 1992.

  • Vuong, S. T., Chan, W. W. L., & Ito, M. R. (1989). The UIOv method for protocol test sequence generation. In Proceedings of the 2-nd international workshop protocol test system, Berlin, Germany.

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Abdeslam En-Nouaary.

Rights and permissions

Reprints and permissions

About this article

Cite this article

En-Nouaary, A. A scalable method for testing real-time systems. Software Qual J 16, 3–22 (2008). https://doi.org/10.1007/s11219-007-9021-8

Download citation

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s11219-007-9021-8

Keywords

Navigation