Quality Software Management

Quality Software Management is a four volume set by Gerald Weinberg, published by Dorset House.

images.amazon.com

images.amazon.com

images.amazon.com

images.amazon.com

ISBN 0-932633-22-6 Volume 1, Systems Thinking

... teaches the understanding of complex systems (software projects).

ISBN 0-932633-24-2 Volume 2, First-Order Measurements

... is about what to measure and why (and includes a marvelous section on "Slip Charts" and what they reveal about the organization)

ISBN 0-932633-28-5 Volume 3, Congruent Action

... is about acting effectively in difficult situations.

ISBN 0-932633-32-3 Volume 4, Anticipating Change

... is about implementing all the ideas from the first three books in an organization.

Jerry gives this explanation for the series in the introduction to volume 2:

"In the four decades I've spent in the software business, I've learned that there are three fundamental abilities needed to do a quality job of managing software engineering:

"the ability to understand complex situations so you can plan a project and then observe and act in order to keep the project going according to plan, or modify the plan;

"the ability to observe what's happening and to understand the significance of our observations in terms of effective adaptive actions;

"the ability to act appropriately in difficult interpersonal situations, even though you may be confused, or angry, or so afraid that you want to run away and hide."

I highly recommend these books for anyone who is trying to make sense out of the madness of engineering projects, especially in small organizations.


The above sounds very similar to William Edwards Deming's Profound Knowledge. --Daniel Svennberg


From my web site:

I like Jerry Weinberg. He's a lunatic: I like that in a person. He writes from a technical and psychological perspective, describing how to think about what you do. Many of his books are out of print or hard to find. This series is one of my favorites.


[A relevant comment moved from Commitment Schedule:]

I've been reading Gerald Weinberg's Quality Software Management books recently and it seems like the XP focus on interaction with the end users fits well with Weinberg's idea (adapted and expanded from Phillip Crosby's ideas in Quality Is Free) of quality being defined as that which provides value to some person(s). Weinberg's version is more humanistic than Crosby's original definition of quality as "conformance to requirements" and seems to fit even more closely with the XP ideal of building value for a specific on-site customer. As Walden Mathews pointed out in a comment on what I wrote here originally: "getting the requirements right is the hardest piece of the puzzle. It's too easy to conform to the wrong requirements, and fail to deliver quality." -- Peter Seibel


With reference to XP. One of the declared strengths of XP is the demarcation between customer, who declares and prioritises requirements, and the developers who estimate and deliver solutions. The objective of the demarcation is that as the customer defines the value (and the conditions for defining when the requirement is met) so the work will focus on delivering quality (value to the customer).

A potential problem arises when the Goal Donor (provider of requirements) and Gold Owner (the person with the budget) are not the same person. At this point the quality of the system to the Gold Owner may drop and the project will be in trouble (this is what happened to C3 I believe).


See original on c2.com