Alliance - Fotolia

How to prevent lingering software quality issues

Coders can learn a lot from manufacturers, according to Gary Gruver, even though the products are distinctly different. This free chapter excerpt covers how to approach QA issues.

Organizations rarely question when and how QA enters the software development picture, but they should. Even with a shift away from the Waterfall development model, many teams' pipelines still get clogged while team members inspect fairly large batches of code changes.

Many organizations limit quality assurance to a single inspection phase, said Gary Gruver, author of Engineering the Digital Transformation. That approach goes against DevOps tenets and can lead to software quality issues, with inconsistent test results.

The IT industry should take a cue from manufacturing, Gruver said, and assess quality from the product's creation onward. To build in quality, he advocates that IT undertake systematic approaches to software testing. In manufacturing, building in quality entails designing a process that helps improve the final product, while in IT that approach is about producing a higher-quality application. Yet, software quality and usability issues are, in many ways, harder to diagnose than problems in physical goods manufacturing.

"In manufacturing, we can watch a product coming together and see if there's going to be interference between different parts," Gruver writes in the book. "In software, it's hard to see quality issues. The primary way that we start to see the product quality in software is with testing. Even then, it is difficult to find the source of the problem."

Gruver recommends that software teams put together a repeatable deployment pipeline, which enables them to have a "stable quality signal" that informs the relevant parties as to whether the amount of variation in performance and quality between software builds is acceptable.

If an organization establishes systematic software testing, a stable quality signal and a repeatable deployment pipeline, it can then focus on feedback that shapes coding work for future features and releases.

Engineering the Digital Transformation, excerpt

Read a TechTarget exclusive extended preview of Gruver's book, Engineering the Digital Transformation, to learn more about these concepts.

Throughout the book, Gruver details a systematic approach to software quality improvement. Gruver is a consultant who works with clients for lengthy portions of their project's journeys. Through this work, he has seen organizations struggle with enterprise IT growth and challenges. The book's information also has roots in -- and builds on -- the Agile transformation effort he worked on at HP as director of engineering for LaserJet Enterprise and his time at Macy's as VP of release, QA and operations.

Editor's note: This preview of Engineering the Digital Transformation includes sections from the book's introduction and Chapter 5. To buy the whole book at a 10% discount, use this URL and enter the code garygruver10 at checkout.

Dig Deeper on Software testing tools and techniques

Cloud Computing
App Architecture