Category: Anti-Pattern

10 Reasons to Not Define Requirements Up Front

Requirements — we spend more time on requirements than any other single area of application development. (Note: Some poorly-managed projects spend the most time in software quality assurance. I hope yours don’t.) Why do we spend so much time on requirements? Simply because if we don’t get the requirements right, the project is doomed. The […]

Project Suicide: A Preventable Outcome

Many software projects commit suicide. How? Here are a few gruesome ways. Not enough calendar time is allocated. High-quality software takes time. Throwing lots of people at the problem may get the project done faster but there will be many rough edges in the final software. Will customers accept that? The team is understaffed. This […]

An Agile Death March Is Like Any Other

Doomed projects give everyone involved a bad reputation. All this talk of the end of the world on May 21st, made me think of “death march” software projects. I’ve been involved in a few and they are not fun. Can an agile team using Scrum, XP, Kanban, Lean or any other agile approach, completely avoid […]

Agile Software Success Demands Teamwork Not Domains

Agile software development is a team effort. That’s an important point so I’ll repeat it. Agile software development is a team effort. Whether you’re using Scrum, XP, Kanban or another agile approach, there must be a strong sense of teamwork and a willingness to deliver as a team. Too often, companies new to agile development, […]

PAGES Makes Scrum Even Better!

Here’s how it happens. Colossal Widget Company decides to adopt agile development practices and Scrum in particular. They have been using waterfall for a long time with great success (or so they like to claim). [Face it, no CIO is going to approach his boss, say that too many projects are failing, and change is […]

Waterfall Projects Are Always In Trouble

Project Management Solutions conducted a survey of senior executives and project managers to determine “Strategies for Project Recovery” (pdf download). What I found most interesting is the section titled “Causes of Troubled Projects”. They came up with these top five causes of troubled projects… “Requirements: Unclear, lack of agreement, lack of priority, contradictory, ambiguous, imprecise. […]

Slow Down; You Move Too Fast!

There’s a common misconception floating around in enterprise companies. They believe that software release/upgrade cycles have to be long. At one time, Microsoft was criticized for releasing major Windows updates too fast. (I know, hard to believe, isn’t it?) Why do they feel that way? It’s expensive and time consuming to roll out new software […]

Top 10 Agile Development Traps

In any major endeavor, pitfalls, misunderstandings, conflicts and other traps abound. Agile software development is no exception. Here are the top 10 agile traps: Over planning at project inception then not updating the plan Protecting functional departments Poorly managing the backlogs Focusing on tools Focusing on process Believing that the customer cares about the implementation […]

Be Agile to Innovate

Innovation is not a technical problem. Anyone can innovate. It’s a cultural problem. Big organizations block innovation by pulling every idea into the corporate mainstream. It works something like this… Employee: “I have great idea. There is an untapped market for X and we are in a unique position to capture it.” Manager: “Yes, you’re […]

Some Projects Deserve to Die

A software project will occasionally get off to a bad start. Maybe it was ill conceived. Maybe the concept was good but the approach is wrong. Maybe the concept and the approach are correct but the team consists of the wrong people. Or, forget all that — maybe the project got off to a good […]