Stands for "System Development Lifecycle." SDLC is a structured approach to creating and maintaining a system used in information technology. It can be applied to networks and online services, but is most often used in software development.

When applied to software, the SDLC is also called the "application development life-cycle." Some SDLC models have as few as five stages, while others have as many as ten. A typical SDLC framework used for developing a software application might include the following seven stages:

  1. Planning - The most fundamental part of the SDLC is planning. This includes steps like determining a need for a specific program, who will be the end users, what the development will cost, and how long it will take.
  2. Defining - In this stage, the general development plan is funneled into specific criteria. The specific requirements of the program are defined. At this stage, the development team may also decide what programming language should be used to build the program.
  3. Designing - This process involves creating the user interface and determining how the program will function. For larger applications, it is common to create a design document specification (DDS), which may need to be reviewed and approved before the actual development begins.
  4. Building - The building stage typically comprises the bulk of the software development process. It includes programming the source code, creating the graphics, and compiling the assets into an executable program. Small projects may involve a single programmer, while larger projects may include multiple teams working together. For example, one team might design the user interface, while another team writes the source code. For multiplatform applications, individual teams may be assigned to different platforms.
  5. Testing - The all-important testing phase allows the developer to catch unknown issues and fix any bugs that arise in the program. Some testing may be done internally, while a beta version of the software might be provided to a select group of users for public testing.
  6. Deployment - Once a program has passed the testing phase, it is ready for deployment. In this stage, the software is released to the public. It may be provided via an electronic download or as boxed software, which comes on a CD or DVD.
  7. Maintenance - After a software application has been released, there may still be additional bugs or feature requests submitted by users. The development team must maintain the software by fixing bugs and adding new features. Commercial software programs often include some level of technical support.

The reason the above stages are referred to as a cycle is because these stages are repeated each time a new major version of the software is released. While the maintenance stage may encompass minor updates, most software companies stay in business by regularly releasing paid updates (version 2, version 3, etc). Before embarking on a new major version, the development team must first create a plan (stage 1) and then continue through the other stages of the SDLC.

Updated November 25, 2014 by Per C.

quizTest Your Knowledge

Which of the following is a type of Unix shell?

Correct! Incorrect!     View the Bash definition.
More Quizzes →

The Tech Terms Computer Dictionary

The definition of SDLC on this page is an original definition written by the team. If you would like to reference this page or cite this definition, please use the green citation links above.

The goal of is to explain computer terminology in a way that is easy to understand. We strive for simplicity and accuracy with every definition we publish. If you have feedback about this definition or would like to suggest a new technical term, please contact us.

Sign up for the free TechTerms Newsletter

How often would you like to receive an email?

You can unsubscribe or change your frequency setting at any time using the links available in each email.

Questions? Please contact us.