Difference between revisions of "WestCoast2008:The Art of Project Management: Knowing Where You Are in a Project, and What You Can Do When"

From Managing Nonprofit Technology Projects Wiki
Jump to navigation Jump to search
m (1 revision imported)
 
 
(One intermediate revision by the same user not shown)
Line 7: Line 7:
 
Notetaker: Ben
 
Notetaker: Ben
  
* go round of people, saying goals
+
* Go round of people, saying goals
** better estimating how long projects take
+
** Better estimating how long projects take
** software dev estimation - why does the last 10% take 90%
+
** Software dev estimation - why does the last 10% take 90%
** good at the known - how to estimate the unknown?
+
** Good at the known - how to estimate the unknown?
** when is the project closed?
+
** When is the project closed?
** pitfalls of time estimation
+
** Pitfalls of time estimation
** hard communicating projects to client  
+
** Hard communicating projects to client  
** how to communicate our process to clients
+
** How to communicate our process to clients
** how to reality check vendor timelines
+
** How to reality check vendor timelines
** how do you know where you are at in terms of estimated time
+
** How do you know where you are at in terms of estimated time
** when you have gone over time, how do you manage that with clients and workers
+
** When you have gone over time, how do you manage that with clients and workers
* main things
+
* Main things
** tools
+
** Tools
*** favorite tool: the checklist
+
*** Favorite tool: the checklist
** tactics
+
** Tactics
*** client sign-offs
+
*** Client sign-offs
*** narrowing the cone of uncertainty
+
*** Narrowing the cone of uncertainty
** principles
+
** Principles
*** biggest thing: chunking things up to constrain uncertainty -- going over a week on a one-week chunk is not a huge deal, going for 2 months and realizing you're half-way done, is a huge problem
+
*** Biggest thing: chunking things up to constrain uncertainty -- going over a week on a one-week chunk is not a huge deal, going for 2 months and realizing you're half-way done, is a huge problem
* what are some other ways to approach things?
+
* What are some other ways to approach things?
** as a client with consultants, i give them a drop dead deadline, and work with her programmer to create a timeline, set a fixed budget
+
** As a client with consultants, I give them a drop dead deadline, and work with her programmer to create a timeline, set a fixed budget
** checkpoint at 80% of project budget
+
** Checkpoint at 80% of project budget
* never offer a fixed bid on an 8 month development project
+
* Never offer a fixed bid on an 8 month development project
* definitely have a project manager who is staying on top of the status of the project
+
* Definitely have a project manager who is staying on top of the status of the project
* new technology is both new technology, but it's also technology you haven't implemented before
+
* New technology is both new technology, but it's also technology you haven't implemented before
* used an excel spreadsheet do detailed estimate of programmer time, multiplying development time by 3 for ones we haven't done. we lived in the spreadsheet for 3 weeks
+
* Used an excel spreadsheet do detailed estimate of programmer time, multiplying development time by 3 for ones we haven't done. we lived in the spreadsheet for 3 weeks
* where we got burnt was value-engineering a budget and project, and we ultimately decided to eat that time. in the future we would ask that consulting time is paid for.
+
* Where we got burnt was value-engineering a budget and project, and we ultimately decided to eat that time. in the future we would ask that consulting time is paid for.
* we want to avoid that feeling that we "just have to get through this" and don't have any time.
+
* We want to avoid that feeling that we "just have to get through this" and don't have any time.
* this is really when we're doing something new and different, not regular rollouts
+
* This is really when we're doing something new and different, not regular roll-outs
* use the budget to get client to understand the trade-offs of this feature over that
+
* Use the budget to get client to understand the trade-offs of this feature over that
* we did check against the spreadsheet estimates
+
* We did check against the spreadsheet estimates
* we were very honest with the client about what is possible and owning risks jointly with your client
+
* We were very honest with the client about what is possible and owning risks jointly with your client
* front-load the scary stuff
+
* Front-load the scary stuff
* estimate vs actual:
+
* Estimate vs actual:
** we export the excel estimate to a CSV, import to salesforce, and map our time-logging to it so we can get really granular -- down to the requirement level.
+
** We export the excel estimate to a CSV, import to salesforce, and map our time-logging to it so we can get really granular -- down to the requirement level.
* time-logging is mapped through salesforce to the original spreadsheet
+
* Time-logging is mapped through salesforce to the original spreadsheet
* transparency: it's important to really work together on the checklist, and be sure we really have a complete picture of the project to be sure things don't crop up.
+
* Transparency: it's important to really work together on the checklist, and be sure we really have a complete picture of the project to be sure things don't crop up.
* we chunked things in a way that was completely counter to how the project actually played out on a technical infrastructure level.
+
* We chunked things in a way that was completely counter to how the project actually played out on a technical infrastructure level.
* checklists, should they be provided by programmer or client?
+
* Checklists, should they be provided by programmer or client?
** it's always a negotiation between all parties that have a stake in the work
+
** It's always a negotiation between all parties that have a stake in the work
** there are business milestones, technical milestones, etc
+
** There are business milestones, technical milestones, etc
** it's important to make clear who is responsible for what
+
** It's important to make clear who is responsible for what
* don't be afraid to advocate for your needs, and to define the project process
+
* Don't be afraid to advocate for your needs, and to define the project process
* let's reexamine a project and the pathologies happening
+
* Let's re-examine a project and the pathologies happening
** why didn't the ui get detailed sooner?
+
** Why didn't the ui get detailed sooner?
** there was a conflict between what the developers thought the process should be and what would have made more sense for the client and in terms of managing risks
+
** There was a conflict between what the developers thought the process should be and what would have made more sense for the client and in terms of managing risks
* how much detail do you manage with a project that is already underway?
+
* How much detail do you manage with a project that is already underway?
** if it's already going, at least getting a clear idea of the outcome would be helpful
+
** If it's already going, at least getting a clear idea of the outcome would be helpful
* what does a client want to know?
+
* What does a client want to know?
** always over-estimate especially for time
+
** Always over-estimate especially for time
** want to know the moment there is discomfort in the relationship and the developers are feeling like they can't make it
+
** Want to know the moment there is discomfort in the relationship and the developers are feeling like they can't make it
** create a place where developers can speak up comfortably
+
** Create a place where developers can speak up comfortably
* estimation
+
* Estimation
** when a developer says it will take 3 hours, you have to add project management, design and q&a, and contingency -- basically triple it
+
** When a developer says it will take 3 hours, you have to add project management, design and q&a, and contingency -- basically triple it
** stick to a methodology and evaluate based on it
+
** Stick to a methodology and evaluate based on it
* what about the situation of a client saying i want X features and X amount of money, how do you handle that? do you lower rate?
+
* What about the situation of a client saying i want X features and X amount of money, how do you handle that? do you lower rate?
** prioritize. the dollar excercise (divide the dollar among 20 features)
+
** Prioritize. the dollar exercise (divide the dollar among 20 features)
** everybody can have sticker shock
+
** Everybody can have sticker shock
* value engineering
+
* Value engineering
** the idea is, try to get as much bang for the buck as possible
+
** The idea is, try to get as much bang for the buck as possible
** if the client has $60,000 and we give them an estimate for $100,000, what are the features we need to let go of
+
** If the client has $60,000 and we give them an estimate for $100,000, what are the features we need to let go of
** let's try to not do it for free, and be clear about how much the project is really worth with the client even if you do give a little and eat some hours
+
** Let's try to not do it for free, and be clear about how much the project is really worth with the client even if you do give a little and eat some hours
** here's a summary:
+
** Here's a summary:
*** client: "we have $60,000"
+
*** Client: "we have $60,000"
*** vendor: "it will cost $100,000"
+
*** Vendor: "it will cost $100,000"
*** client: "we can't pay that"
+
*** Client: "we can't pay that"
*** vendor: "here's a project we can do for $60,000, and here's what it can do and here's what it can't"
+
*** Vendor: "here's a project we can do for $60,000, and here's what it can do and here's what it can't"
* question: how many people do a project post-mortem with a client and internally
+
* Question: how many people do a project post-mortem with a client and internally
** i'm a firm believer in this
+
** I'm a firm believer in this
* one problem i'm dealing with with a current project is that there are so many requirements, i'm actually taking a lot of time simplifying and streamlining features. identifying and cutting those things that will blow up in your face
+
* One problem I'm dealing with with a current project is that there are so many requirements, I'm actually taking a lot of time simplifying and streamlining features. identifying and cutting those things that will blow up in your face
** pulling back from specific features to requirements
+
** Pulling back from specific features to requirements
* let's have a conversation about meeting client's needs, and be really realistic
+
* Let's have a conversation about meeting client's needs, and be really realistic
* set up a parking lot, put things in the parking lot you're not going to use right away
+
* Set up a parking lot, put things in the parking lot you're not going to use right away
* what is a chunk? it's the smallest bit we can show to a user: here's a thing, look!
+
* What is a chunk? it's the smallest bit we can show to a user: here's a thing, look!
* setting up small successes every week
+
* Setting up small successes every week
* its also helpful to figure out what you know and what you don't know, and manage the things you don't know
+
* Its also helpful to figure out what you know and what you don't know, and manage the things you don't know

Latest revision as of 22:50, 14 January 2016

Description

One of the keys to success in any project is knowing where you are in a project, and what changes can be made when. We will talk about strategies for breaking projects into chunks and phases, how to set criteria and decision points for each phase, using checklists and sign-offs to manage input, and recovery strategies for when your carefully laid plans go awry.

Session Notes

Notetaker: Ben

  • Go round of people, saying goals
    • Better estimating how long projects take
    • Software dev estimation - why does the last 10% take 90%
    • Good at the known - how to estimate the unknown?
    • When is the project closed?
    • Pitfalls of time estimation
    • Hard communicating projects to client
    • How to communicate our process to clients
    • How to reality check vendor timelines
    • How do you know where you are at in terms of estimated time
    • When you have gone over time, how do you manage that with clients and workers
  • Main things
    • Tools
      • Favorite tool: the checklist
    • Tactics
      • Client sign-offs
      • Narrowing the cone of uncertainty
    • Principles
      • Biggest thing: chunking things up to constrain uncertainty -- going over a week on a one-week chunk is not a huge deal, going for 2 months and realizing you're half-way done, is a huge problem
  • What are some other ways to approach things?
    • As a client with consultants, I give them a drop dead deadline, and work with her programmer to create a timeline, set a fixed budget
    • Checkpoint at 80% of project budget
  • Never offer a fixed bid on an 8 month development project
  • Definitely have a project manager who is staying on top of the status of the project
  • New technology is both new technology, but it's also technology you haven't implemented before
  • Used an excel spreadsheet do detailed estimate of programmer time, multiplying development time by 3 for ones we haven't done. we lived in the spreadsheet for 3 weeks
  • Where we got burnt was value-engineering a budget and project, and we ultimately decided to eat that time. in the future we would ask that consulting time is paid for.
  • We want to avoid that feeling that we "just have to get through this" and don't have any time.
  • This is really when we're doing something new and different, not regular roll-outs
  • Use the budget to get client to understand the trade-offs of this feature over that
  • We did check against the spreadsheet estimates
  • We were very honest with the client about what is possible and owning risks jointly with your client
  • Front-load the scary stuff
  • Estimate vs actual:
    • We export the excel estimate to a CSV, import to salesforce, and map our time-logging to it so we can get really granular -- down to the requirement level.
  • Time-logging is mapped through salesforce to the original spreadsheet
  • Transparency: it's important to really work together on the checklist, and be sure we really have a complete picture of the project to be sure things don't crop up.
  • We chunked things in a way that was completely counter to how the project actually played out on a technical infrastructure level.
  • Checklists, should they be provided by programmer or client?
    • It's always a negotiation between all parties that have a stake in the work
    • There are business milestones, technical milestones, etc
    • It's important to make clear who is responsible for what
  • Don't be afraid to advocate for your needs, and to define the project process
  • Let's re-examine a project and the pathologies happening
    • Why didn't the ui get detailed sooner?
    • There was a conflict between what the developers thought the process should be and what would have made more sense for the client and in terms of managing risks
  • How much detail do you manage with a project that is already underway?
    • If it's already going, at least getting a clear idea of the outcome would be helpful
  • What does a client want to know?
    • Always over-estimate especially for time
    • Want to know the moment there is discomfort in the relationship and the developers are feeling like they can't make it
    • Create a place where developers can speak up comfortably
  • Estimation
    • When a developer says it will take 3 hours, you have to add project management, design and q&a, and contingency -- basically triple it
    • Stick to a methodology and evaluate based on it
  • What about the situation of a client saying i want X features and X amount of money, how do you handle that? do you lower rate?
    • Prioritize. the dollar exercise (divide the dollar among 20 features)
    • Everybody can have sticker shock
  • Value engineering
    • The idea is, try to get as much bang for the buck as possible
    • If the client has $60,000 and we give them an estimate for $100,000, what are the features we need to let go of
    • Let's try to not do it for free, and be clear about how much the project is really worth with the client even if you do give a little and eat some hours
    • Here's a summary:
      • Client: "we have $60,000"
      • Vendor: "it will cost $100,000"
      • Client: "we can't pay that"
      • Vendor: "here's a project we can do for $60,000, and here's what it can do and here's what it can't"
  • Question: how many people do a project post-mortem with a client and internally
    • I'm a firm believer in this
  • One problem I'm dealing with with a current project is that there are so many requirements, I'm actually taking a lot of time simplifying and streamlining features. identifying and cutting those things that will blow up in your face
    • Pulling back from specific features to requirements
  • Let's have a conversation about meeting client's needs, and be really realistic
  • Set up a parking lot, put things in the parking lot you're not going to use right away
  • What is a chunk? it's the smallest bit we can show to a user: here's a thing, look!
  • Setting up small successes every week
  • Its also helpful to figure out what you know and what you don't know, and manage the things you don't know