Built-In Data-Flow Integration Testing in Large-Scale Component-Based Systems

  • Éric Piel
  • Alberto Gonzalez-Sanchez
  • Hans-Gerhard Gross
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 6435)


Modern large-scale component-based applications and service ecosystems are built following a number of different component models and architectural styles, such as the data-flow architectural style. In this style, each building block receives data from a previous one in the flow and sends output data to other components. This organisation expresses information flows adequately, and also favours decoupling between the components, leading to easier maintenance and quicker evolution of the system. Integration testing is a major means to ensure the quality of large systems. Their size and complexity, together with the fact that they are developed and maintained by several stake holders, make Built-In Testing (BIT) an attractive approach to manage their integration testing. However, so far no technique has been proposed that combines BIT and data-flow integration testing. We have introduced the notion of a virtual component in order to realize such a combination. It permits to define the behaviour of several components assembled to process a flow of data, using BIT. Test-cases are defined in a way that they are simple to write and flexible to adapt. We present two implementations of our proposed virtual component integration testing technique, and we extend our previous proposal to detect and handle errors in the definition by the user. The evaluation of the virtual component testing approach suggests that more issues can be detected in systems with data-flows than through other integration testing approaches.


Component Model Input Port Composite Component Architectural Style Integration Testing 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.


  1. 1.
    Abdullah, K., Kimble, J., White, L.: Correcting for unreliable regression integration testing. In: ICSM 1995: Proceedings of the International Conference on Software Maintenance, p. 232. IEEE Computer Society, Washington (1995)CrossRefGoogle Scholar
  2. 2.
    Beer, A., Heindl, M.: Issues in testing dependable event-based systems at a systems integration company. In: ARES 2007: Proceedings of the the Second International Conference on Availability, Reliability and Security, pp. 1093–1100. IEEE Computer Society, Washington (2007)CrossRefGoogle Scholar
  3. 3.
    Bertolino, A., Inverardi, P., Muccini, H., Rosetti, A.: An approach to integration testing based on architectural descriptions. In: ICECCS 1997: Proceedings of the Third IEEE International Conference on Engineering of Complex Computer Systems, p. 77. IEEE Computer Society, Washington (1997)Google Scholar
  4. 4.
    Brenner, D., Atkinson, C., Malaka, R., Merdes, M., Paech, B., Suliman, D.: Reducing verification effort in component-based software engineering through built-in testing. Information Systems Frontiers 9(2-3), 151–162 (2007)CrossRefGoogle Scholar
  5. 5.
    E. U. Commission, Maritime Affairs: An integrated maritime policy for the european union (October 2007)Google Scholar
  6. 6.
    Gao, J.Z., Tsao, H.S.J., Wu, Y.: Testing and Quality Assurance for Component-Based Software. Artech House, Norwood (2003)zbMATHGoogle Scholar
  7. 7.
    González, A., Piel, É., Gross, H.G.: Architecture support for runtime integration and verification of component-based systems of systems. In: 1st International Workshop on Automated Engineering of Autonomous and run-time evolving Systems (ARAMIS 2008), pp. 41–48. IEEE Computer Society, L’Aquila (Septmeber 2008)Google Scholar
  8. 8.
    Green Hat Software: Lessons from testing service oriented architectures white paper (2008)Google Scholar
  9. 9.
    Gross, H.G.: Component-Based Software Testing with UML. Springer, Heidelberg (2005)zbMATHGoogle Scholar
  10. 10.
    Gross, H.G., Mayer, N.: Built-in contract testing in component integration testing. Electronic Notes in Theoretical Computer Science 82(6), 22–32 (2004)CrossRefGoogle Scholar
  11. 11.
    Hopcroft, J., Tarjan, R.: Algorithm 447: efficient algorithms for graph manipulation. Commun. ACM 16(6), 372–378 (1973)CrossRefGoogle Scholar
  12. 12.
    International Telecommunication Union: Recommendation ITU-R M.1371-1 (2001)Google Scholar
  13. 13.
    Jorgensen, P.: Software Testing: A Craftman’s Approach. CRC Press, Inc., Boca Raton (2001)Google Scholar
  14. 14.
    Object Management Group: UML 2 Infrastructure (Final Adopted Specification) (Septmeber 2003),
  15. 15.
    Paul, R.: End-to-end integration testing. In: APAQS 2001: Proceedings of the Second Asia-Pacific Conference on Quality Software, p. 211. IEEE Computer Society, Washington (2001)CrossRefGoogle Scholar
  16. 16.
    Piel, É., Gonzalez-Sanchez, A.: Data-flow integration testing adapted to runtime evolution in component-based systems. In: Workshop Software Integration and Evolution @ Runtime. ACM, Amsterdam (August 2009)Google Scholar
  17. 17.
    Shaw, M., Garlan, D.: Software Architecture: Perspectives on an emerging discipline. Prentice-Hall, Englewood Cliffs (1996)zbMATHGoogle Scholar
  18. 18.
    Suliman, D., Paech, B., Borner, L., Atkinson, C., Brenner, D., Merdes, M., Malaka, R.: The MORABIT approach to runtime component testing. In: 30th Annual International Computer Software and Applications Conference. pp. 171–176 (Septmeber 2006)Google Scholar
  19. 19.
  20. 20.
    Vincent, J., King, G., Lay, P., Kinghorn, J.: Principles of built-in-test for run-time-testability in component-based software systems. Software Quality Journal 10(2), 115–133 (2002)CrossRefGoogle Scholar
  21. 21.
    Yuan, X., Memon, A.M.: Generating event sequence-based test cases using GUI run-time state feedback. IEEE Transactions on Software Engineering 36(1) (2010)Google Scholar
  22. 22.
    Zhu, H., He, X.: A Methodology of Component Integration Testing. In: Testing Commercial-off-the-Shelf Components and Systems, pp. 239–269. IEEE Computer Society, Los Alamitos (2005)CrossRefGoogle Scholar

Copyright information

© IFIP International Federation for Information Processing 2010

Authors and Affiliations

  • Éric Piel
    • 1
  • Alberto Gonzalez-Sanchez
    • 1
  • Hans-Gerhard Gross
    • 1
  1. 1.Software Technology DepartmentDelft University of TechnologyThe Netherlands

Personalised recommendations