EPRI: Electric Power Research Institute

Software Development


Step 3: Requirements Phase


Defining the Requirements

  • The format, rigor, complexity, and scope of your requirements should track with the criticality and complexity of your project.
  • If the contractor is needed to write the Requirements, then a separate task is recommended
    • THIS IS NORMAL IN SOFTWARE — REQUIREMENTS DEFINITION CAN BE HARD
  • Prioritize requirements—and communicate the prioritization to funders—as a way to manage scope and expectations as the schedule progresses
  • Identify High Risk areas:
    • Conduct prototyping during the detailed design development
    • First of a Kind? If it's never been done or if your developer has never done it, be sure to include capability development and proof of concept to ensure that the learning curve and risk are baked into your project
  • The Software Testing approach should be identified as part of the Requirements
  • Project Manager might refer to Test Planning Guide (307 kB) for designing requirements and test cases


Detailed Requirements