12 - Software Development
12 - Software Development
1
Software Development
The state is shown in a circle. The transition is shown with an arrow.
For example, a table lamp has 2 states, ON and OFF. These states are triggered by
repeated inputs of switch pressed.
Structure Charts:
They are modelling tools which are used to decompose a problem into sub problems.
They show the linkage between different modules and the passing of parameters between the
modules.
The modules are linked to each other by arrows.
They represent the hierarchy of modules.
They represent selection, repetition, iteration.
Program Fault:
An error which makes the program do something which it is not supposed to do under certain
circumstances.
Ways of reducing the faults when writing programs:
1. Tested library routines.
2. Modular programming. (Breaking down a problem)
3. Usage of IDE features.
4. Good programming practices like named variables.
Syntax Error:
A statement in the source code which breaks the rules of the language.
Logic Error:
An error in the algorithm which causes the program to behave in an unexpected way.
Run-Time Error:
An error when a program performs an invalid operation such as entering an infinite loop.
White Box Testing:
Testing every path through the code.
Black Box Testing:
Testing the module’s INPUT and OUTPUT.
Trace table is used to record changes.
Integration Testing:
Testing individual modules whether they work together.
Stub Testing:
Makes use of dummy modules for testing.
2
Software Development
Alpha Testing:
Program is tested in house by the development team.
Beta Testing:
Program is tested by a small group of users.
Acceptance Testing:
Used for the complete program to prove to the customer that the program works well for its intended use.
Program Maintenance:
Corrective Maintenance: Correct errors during development.
Perfective Maintenance: Improve the performance of a program.
Adaptive Maintenance: Update the program to match the current requirements of the user.
3
Software Development