EPRI: Electric Power Research Institute

Software Development


Step 1: Concept Phase


Overview

  • Software projects represent an additional commitment due to the ongoing support and evolutionary development requirements of a successful and popular product
    • What is the problem being solved?
    • What stage is the software supporting at this time?
    • How might updates be handled in the future?
  • The purpose of the Software Lifecycle Management Plan is to facilitate the communication of expectations with management and members.
  • A Software Lifecycle Management Plan (41 KB) should be developed and approved by the responsible Program Manager prior to the project kickoff.
  • These items should be addressed in the Software Lifecycle Management Plan:
    • Use case (who will use the proposed product and how it will be used)
    • What is the development strategy and resources?
    • Where does this fit in the software process requirements?
    • How will the software be licensed to members and other parties?
    • What is the life of the product? How do we expect the product to evolve over time; do we expect updates to occur, and how will these be funded?
    • What will happen when users call for support, or when bugs need to be fixed?
    • If it is a web/server app, how will hardware support and obsolescence be handled?
  • What will ultimately happen to the software?
    • Commercialize
    • Open source
    • Retire completely when no longer supported
    • Downloadable only
    • Free to public