The Coverage of the Object-Oriented Framework Application Class-Based Test Cases

An application framework provides a reusable design and implementation for a family of software systems. Frameworks are introduced to reduce the cost of a product line (i.e., family of products that share the common features). Software testing is a time consuming and costly ongoing activity during the application software development process. Generating reusable test cases for the framework applications at the framework development stage, and providing and using the test cases to test part of the framework application whenever the framework is used reduces the application development time and cost considerably. Framework Interface Classes (FICs) are classes introduced by the framework hooks to be implemented at the application development stage. They can have reusable test cases generated at the framework development stage and provided with the framework to test the implementations of the FICs at the application development stage. In this paper, we conduct a case study using thirteen applications developed using three frameworks; one domain oriented and two application oriented. The results show that, in general, the percentage of the number of FICs in the applications developed using domain frameworks is, on average, greater than the percentage of the number of FICs in the applications developed using application frameworks. Consequently, the reduction of the application unit testing time using the reusable test cases generated for domain frameworks is, in general, greater than the reduction of the application unit testing time using the reusable test cases generated for application frameworks.




References:
[1] K. Beck and R, Johnson. Patterns generated architectures, Proc. of
ECOOP 94, 1994, 139-149.
[2] G. Froehlich, H.J. Hoover, L. Liu, and P.G. Sorenson. Hooking into
Object-Oriented Application Frameworks, Proc. 19th Int'l Conf. on
Software Engineering, Boston, May 1997, 491-501.
[3] E. M. Fayad and D. C. Schmidt. Object-oriented application
frameworks, Communications of the ACM, October 1997, Vol. 40,
No. 10.
[4] K. Saleh, A. Boujarwah and J. Al-Dallal, "Anomaly detection in
concurrent Java programs using dynamic data flow analysis", Journal
of Information and Software Technology, Jan 2002, Vol 44, no 1, pp.
53-61.
[5] R. Binder. Testing object-oriented systems, Addison Wesley, 1999.
[6] J. Al Dallal and P. Sorenson, Generating Class-Based Test Cases for
Interface Classes of Object-Oriented Black Box Frameworks,
submitted for publication in Transactions on Engineering, Computing
and Technology, 2006.
[7] G. Froehlich, Hooks: an aid to the reuse of object-oriented
frameworks, Ph.D. Thesis, University of Alberta, Department of
Computing Science, 2002.
[8] Java 1.3.1, http://java.sun.com/, July 2006.
[9] The SalesPoint framework v2.0 homepage, http://www-st.inf.tudresden.
de/SalesPoint/v3.0/, July 2006.
[10] LOCC (software information), http://csdl.ics.hawaii.edu/
Tools/LOCC/, July 2006.