This model should already be very familiar from the discussion of precedence networks where the dependence of an activity on the completion of one or more preceding activities is taken into account.
These requirements should be laid out in installation standards, or a Software Quality Plan can be drawn up for the specific project if it is a major one.
The measurements described above can be taken only after the system is operational. It might then be too late to do anything to remedy problems. What would be more helpful to someone like Amanda at IOE would be measurements and other checks that can be taken during development and that can help control what the final system will be like.
The system development process is made up of a number of activities that are linked together so that the output from one activity is the input to the next (Figure 12.2). Thus, program testing will depend on there being a program to test that will be the product of the program coding stage. Errors can enter the process at any stage. They can be introduced either because of a defect in the way a process is carried out, as when programmers make mistakes in the logic of their programs, or because information has not been passed clearly and unambiguously between stages.
Errors that creep in at the early stages are more expensive to correct at later stages, for the following reasons.
• The later the error is found the more rework at more stages of development will be needed. If an error in the specification is found at the testing stage, then this will mean rework at all the stages between specification and testing.
• The general tendency is for each successive stage of development to be more detailed and less able to absorb change.
Errors should therefore be eradicated by careful examination of the products of each stage before they are passed on to the next. To do this, the following process requirements should be specified for each activity.
• Entry requirements, which have to be in place before an activity can start. An example would be that a comprehensive set of test data and expected results be prepared and approved before program testing can commence.
• Implementation requirements, which define how the process is to be conducted. In the testing phase, for example, it might be laid down that whenever an error is found and corrected, all test runs must be repeated, even those that have previously been found to run correctly.
• Exit requirements, which have to be fulfilled before an activity is deemed to have been completed. For example, for the testing phase to be recognized as being completed, all tests will have to have been run successfully with no outstanding errors.
In what cases might the entry conditions for one activity be different from the exit Exercise 12.6 conditions for another activity that immediately precedes it?
Exercise 12.7 Amanda at IOE already has a quality manual that she can consult. Brigette at
Brightmouth College has to specify her own entry and exit requirements. What might she specify as the entry and exit requirements for the process code program shown in Figure 12.2?
Was this article helpful?
What you need to know about… Project Management Made Easy! Project management consists of more than just a large building project and can encompass small projects as well. No matter what the size of your project, you need to have some sort of project management. How you manage your project has everything to do with its outcome.