Skip to main content

Structural Testing of Component-Based Systems

  • Conference paper

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 5282))

Abstract

Component based development of software systems needs to devise effective test management strategies in order fully achieve its perceived advantages of cost efficiency, flexibility, and quality in industrial contexts. In industrial systems with quality demands, while testing software, measures are employed to evaluate the thoroughness achieved by execution of a certain set of test cases. Typically, these measures are expressed in the form of coverage of different structural test criteria, e.g., statement coverage. However, such measures are traditionally applicable only on the lowest level of software integration (i.e., the component level). As components are assembled into subsystems and further into full systems, general measures of test thoroughness are no longer available. In this context, we formalize the added test effort and show to what extent the coverage of structural test criteria are maintained when components are integrated, in three representative component models. This enables focusing on testing the right aspects of the software at the right level of integration, and achieves cost reduction during testing — one of the most resource-consuming activities in software engineering.

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

Buying options

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

Learn about institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Zhu, H., Hall, P.A.V., May, J.H.R.: Software unit test coverage and adequacy. ACM Computing Surveys (CSUR) 29(4), 366–427 (1997)

    Article  Google Scholar 

  2. Juristo, N., Moreno, A.M., Vegas, S.: Reviewing 25 Years of Testing Technique Experiments. Journal of Empirical Software Engineering 9(1-2), 7–44 (2004)

    Article  Google Scholar 

  3. Frankl, P.G., Weyuker, E.J.: An Applicable Family of Data Flow Testing Criteria. IEEE Transactions of Software Engineering 14(10), 1483–1498 (1988)

    Article  MathSciNet  Google Scholar 

  4. Pavlopoulou, C., Young, M.: Residual test coverage monitoring. In: ICSE 1999: Proceedings of the 21st international conference on Software engineering, pp. 277–284. IEEE Computer Society Press, Los Alamitos (1999)

    Google Scholar 

  5. Craig, R.D., Jaskiel, S.P.: Systematic Software Testing. Artech House Publishers (2002)

    Google Scholar 

  6. van Veenendaal, E.: The Testing Practitioner. Uitgeverij Tutein Nolthenius (2002)

    Google Scholar 

  7. Copeland, L.: A Practitioner’s Guide to Software Test Design. STQE Publishing (2003)

    Google Scholar 

  8. Crnkovic, I., Larsson, M.: Building Reliable Component-Based Software Systems. Artech House Publishers (2002)

    Google Scholar 

  9. Lau, K.K., Wang, Z.: A Survey of Software Component Models, 2nd edn., May 2006. Pre-print CSPP-38, School of Computer Science, The University of Manchester (2006)

    Google Scholar 

  10. Shaw, M., Garland, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall, Englewood Cliffs (1996)

    Google Scholar 

  11. Sundmark, D., Pettersson, A., Sandberg, C., Ermedahl, A., Thane, H.: Finding DU-Paths for Testing of Multi-Tasking Real-Time Systems using WCET Analysis. In: Proceedings of the 7thInternational Workshop on Worst-Case Execution Time Analysis (WCET 2007) (July 2007)

    Google Scholar 

  12. Pretschner, A.: Compositional Generation of MC/DC Integration Test Suites. Electronic Notes in Theoretical Computer Science 82(6) (2003)

    Google Scholar 

  13. Goldberg, A., Wang, T.C., Zimmerman, D.: Applications of Feasible Path Analysis to Program Testing. In: ISSTA 1994: Proceedings of the 1994 ACM SIGSOFT international Symposium on Software Testing and Analysis, pp. 80–94. ACM Press, New York (1994)

    Google Scholar 

  14. Gustafsson, J., Ermedahl, A., Lisper, B.: Algorithms for Infeasible Path Calculation. In: Sixth International Workshop on Worst-Case Execution Time Analysis (WCET 2006), Dresden, Germany (July 2006)

    Google Scholar 

  15. Hayes, I., Fidge, C., Lermer, K.: Semantic Characterisation of Dead Control-Flow Paths. IEE Proceedings - Software 148(6), 175–186 (2001)

    Article  Google Scholar 

  16. Åkerholm, M., Carlson, J., Fredriksson, J., Hansson, H., Håkansson, J., Möller, A., Pettersson, P., Tivoli, M.: The SAVE approach to component-based development of vehicular systems. Journal of Systems and Software 80(5), 655–667 (2007)

    Article  Google Scholar 

  17. Nierstrasz, O., Arévalo, G., Ducasse, S., Wuyts, R., Black, A.P., Müller, P.O., Zeidler, C., Genssler, T., van den Born, R.: A component model for field devices. In: Proc. of the 1st Int. IFIP/ACM Working Conference on Component Deployment, pp. 200–209. Springer, Heidelberg (2002)

    Google Scholar 

  18. Sun Microsystems: JavaBeans Specification 1.01 (August 1997), http://java.sun.com/javase/technologies/desktop/javabeans/docs/spec.html

  19. Box, D.: Essential COM. Addison-Wesley, Reading (1997)

    MATH  Google Scholar 

  20. van Ommering, R., van der Linden, F., Kramer, J., Magee, J.: The Koala Component Model for Consumer Electronics Software. IEEE Computer 33(3), 78–85 (2000)

    Article  Google Scholar 

  21. Lundbäck, K.L., Lundbäck, J., Lindberg, M.: Component Based Development of Dependable Real-Time Applications. Technical report, Arcticus Systems, http://www.arcticus.se

  22. Sandström, K., Fredriksson, J., Åkerholm, M.: Introducing a component technology for safety critical embedded realtime systems. In: Crnković, I., Stafford, J.A., Schmidt, H.W., Wallnau, K. (eds.) CBSE 2004. LNCS, vol. 3054, pp. 194–209. Springer, Heidelberg (2004)

    Chapter  Google Scholar 

  23. Ke, X., Sierszecki, K., Angelov, C.: COMDES-II: A Component-Based Framework for Generative Development of Distributed Real-Time Control Systems. In: Proc. of the 13th IEEE International Conference on Embedded and Real-Time Computing Systems and Applications, pp. 199–208. IEEE, Los Alamitos (2007)

    Google Scholar 

  24. Bureš, T., Carlson, J., Crnković, I., Sentilles, S., Vulgarakis, A.: ProCom - the Progress Component Model Reference Manual, version 1.0. Technical Report MDH-MRTC-230/2008-1-SE, Mälardalen University (June 2008)

    Google Scholar 

  25. RTCA: Software Considerations in Airborne Systems and Equipment Certification, RTCA/DO-178B. RTCA (December 1992)

    Google Scholar 

  26. Yang, C.S.D., Pollock, L.L.: All-uses Testing of Shared Memory Parallel Programs. Software Testing, Verification and Reliability 13(1), 3–24 (2003)

    Article  Google Scholar 

  27. Chilenski, J.J., Miller, S.P.: Applicability of Modified Condition/Decision Coverage to Software Testing. Software Engineering Journal, 193–200 (1994)

    Google Scholar 

  28. Groß, H.G., Mayer, N.: Evolutionary testing in component-based real-time system construction. In: GECCO 2002: Proceedings of the Genetic and Evolutionary Computation Conference, San Francisco, CA, USA, p. 1393. Morgan Kaufmann Publishers Inc., San Francisco (2002)

    Google Scholar 

  29. Mao, C., Lu, Y.: Regression testing for component-based software systems by enhancing change information. In: APSEC 2005: Proceedings of the 12th Asia- Pacific Software Engineering Conference, Washington, DC, USA, pp. 611–618. IEEE Computer Society, Los Alamitos (2005)

    Google Scholar 

  30. Pelliccione, P., Muccini, H., Bucchiarone, A., Facchini, F.: TeStor: Deriving Test Sequences from Model-based Specifications. In: Heineman, G.T., Crnković, I., Schmidt, H.W., Stafford, J.A., Szyperski, C.A., Wallnau, K. (eds.) CBSE 2005. LNCS, vol. 3489, pp. 267–282. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  31. Weyuker, E.J.: Testing Component-Based Software: A Cautionary Tale. IEEE Softw. 15(5), 54–59 (1998)

    Article  Google Scholar 

  32. Katayama, T., Itoh, E., Ushijima, K., Furukawa, Z.: Test-Case Generation for Concurrent Programs with the Testing Criteria Using Interaction Sequences. In: Proceedings of sixth Asia-Pacific Software Engineering Conference (APSEC 1999), p. 590 (1999)

    Google Scholar 

  33. Taylor, R.N., Levine, D.L., Kelly, C.D.: Structural Testing of Concurrent Programs. IEEE Transactions on Software Engineering 18(3), 206–215 (1992)

    Article  Google Scholar 

  34. Wong, W.E., Lei, Y., Ma, X.: Effective Generation of Test Sequences for Structural Testing of Concurrent Programs. In: Proceedings of the 10th IEEE International Conference on Engineering of Complex Computer Systems (ICECCS 2005), Washington, DC, USA, pp. 539–548. IEEE Computer Society, Los Alamitos (2005)

    Google Scholar 

  35. Yang, R.D., Chung, C.G.: Path Analysis Testing of Concurrent Program. Information and Software Technology 34(1), 43–56 (1992)

    Article  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2008 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Sundmark, D., Carlson, J., Punnekkat, S., Ermedahl, A. (2008). Structural Testing of Component-Based Systems. In: Chaudron, M.R.V., Szyperski, C., Reussner, R. (eds) Component-Based Software Engineering. CBSE 2008. Lecture Notes in Computer Science, vol 5282. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-87891-9_12

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-87891-9_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-87890-2

  • Online ISBN: 978-3-540-87891-9

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics