Arunkumar Khannur's Software Testing Knowledge Center

3.6. Base Model and Test Model

During Software Development Life Cycle (SDLC), across different phases we make use of different models to represent solution for the agreed upon requirements that may be textual and/or diagrammatic representations. Such models representing different artifacts of phases of SDLC are referred to as “Base Models”.

Base Models of SDLC are appearing as requirement documents, analysis documents, design documents, implementation documents, system integration documents, system release documents, system operation and maintenance documents. Here, a requirements document is the problem model. The Analysis documents are the logical or conceptual models. The design and implementation documents are the physical models. Operation and Maintenance documents are the solutions models of the problem. All of these are Base models for the system. which may be represented in textual or visual/diagrammatic form,

Base Models are discussed in detail in “Understanding Process Models” chapter.

Test Model
A test model is a representation of a certain artifact or activity in the each phase of development life cycle so as to verify and validate the same. A requirements document is the model of the problem. The design document is the model of the solution to the problem. The source code is a high level programming level model of the system that implements the design. The executable program is the model of the working system. All of these are base models for the system.

A simple view of the system indicates that if each statement in the program is executed, the system is completely tested it. Coverage analyzers are automatic tools for measuring this kind of testing. In their most simple form, coverage analyzers put counters in your source code and increment the counter whenever the associated code is executed. It is found through practical experiences that this kind of testing is not sufficient enough for most system because tests based on the source code model of the system do not make the system fail enough to reduce risk to appropriate levels.

To approach the level of risk reduction that most of the software systems require, it is necessary to model the system structure and behavior in ways that better maps to failures.

The technical components needs to be abstracted whether it is requirements or design or source code into a test model that is testable and it should reflect where programs fail. Hence, it is essential to analyze the base model to discover the underlying concepts. The intermediary between the tests and the base model is the Test Model.
Khannur's Book
Arunkumar Khannur, Software Testing - Techniques and Applications, Published by Pearson Publications, 2011 (ISBN:978-81-317-5836-6; Pages:341 + xxii)
Follow Khannur
Khannur's Company
ISQT Process & Consulting Services Pvt. Ltd., Bangalore, INDIA
Khannur's Software Testing Forum
 Contact Khannur
ISQT Process & Consulting Services Pvt. Ltd.
#732, 1st Floor, 12th Main,
3rd Block, Rajajinagar,
Bangalore - 560010, INDIA
Phone: +91 80 23012511
Skype: arun.isqt