Developers all over the world are suffering terrible pain. What is the point? What can we do for software developers and their kids?
This disturbing video clip was created by devshop and has inspired me to help these poor people! What can project managers do to address these critical issues? Let’s take a look at them. This post is part a series that addresses each of the issues in the video.
We are now 4 months into a 5-month schedule, and I just received the final requirements yesterday (and it has changed again!).
Please manage your requirements! The poor soul needed a project manager or business analyst to help flesh out the requirements ahead of time. Even in iterative approaches, developers should have clear high-level requirements before they begin coding.
My experience is that project teams work better when there is a business analyst or project manger who is knowledgeable enough about the work of the project team (usually someone who has done it themselves). This allows the team to focus on their tasks. The best thing for the team is to trust the PM or BA to understand the customer’s needs and extract their requirements in a way that captures most of their desires and ideas.
This is where visuals can be a great help. I use visual tools such as modified use case scenarios diagrams, GUI mockups (for software), and simple functionality graphics to understand user needs. (Usually creating these on-the-fly with a projector and stakeholders in the room, this allows you to get instant feedback, check for understanding and make adjustments, etc.) I can use the output of this process (in conjunction with more formal documented requirements), to help the project teams understand what is required. I’m often able to provide visual representations to suggest how things might work at high levels (high-level ERDs for database structure, outline for documents, etc.).
Eliciting quality requirements is an art form that requires a specialist. There are many ways to gather requirements. But the important thing is that you have someone who cares about creating good requirements. Many project team members are too busy with their own work to focus on this. You can read my earlier post about how great requirements are SORTA NUTS, if interested.