Cover Stories

Model Driven Testing and its benefits


Model- based or Model- driven software testing in one of the latest techiques. Using Model-driven approach test cases can be derived for whole or in part from a model that describes the aspects of the system under test. The abstract model can be partial represnetation system. There are many different ways to derive tests from a model. Model-based testing is usually seen as one form of black –box testing. In some aspects, this is not completely accurate. Model-based testing can be combined with source-code level test coverage measurement, and functional models can be based on existing source code in the first place.Because testing is usually experimental and based on heuristics, there is no one best way to do this. Model Driven Testing drastically reduces test maintenance costs, because implementation changes are captured in the model. Developers only have to regenerate the test in order to have the changes affect all tests. Model-based testing for complex software systems is still an evolving field.

Cost of defect correction (defect fixing)

To ensure that all software developed will function according to the systems specifications. As a result, between 30% - 50% of the typical development budget is spent on application and system testing. Apart from these few major key issues that are contributing due to the software defects are:

  • Loss of revenue .
  • Negative impact on company brand.
  • Loss of customers

How Model driven testing can help to prevent the root cause of defects?

Model Driven Testing can help to identify the origin of defects are created and where they are detected, by means of the following process:

  • The test analyst starts to create the graphical test model based on the User Requirements documentation. System Designers start work on creating the various design documents from the User Requirements documentation.
  • The test analysts uses the initial design documents to further refine the test model. During this process test analyst will detect specification ambiguities, defects, risks and hidden assumptions in both the design and user requirements specification.
  • Discuss these problems with the stakeholders, to get clarification so that all of the user requirements, design and test models can be updated.

It is at this stage that up to 70% of software defects are eliminated before they are created during the coding phase.

Benefits from Model Driven Testing

Model Driven testing creates significant ROI because:

  • Starting from specification Involves testers early in the development process
  • Teams testers with developers and Cuts project development time
  • Building behavioural model and test interface and Finds design and specification bugs - before code exists
  • The model is the test plan - and is easily maintained and helps in Automated test suite generation
  • Test Coverage is guaranteed - increases testing thoroughness and Matches coverage goals to testing budget
  • Zero test suite maintenance costs
  • Simplified Automated test suite execution
  • Finds code and interface bugs
  • Includes a framework for the testing of distributed applications
  • Reduces test execution costs
-Article by QAGUILD analysts
posted on 13/04/2008