The techniques listed below are:
Project management is a skill that can (as any other skill) be acquired and improved. Really most of our work and a significant part of our personal lives boil down in one way or another to project management.
Every project has a life-cycle, consisting of several standard phases:
An effective PM[1] understands and actively manages the life-cycle of a project.
When I ask somebody to “drive” this or that, what I really mean is “be an effective PM of this effort”, exhibiting the following:
These are the standard milestones of a project. Simpler projects can certainly be managed without necessarily differentiating between some of the milestones.
It is important to note that there are project management techniques out there that try to simplify the model above. Such simplifications are often based on “hardcoded rules” e.g. (“each project cycle takes exactly 4 weeks”, etc.) It’s also important to note that not all projects require all of the “line items” above delivered explicitly. Most projects do require them at least in implicit form though.
Depending on the specific project, some of the activities may or may not be required. Below are two example projects that demonstrate how to use the template above.
Keeping good communication throughout the project is a common-sense technique. It is, however, surprisingly rare. So, as a good rule of thumb, always over-communicate your project status. Don’t worry -- you will inevitably hear from your manager and other major stakeholders if you truly are spamming everybody, but I guarantee that would never happen.
Scorecards provide a way to track progress against a set of success criteria. Scorecards are often presented in time, although that may not be always possible or meaningful. Here is a sample scorecard:
You can track both “qualitative assessments” (e.g. “gut-feel of main stakeholders”) as well as “quantitative observables” (e.g. “number of defects”). When rating the progress, it’s useful to use a 4-level scheme similar to the one below. Excel’s conditional formatting feature makes construction of scorecards fairly easy.
Glide-paths are a common way of graphically displaying change in time of one or more observables in an attempt to inform future progress. Here are a few examples:
Note a few important details:
Backlogs were popularized by Scrum and other agile project management methodologies. A backlog has two purposes:
Here is a sample backlog:
The average engineer at Microsoft receives between 200 and 300 emails every day. One way to allow stakeholders and observers to easily monitor the progress of a project you are managing is to “brand” the emails related to that project. Examples of “branding” include:
Excel presents an easy way to construct schedules. These typically have a “From”, “To” and “Length” columns. Here is an example:
More complicated schedules typically require the introduction of a “Type” (of event) column, to allow filtering per type, thus making your schedules easier to grasp. Using “tables” in Excel makes the constructed schedules easily “filterable”.
What Excel schedules lack is a graphical representation of scaled time periods. This is where Visio schedules excel. Here is a sample.
It’s often very helpful to complement this with a “we are here” arrow:
The arrow accomplished several things:
Good project managers are hard to find. Partly, because good project managers grow through experience. Invariably though, through experience, they (or at least the ones I have observed) tend to gravitate to the same basic techniques – the ones you see above. Hopefully, you will find these helpful.
In case you haven’t noticed, I love Excel. I use it as my main project management tool. My wife is a construction project manager and she constantly bugs me about not using Microsoft Project. Project is a fine product and I have in fact used it for some of the more complicated projects I have managed. What I love about Excel is its simplicity, integration (charts) and high-availability (Excel files are viewable on any device).
Some manage their projects using databases and web sites. I still prefer Excel. The reason? Versioning. With Excel (or Project), all you need to do is check in the corresponding file in your SCM (source code management) system. Databases are harder to version.
Finally, here’s a pointer to the slide-deck accompanying this document as well as a sample Feature Backlog spreadsheet: