Hosting a Successful Requirements Meeting

Arguably, one of the most important phases of a project — getting everyone on the same page – occurs during the requirements meeting(s). The meeting with staff to develop the project requirements is the culmination of the initial effort to create a project charter, scope, schedule and budget. The work of deciding how to get from nothing to accomplishing project goals happens through the process of the requirements meeting.

Now I am not talking about the “high level requirements” that organizations use to get a project approved (And unfortunately sometimes sent out for bid).  This level of requirements is more for bounding and high level scoping – not useful if you are trying to actually define a set of tasks or detail out the what and how of the project.  High level requirements are great for preparation.

We used to joke – sometimes with more than a smidgen of truth – that the project manager would tell developers to begin coding, while he or she went off to find out the project requirements. However, having been dipped in the sacred waters of the “Guide to the Project Management Body of Knowledge,” we know now that collecting requirements falls under the process of Project Scope Management, as part of developing the Project Management Plan.

Preparing for the Requirements Meeting

Clearly defining the detailed tasks needed to complete modules, add functionality, or build a system begins with the vision of the project’s outcome, tempered by the reality of time and budget. Next, the top-level objectives that drive the requirements are defined through a process that involves all stakeholders – clients, users, senior management, organizational strategist and key project staff.

Assuming that the organization has not already documented the high level requirements, you can use several tools and techniques to gather objectives and top-level requirements. I have found that “scenarios of use” and “use-cases” work best with most stakeholders because they help crystallize vague objectives into understandable activities. Process maps, flow charts and decision trees can be used effectively with developers.

The project manager’s goal in conducting these pre-requirements meetings is to create a coherent list of high-level requirements that will be presented to the development staff to create the detailed project requirements.

Running the Requirements Meeting

First off, let me warn the new project manager that the requirement meeting is rarely a single event. Depending on the size and complexity of the project, multiple meetings should be anticipated. Before the meeting, provide all attendees with the information distilled from the interviews with users, customers and other stakeholders including comments from the scenarios. If your project has a Concept of Operations, that should be added to the pre-meeting review materials.

Break the meeting up logically using either the project work breakdown structure or development modules. Make sure everyone is comfortable, has available linked communications, notepads or sticky notes and a projector, whiteboard or electronic white board to capture ideas and decisions. Then, like Alice in Wonderland, begin at the beginning, continue through to the end, and stop.

Unlike Alice, though, project managers should plan to iterate at least once more through all steps to assess and integrate the impact of later decisions on initial ones. PMBOK suggests applying group process optimization techniques such as facilitation, group decision-making, and breaking up into small groups with timed feedback requirements. The requirement’s meeting is done when everyone understands what the detailed requirement are and how meeting each detailed requirement integrates toward a task and deliverable in the WBS. Developers should have a general idea of how to approach each task and understand the operating environment for both coding and execution. They also know how success will be tested.

Output

The result of the requirement’s meeting is a document, a requirements management plan and a requirement traceability matrix. The requirements document should be dated and versioned, as updates may occur based on change requests or risks realized during execution.  Now you have a baseline of scope for the project!

Conclusion

While no two projects are the same size or complexity, they all have “scope” and requirements as a common element.  You may have to tailor the steps or process to fit your project size, but don’t short change this critical step when doing
a project.  Many a PM has been wounded in battle because they didn’t take the time to get the requirements right!

Rethinking Project Success and Failure

I think we have an issue in the field of project management.  Defining project success and failure only in terms of on-time and on-budget performance is simplistic and wrong. Software projects are about solving problems for customers.

I have seen countless resumes from aspiring project managers and performance reviews that claim proficiency in project management measured by these two factors only. While they are important components of project management, being on time and on budget does not mean that the end result met the customer’s needs.

On the flip side, being over budget or behind schedule does not mean ipso facto that the project was necessarily a failure. In the real world of software development, the initial requirements that drove the schedule and budget will change. The business environment is always in flux and the problems the customer wants solved will be shaped by changes in their operating environment.  Let me say this one more time:  change is a constant and must be accounted for in any project.

That shift in priorities and constraints is the key reason that project managers must be in constant contact with their customer and stakeholders.

The need to include quality and user satisfaction as part the duties of a project manager is not a new idea.  The DeLone and McLean Information System success model from many years ago offers additional factors that should be considered in evaluating the success of a software project.  Here are their suggestions summarized in Defining and Measuring Project Success by Danie van der Westhuizen:

• System Quality: measure of the information processing system itself
• Information Quality: measure of information system output
• Information Use: measure of recipient consumption of the output of an information system
• User Satisfaction: measure of recipient response to the use of the output of an information system
• Individual Impact: measure of the effect of information on the recipient
• Organizational Impact: measure of the effect of information on organizational performance

I think their last criteria—organizational impact—is really important to track as a measure of success or failure. If a piece of software or even a new process is timely and cost efficient but is never used by the customer, to me that is a project failure. On the other hand, if a project evolves to meet customer’s changing requirements, is used by the customer, and improves the customer’s bottom line—that project was successful even if it took more time to complete and required modifications to cost and scope.

Another interesting perspective on expanding the definition of project success and failure was presented by Scott Ambler writing for Dr. Dobb’s Journal.  He reports on a 2007research project  that surveyed 105 professionals including project managers, IT managers, and business stakeholders about how they comparatively ranked three common project success criteria:

% who agree with this statement

Project managers

IT managers

Business stakeholders

Shipping when the system is ready is more important than shipping on schedule

50.3%

63.1%

73.3%

Providing the best ROI is more important than delivering under budget

62.4%

76.9%

86.7%

Delivering high quality is more important than delivering on time and on budget

78.2%

87.7%

86.7%

 
Clearly a justifiable conclusion from this small survey is that customers are more interested in the utility of the resulting software product than they are in forcing compliance with schedule and cost parameters set at the beginning of the project. It is up to the project manager to work closely with the business stakeholders throughout the development cycle to clearly explain the reasons and benefits of modifications in schedule and cost, so that everyone ends up convinced in the delivered project’s success.

One last thought or rather caveat—all changes have an impact or cost.  While you should always be ready to accept change, it is not something done lightly or without judging the impact on cost or schedule and then getting buy-in, approval or consensus.

Your thoughts on measuring software project success and failure are invited via comments.

The Lazy Project Manager's Blog

The Home of Productive Laziness Thoughts

ProjectManagement.com

Thoughts, experience, tips and tricks on issues affecting managers and project management

A Girl's Guide to Project Management

Project Management musings for one and all

LeadingAnswers: Leadership and Agile Project Management Blog

Thoughts, experience, tips and tricks on issues affecting managers and project management

Project Management Hut

Thoughts, experience, tips and tricks on issues affecting managers and project management

Herding Cats

Thoughts, experience, tips and tricks on issues affecting managers and project management

beyondcenter

Pushing the Edges Out ...

projectxpert

Just another WordPress.com site