Skip to main content

Specifying a Testing Oracle for Train Stations – Going beyond with Product Line Technology

  • Conference paper
Models in Software Engineering (MODELS 2011)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 7167))

Abstract

This paper presents an approach for automatically generating a testing oracle for train stations. Based on a model of a train station and a formal definition of the behavior of the station, Alloy is used to generate all positive traces from a given situation. By specifying the precondition (test input), a simulation of the station model gives all legal train movement from this state, which defines the testing oracle. This oracle can be used for checking the result of testing the implementation of the station by comparing the train movement from the test with the legal train movement specified by the oracle. We suggest a prototype implementation based on the Train Control Language and give an example oracle for a typical test-case. Furthermore, we elaborate on the benefits of using product line technology, given by the Common Variability Language, to reduce the analysis effort necessary to obtain the oracle for product models.

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

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Andoni, A., Daniliuc, D., Khurshid, S., Marinov, D.: Evaluating the Small Scope Hypothesis, MIT CSAIL MIT-LCS-TR-921 (2003)

    Google Scholar 

  2. EMF, Eclipse Modeling Framework, http://www.eclipse.org/modeling/emf/

  3. Endresen, J., Carlson, E., Moen, T., Alme, K.-J., Haugen, Ø., Olsen, G.K., Svendsen, A.: Train Control Language - Teaching Computers Interlocking. In: Computers in Railways XI (COMPRAIL 2008), Toledo, Spain (2008)

    Google Scholar 

  4. Engström, E., Runeson, P.: Software Product Line Testing - a Systematic Mapping Study. Information and Software Technology 53, 2–13 (2011)

    Article  Google Scholar 

  5. Fleurey, F., Haugen, Ø., Møller-Pedersen, B., Olsen, G.K., Svendsen, A., Zhang, X.: A Generic Language and Tool for Variability Modeling, SINTEF, Oslo, Norway, Technical Report SINTEF A13505 (2009)

    Google Scholar 

  6. GMF, Eclipse Graphical Modeling Framework, http://www.eclipse.org/modeling/gmf/

  7. Haugen, O., Møller-Pedersen, B., Oldevik, J., Olsen, G.K., Svendsen, A.: Adding Standardized Variability to Domain Specific Languages. In: SPLC 2008, Limerick, Ireland (2008)

    Google Scholar 

  8. Haugen, Ø., Husa, K., Runde, R., Stølen, K.: Stairs Towards Formal Design with Sequence Diagrams. Software and Systems Modeling 4, 355–357 (2005)

    Article  Google Scholar 

  9. Jackson, D.: Software Abstractions: Logic, Language, and Analysis. The MIT Press (2006)

    Google Scholar 

  10. Jacob, J.: Trace Specifications in Alloy. In: Frappier, M., Glässer, U., Khurshid, S., Laleau, R., Reeves, S. (eds.) ABZ 2010. LNCS, vol. 5977, pp. 105–117. Springer, Heidelberg (2010)

    Chapter  Google Scholar 

  11. Kanso, K., Moller, F., Setzer, A.: Automated Verification of Signalling Principles in Railway Interlocking Systems. Electron. Notes Theor. Comput. Sci. 250, 19–31 (2009)

    Article  Google Scholar 

  12. Kelsen, P., Ma, Q.: A Lightweight Approach for Defining the Formal Semantics of a Modeling Language. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 690–704. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  13. Lamancha, B.P., Usaola, M.P., Velthius, M.P.: Software Product Line Testing - a Systematic Review. In: Boris, S., José, C., Alpesh, R. (eds.) International Conference on Software and Data Technologies - ICSOFT, pp. 23–30. INSTICC Press (2009)

    Google Scholar 

  14. Memon, A.M., Pollack, M.E., Soffa, M.L.: Automated Test Oracles for Guis. In: Proceedings of the 8th ACM SIGSOFT International Symposium on Foundations of Software Engineering: Twenty-First Century Applications, pp. 30–39. ACM, San Diego (2000)

    Google Scholar 

  15. Memon, A.M., Pollack, M.E., Soffa, M.L.: Automated Test Oracles for Guis. SIGSOFT Softw. Eng. Notes 25, 30–39 (2000)

    Article  Google Scholar 

  16. Neto, A.C.D., Subramanyan, R., Vieira, M., Travassos, G.H.: A Survey on Model-Based Testing Approaches: A Systematic Review. In: 1st ACM International Workshop on Empirical Assessment of Software Engineering Languages and Technologies: held in conjunction with the 22nd IEEE/ACM International Conference on Automated Software Engineering (ASE 2007), pp. 31–36. ACM, Atlanta (2007)

    Google Scholar 

  17. Peters, D., Parnas, D.L.: Generating a Test Oracle from Program Documentation: Work in Progress. In: 1994 ACM SIGSOFT International Symposium on Software Testing and Analysis, Seattle, Washington, United States (1994)

    Google Scholar 

  18. Pohl, K., Metzger, A.: Software Product Line Testing. Commun. ACM. 49, 78–81 (2006)

    Article  Google Scholar 

  19. Shafique, M., Labiche, Y.: A Systematic Review of Model Based Testing Tool Support, Technical Report SCE-10-04, Department of Systems and Computer Engineering, Carleton University, Ottawa, Canada (2010)

    Google Scholar 

  20. Svendsen, A., Haugen, Ø., Møller-Pedersen, B.: Analyzing Variability: Capturing Semantic Ripple Effects. In: France, R.B., Kuester, J.M., Bordbar, B., Paige, R.F. (eds.) ECMFA 2011. LNCS, vol. 6698, pp. 253–269. Springer, Heidelberg (2011)

    Chapter  Google Scholar 

  21. Svendsen, A., Haugen, Ø., Møller-Pedersen, B.: Specifying a Testing Oracle for Train Stations. In: Model-Driven Engineering, Verification, and Validation: Integrating Verification and Validation in MDE Workshop (MoDeVVa 2011). Co-located with MODELS 2011. ACM, Wellington (2011)

    Google Scholar 

  22. Svendsen, A., Haugen, Ø., Møller-Pedersen, B.: Using Variability Models to Reduce Verification Effort of Train Station Models. In: 18th Asia Pacific Software Engineering Conference (APSEC 2011). IEEE, Ho Chi Minh City (2011)

    Google Scholar 

  23. Svendsen, A., Møller-Pedersen, B., Haugen, Ø., Endresen, J., Carlson, E.: Formalizing Train Control Language: Automating Analysis of Train Stations. In: Ning, B., Brebbia, C.A. (eds.) Comprail 2010, pp. 245–256. WIT Press, Beijing (2010)

    Google Scholar 

  24. Svendsen, A., Olsen, G.K., Endresen, J., Moen, T., Carlson, E.J., Alme, K.-J., Haugen, Ø.: The Future of Train Signaling. In: Czarnecki, K., Ober, I., Bruel, J.-M., Uhl, A., Völter, M. (eds.) MODELS 2008. LNCS, vol. 5301, pp. 128–142. Springer, Heidelberg (2008)

    Chapter  Google Scholar 

  25. Svendsen, A., Zhang, X., Haugen, Ø., Møller-Pedersen, B.: Towards Evolution of Generic Variability Models. In: Kienzle, J. (ed.) MODELS 2011 Workshops. LNCS, vol. 7167, pp. 53–67. Springer, Heidelberg (2012)

    Google Scholar 

  26. Utting, M., Pretschner, A., Legeard, B.: A Taxonomy of Model-Based Testing, Working paper series. Department of Computer Science, University of Waikato, Hamilton, New Zealand (2006)

    Google Scholar 

  27. Uzuncaova, E., Garcia, D., Khurshid, S., Batory, D.: Testing Software Product Lines Using Incremental Test Generation. In: Proceedings of the 19th International Symposium on Software Reliability Engineering, pp. 249–258. IEEE Computer Society (2008)

    Google Scholar 

  28. Uzuncaova, E., Khurshid, S., Batory, D.: Incremental Test Generation for Software Product Lines. IEEE Trans. Softw. Eng. 36, 309–322 (2010)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2012 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Svendsen, A., Haugen, Ø., Møller-Pedersen, B. (2012). Specifying a Testing Oracle for Train Stations – Going beyond with Product Line Technology. In: Kienzle, J. (eds) Models in Software Engineering. MODELS 2011. Lecture Notes in Computer Science, vol 7167. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-29645-1_20

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-29645-1_20

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-29644-4

  • Online ISBN: 978-3-642-29645-1

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics