The Essence of Driving – A Crash Course in Project Management

The Essence of Driving – A Crash Course in Project Management
By Ivo Manolov

About a year ago, I got feedback from my team that I needed to clarify what I meant by “drive this effort” or “lead that effort”. So I decided to create a quick document explaining what I meant. Below is that document.

There are a lot of books on project management. From that point of view, there is nothing special about the techniques below – all of them are pretty much common sense and all of them can be found in those books. What is special about the post that follows is the condensed presentation (my goal is to essentially save you from reading a PMP book) and the fact that we actually used every single one of these techniques to manage the WPF 4 and Visual Studio 2010 products, which we released in April 2010.

The techniques listed below are:

  • Over-communication
  • Scorecard
  • Trend (and glide-path)
  • Backlog / Burn-down List
  • “Branded” status emails
  • Schedule in Excel
  • Schedule in Visio

Enjoy!

General Notes

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:

  1. Initiating
  2. Planning and kick-off
  3. Executing
  4. Monitoring & Controlling
  5. Closing
  6. Post-mortem learning

An effective PM1 understands and actively manages the life-cycle of a project.

The Meaning of “Drive This”

When I ask somebody to “drive” this or that, what I really mean is “be an effective PM of this effort”, exhibiting the following:

  1. Independence and accountability
  2. Ability to construct, communicate and get approval for a clear and well-though-out plan for the project, including:
    • Timelines
    • Scope, goals / non-goals and success criteria
    • Internal and external “unmovables” and requirements
    • Stakeholders
    • Costs and funding
    • Risks and mitigations
  3. Ability to set the project in motion, keep the project in motion and close down the project
    • Proactive contribution of directive energy to the project, creating excitement, and identifying and removing road-blocks.
    • Active monitoring of the progress of the project
    • Proactive communication of status
  4. Ability to reach the desired results

Project Management Template

These are the standard milestones of a project. Simpler projects can certainly be managed without necessarily differentiating between some of the milestones.

Milestone Role of the PM Common Mistakes
Initiating
  • Define scope
  • Define mission, vision, and identity (VMI)2
  • Draft goals, non-goals, assumptions
  • Identify stakeholders
  • Develop project charter
  • Obtain project charter approval
  • Lack of scope (undefined or unbounded)
  • Lack of identity (who are we?)
  • No good idea of who the stakeholders are
  • Proceeding to planning too soon – without getting preliminarily approval
  • Over-planning / over-committing too soon
Planning
  • Define and record goals, non goals, assumptions
  • Identify project team and define roles and responsibilities
  • Identify risks and risk management strategies
  • Obtain plan approval
  • Present plan to all interested parties
  • Secure resources
  • Conduct kick-off meeting
  • Incomplete plan
  • Failure to ask for approval
  • Lack of an explicit resource ask i.e. waiting for someone else to define needs / commit resources with
  • Lack of proper “kick-off” (plan not presented, excitement not generated, people are surprised, etc…)
Executing, monitoring, and controlling
  • Monitor execution of tasks
  • Communicate progress to stakeholders and approvers
  • Communicate risks, mitigations, roadblocks, and solutions
  • Communicate and expected vs. unexpected “project pulse”
  • Proactively drive for and generate solutions to problems
  • Lack of ongoing communication to all interested parties
  • Not including the original goal in the communication
  • Lack of proactive avoidance of roadblocks
  • Paralysis in the face of problems
Closing
  • Drive to final wind-down
  • Drive to a complete closure
  • Summarize final achievements
  • Abruptends
  • Silent failure
  • No end-project summary (no closure)
Post-mortem
  • Drive post-mortem
  • Communication lessons learned
  • Archive and retain project artifacts
  • Measure satisfaction
  • Not doing a post-mortem
  • Moving to a new project too soon without proper closure / saving of artifacts

For your convenience, the above table is also available as an image. You can view it here.

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.

Proven Project Management Techniques

Over-Communicate!

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.
Scorecard

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:

Sample Scorecard

Figure 1: 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.

Rating the Progress

Figure 2: Rating the progress

Trend (and Glide-Path)

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:

Glide Path - Example 1

Figure 3: Glide path – example 1

Glide Path - Example 2

Figure 4: Glide path – example 2

Note a few important details:

  1. Having a glide-path or some other indication of important milestones (e.g. B1, B2, RTM) always helps since it establishes a context for the trend and acts as a gentle “forcing function”;
  2. It’s a good idea to provide a title for the trend chart and names (and dimensions) for the chart’s axes except when they are self-evident (as is the case with time above).

Backlog / Burn-Down List

Backlogs were popularized by Scrum and other agile project management methodologies. A backlog has two purposes:

  1. Keep all tasks / items associated with a particular project in a central, regularly updated location that is easy to point to, prioritize (hopefully just once in release);
  2. Have a “parking lot” for future items, feature requests.

Here is a sample backlog:

Sample Backlog

Figure 5: Sample backlog

“Branded” Status Email

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:

  • Standardized subject line (e.g. “WPF 4 Pulse: Stress”) – allows people to easily filter and search for emails pertaining to that project;
  • Standardized “look and feel” of the email – either by maintaining a consistent structure or by including a common logo in the email;
  • Setting up a custom alias for this project only (e.g. “WPF – VS Tactics”, etc.)

Schedule in Excel

Excel presents an easy way to construct schedules. These typically have a “From”, “To” and “Length” columns. Here is an example:

Excel Schedule

Figure 6: Excel schedule

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”.

Schedule in Visio

What Excel schedules lack is a graphical representation of scaled time periods. This is where Visio schedules excel. Here is a sample.

Visio schedule

Figure 7: Visio schedule

It’s often very helpful to complement this with a “we are here” arrow:

Visio Schedule - We are here

Figure 8: Visio schedule (We are here

The arrow accomplished several things:

  1. Lightning fast way to communicate to your team and stakeholders where you are in relation to the whole project;
  2. Increases the confidence that the schedule is real and recent (if you bothered placing an arrow, you probably have ensured that you are placing it on an up-to-date schedule).

Closing Words

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.

1PM in this context refers to any “project manager” (a lead or an individual contributor in any disciplines tasked with “driving” something), not just a Microsoft PM.

2VMI (Vision-Mission-Identity) is something that is often neglected, mostly because project teams tend to eventually infer these themselves. VMI is, however, a major part of the branding of the project and the project team and tends to have a very positive impact on driving ownership into and empowering of the team members. In practical terms, VMI is answering the questions “what is the ideal outcome of the project (e.g. “deliver the best text on any platform”), who are we (e.g. “we are the team, enabling clear text in VS 2010”), and why are we the right team to do it.

Ivo Manolov is a Principal Software Manager at Microsoft Corporation. Throughout his 9+-year tenure at Microsoft, Ivo has worked on various technologies including the Win32 GUI stack, the Windows Desktop Window Manager, WPF and .NET, and lately Mediaroom. Ivo is passionate about technology, engineering excellence and delivering high-quality software, in a controlled manner, on time. He maintains a public blog on MSDN (http://blogs.msdn.com/ivo_manolov) and currently resides in the San Francisco Bay Area.

PMHut Team

PMHut Team

PMHut.com is a website dedicated to providing PM articles, detailed project management software reviews, and the latest news for the most popular web-based collaboration tools.

1 Response

  1. I would advise your readers to check out Project Analyzer – it provides tons of reporting options that would suit a variety of tastes – as we all know are comprised of every project’s stakeholder set. http://www.steelray.com/scheduleanalyzer.php

Leave a Reply