Life cycle testing involves continuous testing of the system during the developmental process. At which pre-determined points, the results of the development process are inspected to determine the correctness of the implementation. These inspections identify defects at the earliest possible point.
Life cycle testing cannot occur until a formalized system development process has been incorporated. Life cycle is dependent upon the completion of pre-determined deliverables at specified points in the developmental life cycle. If information services personnel have discretion to determine the order in which deliverables are developed, the life cycle test process becomes ineffective. This is due to variability in the process, which normally increases cost.
The life cycle testing concept can best be accomplished by the formation of a test team. The team is comprised of members of the project who may be both implementing and testing the system. However, when members of the team are testing the system, they must use a formal testing methodology to clearly distinguish the implementation mode from the test mode, and they also must follow a structured methodology when approaching testing the same as when approaching system development. Without a specific structured test methodology, the test team concept would be ineffective because team members would follow the same methodology for testing as they used for developing the system. Experience shows people are blind to their own mistakes, so the effectiveness of the test team is dependent upon developing the system under one methodology and testing it under another.
The life cycle testing concept is illustrated in Figure 2.2. This illustration shows that when the project starts both the system development process and system test process begins. The team that is developing the system begins the systems development process and the team that is conducting the system test begins planning the system test process. Both teams start at the same point using the same information. The systems development team has the responsibility to define and document the requirements for developmental purposes. The test team will likewise use those same requirements, but for the purpose of testing the system. At appropriate points during the developmental process, the test team will test the developmental process in an attempt to uncover defects.