Maintenance Team? Balderdash!

In many organization I've encountered there is this artificial distinction between the new development group and the maintenance programming group. Why on God's green earth would you want to do such a thing?

Every time the topic comes up I point out that there is only "maintenance" since once you have the first line of code checked in you are now maintaining the system. Probably the only difference between "new development" and "maintenance development" is whether the system is being used in production or not!

A better approach in my opinion is to view all your systems as the software ecosystem for your organization. You now have the common problem of limited resources to change/add features to the ecosystem. The features may or may not be added to systems that already exist. Whether the system already exists is irrelevant to the decision to spend money on that feature.

Organizations that have adopted agile practices eventually notice that there is little or no difference between new functionality, enhancements and bug fixes. If there is a difference it is more a difference of granularity in that some bug fixes are very small while everything else tends to be larger.

The advantage of the ecosystem approach is that your development resources are more of a pool that you can draw from, the stigma of being on the maintenance team dosen't exist, and knowledge can be spread among the team.

Think about it, try it. You might like it.

1 Comment

  • I agree 100%!



    I've worked in a few large organisations now over my looong career, and seen maintenance teams vs project teams...



    There is not only a huge stigma attached to being in a maintenance team, these teams also always get stuck with legacy systems. They also have the unenviable task of maintaining code that fly-by-night contractors write and deploy to production without a care in the world about how robust or maintainable their code is. And the poor souls in the maintenance teams of large organisations are expected to know enough about every diverse system in production to be able to fix problems in the wee hour of the morning when they're on call. Need I say more?!

Comments have been disabled for this content.