Tips and tricks for the newbie
You believed this is about Agile
How to do a project in 3 steps
- Get to specifications
- Do the work
- Get the money
The essence of any project
- It must have specifications.
- It must have a deadline.
- It has constrained resources.
If any of these is missing, it is NOT a project, but ongoing work
On the other hand, ongoing work can be executed more effectively as mini-projects
Theory vs reality
"At constant quality (are of the triangle), increasing one element affect the other two".
Example: client request more features, so you need more time or more resources
This is partially false! Time and cost are not unrelated variables in this equation
Why do we need PM?
Do we actually need PM?
What project manager wants?
- Make the company happy
- Make the client happy
- Make the team happy
- Accomplish the goals of the project
- Optimize the throughput of the team
Typical problem in projects
- Specifications are not well defined.
- Inability to estimate "resource per scope"
- Bad utilization of resources.
- Little visibility about constraints.
- Poor risk management.
- The "Parkinson Law".
- The "Student Syndrome".
- The "Murphy's Law".
- Multi-tasking
- Understand the essential goals.
- Prioritize goals.
- Split in smaller tasks.
- Understand constraints between tasks.
The good old Gantt Chart is still your best friend
Student syndrome
If you say that you don't do that, you are lying
Parkinson Law vs Murphy's Law
usually we allocated buffers for unexpected delays in each task, but this buffer is always wasted.
Projects are not resilient to unexpected problems.
Multi-tasking: the illusion of being productive
Team-work (?)
- You want to maximize throughput and deliver project in time.
- Give work to the person that can do it best and is available.
- Always assign 2 people to critical tasks
- It might add constraints, instead of removing them
Larger teams, more overhead
For all these
Reasons
Classical PM fails
Problems Agile
Which problem Agile helps to solve?
- Individuals and interactions over processes and tools
- Working software over comprehensive documentation
- Customer collaboration over contract negotiation
- Responding to change over following a plan
That is, while there is value in the items on
the right, we value the items on the left more.
The original Agile Manifesto
Which problem Agile helps to solve?
- Compensate for unclear specifications.
- Transparency and internal communication.
- Increase focus using smaller and achievable goals.
- Build value incrementally and iteratively.
Which problem Agile does not solve?
- Ability to prioritize tasks.
- Work hard on something useless.
- Having less resources that you actually need.
- Visibility of the project as a whole.
- Understand your project
- Understand your problems
- Think if Agile can help you solve your problems
Project management
By Davide Faconti
Project management
- 1,025