Testing Object-Oriented Framework Applications Using FIST2 Tool: A Case Study

Dallal, Jehad Al
June 2008
International Journal of Computer Systems Science & Engineering;2008, Vol. 4 Issue 2, p119
Academic Journal
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., a family of products that shares 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 during 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. This paper introduces the Framework Interface State Transition Tester (FIST2), a tool for automated unit testing of Java framework applications. During the framework development stage, given the formal descriptions of the framework hooks, the specifications of the methods of the framework's extensible classes, and the illegal behavior description of the Framework Interface Classes (FICs), FIST2 generates unit level test cases for the classes. At the framework application development stage, given the customized method specifications of the implemented FICs, FIST2 automates the use, execution, and evaluation of the already generated test cases to test the implemented FICs. The paper illustrates the use of the FIST2 tool for testing several applications that use the SalesPoint framework.


Related Articles

  • Evolution of Software Programming Methodology. Laddad, Ramnivas // Software World;Mar2005, Vol. 36 Issue 2, p8 

    This article focuses on the evolution of software programming methodology. In the development of a system to response to multiple requirements and these are classified as core module-level requirements and system level requirements. The symptoms that indicate a problematic implementation of...

  • A Pedagogical Evaluation and Discussion about the Lack of Cohesion in Method (LCOM) Metric Using Field Experiment. Okike, Ezekiel // International Journal of Computer Science Issues (IJCSI);March2010, Vol. 7 Issue 2, p36 

    Chidamber and Kemerer first defined a cohesion measure for object-oriented software - the Lack of Cohesion in Methods (LCOM) metric. This paper presents a pedagogic evaluation and discussion about the LCOM metric using field data from three industrial systems. System 1 has 34 classes, System 2...

  • GOD CLASS DESIGN FLAW DETECTION IN OBJECT ORIENTED DESIGN. A CASE STUDY. ┼×erban, Camella // Studia Universitatis Babes-Bolyai, Informatica;2011, Vol. 56 Issue 4, p33 

    In this article we present an experimental evaluation of our proposed methodology for object-oriented design (OOD) assessment introduced in previous work. A comparison with a related approach based on detection strategies is comprised in the proposed case study. It also discusses the limitations...

  • Object-Oriented Programming Principles and the Java Class Library. Cavaiani, Thomas P. // Journal of Information Systems Education;Winter2006, Vol. 17 Issue 4, p365 

    For novices, learning an object-oriented programming language can be a daunting task. Not only do students need to learn basic programming concepts, but they are also confronted with object modeling concepts as well. Learning Java presents an additional difficulty. Students must learn how to use...

  • EFFICIENT ALLOCATION OF DISTRIBUTED OBJECT-ORIENTED TASKS TO A PRE-DEFINED SCHEDULED SYSTEM. Fergany, T.; Sarhan, Amany // International Journal of Computers & Applications (Acta Press);2006, Vol. 28 Issue 1, p35 

    A key phase in the design process of software for distributed systems is the allocation of the software components to the available hardware. A problem arises when a software/hardware mismatch occurs. This paper presents a solution to that problem by introducing a technique that guarantees...

  • Why is Programming (Sometimes) so Difficult? Programming as Scientific Discovery in Multiple Problem Spaces. Jinwoo Kim; Lerch, F. Javier // Information Systems Research;Mar1997, Vol. 8 Issue 1, p25 

    Our theoretical framework views programming as search in three problem spaces: rule, instance, and representation. The main objectives of this study are to find out how programmers change representation while working in multiple problem spaces, and how representation change increases the...

  • Object-Oriented Programming in LabVIEW 8.20.  // Instrumentation Newsletter;2006 3rd Quarter, Vol. 18 Issue 3, p16 

    The article focuses on the object-oriented programming feature of LabVIEW 8.20, the 20th anniversary edition of National Instruments LabView graphical software. LabVIEW 8.20 adds object-oriented programming to facilitate the development of modular, maintainable and flexible code. The graphical...

  • Examining the Potentially Confounding Effect of Class Size on the Associations between Object-Oriented Metrics and Change-Proneness. Yuming Zhou; Hareton Leung; Baowen Xu // IEEE Transactions on Software Engineering;Sep/Oct2009, Vol. 35 Issue 5, p607 

    Previous research shows that class size can influence the associations between object-oriented (OO) metrics and fault-proneness and therefore proposes that it should be controlled as a confounding variable when validating OO metrics on fault-proneness. Otherwise, their true associations may be...

  • FRAMEWORKS BETWEEN COMPONENTS AND OBJECTS. Belal, Mohamed; Khedr, Ayman; Gohar, Ahmed // Advanced Computing;Sep2012, Vol. 3 Issue 5, p9 

    Before the emergence of Component-Based Frameworks, similar issues have been addressed by other software development paradigms including e.g. Object-Oriented Programming (OOP), Component-Based Development (CBD), and Object-Oriented Framework. In this study, these approaches especially...


Read the Article


Sorry, but this item is not currently available from your library.

Try another library?
Sign out of this library

Other Topics