This is the best response I have read to my earlier GQM Request.
I don’t like GQM. Here’s why:
It assumes you have nothing to learn!
GQM is appropriate for situations where you understand the precise workings of the system you wish to control.
GOAL: I wish to back out of my driveway.
QUESTION: Is anyone behind me?
METRIC: turn around and look behind me.
But this is rarely the case with software development projects. In projects, we are trying to learn how things work. A development project is a social system. We don’t just monitor social systems, we must study them. Is X doing testing well? I’ll have to observe his testing and learn how he is doing it. I must be open to surprises while doing so.
My version is called OIM:
1. Observe: What is happening?
2. Inquire: Why is THIS pattern happening? Let’s study that.
3. Model: Here’s my theory about how this project works.
This is not only a cycle, each task is simultaneous. During any of these tasks, at any time, you take action based on your current model of the project. OIM is consistent with social research methods such as Grounded Theory.
This is how we used metrics at Borland, and everywhere I’ve worked since then.
GQM makes it sound like metrics are easy to use and interpret. OIM is all about coping with murky and changing reality.