Software Development Life Cycle

   A fundamental idea in software development is the Software Development Life Cycle (SDLC). You need to understand it because everyone references it when describing how they work - whether they follow it closely or not.
   The SDLC is an attempt to isolate the tasks that must be completed to take a software system from initial conception to doing production work.
   Here's my personal working chart for the SDLC.

Phase Task Example/Comment
Feasability Can this project be done and is the cost-benefit differential great enough to proceed? Should we develop a web ordering system for our customers?
Requirements What must the system do? Interfaces to other systems? Must allow authorized customers to order. It must capture charging info to send to our billing system.

 

Phase Task Example/Comment
High Level Design Partition the tasks so that they work together properly Yet have separation so that if one part needs changing the entire system does not need to be rewritten?
Detail Design Detail the individual programs to be written? What data travels between them?
Code & Unit Test Write the code to meet the detail design. Prove that the program takes defined info and generates specified output. I was once asked - Why was the design such as it was? I answered. "I was not in the planning. I've started in the installation, where ought and should are replaced by is and do."
System Test Run the output of each program into the next program.  
1
Software Development
Copyright 2005
TOC