When do you know a project smells
I was reviewing a ânext generation Xâ project that has been there for many years. The way it goes, the project will probably still be there when I retire.
Iâve seen many docs from different lead engineers who were assigned to this project at different periods: 1-pager, 2-pager, 6-pager ⌠the irony is, I canât find a single line of code.
âWhy didnât we write some prototypes to validate the design proposals?â I asked.
âWell, the hardware was not ready yet and we could not agree on what hardware platform to be used for next generation X.â, the poor project manager answered. He took over the project a few months ago. I couldnât blame him.
âIsnât this the definition of Analysis Paralysis?â I sighed.
Over the years I built some intuitions of detecting smelly projects.
They usually fall into anti-patterns:
Project without customer or stakeholder, no real requirement, therefore without meaningful value to anyone. Believe or not, software industry has many bullsh*t projects that deliver no real values - a way to keep people busy I guess. I often ask my project leads: âname one concrete person that will be delighted if you complete the project. If you canât find even one person, well donât waste your time.â
Project with too many stakeholders, too many requirements that are often conflicting each other. We go into endless discussions, endless meetings that go nowhere other than the conclusion âletâs have another meeting.â People come to these meetings to get visibility, rather than solving a real problem.
Project that has no design, no plan, and usually no deadline. I am not a big fan of very detailed design or project plan. But âplans are nothing, planning is everything!â As Dwight D. Eisenhower once said.
Project that has too much design, too many discussions, mountain of documents, but no code, no prototype, no Minimum Viable Product (MVP). In this situation, delivering something is infinitely better than delivering nothing. Divide the problem into smaller ones, split what can be decided now from what need more discussions later, start small and iterate, and code the components that need to be there no matter what.
Project that cannot give any sprint demos. If a project cannot provide demos for consecutive sprints, it is usually a sign the project is off track.
Projects that rely on a shining new technology for success, rather than careful planning and disciplined executions. How many times weâve seen comments like âif only we could rewrite the application in programming language X or database Y (often a NoSQL db jargon), all the problems will be solved.â Well, I committed such sins in my career a few times. Iâve seen well intentioned effort to rewrite large Perl applications into Java, which became just Perl programming in Java grammars. Now we have a new problem!
âŚ
What are your project management anti patterns?
Last updated
Was this helpful?