How to plan work when I don't know how long it will take? [closed]
Please let me know if this is off-topic, as this question deals with the logistical or administrative side of IT rather than the technical.
This December, one of my colleagues and I are going to take two weeks during the university's winter holiday to tackle a few projects including
- updating our Radmind loadset to Snow Leopard
- setting up a new NetInstall-based imaging scheme
- cleaning up an in-house codebase
- migrating a few services to different servers for security and robustness
- rebuilding two key servers from backups and bare metal for practice
None of these have defined objectives or good time estimates, so I'm at a loss for how to even begin. Plus, both of us are students with no formal IT training, so for the NetInstall and migration, we'll be learning on the job.
In light of this, what kind of project plans should we be writing? I'm not asking because I need to hand a formal proposal in, but rather because I think preparing such a document would help me think about it and organize the work. Basically, what should I be considering in scheduling and prioritizing my work on a day-to-day basis?
When you are totally unsure, game it out. Break down the projects into as small chunks as you can possibly imagine and estimate the time each chunk takes. Go over in your mind the pieces that comprise the job and imagine you doing them. Proper time estimates come from making estimates, doing, then seeing where you are off.
As the others say, detailed planning is your friend. Maybe you'll still be unsure how long each task will take, but you will get a better idea than you have now and you'll have a better perception of how many tasks you have. Take the following example from your post:
migrating a few services to different servers for security and robustness
rebuilding two key servers from backups and bare metal for practice
What servers? What services? What is your success criteria? Some services are more complex to move than others (e.g. DNS is easy to move, Open Directory is more complex than DNS, Exchange server would be very complex indeed)
Some servers are more complex to work with and backup than others. What are you backing up? to use my example above, it can be increasingly more complex to back up and restore a database server than it is a simple file server.
How are they currently backed up? How hard is it to install the backup software? How much configuration does it need? How long does it take to restore a server? To back up a sever? (you'll need to do this at least once more than you probably planned to already as part of your test regime to ensure the system is restored correctly, for example). If these are key servers how long can they be offline? How will you mitigate the possibility that you can' restore them because there's a problem with the backups or hardware that only becomes apparent when you start working?