Testing Services provides a platform for QA professionals to discuss and gain insights in to the business value delivered by testing, the best practices and processes that drive it and the emergence of new technologies that will shape the future of this profession.

« Service Virtualization - Where is it applicable? | Main | Service Virtualization - Completing the Cloud Story »

The move towards a modern QA organization

Managing the agility of application development has grown in importance as a lot of my customers are competing to dominate the market. The role of Quality Assurance teams to drive these changes is becoming more and more important. The QA teams should not only do testing but also champion the process so that our customer's software products and processes adhere to the requirements and plans......

 

Managing the agility of application development has grown in importance as a lot of my customers are competing to dominate the market. During my customer interactions I observed the struggles to contend with from a testing perspective towards agility and some of them are described below:

1.       Very aggressive release schedules and testing lag behind.

2.       Multiple development vendors develop code and code reconciliation becomes very difficult. How to ensure all the functionalities are reconciled correctly?

3.       There are dependencies with Internal and external systems. Some of these system test environments may not be available resulting in partial testing which increases the risk

4.       Difficulty in automated testing and maintaining tests as the application changes

5.       Perception of poor value from QA investment - imbalance between cost and perceived benefit of QA.

6.       Business expects to use "Customer experience" as a key differentiator in the market.  

QA also needs to become increasingly effective and modernized to address complex technology needs. At the same time, QA needs to overcome its project focused heritage and turn into an enterprise wide strategy to support over a broader technology / application spectrum, in a time bound manner.  We see this shift in the QA services to be a combination of the following 3 themes:

 

1.       "Agility in testing" resulting in Faster and quality defects  at lesser cost

2.       "Advance quality to earlier in the software lifecycle" resulting in earlier defect detection and minimizing cost of quality

3.       "Strengthen SDLC processes to for better quality" resulting in Lower App TCO

Agility in testing

Increasingly the business will not have patience for elongated QA cycles. The objective is to bring the required agility in the testing so that we can reduce the current testing cycles by 4 X . The following principles are relevant:

1.       Standardize Test processes & practices

2.       Automate as much testing as feasible: Tap a common set of QA tools for test automation - for different layers of the component-based architecture- UI, Web services and back end databases.

3.       QA to be delivered based on pre-configured test platforms tailored to respective industry challenges.

4.       Establish specialized functions for test data, test infrastructure management

Advance quality to earlier in the software lifecycle

We have followed some of the best practices discussed below for some of our clients

1.       Establish a methodology and a testing framework that emphasizes early life cycle validation. Testing teams participation in requirements, sprints, etc enables emphasizes the testability and supportability of applications.

2.       Improving upstream quality by use of Early Lifecycle Validation Strategies. Use of techniques like Predictive Performance Modeling, assessing Quality and Maintainability of Application code through tools can enhance the upstream Static testing process.

3.       Strengthen QA by introducing more comprehensive testing services in areas that are critical to the business: usability, performance, security, and data accuracy

Strengthen SDLC processes to for better quality

There must be a close mapping of quality parameters to the SDLC processes. This will serve as a leading indicator for informing stakeholders of the progress toward achievement of quality. The following are some of the things to look out for:

1.       Projects should link quality assurance deliverables with appropriate phases of the Software Life Cycle.

2.       A configuration management process must include controls critical to quality of deliverables.

3.       A change management process must identify and evaluate the quality issues prior to decision-making.

The role of QA teams to drive these changes is becoming more and more important. They should not only do testing but also champion the process so that our customer's software products and processes adhere to the requirements and plans.

 

Comments

Yes,I complete agree with the above statements.Today every one enlighten towards whats new language come and hows it impact.Everyone focuses on writing code and in our colleges also make same attitude.But i can say only one thing that it is equally important to test the code for checking proper its working(functionality)unfortunately we skip this part or we do it lightly.Product/Software submissiveness completely depends on testing because after that it goes for production environment.

Post a comment

(If you haven't left a comment here before, you may need to be approved by the site owner before your comment will appear. Until then, it won't appear on the entry. Thanks for waiting.)

Please key in the two words you see in the box to validate your identity as an authentic user and reduce spam.