Journal of Software Engineering and Applications, 2012, 5, 841-849
http://dx.doi.org/10.4236/jsea.2012.511097 Published Online November 2012 (http://www.SciRP.org/journal/jsea)
841
Testability Estimation of Framework Based Applications
Noopur Goel, Manjari Gupta
Department of Computer Science, Banaras Hindu University, Varanasi, India.
Email: noopurt11@gmail.com, manjari_gupta@rediffmail.com
Received August 29
th
, 2012; revised September 28
th
, 2012; accepted October 7
th
, 2012
ABSTRACT
Quality of software systems is highly demanded in today’s scenario. Highly testable system enhances the reliability also.
More than 50% of test effort-time and cost are used to produce a highly testable system. Thus, design-for-testability is
needed to reduce the test effort. In order to enhance the quality, productivity and reduced cost of the software organiza-
tions are promoting to produce the reuse-oriented products. Incorporating reuse technology in both aspects-software
development process and test process may payoff many folds. Keeping this view, our study focus the testability of the
object-oriented framework based software systems and identify that flexibility at the variable points of the object-ori-
ented framework, chosen for framework instantiation, greatly affects the testability of object-oriented framework based
software at each level of testing. In the current paper, we propose a testability model considering the flexible aspect of
the variable point to estimate testability in the early phase, requirement analysis phase, of development process of the
framework based software. The proposed model helps to improve the testability of the software before the implementa-
tion starts thus reducing the overall development cost.
Keywords: Reuse-Technology; Variation-Points; Object-Oriented Framework Based Software; Basic Test Cases;
Framework Interface Classes; Other Application Classes
1. Introduction
Quality assurance is highly demanded in any software
industry. Researchers and practitioners are aspiring to
achieve the goal with many techniques. Software reuse
and software testing are the two promising techniques to
enhance the quality of the software applications.
Framework is one of the promising technologies fos-
tering reuse. A framework is the reusable design (the
context) of a system or a subsystem stated by means of
a set of abstract classes and the ways the objects of (sub-
classes of) those classes collaborates [1]. Being a reus-
able pre-implemented architecture, a framework is de-
signed “abstract” and “incomplete” and is designed with
predefined points of variability, known as hotspots, to be
customized later at the time of framework reuse [2]. A
hotspot contains default and empty interfaces, known as
hook methods, to be implemented during customization.
While preserving the original design, parts of the frame-
work are extended or customized to build applications
using frameworks. A hook is a point in the framework
that is meant to be adapted in some way such as by fill-
ing in parameters or by creating subclasses [3]. Hook
description [3] is used for many possible implementa-
tions of the Framework Interface Classes (FIC), shown in
Figure 1, for developing applications in the application
engineering stage [4].
Software testing is effective if it detects faults in the
early life cycle of the project development. Software
testing is performed with the intent of finding faults and
is a vital and indispensable part of the software develop-
ment process which itself is a highly time consuming and
costly affair. Testing of framework based applications is
not a trivial task as the frameworks are inherently com-
plex in structure. The resources for testing are limited [6],
hence to achieve effective testing, the applications are
considered to be designed for testability. The testability
of software is an important quality attribute, since it
determines the effectiveness of testing, and hence the
Figure 1. Framework Application Classes (hooks, frame-
work interface classes, other application classes) [5].
Copyright © 2012 SciRes. JSEA