Advanced Higher
Computing
SOFTWARE DEVELOPMENT PROCESS
Waterfall Stages Model
1.
Analysis
2.
Design
3.
Implementation
4.
Testing
5.
Documentation
6.
Evaluation
7.
Maintenance
Iterative Stages Model
Analysis of
Operational
requirements
System
specification
Software
Design
Implementation
and testing
Evaluation and
maintenance
Project Proposal
Sometimes known as the Problem Definition
Limitations of existing system
Company Profile
Project Requirements
Migration Routes
Budget Constraints
Used as a basis for bids/offers for developers.
Feasibility Study
Technical
Economic
Legal
Schedule
Advantages for both clients and developers.
System Investigation
Undertaken by a System Analyst
Observation
Interview
Document
Establish
and data flow inspection
scope, boundaries, inputs and outputs
Produces an Operational Requirements
Document (ORD).
Operational Requirements
Document (ORD)
Legally binding contract
Functional Requirements
Data Requirements
Physical Specification
Scope and Boundaries
Inputs and Outputs
System Prospectus
ORD: Functional Requirements
Used at the beginning of the design stage to identify the features to
be present in the proposal software.
Used to validate other stages or analysed at the end of
design/implementation/etc to ensure functional requirements are
being met.
Used for dispute resolution between client and developer.
ORD: Scope and Boundaries
Scope: What the proposal software will be able
to do.
Boundaries: The limitations of the software (what
it will not be able to do).
ORD: Data Requirements
The data structures which will be used.
The amount of data which the software will
generate and store.
ORD: System Prospectus
Schedule – preliminary timings and task
dependencies.
Proposed Documentation.
Training required to use the software.
Development Phase
System Design:
Flow chart
Data Flow Diagram
Jackson Structured Programming
Pseudocode
Checked to make sure it matches specification and customer
requirements.
Implementation and Testing
Coding and Testing
Design and Test HCI
Set up Hardware
Convert legacy files
Complete documentation and Manuals
Train Staff
Testing
Dry runs
Structured Walkthroughs
White box (Structural Testing)
Black box (Functional Testing)
Module >Sub System > Complete System
Adopting a New System
Pilot conversion
Phased conversion
Direct conversion (Sudden Death)
Parallel conversion
Maintenance
Corrective
Adaptive
Perfective
Preventative
Evaluation (Questions)
Does
it meet the specification?
It
is what the client want?
Is
it fit for purpose?
Waterfall Model
Analysis
3%
Specification
3%
Coding
7%
Design 5%
Testing 15%
Operational and
Maintenance 67%