Challenges of Managing a Testing Project: (A White Paper)

Similar documents
Test Workflow. Michael Fourman Cs2 Software Engineering

Factors to Consider When Implementing Automated Software Testing

Skill Category 7. Quality Control Practices

Case Study: Global Banking Company Transforms Testing Approach to Overcome Challenges of Shortening Development Cycles

Managing System Performance

Disciplined Software Testing Practices

Darshan Institute of Engineering & Technology for Diploma Studies Rajkot Unit-1

Chapter 3 Prescriptive Process Models

Project Quality Management

Building an Enterprise QA Centre of Excellence Best Practices Discussion IBM Corporation

1. Can you explain the PDCA cycle and where testing fits in?

Surviving the Top Ten Challenges of Software Testing

This document describes the overall software development process of microcontroller software during all phases of the Company Name product life cycle.

Session Topic: Achieve Quality Excellency by Engineering Test Strategy for Custom Development Projects

1.0 PART THREE: Work Plan and IV&V Methodology

7. Model based software architecture

In-Process Automation

KINGS COLLEGE OF ENGINEERING DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING SYLLABUS

PMP Exam Preparation Course Project Scope Management

Jochen(Joe)Krebs

Quantifying the Value of Investments in Micro Focus Quality Center Solutions

ALM120 Application Lifecycle Management 12.0 Essentials Instructor-Led Training Version 12.0

Software Testing Life Cycle

Brochure. Application Lifecycle Management. Accelerate Your Business. Micro Focus Application Lifecycle Management Software

ISTQB CTFL BH0-010 Exam Practice Question Paper

Summary of 47 project management processes (PMBOK Guide, 5 th edition, 2013)

ALM 11 Training. Material contained in this document is priority to Northway Solutions Group.

17/12/1437. Lecture. Project Scope Management. Lecture 4. Project Management Knowledge Areas Section 3 Chapter 5. Project Scope Management.

The 9 knowledge Areas and the 42 Processes Based on the PMBoK 4th

David. Director of Rational Requirements and Quality Management Products

Successfully Integrating Test Automation and Agile Projects 10/7/2009. Presented to Annex Consulting Group CIO Breakfast October 7, 2009

CTFL - Version: 3. ISTQB Certified Tester Foundation Level

Number: DI-IPSC-81427B Approval Date:

Number: DI-IPSC-81427B Approval Date:

QUALITY ASSURANCE PLAN OKLAHOMA DEPARTMENT OF HUMAN SERVICES ENTERPRISE SYSTEM (MOSAIC PROJECT)

ALM120 Application Lifecycle Management 11.5 Essentials

Connoisseur Solutions Project Scope Management

ALM120 Application Lifecycle Management 12.x Essentials

Rational Software White Paper TP 174

Software Quality Engineering Courses Offered by The Westfall Team

Chapter 4 Document Driven Approach for Agile Methodology

Software Quality Engineering Courses Offered by The Westfall Team


Integration and Testing

Independent Verification and Validation of SAPHIRE 8 Software Project Plan

Testing strategies for stakeholders in Component Based Software Development

WORK PLAN AND IV&V METHODOLOGY Information Technology - Independent Verification and Validation RFP No IVV-B

Fast and High-Quality Modern Software Testing Framework

Project Planning and Management (PPM) V2.0. WBS Dictionary

Software Project & Risk Management Courses Offered by The Westfall Team

Comparing PMBOK Guide 4 th Edition, PMBOK Guide 5 th Edition, and ISO 21500

Project Time Management

Project Manager s Roadmap We re all smarter together

Is There Magic Associated with Software Benchmarks?

Project vs Operation. Project Constraints. Pankaj Sharma, Pankaj Sharma,

SOLUTION BRIEF CA AGILE REQUIREMENTS DESIGNER FOR CA AGILE CENTRAL. CA Agile Requirements Designer for CA Agile Central

Requirements Validation and Negotiation

Appendix. Process Inputs and Outputs

Introduction of RUP - The Rational Unified Process

ROI Metrics for Testing Engagement

The Zero Function Point Problem

PMBOK Guide Fifth Edition Pre Release Version October 10, 2012

Test Estimation Seeing the Future of Your Test Effort

Continuous Quality Assurance

Capability Maturity Model the most extensively used model in the software establishments

"Test Automation Success: Choosing the Right People and Process"

Project Scope Management

Note 10: Software Process

PMP Exam Preparation Workshop. Chapter # 5 Project Scope Management

Project Stakeholder Management

Accelerating Time to Market with Agile Testing

Scrum Testing: A Beginner s Guide

POS Testing Framework for a US-based Retail Giant ATTENTION. ALWAYS.

1.Which of the items listed below is not one of the software engineering layers?

Project Management CSC 310 Spring 2018 Howard Rosenthal

feature Validating and Improving Test-Case Effectiveness

Independent Verification and Validation of SAPHIRE 8 Software Project Plan

Contents About This Guide... 5 Upgrade Overview... 5 Examining Your Upgrade Criteria... 7 Upgrade Best Practices... 8

Comparing PMBOK Guide 4 th Edition, PMBOK Guide 5 th Edition and ISO 21500

VC SOFTWARE PROJECT MANAGEMENT PLAN

Measuring and Improving Process Capabilities Best Practices

GQM: Goal Question Metrics

About the Tutorial. Audience. Prerequisites. Copyright & Disclaimer STLC

Project Management Professionals

Agility, governance and productivity

Integration Knowledge Area

Develop software code and to specification

Chapter 13. Building Information Systems

2009 McGraw Hill Ryerson Limited. Kwantlen and Richardson Chpt 6 slide number 1

Chapter 6. Software Quality Management & Estimation

Initiation Group Process. Planning Group Process


Integration Mgmt / Initiating Process Group 4.1 Develop Project Charter

"Charting the Course... Application Lifecycle Management Using Visual Studio 2010 (Agile) Course Summary

Chapter 8. Systems Development. Ralph M. Stair George W. Reynolds

Lecture 2: Software Quality Factors, Models and Standards. Software Quality Assurance (INSE 6260/4-UU) Winter 2016

Effective Test Automation of SAP Implementations

Introduction to Software Engineering: Project Management ( Highlights )

Project Management Framework with reference to PMBOK (PMI) July 01, 2009

DUCK CREEK POLICY UPGRADE FACTORY. Cognizant s Duck Creek Policy Upgrade Factory helps insurers transition to the latest version of Duck Creek Policy.

Transcription:

Challenges of Managing a Testing Project: () Page 1 of 20 Vinod Kumar Suvarna

Introduction Testing is expected to consume 30 50 % of the Project Effort, Still properly managing testing project is not considered seriously. Project Managers always undermine the impact the testing activity has on the Project Cost and Schedule. Hence the testing activity is usually unplanned and uncontrollable. As the project manager assumes that the main focus of the testing activity in the project is not to meet the project schedule. But Its is a reality that a thorough and close monitoring of the Testing project is required to increase productivity, reduce cycle -time and improve quality. Below pie chart depicts the Project effort distribution by phase for a development project, where independent testing team performs the testing activity. Project Effort Distribution by Phase 21 35 25 Requirement Design Code & Unit testing Testing 19 Page 2 of 20 Vinod Kumar Suvarna

The Problem / Issues / Improvement Opportunity in Hand: Ask a Tester Why he/she needs to burn midnight oil to churn a Quality Product? Answer is obvious Needs to put extra time and effort to overcome the Project schedule slippage Ask a Project Manager Why the Project is in trouble during the last phase? Answer is obvious Not Sure, Did not anticipate the dynamic changes effecting the Project The White paper Managing the Testing Project focuses on the challenges faced by the testing team to effectively manage the testing project. Also the approach to overcome this challenges is addressed in subsequent sections. Objective: The testing activity should begin from the inception stage of the product development. This should be treated as a project by itself, and undergo an exhaustive test development life cycle starting with Test Planning, Test Requirements, Test Design, Test Development and Test Execution. Hence all stages of the test development life cycle need to be measured, analyzed and controlled. This may results in resetting the goals and re-planning the testing activity. However, when an independent testing team exists, then a complete test development cycle is followed and the following area s become very crucial in managing the Testing Project. Test Planning Testing Process Resource planning Testing Metric Tracking & Resetting Plan Synchronization with the Development plan / Process Synchronization with the Customer s Requirement Intra group Coordination Technology and Training Page 3 of 20 Vinod Kumar Suvarna

In spite of the focused approach towards the testing, still when the Project schedule pressure takes significance, the approach towards testing takes a back step. The testing team either spent extra effort or carries the risks of incomplete testing cycle. Challenge in hand: Let s look at the common challenges faced by any testing project and categorize them based on the responsibility and focus area. Challenge Description Responsibility Focus Area Inadequate Test When to Start Testing activity Management Planning Planning Vs SDLC Inadequate Planning for Regression Activity Inadequate Testing Lack of Focus on Testing Management Planning Effort Activity during Estimation Awareness on Test Estimation Model Ineffective Testing Lack of Focus on Testing Management Process Process Process Management Defining an Effective Test Process Page 4 of 20 Vinod Kumar Suvarna

Identifying Test Lack of Focus on Identifying Management Planning and Metrics Test Metrics Tracking Goal Setting for Test Metrics Defining the Scope of Defining and Convincing the Test Strategy Testing Management and Customer the Scope of Testing Tracking the Test Effective Tracking mechanism Project Progress for Tracking the test progress Tracking and when the no. of iteration of Oversight testing is high Ineffective Ineffective intra-group Intra Group Communication coordination with the Coordination development / other support team Availability of Test Availability of Separate Test Management Test Planning environment Environment for Regression Testing Page 5 of 20 Vinod Kumar Suvarna

Test Automation Identifying the right automation tool for the Project based on the Application under Test / Project Requirement Evaluating the Test Automation Tool Convincing the Management and the ROI on test automation Testing Resource Lack of focus in identifying the right resource for testing Lack of organization focus on defining the career path for Testing Training Requirement Identifying the Training requirement specific to the Test Team Management Test Planning and Management Resource Management Training Configuration Lack of focus on Change Management Process Configuration Management Management Process Identifying and implementing Page 6 of 20 Vinod Kumar Suvarna

the configuration management Process for Test Assets Test Organization Defining the role and responsibilities for each Test Team Member in the Test Organization Test Planning Improving the Identifying the Area of Process Existing Test Process Improvement to continuously Improvement improve the existing test process Page 7 of 20 Vinod Kumar Suvarna

Above are some of the major challenges faced by the testing project, there are many more as each project is unique. Now let s look in details some of this challenges and solution for this challenges. Understanding these challenges in the beginning will help the Project Test Team to better manage the testing project. Challenge: 1 Description: Inadequate Testing Planning Issues: 1. Testing activity is taken up late during the Project Execution. 2. Inadequate Planning for Regression Testing Activity. Solution / Improvement Opportunity: 1. Understand the Project Development life cycle (Incremental, RAD.) 2. Define the Scope of Testing. (What to test? ) 3. Explain and concur on the defined scope of testing with the management and development team 4. Start the Testing Activity from early (Requirement Stage) 5. Develop the Test Assets in parallel with the Development Activity. 6. Insist on including the development of prototype to start the test automation activity early 7. Identify the milestone where the test execution can be started based on the Project life Cycle. 8. Define the milestone for Regression Testing activity in consultation with the Development Team Page 8 of 20 Vinod Kumar Suvarna

For Example refer to the Below Diagram shows when the Testing Activity should start Requirement HLD LLD Coding Coding Coding Integration Production / Design Design & Unit & Unit & Unit / System Maintenance (Prototype) Testing Testing Testing Testing Test Test Case Test Script Test Test Regression Regression Requirement Generation Development Build1 Build2 Independent Testing Team Challenge: 2 Description: Inadequate Testing Effort Issues: 1. Lack of focus on testing activity during estimation usually it s the ballpoint estimation 30 40 % of the Total Effort. 2. No Formal Test Estimation Process Solution / Improvement Opportunity: 1. Define Test Estimation Technique based on the scope of the Project For Example the Estimation technique can consists of the following steps. 1. Identify different stages of the test life cycle 2. Identify the work product for each stage 3. Size estimation for each work product 4. Effort estimation for each phase 5. Effort estimation for regression cycle 6. Compute total testing effort Page 9 of 20 Vinod Kumar Suvarna

Based on the Testing Life Cycle, the following estimation model is derived for calculating the Testing Project Requirement / No. of Test Requirements Complexity Factors Total Size Use Case No. of Test Cases Process Efficiency and Effort No. of Test Scripts Degree of Reuse for Testing No. of Reuse Components Platform Total SLOC Productivity Regression Ratio Regression Ratio 2. Measure the Testing Effort during the defined milestone and Re-Estimate if the variation in the testing effort is more than the 10 % of the Baseline Planned Effort or the scope of the testing is changed. 3. Use Historical Data 4. Document the Criteria and Assumption for estimation and revisit this criteria and assumption when re estimating the test effort. 5. Monitor the Effort variation for development activity and impact it has on the testing effort and schedule. Page 10 of 20 Vinod Kumar Suvarna

Challenge: 3 Description: Ineffective Testing Process Issues: 1. Lack of focus on Testing Process 2. Continuous Improving the Existing Process Solution / Improvement Opportunity: 1. Consider testing activity similar to any software development activity and identify the WBS for the Testing Activity. For Example refer to the below table for WBS for Testing Project WBS - Testing Project Develop Test Plan Develop Test Requirement Develop Initial Test Cases and Trace ability Matrix (TC vs TR) Generate Functional Test Cases Generate Test Data Develop Final Trace ability Matrix Develop reuse plan Generate Reuse libraries Develop Test Scripts Develop Trace ability Matrix (Test Cases Vs. Test Scripts) Perform Testing / Regression Testing Test Analysis 2. Identify the Test Phase based on the WBS Page 11 of 20 Vinod Kumar Suvarna

For Example 1. Test Requirement 2. Test Design 3. Test Development 4. Test Execution 3. Identify the Risk Specific to testing activity 4. Develop guidelines and checklist for review process Challenge: 4 Description: Identifying Test Metrics Issues: 1. Lack of focus on identifying the Testing Metrics 2. Goal Setting for the Test Metrics Solution / Improvement Opportunity: 1. Define Metrics specific to the Testing Metrics apart from the Project Metrics (Effort, Defect and Change) For Example Process Metrics in terms of Size 1. No. of Test Cases / Test Script Executed 2. No. of Test Cases / Test Script Passed 3. No. of Test Cases / Test Script Failed 4. No. of Test Cases / Test Script Unexecuted 5. Total SLOC developed Test Automation 6. Total SLOC Modified Test Automation Page 12 of 20 Vinod Kumar Suvarna

7. No. of Reuse Component 8. No. of Change Request Process Metrics in terms of Effort 1. Planned / Re-planned Work Effort / Rework Effort 2. Actual Work Effort / Rework Effort 3. Effort Variance (Derived) Process Metrics in terms of Schedule 1. Planned / Re-planned Start / End Date 2. Actual Start / End Date 3. Schedule Variance (Derived) Process Metrics in terms of Defects 1. In Process Review Defects 2. Out of Phase Review Defects 3. Categorization of Review Defects Derived Metrics: 1. Test Efficiency and Effectiveness 2. Productivity i. Manual Testing No. of Test Cases / Total Effort ii. Automation Testing Total SLOC / Total Effort 3. Test Progress Chart i. Cumulative No. of Test Cases (Planned / Actual ) vs Duration ii. Cumulative No. of Test Script (Planned / Actual ) vs Duration 4. Defect Density 5. Defect Tracking Page 13 of 20 Vinod Kumar Suvarna

6. Test Coverage Product Metrics 1. No. of Product Defect 2. No. of Delivered Defect 3. CPU Utilization vs Duration 4. Reliability 5. Performance 2. Define and concur the set Goal with the 3. Use Statistical Tools to define the UCL/LCL for Goals. 4. Track and Reset Goal based on the Project Performance Challenge: 5 Description: Test Automation Issues: 1. Identifying the right automation tool for the Project based on the Application under Test / Project Requirement 2. Evaluating the Test Automation Tool 3. Convincing the Management and the ROI on test automation Solution / Improvement Opportunity: 1. Develop a Evaluation Report on the Test Automation Tool For Example the Report should address following points 1) Identify the Ease of Use 2) Tool Scripting language 3) Development language / Architect of the AUT 4) Third party controls of the AUT Page 14 of 20 Vinod Kumar Suvarna

5) Training Requirement 6) Coverage Report Generation 7) Maintenance Effort for Script Maintenance 8) Tool Cost 9) Market Rating on the Product / Support 2. Based on the Project needs, define the no. of regression cycle required for Product Stability during the development and maintenance phase. 3. Generate ROI report on Manual Vs Automation testing and Stability of Product Quality. Usually the Effort for Automation Testing will be on higher side in the first iteration compared to Manual Testing. But the Testing effort will reduce with no. of iteration of testing (Regression Testing). 4. Define a Effective Test Automation Process For Example 1) Use Reuse Concept 2) Use Data Driven Approach 3) Configuration Management for Test Script Challenge: 6 Description: Testing Resource / Test Organization Issues: 1. Lack of Focus in identifying the right resource for testing project 2. Lack of Organization focus on defining the career path for testing 3. Defining the role and responsibilities for each Test Team member Page 15 of 20 Vinod Kumar Suvarna

Solution / Improvement Opportunity: 1. Based on the Project, identify the Test Team Member based on the Application knowledge, Testing Skills, Technical Expertise, and Experience. Usually a combination of this will help build a effective test team. For Example: 1) Application Knowledge Subject Matter Expert 2) Technical Expertise Development Language Knowledge 3) Test Skills Expertise in different areas of Testing (Functional, Security, Configuration testing.) 4) Test Automation 2. Define Test Organization structure for the test project with clear definition on Roles and Responsibilities for each member For Example refer to Organization structure for the Testing Team at the Project level Role Functions / Responsibilities Test Manager Prepare Test Specification Test Strategies Generate Test Plan Test Leader Test Configuration Manager Schedule Test Maintain Reusable Scripts Configuration Management Tester 1 Tester 2 Prepare Test Cases and Data Generate Test Scripts and Library Functions Review Test Assets Execute Test 3. Develop a Rating mechanism for measuring the tester s effectiveness Page 16 of 20 Vinod Kumar Suvarna

Challenge: 7 Description: Training Requirement Issues: 1. Identifying Training requirement specific to the Test Team Solution / Improvement Opportunity: 1. Develop Training plan based on the Role performed in the Project during the Planning Phase. For Example, following training will be required for the tester. a. Specific Area of Testing like Security testing b. Training on Test Automation c. Configuration Management d. Test Planning and Management 2. Track the Effectiveness of this Training Challenge: 8 Description: Configuration Management Process Issues: 1. Lack of Focus on Configuration Management Process 2. Identifying and implementing the configuration management process for Test Asset specifically for test script Solution / Improvement Opportunity: 1. Define Configuration Plan for Test Assets. Its is essential when the project uses Automation tool. 2. Identify team member to perform Configuration Management activities Page 17 of 20 Vinod Kumar Suvarna

3. All the Changes to the Test Assets should be tracked using the configuration management process 4. Identify the configuration item based on the Project needs. Test Asset like Test Result need not be defined as configurable item. Challenge: 9 Description: Intra Group Coordination / Improving the Existing Test Process Issues: 1. Ineffective intra group coordination with the development / other Support team 2. Identifying the Area of Improvement to continuously improve the existing test process Solution / Improvement Opportunity: 1. Involve the Tester s from the Requirement Stage for common understanding between the Testing team and development team. 2. Across Functional Review. For example the development team can be part of the review activity of the Testing project. Tester can be part of the unit testing activity of the Development. 3. Identify the Communication Channel Areas to resolve the Issues between the Testing and Development Team. 4. Clear demarcation of the Environment / Test Beds used by the development and Testing Team. 5. Identify the Area of Improvement in the Existing Testing Project a. Based on the Goals Set, conduct process improvement meeting with the test team on regular basis Page 18 of 20 Vinod Kumar Suvarna

b. Identify and document the lessons learnt based on the AUT / Test Automation etc. c. Identify the Areas in the existing project, which can be automated. For example 1) Develop productivity improvement for verifying the script-coding standard 2) Tool to track the Training attended and Effectiveness 3) Trace ability between the Test Case Vs Test Requirement, Test Case Vs Test Script / Test Result Conclusion: We have discussed in details the some of the challenges faced by the testing team. Based on the Project Duration and Complexity, these challenges may differ but the need for identifying these challenges and solution during the inception stage of the project will reduce the risk involved during the later phase of the Project. As testing is considered the last phase of the project, there is a tremendous pressure on the testing team to release a quality product to the end customer. Focus on these challenges will bring better management practice to the Testing Project. In this White paper, we focused on solution and benefit for each challenge at the Project and Organization level. Page 19 of 20 Vinod Kumar Suvarna

Profile: Vinod Suvarna has an experience of over 8 years in Software Processes and Software Testing. Vinod joined IBM as technical Lead, and is currently working in test planning, development, and execution for the software products. Vinod has extensive experience in automated testing for web based and client/server application. Vinod is a Certified Software Test Engineer (CSTE) Company & Contact Address: IBM Global Services SA-3A-072 Distribution and Healthcare No. 12, 3rd Floor, 'Subramanya Arcade' Bannerghatta Road, Bangalore - 560 029, India Tel: +91-80-22063823 (Direct) / +91-80-22063000 (Board no.) Extn: 3823 Fax: +91-80-22063329 Contact vsuvarna@in.ibm.com Page 20 of 20 Vinod Kumar Suvarna