# Presentation: 116802

## Let SQA Be Your Guide!(Software Quality Assurance as the Organizational Conscience)

- W. Mark Manduke
- Process Enhancement Partners, Inc.
- manduke@pep-inc.com

## The SQA Role

- How do you feel about SQA?
**Organizational saviors?**
**Bane of our existence?**
**Pain in the patootie?**
**Ignorant nitpickers with no business sense?**
**Source of all knowledge as we know it today?**
- SQA is the most controversial part of Software Capability Maturity Model (SW CMM)® based process improvement.

- CMM and Capability Maturity Model are registered in the U.S. Patent and Trademark Office by Carnegie Mellon University

## A Question of Attitude

- SQA, by it’s very nature, can create adversarial relationships.
- Avoiding an adversarial role requires careful attitude adjustments on both sides:
**SQA**
**Engineering, product development, and management**

## What is “Quality”? - 1

**Quality has many definitions:**
**Philip Crosby: Conformance to requirements**
**Joseph Juran: Fitness for use**
**Jerry Weinberg: Value to some person(s)**
**The absence of defects**

## What is “Quality”? - 2

- Software Quality in the SW CMM:
**Do our products meet applicable standards?**
**Do we follow our process to create those products?**
- Remember the broad definition of “Products” (includes both engineering and management)

## What is SQA?

- From the SW CMM:
**“****The purpose of SQA is to provide management with appropriate visibility into the process being used by the software project and of the products being built.”**
- The dreaded “Compliance Police”
- Jiminy Cricket

## SQA as the Group Conscience

- Not an enforcer, but an objective observer
- The eyes and ears (and mirror!) of management
- Recognize the inherent human foibles in:
**Communication**
**Variation**
- SQA should be:
-  **passionate about their job and quality, but**
** ****DISPASSIONATE about recording noncompliance (remember the importance of objectivity)**

## Process and Product?

- Checking products is easier than checking process – why check both?
- Could the product adhere to the standard without following the process?
- SQA as the “Process Hooker”
**Making sure the verification “hook” is part of the process so objectivity can be maintained**

## The Responsibility for Quality

- Who is responsible for Quality?
**Everybody?**
**SQA?**
**Management!**
- Establishing a Quality Culture
**Management must balance the cost/schedule/quality equation**
**The issue of rework**

## Rework and Productivity

**Following a useful process means doing it “right” the first time**
**Some reasons for having to rework the product:**
**Requirements misunderstanding**
**Implementation mistake**
**Process noncompliance that results in unacceptable risk**
**Mature organizations with improvements in productivity are actually performing less rework**
**“****There’s never enough time to do it right, but always enough time to do it over!”**

## Perfection versus Improvement

- Remember that the SW CMM does not expect perfect processes – only IMPROVING ones!
- Who is against improvement?
- If everyone is in favor of improvement, why is it so hard?
**The difficulty of changing human behaviors**
**Becoming a “Learning Organization”**

## Learning

- It should be safe and encouraged to learn
**Learning means making mistakes (just not repeating them!).**
- “Ancora Imparo” – “I am still learning” –
- Michelangelo at 87
- Remember that doctors “practice” medicine!

## Data Opportunities for the Learning Organization

- SQA is a useful function for the maintenance of organizational data:
**Compliance and noncompliance data, of course**
**Action item, defect, and problem tracking**
**Metrics**
**Trend analysis**
**Look to the future as the organization matures**

## Noncompliance

- Why does noncompliance occur?
**Direct refusal to comply is rare**
- There is almost always a process reason:
**Not enough time**
**Didn’t know there was a process**
**Didn’t understand how to perform the process**
**Process doesn’t make sense**
**Tools or other support are not available.**

## Resolving Noncompliance

- There are three ways to resolve a noncompliance issue:
**Do it (comply)**
**Adjust the process**
**Issue a waiver**
- Some lessons learned at the end of a project should be gained from how the process was performed.

## SQA Independence

- There is a SW CMM subpractice that states SQA should have a “reporting channel to senior management that is independent of the project manager” and others on the project.
- But the real issue is OBJECTIVITY
**SQA Goal 2: “Adherence...is verified objectively”**

## SQA Implementation Alternatives

- It should be easy to demonstrate objectivity with an independent SQA organization.
- Other choices of implementation:
**The “Buddy System”**
**Share SQA among project managers**
**Using Peer Reviews**
- “Person-less” SQA (be very careful!)

## Some Concluding Thoughts

- Watts Humphrey notes that “rigor” is in the dictionary between:
-  **“****rigmarole” and**
** “****rigor mortis”**
- An improving organization is a learning organization – SQA can serve as focal point for learning.
- If humans need a conscience, and organizations are comprised of humans – how to we scale the concept of the conscience up to the organization?