I’ve recently been challenged by my Amazon manager to increase my capacity to be able to manage more projects at once. I’ve been concurrently managing around 1 large software project and then around 2-4 medium to smaller projects. Increasing my capacity means identifying the important, high leverage tasks and focus on driving those tasks and eliminate the rest. In another way, what’s the 80/20 for driving a project?
In order to identify those tasks, the following questions need to be answered:
- What has been critical in helping me to deliver previous projects?
- What have I been able to leverage accomplish more with less time/effort?
- What do I wish I had in the middle of previous projects?
Based off the brainstorming of those questions, I came up with the following:
User Roles
- Who is the target user(s) for this project?
- What are the properties of these roles?
- What problem(s) is this going to solve for these groups?
- What this helps with?
- This helps me to be able to play the part of the User when needing to make design decisions.
- This allows me to see things through the eyes of the target User.
- Books
- User Stories Applied by Mike Cohn
Business Impact
- What is the business impact of completing this project?
- What this helps with?
- This helps me to see where we will be making our profit from which will help when needing to make design decisions.
- Books on this topic
- Making Things Happen by Scott Berkun
Success Criteria
- What’s the success criteria for this project?
- What would make this project successful?
- What are the metrics we need to monitor?
- Current?
- Post launch?
- What this helps with?
- This defines what success actually is for the project.
- Books on this topic
- Making Things Happen by Scott Berkun
High Level Technical Design
- What’s the high level design for this project?
- How does this design fit into the current architecture?
- UML diagrams are helpful if the project is complex enough.
- What this helps with?
- During a project, I need to understand the higher level components being developed so I can ask the right questions and understand when issues arise.
- Books on this topic
- Software Requirements by Karl Wiegers
- Agile Software Requirements by Dean Leffingwell
Work Backlog
- User Stories or Use Cases (Depending on the type of project)
- Priority of backlog
- Estimates
- Acceptance Criteria
- Issues/Bug list
- What this helps with?
- This is the specification for the project and defines the work that needs to be done. This also allows me to
- Books on this topic
- User Stories Applied by Mike Cohn
Project Plan
- Resources
- Milestones
- Buffer
- Vacation
- Personal Days
- Sickness
- On-call rotations
- Public Holidays
- What this helps with?
- This allows me to track the work as the project is in progress, which is turn allows me to know when the project is behind or on track.
- Books on this topic
- Secrets to Mastering the WBS in Real World Projects by Liliana Buchtik
Once I have these defined, it’s fairly easy to drive the project forward. All of these need to be updated and groomed, sometimes on a daily basis, but doing so is usually doesn’t require too much effort.