Software Life Cycle

  • Also called Software Development Life Cycle
  • Is a framework that defines the tasks performed at each step in the software development processes
  • It is composed by many steps, although there are not officially defines.
  • Some of the steps are:
  1. Communication: The client negotiates with a software developer to agree on the terms of the new software.
  2. Requirement gathering: The software developers look for information related to the requirements of the client
  3. Feasibility Study: Find out if the project is financially, practically and technologically feasible
  4. System Analysis: Understand the limitations and the challenges involved in the software
  5. Software Design: Design the software and its interface
  6. Coding: The programming part of the whole software
  7. Testing: Verifying that the program works as expected
  8. Integration: Integrating the software with libraries or databases
  9. Implementation: Installing the software in the user machine and adapting it
  10. Operations & Maintenance: How the keep the software functional. Make changes when needed
  11. Disposition: Whenever the software needs an extreme makeover, be able to store the information somewhere

 

Software Development Paradigm: Strategies used to develop software

  1. Waterfall Model: The phases of SDLC will function one after the other
  2. Iterative Model: Repeats every step after every cycle
  3. Spiral Model: A combination of iterative and waterfall model
  4. V-Model: Like waterfall model but it is possible to go back is an error is found
  5. Big Bang Model: If put together lots of time, effort and resources, you create a software

Software development’s cover of The circle of life.

Nants ingonyama bagithi Babaaaaaa~  Sithi uhmmmm ingonyama (ingonyamaaaa)~

circle_of_no_by_tsaoshin-d6h8pug
Illustration by TsaoShin

No? Well alright, lets get serious.

SDLC or software development lifecycle is a series of steps or phases, that provide a model for the development, acquisition and configuration of software systems.

The methodologies can vary across industries and organizations, but  there are standarization such as ISO/IEC 12207 represent processes that establish a lifecycle for software, and provide a mode for the development, acquisition and configuration of software systems.

Steps are usually as follows:

software-development-life-cycle

There are two different types of SDLC that can be used: waterfall and agile.

The major difference between them is that the waterfall process is more traditional and begins with a well thought-out plan and defined set of requirements, whereas agile SDLC begins with less stringent guidelines and then makes adjustments as needed throughout the process, making it well suited for applications that are updated frequently.

Resources: VERACODE