Software Development

Acceptance Testing
The Beta testing stage of the SDP
Adaptive Maintenance
Changing the software in response to changes in the client's hardware
First stage of the SDP concerned with gathering knowledge and understanding the problem
Bottom-up Design
A design methodology which begins with writing procedures and blocks of code
Translates a high level language program into object code
Comprehensive Testing
Testing programs as thoroughly as possible
Joining strings together
Corrective Maintenance
Fixing bugs or mistakes which were not discovered at the testing stage
Counting Occurrences
Used to count how many times a value appears in a list
Data Flow
The movement of data between subprograms, implemented using parameters
Data Types
Types of data stored by a program including string, integer, real, single
A data structure in which data items of the same type are grouped together
The process of finding and correcting errors in a program
A stage of SDP that involves the planning of a solution to the problem
Design Notation
A way of describing the design of a program eg. pseudocode or structure diagram
A stage of the SDP where a user guide and technical guide are produced
Software is evaluated for excessive resource use such as memory or backing storage
Exceptional Test Data
Test data which should be rejected by the program under test conditions
Exhaustive Testing
Involves all the possible sets of test data and all of the program pathways
Extreme Test Data
Test data which is on the boundary of what is acceptable by the program
Field Testing
Allowing users other than the programmers to test the program
Fixed Loops
A loop which is carried out a set number of times
Flow Chart
A design notation using boxes linked by arrows showing data flow
Input Validation
Used to check that data input is with an acceptable range
Translates and runs a high level language one line at a time
Revisiting or repeating steps in the SDP to improve the solution
Linear Search
Used to find a target value in a full list
Local Variable
Variables defined only for use in one subprogram
An evaluation criterion that determines how easy it is to maintain a program
When a program is divided into smallers sections called subprograms
Module Library
Pre-defined and tested subprograms which speed up the SDP
Normal Test Data
Test data which is within a range that the program should accept
Perfective Maintenance
Adding new features to a program and the request and cost of the client
An evaluation criterion that assesses if the software can be used on a computer other than the one on which it was designed
Writes code working to a software specification
Project Manager
In charge of the whole software development process
A text-based design notation using ordinary language to define a problem
How easy it is for your program to be read by anyone else
How well your program operates without stopping due to design faults
The ability of software to cope with errors during execution without crashing
Software Specificiation
Legally binding document defining the problem
Stepwise Refinement
Breaks each step down as far as possible until each step can be turned into a line of code
Structure Diagram
A design notation using different shaped boxes and showing hierarchy
Secting part of a string
Technical Guide
Documentation designed for technical personnel that explains how to install software
User Guide
Documentation that explains how to operate the software once it has been installed
Systems Analyst
Interviews company personnel and observes current procedures looking for ways to improve the system