Software Management and Verification

Dena Gruca · NASA STI Repository (National Aeronautics and Space Administration) · 2015

Beginning Phase: Project Definition• When starting a project here at NASA, I like to ask the project team these questions:• What is the project?• What is the goal of the project?• Who will need to be involved?• What resources will you need?• How will you develop your software?• Or will you be the ones developing the software?• Contract out?Commercial-Over-The-Shelf (COTS)?• What platform will you use?• How will you manage/configure your software?• What safety measures will you take?Beginning Phase: Project Definition• Then, the project works to answer those questions by:• Agreeing on objectives, success criteria, and milestones • Creating top level requirements• What are the main features/functions of the system?• Are there any safety hazards/risks when using/testing the software?• Start considering top level software architecture• Considering how to test requirements• Are requirements definite/measureable?• Bad example: "The software shall provide output."• How much output?What is the output format?How often should it provide output?• Good example: "The software shall provide output data at a rate of 25 Hz."• Creating a guesstimated schedule for completing all top-level tasks • Agreeing on how to track changes, where to store changes (Configuration Management Plan)• Considering creating coding guidelines/standards

Read the paper · More papers on PaperTik