1.2.3 Software Development - Lifecycle Flashcards
What is the software development lifecycle
5 stages, all shown as a circle
Analysis, design, implementation/development, evaluation, maintenance
Analysis
System analysis gathers information about what the current system does if there is one and what the new system needs to do
Uses questionnaires, interviews, observations and documents
Documentation of analysis
A document usually called something like “system specification” or “user requirements”
Used to create and evaluate the design
Design
Includes: A description of the data, database design, input screens, output screens, how the data will be processed, how the software will be tested
You are saying what you want it to do and how you will code it but no coding gets done in this phase
Implementation
Coding and testing the software, writing user and technical documentation and installing for the users
What stage is testing in?
Implementation
Black box testing
By a different organisation
Carried out independently of the code written, checks each input for the correct output
White box testing
By the developer
As they are coding, each path through the code is trialled at least once. Testing the quality of the algorithms
Alpha testing
Carried out by the developer’s in-house team
Looks for errors and omissions and checks that it works
Beta testing
By a small number of potential users
They agree to use the software and report any faults, may try things the developer didn’t anticipate
Evaluation
Every aspect of the software is checked to make sure it does what it is supposed to
Evaluated against the original system requirements
This stage is called acceptance testing
Corrective maintenance
Fixing bugs that have been found after release
Adaptive maintenance
Adapting the software to meet the changing needs and requirements
Perfective maintenance
Continuing to try and improve the software even though it is working well