Software Developers and Process Improvement

One of the topics that I've been noticing for a while is how we (as developers) tend to worry about our software development process and try to educate ourselves on the topic while other project stakeholders don't seem to show as much interest on it.

For example, I often talk to other developers who are trying to implement Scrum, RUP, or other software development process at their companies and they fell that other project stakeholders (executives, business owners, analysts) are not as interested in the process as they should. It seems that it's always developers trying to drive these initiatives.

The most interesting part, however, is that process improvement is not an activity that should be left alone to developers, not even when is about software development process. If the software has an impact on the bottom line of the company (and it usually does) it should be an activity that is done in collaboration with executives, business owners, QA, and developers. Developers, as well intended as we might be, don't always see the whole picture and we are bound to make one-sided conclusions. Or as Buxton says:

"the typical approach of software engineers having sole responsibility for new product development
[is like] an ice hockey team with all goalies. No matter how good your goalies are,
they aren’t going to beat even a bad team with the proper mix of players."

One of my co-coworkers had the great idea of taking a couple of business owners to our local Agile user group and they both seemed to have enjoyed it and learned a few things. Yet, that was the only time they attended one of these meetings.

I've given books on Scrum and Lean Software Development to some of our product owners with moderate success. Although they read it, it usually fails to spark ideas on what else we should be doing.

From what I've seen there are several reasons why most non-software developers don't pay as much attention to software development process improvement as they should:

Software is just a small part of their job. They deal with it because they have to (e.g. the business needs a new software to help in the creation of X, but X is the real goal and software is just a necessary evil.) Although I've seen people not care too much about software development process even on software development companies where X is a piece of software!

Every time there is a conversation about process improvement it inevitably turns into a discussion about software tools and other geeky issues where they feel lost.

They don't think there is anything wrong with the existing process.

Although they see problems with the existing process but they thing that's the way it is.

They just haven't realized they could participate on it and that is on their best interest doing so.

This is an open invitation to all project stakeholders (executives, business owners, QA, developers, users) to jump into the software development process improvement in your company. Talk to your team members and see what you and others can do to develop better software and get it to your users more often.