Description:This document presents guidelines for an organized, disciplined approach to software development that is based on studies conducted by the Software Engineering Laboratory (SEL), an organization sponsored by the National Aeronautics and Space Administration/Goddard Space Flight Center (NASA/GSFC) since 1976. It describes methods and practices for each phase of a software development life cycle that starts with requirements definition and ends with acceptance testing. For each defined life cycle phase, this document presents guidelines for the development process and its management, and for the products produced and their reviews.