Software development life cycle (SDLC) is a process used by software developers to plan and manage the development of software. It is a six-step process that starts with the identification of requirements, then builds a system architecture, then defines technical specifications, then tests and validates the system, followed by deployment and finally maintenance.