Follow us...

Tools & Process of Connected Requirements, Estimates and Work Plans

John A. Bellwin, JD, Accenture Senior Manager, www.accenture.com

Last month, I discussed connecting Requirements to Estimates and Estimates to Work Plans. The solution that I identified involves determining the:
  • Data Objects and their attributes
  • Roles that use the data objects
  • Actions that are performed by the roles using the data objects.
This month, I am going to discuss the tools and process required to make this a reality.

First let’s identify the problem that needs to be solved: there are organizations that do not have documentation of their data, what roles use the data, and what systems use the data. Also, the documentation needs to be in a format that can be easily accessed. This lack of documentation and/or the lack of ease of access are two of the reasons requirements can be missed.

Process

At a high level, my requirements process flow is:
  1. Identify Business Requirements (high level which identifies functionality): e.g. the Grocery  Shopping List Application must provide the ability to produce a list of items to be purchased at the grocery store.
  2. Identify Application (aka Functional) Requirements: e.g. the Grocery Shopping list must provide the functionality to identify items needed for a specific recipe.
  3. Estimate the project based upon the data/roles/actions identified.
  4. Develop a work plan based upon the estimate.
Not to make a "no duh" statement, but step 2 can be difficult. The first time it is done, there will be data elements missed, roles will not be fully identified, and some actions will be missed. And to the extent that these elements are missing, the estimate will be less accurate. It is going to happen, so accept it and plan for it. Planning for it means allocating time to address the missing information.

Tools

The tools that I use are:
  1. Rational RequisitePro
  2. Ravenflow's RAVEN
  3. Microsoft Excel
  4. Microsoft Project Server
For those of you not familiar with the tools:
  • RequisitePro manages requirements
  • RAVEN is a use case modeling tool with automated modeling
  • Microsoft Project Server is the enterprise version of Microsoft Project that enables collaboration
RequisitePro not only houses my requirements but also the data and roles information. RAVEN houses data, roles and actions information. RequisitePro can save its information in a SQL Server database. That database is read by excel for information such as how many data objects are being used and how many roles are involved.

Interplay of Process and Tools

Requirements identified in steps 1 and 2 (above) are stored in RequisitePro. As we learn more about the requirements (usually by using RAVEN), any updates to the requirements are also stored in RequisitePro. In step 2, I look for the identification of the data, roles, and actions. Keep in mind an important point: the repositories in both RequisitePro and RAVEN live on after a project and make the next project that much faster.

As soon as requirements teams make progress in step 2, Excel can perform an automated extraction from RequisitePro. This automated extraction provides input to the estimating process; the inputs are: data and roles. The number of action steps is still a manual input.

With the automated extraction from RequisitePro, Excel creates an estimate. Excel then does a similar automated extraction from Microsoft Project Server's SQL Server database. The Project Server information includes hours and roles. The hours and roles from Project Server are then compared (in Excel) to the estimate that Excel created based upon the RequisitePro information. The resulting comparison shows how the work planning compares to the estimate, and the estimate is based upon the requirements.



John is a Senior Manager at Accenture, a global management consulting, technology services and outsourcing company, with approximately 236,000 people serving clients in more than 120 countries. John is a member of Accenture's Program, Project, and Service Management group. As a Program Management Office lead, John's work typically involves work planning, resource management, estimating, and requirements development/management.