200 likes | 214 Views
This workshop presentation discusses the contribution of testers, factors in deploying testers, and various tester engagement models throughout the software development life cycle (SDLC).
E N D
Engaging Testers Early and Throughout the SDLC Mark L. Gillenson Xihui Zhang Sandra Richardson STEP Workshop May 7-8, 2007 STEP Workshop, May 2007
Outline • Introduction • Literature Streams • Contributions of Testers • Factors in Deploying Testers • Five Tester Engagement Models • Variations in the Models • Conclusion STEP Workshop, May 2007
Computer Software Development • As with manufactured products: • Developed in stages. • Benefits from cross-functional development teams. • Testers as team members. STEP Workshop, May 2007
Relevant Literature Streams • Manufacturing engineers and new product development. • Cross-functional teams. • Interpersonal relationships – Trusted Partners. • Software development life cycle. • Engaging testers earlier in the development process. STEP Workshop, May 2007
Five SDLC Stages for the Purposeof This Presentation • Business Requirements • Software Requirements • High-Level Design • Detailed Design • Implementation/Coding STEP Workshop, May 2007
Contribution of Testers at the Lower Levels of the SDLC • Create test cases. • Run tests • Functional tests. • Performance tests. • Vulnerability tests. • Defect management. STEP Workshop, May 2007
Contribution of Testers at the Higher Levels of the SDLC • Develop test plan. • Provide early-warning of testing resource needs. • Develop scenarios and test cases. • Influence the process so that testing is more effective and efficient at lower SDLC levels. STEP Workshop, May 2007
Contribution of Testers at the Higher Levels of the SDLC • Evaluate content. For example, in requirements look for: • Infeasible requirements. • Complex requirements. • Conflict situations. • Serve as facilitator. STEP Workshop, May 2007
Factors in Deciding How to Deploy Testers • Educational backgrounds. • Skill sets • Specific skills. • Depth or breadth focused. • Amount of resource available for testing. Factors: • Number of test personnel. • Outsourcing vendor relationships. STEP Workshop, May 2007
Five Tester Engagement Models • The Single Tester Model • The Specialist Model • The Leapfrog Model • The Balanced Bifurcated Model • The Unbalanced Bifurcated Model STEP Workshop, May 2007
1. The Single Tester Model • One tester through all SDLC stages. • Advantages • Project knowledge continuity. • Minimal resources. • Disadvantages • Over dependency on one person. • Broad skill range expectation. STEP Workshop, May 2007
2. The Specialist Model • Different, specialized tester at each SDLC stage. • Advantages • Each tester is an expert at their stage. • Testers do not have to be overly broad. • Disadvantages • Repeated learning curve. • Lack of communication between testers. • Assumes availability of specialized testers. STEP Workshop, May 2007
3. The Leapfrog Model • Tester A works on the business requirements stage. • Tester B joins Tester A on the software requirements stage. Tester A leaves the project at the end of this stage. • Tester C joins Tester B on the high-level design stage. And so on. STEP Workshop, May 2007
3. The Leapfrog Model • Advantages • Two testers working on each stage (after the first stage.) • Project knowledge transfer at each stage. • Disadvantages • Resource intensive with two testers at each stage. • Assumes availability of specialized testers. STEP Workshop, May 2007
4. The Balanced Bifurcated Model • Tester A has requirements/analysis background. • Tester B has programming background. • Tester A handles higher level stages. • Tester B handles lower level stages. • They overlap at high-level design. STEP Workshop, May 2007
4. The Balanced Bifurcated Model • Transfer project knowledge at high-level design stage. • Compromise relative to other models regarding: • Skill base. • Overdependence on individual. • Personnel resource. STEP Workshop, May 2007
5. The Unbalanced Bifurcated Model • Same as the Balanced Bifurcated Model except the overlap between Testers A and B occurs at either the detailed design stage or the coding stage. • More dependence on Tester A. • Allows Tester B to focus on coding. STEP Workshop, May 2007
Variation 1: Reinforcements • A tester can bring in additional test personnel at a particular stage. • The original tester may be considered to be a “test lead.” • Sub-variation: “The Rake” • In the Single Tester Model or the Unbalanced Bifurcated Model, Tester A works through all of the higher-level stages, then calls in a specialized staff for code testing. STEP Workshop, May 2007
Variation 2: Overlap Elimination • Reduces personnel resource outlay but results in loss of project knowledge transfer. • Significant in The Unbalanced Bifurcated Model in handing-off code testing to an outsourcing vendor. STEP Workshop, May 2007
Conclusion • Engaging testers early and throughout the SDLC will result in: • More effective testing. • More efficient testing. • Reduced cycle time. • Higher quality systems. STEP Workshop, May 2007