Over a million developers have joined DZone.

The Quality Carousel

· Agile Zone

Learn more about how DevOps teams must adopt a more agile development process, working in parallel instead of waiting on other teams to finish their components or for resources to become available, brought to you in partnership with CA Technologies.

I just observed yet another conversation on twitter that started with the topic of waste in software development, brought in value as an arbiter between waste and necessity, and then quality as a modulator of value. Surely a practice that increases quality also increases value, and therefore cannot be considered waste.

These discussions seem to spin in circles. They always have, and likely always will. Why? Because they treat quality and value as attributes of what is built, rather than as relationships. I like Jerry Weinberg’s definition in Quality Software Management:Systems Thinking.

“Quality is value to some person.”

This does not bring agreement to the discussions of value and quality. It does bring a different focus to them. Who is the person that matters? I can tell you who that is.

It’s me. I’m the person that matters.

More generally, each of us takes ourselves to be the person that matters. It’s no wonder that we don’t come to agreement on quality and value. Everyone has their own unique and slightly different take on the topic.

“Wait,” you may say, “I’m not looking for value for myself, but for the customer.” Someone else may be looking for value for the company, for the stockholders, or for their boss who will yell at them if they do the work “wrong.” Others are focused on the developers—the programmers, the testers, the designers, the many people and roles that may be involved in producing any software system.

Personally, I have empathy for all of these constituencies. To some degree, I think we can provide value to all of them. In some ways there are synergies between them. If we write code that’s easy to read and modify, then it’s cheaper for the business to maintain that code, and quicker to get new functionality to the customer. Win-win-win!

We can’t do everything we want instantaneously, though. At any moment, we have to balance the needs we perceive to determine where to give more emphasis right now. We don’t want to ignore any constituency we consider important, but we can’t always give all of them full attention all the time. And, of course, we all find our own unique and slightly different way of balancing the attention.

And the discussion takes another turn around the circle.

Discover the warning signs of DevOps Dysfunction and learn how to get back on the right track, brought to you in partnership with CA Technologies.

Topics:

Published at DZone with permission of George Dinwiddie, DZone MVB. See the original article here.

Opinions expressed by DZone contributors are their own.

The best of DZone straight to your inbox.

SEE AN EXAMPLE
Please provide a valid email address.

Thanks for subscribing!

Awesome! Check your inbox to verify your email so you can start receiving the latest in tech news and resources.
Subscribe

{{ parent.title || parent.header.title}}

{{ parent.tldr }}

{{ parent.urlSource.name }}