Due diligence for maintenance programmers

If you're a programmer faced with the prospect of maintaining an existing system, and if "code is your house and you have to live in it", then for goodness's sake do a walk-through, do an inspection before moving in. Do whatever is necessary for you to decide whether the situation will be livable for you. Get a sense of whether you're getting into a sweet new pad or a real "fixer-upper." How many unit tests are there? What is the average cyclomatic complexity per method? Methods per class? Lines per method? Who lived here before? Where are they now? Why?

What other questions should you ask in this sort of situation?

Written on January 5, 2007