Software Development Life-Cycle (SDLC) - a Tutorial/Guideline
In developing the required documentation for a project, a development life-cycle methodology, SDLC, (similar to a Problem Solving Approach) should be followed.
A classical SDLC outline contains the Phases, Processes description and deliverables (Products) associated with each phase.
Phase I - PROBLEM STATEMENT
- Process Description
: State the problem you try to solve. This text is usually known as the ‘problem requirements’.
- Product
: A textual specification of the (given) Requirements.
Phase II - ANALYSIS
- Process Description
: During the Analysis (that equates with ‘discovery’), two activities are performed:
- Further, detail Analysis (understanding and specification) of the given Requirements.
- A Modeling of the problem and your assumptions (if any).
- Products
:
- A more detail Specification (clarification, as the case is in most situations) of the Requirements.
- Basic Input(s), Output(s), Algorithm (process flow) [in a Structured English format].
- Special conditions, e.g., range of values for input(s), expected range for output(s), special processing conditions.
Phase III - DESIGN
- Process Description
: During the Design (that equates with ‘creation’), a Solution is developed based on the above products.
- Products
:
- As a minimum two solutions should be provided. A Main Solution and an Alternative Solution. You should state why you chose one over the other (solution selection).
- The Solution should be implemented in a ‘flowchart’ format(-like).
- Pseudocode
is optional, but it helps to the transition to the real implementation of the chosen solution (Coding in computer programming).
Phase IV - IMPLEMENTATION (of the Design/Solution)
- Process Description
: During this phase, also known as ‘coding’ you take the flowchart and/or pseudocode developed during the Design phase and convert it into Code.
- Products
:
- A Source file [using the IDE (Interactive Development Environment)] or as a minimum a text Editor or Word Processor (in this later case make sure you save the file in ASCII/text format).
- The Source file should be properly documented (Header or Preamble, in-line Comments, as appropriate).
- An error free, compiled module (.OBJ).
- An error free linked and executable module (.EXE).
Phase V - TESTING
- Process Description
: During this phase you run your program and see how it works. With other words verify it against the given Requirements.
- Products
:
- Several Runs (with different sets of input data) of your program (provide printout of the screen).
- Make sure you include extraneous cases (e.g., out of range values, ‘odd’ conditions).
Phase VI, VII, VIII - DEPLOYMENT, MAINTENANCE, POST IMPLEMENTATION REVIEW
- Process Description
: During these three combined phases (in this simplified case) your program (solution) is packed ready, with all needed components and delivered to your customer.
- During maintenance, eventual ‘bugs’ are uncovered and fixed and/or additional features (maintenance and/or enhancement type) are being added to the initial (previous) release.
- Products
: Only one product is required for you in this case: couple of statements on ‘lessons learned’ by you while going through this exercise.
If you have comments or suggestions, email me at clifford@scis.nova.edu
This page created with Netscape Navigator Gold