U.S. flag

An official website of the United States government

Dot gov

Official websites use .gov
A .gov website belongs to an official government organization in the United States.

Https

Secure .gov websites use HTTPS
A lock () or https:// means you’ve safely connected to the .gov website. Share sensitive information only on official, secure websites.

Breadcrumb

  1. Home
  2. Software Life Cycle Management

Software Life Cycle Management

ALCL 181

DAU GLOSSARY DEFINITION

A management plan usually generated by the developer outlining the software development and integration efforts.

Alternate Definition

The implementation, management, and oversight, by the Program Manager (PM), of all activities associated with the planning and execution of software applications and embedded software from requirements definition to retirement of the software. 

General Information

The Software Life Cycle is the continuing evolution of capability across the lifetime of the system, rather than discrete “acquisition” and “sustainment” phases.  Software Life Cycle Management incorporates early integration of key stakeholders and planning for supportability of the software from program inception, in order to facilitate software product support and continuous upgrades and evolution in key activities such as infrastructure, cybersecurity and enterprise services throughout the development and operations.

The acquisition of software applications (other than Defense Business Systems) and embedded software should follow the Software Acquisition Pathway, which begins in the planning phase, and then transitions to the execution phase. The purpose of the planning phase is to understand the users’ needs and plan the approach to deliver software capabilities to meet those needs. The purpose of the execution phase is to rapidly and iteratively design, develop, integrate, test, deliver, and operate resilient and reliable software capabilities that meet the users’ priority needs.  The execution phase often employs commerical development practices such as Agile Software Development, DevSecOps (Development,Security and Operations) and DevOps (Development and Operations).  These modern development approaches enable iterative cycles of Plan/Build/Code/Test to achieve a Minimum Viable Product and then Minimum Viable Capability Releases incrementally.

A fundamental concept of the Software life cycle is that software is never completely "done."  In managing the software life cycle there are three themes for consideration. First, speed and cycle time are the most important performance and process metrics for software. Next, software is made by people and for people, so digital talent is essential.  Finally, software is different than hardware and not all software is the same. Software should be developed, deployed, and continuously improved using much different cycle times, support infrastructure, and maintenance strategies. Testing and validation of software is also much different than for hardware, both in terms of the ability to automate but also in the potential vulnerabilities found in software that is not kept up to date. Software must be managed as an enduring capability that is treated differently than hardware. Thus, software life cycle management must be approached with a different mindset than hardware life cycle management. 

See also complementary Engineering & Technology ACQuipedia article entitled “Software Sustainment” for additional information.