Pito's Guide to Project Planning
Some of the key lessons around project planning

  • Purpose: Achieve a specific goal, that requires multiple resources, by performing a set of tasks, in the right order so as to achieve a desired standard of quality by a certain date
  • Change: Know that change is the norm not the exception
  • Alignment: (Already mentioned) Buy-in and alignment about the specifics of the goal.
  • Who’s got the ball: Try to be unabmiguous about who is responsible for what
  • Document: Write things down in shared common doc repo
  • Tools: communications, project planning, doc repo

It’s all about time

Kent Beck We plan to ensure that we are always doing the most important thing left to do, to coordinate effectively with other people, and to respond quickly to unexpected events.
Discussion: What are some of the ways in which time is used and misused? What can you do to protect against that?
  • The slow start: Think about this! A day at the beginning costs as much as a day at the end!
  • Decision making: Need to make decisions; record the decision; avoid re-visiting if at all possible. (“We already discussed that and decided; is there new information?”)
  • Prioritization: Do the most important thing next; reassess constantly what the most important thing is

Dealing with Uncertainty and Change

Discussion: What are some of the causes of uncertainty and change? What can a team do to succeed in such an environment?
  • Change: By definition, requirements and assumptions change as the project proceeds
  • Unknowns: Very commonly there are lots of uncertainties: How many MVPs will we need? How hard will it be to find 100 people to talk to? How much time will it take to implement authentication?
  • Common Sense: Develop a skill to make reasonable common sense assumtions. Will we need 0 MVPs? or will we need 10 MVPs? Then narrow it down
  • Data: If you have a lot of uncertainty now, you don’t need much data to reduce it significantly. If you have much certainty already, you will need a lot of data to reduce it significantly.

Types of Risk

Discussion: What do all these kinds of risk have in common? Can you think of other kinds of risk that need to be considered?
  • Quality Risk: Will you create something of sufficient quality. What is sufficient quality?
  • Cost Risk: Will you be within your cost estimates? Do you have an absolute budget?
  • Time Risk: Will you complete your project on time? Where did the deadline come from? Is it absolute? What is the impact of missing the date? Can the date be changed?
  • Feature Risk: Will your project deliver all the subcomponents, or subdeliverables, or features that you think you need? Which features are must-have vs. nice-to-have?

Usually will have to trade off one against the other

Getting and maintaining alignment

Discussion: What are some tell tale signs that you are not aligned? How can you detect that? What can an individual team member do about that? Do you need to have a strong leader to achieve alignment?
  • Failure mode: When a team is unclear or there is unspoken disagreement about objectives
  • Communicate: Talk to team members and brainstorm until you agree on the goal. Needs compromise and negotiation
  • Capture: Write result down (in your) doc repo
  • Update: Revise and keep discussing as the project continues.