Project Planning (Thu Oct 11, lecture 10)
How to think about estimation and project planning

Homework due for today

Legend: : Participation | : Early | : PDF | : Team | : Zipped

  1. Read: “The Lean Startup”, Chapter 9. Think and answer the following warmup questions:
    • Batch Sizes: Why are small batch sizes said to be superior in planning? What exactly is a batch? Can you think of an example not in the book where batch sizes can be small or large? Does the book match your intuition?
    • Pull vs. Push: Imagine that you lived in an apartment with several other people, and it was your job to make sure you never ran out of milk or toilet paper (…or beer?). Describe how you would go about this if you were employing a pull model vs. a push model. What are the tradeoffs that you will need to make? What resources (time, money, space, transportation) would affect your choice? What are the pros and cons when using pull or push in this scenario?
    • Check for understanding: What key topics from this content are you confused about and would like further explanation? And if it’s all pretty clear, then what are a few of the key learnings or insights presented in this material? p.s. Make sure you indicate clearly for each point whether you are clear on it or are still confused about it!
    • Deliverable: You’re responses to above questions as a pdf
  2. Estimation: Read What do you mean you need more time?. The lawn at my house is 10m x 20m. Estimate how much time it would take you to mow it, and justify your estimate carefully. Estimate how much you would charge me to do it once a week. Email me personally if you need any clarification. Deliverable: Write up your specific overall charge, and your overall time estimate in hours. Include a detailed justification of the time estimate and charge. How exactly did you arrive at thos figures? Write up as a pdf, submit to latte.
  3. Weekly Team Update: Submit your Weekly Progress Updates according to the instructions. Team Deliverable: Weekly Progress Update
Ongoing Work
  • Teams, Continue working together and independently on your product in weekly iterations. You should be meeting at least once a week as a team. Remember to invite your TA Partner. Review Term Project Outline for suggestions. You are working on Stage 1, deliverables due on Oct 18.
Interesting additional reading

Post-it note exercise

  • Top Results
    1. Less homework — you’re a great professor and I love the stories (9) - not every class
    2. Invite other professors (cs) to talk about their entrepreneur experience (6)
    3. More group discussions in class (5)
    4. More case studies on other companies, or real life situations (4)
    5. Have the TAs more involved in the group projects (OH available) (3)
    6. More hands on classes (2)
  • Already planned
    1. More checkins - by Pito or TAs
    2. Topic on how to look at startups from an investors point of view
    3. More practice pitches instead of just waiting till the final presentation (should have practiced the pilot project)
    4. Some way that students that don’t participate in group work get penalized
    5. Go over more ways to do hypothesis testing
  • Things I can act on:
    1. Less focus on lean startup (author can be redundant), condense into section ideas
    2. Expand on what the book said, instead of just going over it
    3. More discussions on the actual technical implementations of our project ideas
    4. Meet with Pito early during the project to discuss ideas since you have a lot of experience
    5. Encourage more complicated MVPs like programming
    6. Improve procedure for selecting term project — maybe vote online
  • Items I don’t agree with
    1. Course should be a year
    2. Longer more detailed time for pilot projects

Chapter discussion

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.

Next Class