BrainsLink

Linking the left brain and the right brain

Agile Techniques Work in System Maintenance

I know a group of database administrators that pretty regularly messes things up. They perform system upgrades, new software installs, server migrations, etc. and often get them wrong. For example:

  • Work takes much longer than anticipated.
  • Software applications are impacted that they never expected.
  • Things go wrong that they never considered.

To make matters worse, they typically don’t bother to notify anyone that maintenance work will be performed and some disruption is possible. Is this kind of stuff normal where you work?

The key question for this post is, “Can agile techniques improve this situation?”.

Let’s explore how this group might employ agile techniques. What would they do and how would it help?

  1. Team Assignments. The team responsible for the system changes is assembled and roles defined. Everyone knows their responsibilities.
  2. Initial Planning. The team meets and crafts stories around the system changes to be made. The stories do not define every task to be done but, rather, lay out the major goals and associated activities.
  3. Detailed Planning. The team meets daily leading up the system changes. During the daily sessions, details of the work to be done are defined and assigned to the responsible DBA.
  4. Communications Planning. In parallel, the team identifies all of the groups that use the system(s) to be changed. A communication plan covering expected and disaster scenarios is crafted.
  5. Deployment Tasks. Finally, a deployment task list is generated. It defines all of the work to be done, who is responsible, how long it will take, what inter-dependencies exist, and how it will be verified.

The only part left is actually making the changes.

The steps outlined above may seem obvious (and they are!). The key point in all of this is assembling a team. By getting a small group together and facilitating group discussion, all of the tasks and risks are rooted out. Everyone on the team learns from everyone else.

This process works far better than relying on the one or two people who are normally assigned to the target systems to ‘just take care of it’. Don’t you think?

Updated: April 12, 2011 — 10:30 pm
© Damicon 2014 Frontier Theme