Quality Engineering in Product Development: The Challenges, Approach and Benefits

Quality Engineering in Product Development: The Challenges, Approach and Benefits

Quality Engineering is the new term of reference for Testing. Product testing services are essential in
making sure that a product is of high quality and functions according to customer needs and
expectations. Testing also helps to ensure that Product is usable, reliable and suitable to the need of
business. There are some key benefits of the Product Testing (as called out by Jerry Thomas of
Decision Analyst)

  • Ensures products work as promised
  • Ensures customers can use products as designed
  • Highlights competitive strengths and weaknesses
  • Helps improve product performance
  • Improves customer satisfaction
  • Helps predict customer acceptance of the product
  • Provides data for use in creating future products

With such a pivotal importance of testing in the success of a Product, traditionally there has not
been serious focus by product engineering teams on testing. Developers used to perform testing.
Later QA resources started becoming part of the agile process and have been testing the product
features, backlog items whenever they were made available to them by the development team.
Although testing focus was enhanced there was no proper strategy, planning and right mindset put
in testing to get best product out. Following are some of the challenges faced in the traditional
testing while being deployed in Agile projects:

Figure 1.0 Testing Challenges faced in Agile based Projects

Over last few years, testing is now being looked at as Engineering function and hence has the
attributes such as vision, planning, strategy, collaboration, innovation, automation and most
important is the outcome focus. This has helped Product teams/ QA leads and QA members to take a
completely different approach towards testing.

There is philosophy which we use at Digialpha for Agile based projects: – We call it as EFOA
framework at Digialpha.

E- Test Early: Unit and Component testing

F- Test Faster: Use reusable test cases, risk based testing, A/B testing

O- Test Often: Exploratory Testing, Manual Regression etc.

A – Automated service testing, scripless automation

The Approach based on the above Framework we take:

  1. Shift Left Approach: Focus on avoiding defects rather than finding and fixing them later.
    This involves close coordination between the testers and developers and joint effort to
    ensure quality
  2. Agile Testing Pyramid: Quality is the responsibility of the entire team with focus on
    writing robust code and reducing the reliance on UI testing by giving prominence to Unit
    testing and code quality
  3. Test Channels: Different testing channels like Unit, Functional, Automation, NFR and
    UAT with different levels of involvement from various stakeholders and preplanned
    outcomes
  4. Specialized Roles: Introduction of specialized roles like Test Mentor in the team to aid
    test effectiveness and strengthen the notion of quality
  5. Automation: Higher importance on automating test cases to maximize coverage and
    reduce time spent in manually running test cases for regression testing
  6. DevOps: Work closely with DevOps team and process to automate build and
    deployment, and automate regression to deliver working software at regular intervals

The benefits we have seen across the projects for few of the parameters are:

Parameter Improved Value % Improvement
Unit Test Case Coverage 97% 15%
Unit Test Success Density
Test success density = (Unit tests – (Unit test
errors + Unit test failures)) / Unit tests * 100
25% over the previous
outcome
Functional Test Case Coverage
(The number of functions executed by a test
suite is divided by the total number of
functions in the software under testing to
calculate this metric.)
90% 20%
Defect Density 0.001 35%

It is important to adopt Agile testing focussed approach as called out in this blog and it is a change
management process which helps us to drive this change across the teams and in the QA team
behaviour. Eventually it beneficial driving cost reduction, better product quality and achieving
customer delight.


Leave a Reply

Your email address will not be published.