miércoles, 12 de diciembre de 2012

Saving Money with Software Quality Assurance (SQA) Part 2

 
This is the second part of an article written by Hernan Gil

 

cost analysis

 

Implementing some or all of the activities described in the previous article, takes time, effort and undoubtedly money. For that reason, it is necessary to analyze the ROI of this deployment, for which we will base on a study that analyzes the traditional stages of a project, and introduced defects , found defects and the cost of repair. As can be seen, the introduction of 85% of the defects of the application occurs at the beginning of the construction phase, but these defects are encountered gradually in subsequent stages.

The longer it takes to find a mistake, the more costly repair. Therefore it is proposed to establish activities that accompany the development process (instead of control points) to maximize the detection of defects in each stage, and to minimize the number and impact of the defects found in the final stages. It is important to try to estimate the cost of a defect found during testing versus find after putting into production, as the cost associated with the latter not only occurs to generate a new version, but also adds the regression test, the new production start and the time the system is offline.

¿where do we start?


Implementing all SQA activities simultaneously is costly and impractical. It is best to start with the activities in which they see results more quickly and effectively.
In addition, a phased implementation and fed help make the process smoother and more easily accepted. If you are in the initial stages of the project, should begin with the requirements verification and validation of architecture, while if it is already advanced, it is better to revise the design or directly take a look at the code.

 

UP Phases and disciplines: relation with SQA Activities.

 

Quality metrics


The only way to show what are the benefits of SQA activities is through metrics that reflect the evolution of the development process. If we can not measure improvements, we can not evaluate the effectiveness of SQA process and will not be possible to be improved. Examples of such metrics may include:

  • Number of incidents reported in production.
  • Number of incidents reported in testing.
  • Number of cycles of testing / rework required.
  • Time to make a change (categorized by impact).

 

Conclusions


SQA is a set of activities that aim to lower the cost of development to meet the established quality parameters.
It is feasible to achieve certain quality and cost, but you must know that it is possible to insert desired quality at the end of the development process, but must be created throughout the process. The sooner you start with SQA activities, the greater the benefits.

Tools

At Baufest we use to apply such practices using , on different phases, tools like:

  • Rational Quality Manager
  • Rational Functional Tester
  • Rational Performance Tester
  • Microsoft Visual Studio Team Foundation Server
  • Microsoft Project Server and Nintex workflows for Microsoft Project Server
  • Microsoft Sharepoint

Thanks to Nadia Cavalleri for collaboration in this article.