Software life-cycle

Software life-cycle is used in systems engineering, and software engineering to describe a process for planning, creating, testing, and deploying an information system.  The systems development life cycle, according to Elliott & Strachan & Radford (2004), “originated in the 1960s, to develop large scale functional business systems in an age of large scale business conglomerates.

 

The waterfall: is a sequence of stages in which the output of each stage becomes the input for the next. These are defined by steps, they are the following:

 

–Project planning, feasibility study: captured in a product requirements document

–Systems analysis, requirements definition: Refines project goals into defined functions and operation of the intended application. Analyzes end-user information needs.

–Systems design: Describes desired features and operations in detail, including screen layouts, business rules, process diagrams, pseudocode and other documentation.

–Implementation: The real code is written here.

–Integration and testing: Brings all the pieces together into a special testing environment, then checks for errors, bugs and interoperability.

–Acceptance, installation, deployment: The final stage of initial development, where the software is put into production and runs actual business.

–Maintenance: What happens during the rest of the software’s life: changes, correction, additions, moves to a different computing platform and more. This, the least glamorous and perhaps most important step of all, goes on seemingly forever.

The first formal  description of the waterfall model is often cited as a 1970 article by Winston W. Royce; he was an American computer science and a pioneer in the field of software development.

One support augmentant is that the time spent early in the software production cycle can reduce costs at later stages. But a problem of the waterfall model is that the waterfall model assumes that the only role for users is in specifying requirements, and that all requirements

software-development-life-cycle
be specified in advance.

 

https://en.wikipedia.org/wiki/Winston_W._Royce

http://www.cs.umd.edu/class/spring2003/cmsc838p/Process/waterfall.pdf

http://www.computerworld.com/article/2576450/app-development/app-development-system-development-life-cycle.html

https://www.cms.gov/Research-Statistics-Data-and-Systems/CMS-Information-Technology/XLC/Downloads/SelectingDevelopmentApproach.pdf

software-development-life-cycle