I'm taking over a development of a commercial web site. This site was developed over two years by another programmer. It's mostly a one-man job (maintain and expand the site). I'll have a 2-3 days transition period when the other programmer will show me the system. But from what I know, there is little documentation. Everything is in the code (which is kind of documented). Here is what I'm planning to ask so far:
Any other I'm missing?
[EDIT] Thanks everyone. Lost of good propositions. I wished I could accept more than one answer! Additionally, I would also add:
One last thing: the developer said that he will be available to to answer my questions later on if I need it. It's his "baby" after all. But I really think that in 6 months he will have moved on and his availability will be much more reduced!
Before you look at the code:
Clear the objs and the exes, and let him/her rebuild the thing. Watch for any manual interaction (does it build via "make" alone or is there some fiddling involved).
Better yet: give him/her a naked (just bought) machine, let him/her demonstrate a checkout and rebuild. Then see how the app is started and comes up (any secret options to input?).
Then: in a pair programming session, add one or two features to the system and see where and how these are implemented.
The above may sound stupid, but I have seen projects where building alone was a nightmare, and a lot of knowledge was in the brain of the developer only. Not having a trusted build environment and having to figure out how to rebuild is a nighmare.
Be sure to ask for all login information for the web servers, domain registrars, database servers, email servers, and anything else you can think of. It sounds crazy, but often times developers will register domain names with themselves as the administrative and technical contacts. The company will then have to jump through all sorts of hoops with the registrar in order to get the domain back, if the original programmer can't be contacted.
"If you could go back and redevelop this system, what would you do differently"
Ask: a) what don't you want me to ask you about this system? b) what will you be most happy about when you are no longer working on this project? c) What are the parts of the system that are too complex to be documented?
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With