System Test Pattern Language David E. DeLano and Linda Rising Contact David DeLano @ delanod@agcs.com or Linda Rising @ risingl@agcs.com Or via mail @ AG Communication Systems P.O. Box 52179 Phoenix, AZ 85072-2179 Phone: David (602) 581-4679; Linda (602) 581-4699 Note that this Pattern Language is in a preliminary form and has not been completely processed by the AGCS Legal Department. A final form will be sent when it is available. Abstract: System Test Pattern Language These system test patterns were mined in a patterns mining workshop held on May 10, 1996. The patterns were captured by David DeLano and Linda Rising with Greg Stymfal serving as facilitator for the group. In addition, Unchanged Code has been adapted from a pattern written by Mike Sapcoe during an earlier Patterns Writing course. Context As a pattern language these patterns share a common context. Each of the individual patterns may add to this context or slightly modify it, but it is this common context that pulls these patterns into a pattern language. A system is under development into which new features are being introduced. These features are implemented in the system by the designers. The features are being tested by an independent group known as System Test whose members are known as System Testers. The testing this group does is largely "black box" in nature, and concentrates on the functionality of the system, the conformance of features to the specification, and ensures that the system continues to operate in a consistent manner. Forces Just as these patterns share a common context, they also share common forces. The individual patterns may place more emphasis on specific forces, ignore some forces or add forces that are not important to the pattern language as a whole. The forces that these patterns share are: The scheduled interval for testing is short. Problems should be found and corrected as early as possible. Testing resources are at a premium. Designers are preoccupied with new development. Designers are primarily concerned with their own area of development. System Test Patterns The following patterns are in alphabetical order and are not grouped according to their relationships to other patterns. Adopt-A-Problem Ambiguous Documentation Avoid Incestuous Relationships Customer Viewpoint Designers Are Our Friends Document The Problem Don't Trust Simulations Get Involved Early Killer Problem Killer Test Multiple Processors Old Problem Reports Pet Peeve Problem Clusters Strange Behavior Stress Test Take Time The Tester's More Important Than The Test Case Time to Test Unchanged Code Unusual Timing