Abstract
Testing plays a vital role in the evolution and establishment of any quality product as well as any quality system. Testing is essential to prove the correctness (valid output when input is valid, and proper handling techniques when input is invalid) of the system and it is crucial to prove the compatibility of the system with the operating environment. In component-based software systems, various components interact with each other to access as well as provide required functionalities. In such complex systems testing is one of the most important activities. Since component-based software engineering relies on the concept of “use of pre-built and pre-tested components”, our focus here, is on functional testing rather than structural testing. Functional testing emphasizes the behavioural attributes of the components when they interact with each other. Components interact through operands and parameters. In this paper we suggest functional testing strategy and test case generation technique for component-based software. When two components are integrated then they generate some specific effect. This strategy is named Integration-effect graph. This strategy is a black-box technique as it covers the input and output domains only. We have used the graph theory notations to show the integration and interaction among the components.
Similar content being viewed by others
References
Basili VR (2001) Cots-based systems top 10 list. IEEE Comput 34(5):91–93
Bennatan EM (1992) Software project management: a practitioner’s approach. McGraw-Hill Ryerson, Limited, UK
Berge C (1973) Graphs and hypergraphs. North-Holland, Amsterdam
Capretz L (2005) Y: a new component-based software life cycle model. J Comput Sci 1(1):76–78
Chen J (2011) Complexity metrics for component-based software systems. Int J Digit Content Technol Its Appl 5(3):235–244
Elberzhager F, Rosbach A, Münch J, Eschbach R (2012) Reducing testing effort: a systematic mapping study on existing approaches. Inf Softw Technol 54(10):1092–1106
Gao JZ, Tsao HS, Wu Y (2003) Testing and quality assurance for component-based software. Artech House, Boston
Gill NS, Balkishan (2008) Dependency and interaction oriented complexity metrics of component based systems. ACM SIGSOFT Softw Eng Notes 33(2). doi:10.1145/1350802.1350810
Kozaczynski W, Booch G (1998) Component-based software engineering. IEEE Softw 15(5):34–36
McCabe T (1976) A complexity measure. IEEE Trans Softw Eng 2(8):308–320
Myers GJ (2004) The art of software testing, 2nd edn. Wiley, New York
Ntafos SC (1988) A comparison of some structural testing strategies. IEEE Trans Softw Eng 14(6):868–874
Ostrand TJ, Balcer MJ (1988) The category-partition method for specifying and generating functional tests. Commun ACM 31(6):676–686
Pressmen SR (2001) Software engineering: a practitioners Approach, 5th edn. McGraw Hill, International
Ramamoorthy C, Ho S, Chen W (1976) On the automated generation of program test data. IEEE Trans Softw Eng 2(4):293–300
Senthil R, Kushwaha DS, Mishra AK (2007) An improved component model for component based software engineering. ACM SIGSOFT Softw Eng Notes 32(4). doi:10.1145/1281421.1281431
Shepperd M (1998) A critique of cyclomatic complexity as software metric. Softw Eng J 3(2):30–36
Tiwari U, Kumar S (2014) Cyclomatic complexity for component based software. ACM SIGSOFT Softw Eng Notes 39(1):1–6
Tsai WT, Saimi A, Yu L, Paul R (2003) Scenario-based object-oriented testing framework. In: Proceedings of the third international conference on quality software (QSIC’03), IEEE, 2003, pp 410–417
Tyagi K, Sharma A (2014) An adaptive neuro fuzzy model for estimating the reliability of component-based software systems. Appl Comput Inform Elsevier 10:38–51
Voas JM (1992) A dynamic testing complexity metric. Software Qual J 1(2):101–114
Voas JM, Miller KW (1992) The revealing power of a test case. J Softw Test Verif Reliab 2(1):25–42
Voas JM, Miller KW (1995) Software testability: the new verification. IEEE Softw 12(3):17–28
Weyukar EJ (1993) More experience with data flow testing. IEEE Trans Softw Eng 19(9):912–919
Weyuker EJ (1998) Testing component-based software: a cautionary tale. IEEE Softw 15(5):54–59
Author information
Authors and Affiliations
Corresponding author
Rights and permissions
About this article
Cite this article
Tiwari, U.K., Kumar, S. Components integration-effect graph: a black box testing and test case generation technique for component-based software. Int J Syst Assur Eng Manag 8, 393–407 (2017). https://doi.org/10.1007/s13198-016-0442-2
Received:
Revised:
Published:
Issue Date:
DOI: https://doi.org/10.1007/s13198-016-0442-2