Software Development Life-Cycle (SDLC) - a
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.
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)
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).
- 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.
III - DESIGN
- Process Description: During the Design
(that equates with ‘creation’), a Solution is developed based on
the above 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).
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.
- 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).
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.
- 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,
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
This page created with Netscape Navigator Gold