Taking over system maintenance: a nightmare

Posted on 2008-07-10 22:07:42

Some time ago, one of our externally hired programmers was about to be leave, because we didn’t have enough work available to keep the external people and still turn a profit. This programmer had a few small systems under maintenance (on his own), and I was about to inherit one of them: a small-ish web application for registering change requests and problems.

It was currently in the last phase of some feature enhancements, including automatically reading a mailbox and adding the mails to the database. The programmer promised to finish his work, and on his last day, when we talked through the changes and the system in general, he assured me that everything was done for the new release, that it was currently in acceptation test and that I wouldn’t have to do anything about it.

I didn’t hear anything about the system for a while: no test comments, nothing. Near the end of June, someone decided that the new features should be released to production, and started to test the changes.

The results? My inbox was chock full of test comments: from features that were only half implemented or not implemented at all, to features that were now broken: some web pages didn’t even load properly.

What happened? The programmer thought the application architecture wasn’t quite optimal and had started to refactor it to an entirely different architecture. And he committed half-finished work to the versioning software, leading to pages throwing exceptions. On top of that, the mailbox was not working: the password had expired.

To be honest, the application’s architecture is flaky, but in my opinion that’s no reason to just change it because you can, meanwhile spending hours and hours on a rebuild that the customer didn’t want.

All in all, this meant that I had to fix just about every corner of the application, test through it again and ensure that everything worked according to specs. The result: an angry customer, an official inquiry into our work process, and a release that was delayed for a month.

In the end, I managed to fix it all, but it’s been a nightmare…

Posted in: Work