Testing Process Models

Similar documents
TPI a model for Test Process Improvement

TMMi Case Study. Methodology. Scope. Use TMMi to do a gap analysis for an independent

MTAT Software Engineering Management

Leveraging CMMI framework for Engineering Services

Coming up soon: TMMI. What to expect. Jan Jaap Cannegieter Vice President SYSQA

Reaching CMM Levels 2 and 3 with the Rational Unified Process

Process and Procedure Definition: A Primer

CONTENTS. Preface. Acknowledgements. 1. Introduction and Overview 1 Introduction 1 Whatis the CMMI"? 2 What the CMMI* is Not 3 What are Standards?

Integrating Quality Assurance into the Software Development Life Cycle

Software Testing Maturity Model SM (SW-TMM SM ) Presenter: Duy Huynh

Software Quality Assurance: VI Standards

The Design and Improvement of a Software Project Management System Based on CMMI

Your Software Quality is Our Business. INDEPENDENT VERIFICATION AND VALIDATION (IV&V) WHITE PAPER Prepared by Adnet, Inc.


Process Improvement Reviews

Essentials of the Quality Assurance Practice Principles of Testing Test Documentation Techniques. Target Audience: Prerequisites:

Certified Software Quality Assurance Professional VS-1085

Rapidly Defining a Lean CMMI Maturity Level 3 Process

CAPABILITY MATURITY MODEL INTEGRATION

Role of Software Quality Assurance in Capability Maturity Model Integration

Advanced Test Manager E-learning Course Outline

SOFTWARE QUALITY & SYSTEMS ENGINEERING PROGRAM. Quality Assurance Checklist

ISTQB - Certified Tester Advanced Level - Test Manager

Past one. Agenda. Test Maturity Model Integration. Software Testing chapter TI/KVIV. Part 1 TMMi history and model Two TMMi PA s

A Report on The Capability Maturity Model

Software Quality Development and Assurance in RUP, MSF and XP - A Comparative Study

Lee Copeland.

MKS Integrity & CMMI. July, 2007

A comparison of TMM and other Test Process Improvement Models.

How does TMMi work and what does it contain? June 2013

Software Engineering/Courses Description Introduction to Software Engineering Credit Hours: 3 Prerequisite: (Computer Programming 2).

Plan-Driven Methodologies

Standard Glossary of Terms Used in Software Testing. Version 3.01

Developing CMMI in IT Projects with Considering other Development Models

Certified Software Quality Engineer (CSQE) Body of Knowledge

QUALITY ASSURANCE IN EXTREME PROGRAMMING Plamen Balkanski

CHAPTER 7 Software Configuration Management

Case Study of CMMI implementation at Bank of Montreal (BMO) Financial Group

Quality Management. Lecture 12 Software quality management

Software Process Improvement CMM

CMMI for Development Introduction & Implementation Roadmap

How to measure the ROI of SPI as early as possible

Software Process Improvement. Overview

The Advantages of ISO 9001 Certification

DRAFT TABLE OF CONTENTS 1. Software Quality Assurance By Dr. Claude Y Laporte and Dr. Alain April

Using Rational Software Solutions to Achieve CMMI Level 2

Chapter1. Managing Software Projects

Management. Project. Software. Ashfaque Ahmed. A Process-Driven Approach. CRC Press. Taylor Si Francis Group Boca Raton London New York

Design Specification for IEEE Std 1471 Recommended Practice for Architectural Description IEEE Architecture Working Group 0 Motivation

CMMi and Application Outsourcing

Nancy Kastl, CSQA President and Founder Chicago Quality Assurance Association Chicagoland QAI Global Institute Chapter

Mahmoud Khraiwesh Faculty of Science and Information Technology Zarqa University Zarqa - Jordan mahmoud@zpu.edu.jo

Performance Testing and Functional Automation Specialist Cloud Services

Darshan Institute of Engineering & Technology Unit : 7

Formal Software Testing. Terri Grenda, CSTE IV&V Testing Solutions, LLC

Distributed and Outsourced Software Engineering. The CMMI Model. Peter Kolb. Software Engineering

Basic Testing Concepts and Terminology

0. INTRODUCTION 1. SCRUM OVERVIEW

A Brief Overview of Software Testing Techniques and Metrics

Transforming Software Quality Assurance &Testing

Benchmarking Software Quality With Applied Cost of Quality

The Role of Information Technology Studies in Software Product Quality Improvement

Camber Quality Assurance (QA) Approach

Metrics in Software Test Planning and Test Design Processes

Data Management Maturity Model. Overview

Process Improvement. From the Software Engineering Institute:

Engineering Standards in Support of

Industry Metrics for Outsourcing and Vendor Management

ISTQB Expert level Improving the testing process

Software Quality. Software Quality Assurance and Software Reuse. Three Important Points. Quality Factors

Standard Glossary of Terms Used in Software Testing. Version 3.01

Using the Agile Methodology to Mitigate the Risks of Highly Adaptive Projects

Capability Maturity Model Integration (CMMI SM ) Fundamentals

CMMI: Specific Goals and Practices

I.3 Quality Management

ISTQB Certified Tester. Foundation Level. Sample Exam 1

Software Quality Standards and. from Ontological Point of View SMEF. Konstantina Georgieva

Oracle Insurance Policy Administration System Quality Assurance Testing Methodology. An Oracle White Paper August 2008

5.2 A Software Process Improvement Solution for Small and Medium-Size Enterprises

Industry Metrics for Outsourcing and Vendor Management

Testing of safety-critical software some principles

Software Testing Capabilities in BMC BSM Copyright 2011 Vyom Labs Pvt. Ltd.

ITIL. Lifecycle. ITIL Intermediate: Continual Service Improvement. Service Strategy. Service Design. Service Transition

Maturity Assesment for Processes in IT

Frameworks for IT Management

Measuring the level of quality of IT Service Management

CHAPTER 7 SOFTWARE CONFIGURATION MANAGEMENT

Transcription:

Testing Process Models Process Model of a Test Factory EECS 814 Fall 2009 Jennifer Kaufman

Agenda 1. Introduction & Abstract 2. Organizational Models 3. Testing Process Models 4. Process Model of a Test Factory 5. Conclusion 12/12/2009 2

Introduction A proposal of a process model to create a Test Factory by: Ana Sanz Javier Garcia Javier Saldana Antonia Amescua Presented at the ICSE 09 Workshop on Software Quality 12/12/2009 3

Abstract Software testing is being outsourced to Test Factories Test Factories must implement an organizational model that includes a defined testing process model This research presents a testing process model to manage a Test Factory 12/12/2009 4

Software Quality Assurance According to Wikipedia, Software Quality Assurance (SQA) consists of a means of monitoring the software engineering processes and methods used to ensure quality. SQA strives to minimize the cost of guaranteeing quality throughout the development process 12/12/2009 5

SQA & Testing Validation ensures the right functions are performed Verification ensures the correct performance of these functions Testing is part of validation and verification Inspections Technical review Unit testing Integration testing All are SQA activities 12/12/2009 6

Outsourcing Testing Software reliability is demanded by customers Complex systems require efficient SQA activities including more testing Companies that do not have the testing resources are beginning to outsource testing These organizations have been termed Test Factories 12/12/2009 7

Test Factories Designed to correctly perform validation and verification activities Dedicated resources and infrastructure for complex testing Can help reduce software development costs Lack organizational model to manage the testing process 12/12/2009 8

Hypothesis If we have a well-defined organizational model which allows the creation of Test Factories, outsourcing testing-related activities could be managed efficiently. A well-defined organizational model includes: Organizational structure Process model Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 9

Organizational Models Software testing can be organized in various ways Developers as testers Independent test teams Integrated test teams QA/QC Outsourcing & Test Factories 12/12/2009 10

Testing Process Models Testing process improvement increases client satisfaction, reduces defect rates, and increases fulfillment of quality objectives There are numerous testing process reference models 12/12/2009 11

Framework Quagmire Ahern, D. M., Clouse, A., & Turner, R. (2001). CMMI Distilled. New York: Addison-Wesley. 12/12/2009 12

CMMI Capability Maturity Model Integrated Developed by the Software Engineering Institute (SEI) at Carnegie Mellon University Works organizations to continually improve software-intensive systems Helps organizations to develop or acquire the right software, defect free, within budget and on time, every time Carnegie Mellon University. (2009). CMMI Overview. Retrieved October 31, 2009, from Software Engineering Institute: http://www.sei.cmu.edu/cmmi/index.cfm. 12/12/2009 13

CMMI WHAT to do Ad Hoc & Immature Mature & Discipline Business Goals Not HOW and WHO should do it A benchmark of the maturity of an organization s processes with industry state of practice 14 Carnegie Mellon University. (2009). CMMI Overview. Retrieved October 31, 2009, from Software Engineering Institute: http://www.sei.cmu.edu/cmmi/index.cfm. 12/12/2009

CMMI It helps integrate once separate organizational functions Set process improvement goals and priorities Provide guidance for quality processes Provide a point of reference for appraising current processes CMMI does not fully support testing process improvement 15 Carnegie Mellon University. (2009). CMMI Overview. Retrieved October 31, 2009, from Software Engineering Institute: http://www.sei.cmu.edu/cmmi/index.cfm. 12/12/2009

TMM Testing Maturity Model Developed at the Illinois Institute of Technology by professors Bob Carlson and Ilene Burnstein and their graduate students It provides a guideline for test process improvement Compliments Capability Maturity Model IIT Center for Professional Development. (2009). Software Testing Maturity Model (TMM). Retrieved December 10, 2009, from IIT Center for Professional Development: http://www.iit.edu/cpd/itm/research/software_testing.shtml 12/12/2009 16

TMM Six levels of maturity 1. Initial Rush to code from requirements No clear separation between design and code phases No attempt is made to use well known design techniques or methods 2. Phased Clear separation between the requirements phase and design is phase IIT Center for Professional Development. (2009). Software Testing Maturity Model (TMM). Retrieved December 10, 2009, from IIT Center for Professional Development: http://www.iit.edu/cpd/itm/research/software_testing.shtml 12/12/2009 17

TMM 3. Systematic Defined design process with a methodical approach to design and the incorporation of design activities in the project plan Process can be taught and mastered, highly repeatable 4. Integrated Defined design process integrated with development and testing processes Portion of the code can be automatically generated and is consistent in structure Can be consistently maintained IIT Center for Professional Development. (2009). Software Testing Maturity Model (TMM). Retrieved December 10, 2009, from IIT Center for Professional Development: http://www.iit.edu/cpd/itm/research/software_testing.shtml 12/12/2009 18

TMM 5. Managed Design process managed by measures Large scale reuse and use of components leads to a high level of consistency Minimize the knowledge gap between management and software development staff 6. Optimal Systems are based on composition of designs Methodology is repeatable across people Process lends itself to self-analysis seeking corrections, efficiency, and improvements to the product 12/12/2009 19

TMMi Developed and promoted by the TMMi Foundation Compliments CMMI Based on TMM Guideline and reference framework for test process improvement TMMi Foundation. (2009). Test Maturity Model Integration. Retrieved December 10, 2009, from TMMi Foundation: http://www.tmmifoundation.org/downloads/tmmi/tmmi%20framework.pdf 12/12/2009 20

TMMi 5. Optimization Defect Prevention Test Process Optimization Quality Control 4. Management and Measurement Test Measurement Software Quality Evaluation Advanced Peer Reviews 3. Defined 2. Managed 1. Initial Test Organization Test Training Program Test Life Cycle and Integration Non-Functional Testing Peer Reviews Test Policy and Strategy Test Planning Test Monitoring and Control Test Design and Execution Test Environment TMMi Foundation. (2009). Test Maturity Model Integration. Retrieved December 10, 2009, from TMMi Foundation: http://www.tmmifoundation.org/downloads/tmmi/tmmi%20framework.pdf 12/12/2009 21

TPI Test Process Improvement model Develop by Sogeti, an IT service provider Supports the improvement of test processes Offers insight into the maturity of the test processes within your organization Helps define gradual and controllable improvement steps Sogeti. (2009). Test Process Improvement (TPI ): A step-by-step guide for improving your test process. Retrieved December 10, 2009, from Sogeti: http://www.ie.sogeti.com/documents/publications/sogeti_testing_test_process_improvement_tpi_step_by_step_guide_150609.pdf 12/12/2009 22

TPI 20 key areas for improvement Life cycle model Moment of involvement Estimating and planning Test specification techniques Static test techniques Metrics Test automation Test environment Office environment Commitment and motivation Test functions and training Scope of methodology Communication Reporting Defect management Testware management Test process management Evaluation Low-level testing Sogeti. (2009). Test Process Improvement (TPI ): A step-by-step guide for improving your test process. Retrieved December 10, 2009, from Sogeti: http://www.ie.sogeti.com/documents/publications/sogeti_testing_test_process_improvement_tpi_step_by_step_guide_150609.pdf 12/12/2009 23

TPI Each key area is given a maturity level ranging from A to D A Test Maturity Matrix established the relations among areas A set of checkpoints and improvements are made after the assessment Sogeti. (2009). Test Process Improvement (TPI ): A step-by-step guide for improving your test process. Retrieved December 10, 2009, from Sogeti: http://www.ie.sogeti.com/documents/publications/sogeti_testing_test_process_improvement_tpi_step_by_step_guide_150609.pdf 12/12/2009 24

TPI Sogeti. (2009). Test Process Improvement (TPI ): A step-by-step guide for improving your test process. Retrieved December 10, 2009, from Sogeti: http://www.ie.sogeti.com/documents/publications/sogeti_testing_test_process_improvement_tpi_step_by_step_guide_150609.pdf 12/12/2009 25

TestPAI Integrated with CMMI level 3 engineering processes Includes and defines all practices related to testing Same structure as CMMI Proposes 5 specific goals and related practices Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 26

What s Lacking The 4 models discussed are helpful to create a Test Factory, but not complete No model examined integrate organizational structure and a well-defined process model The authors proposed a process model of a Test Factory Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 27

Proposed Process Model 3 categories of testing processes Management Technical Support Each process was defined by identifying these elements: Purpose Description Activities Inputs/Outputs Roles Work Elements Work Products Technical Instructions Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 28

Proposed Process Model Management Testing Requirement Development Testing Planning Testing Design Support Technical Quality Assurance Control and Monitoring Configuration Management Measurement and Analysis Testing Execution Validation Tests Verification Tests Acceptance Tests Testing Report 12/12/2009 29

Management Testing requirement development Inputs: Analysis document, requirement document, specification of client needs Outputs: Contract between the organization and the Test Factory, testing requirements Description: If the feasibility study and project scope are agreed upon, a contract is signed and testing requirements are captured and managed Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 30

Management Testing Planning Inputs: Analysis document, testing requirement document Outputs: Test plan Description: A test plan is developed and maintained. In addition to the normal elements of a test plan, it includes sections of the project plan which are necessary manage the testing phase. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 31

Management Testing Design Inputs: Analysis document, design document, testing requirement document, test plan Outputs: Test plan, Test design specification, test procedure specification Description: Establish the information to execute testing effectively and efficiently including test plan tasks, schedule, risk, resources, and cost Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 32

Technical Testing Execution Inputs: Test work package including artifacts to be tested, project documentation and testing documentation Outputs: Result reporting Description: Test cases and scripts and data are required to prepare and execute tests. A result report is prepared after execution. This is comprised of verification tests, validation tests and acceptance tests. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 33

Technical Verification Tests Inputs: Artifacts to be tested Outputs: Result reporting Description: Inspections, walkthroughs and technical reviews are performed to review the artifacts. Checklists can be used as a simple and useful verification tool. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 34

Technical Validation Tests Inputs: Project documentation and testing documentation Outputs: Result reporting Description: Unit tests, integration tests, system tests, regression tests, stress tests, performance tests and usability tests are executed to check the system. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 35

Technical Acceptance Tests Inputs: Requirement document and testing document Outputs: Result reporting Description: Acceptance tests are executed by the customer or end user to ensure the system meets the client s needs. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 36

Technical Testing Report Inputs: Result reporting Outputs: Result summary reporting Description: Testing results are analyzed and evaluated and a brief report is drafted. This process controls and manages incidents. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 37

Support Quality Assurance Inputs: Test work package Outputs: Result audit reporting Description: Verification that the activities defined in the current process have been carried out and that the appropriate intermediate or final product is obtained. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 38

Support Control and Monitoring Inputs: Test plan, result monitoring reporting Outputs: Result monitoring reporting Description: To control and monitor the state of the projects in regards to schedule, costs, resources, milestones, commitments and risks. This is a continuous process. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 39

Support Configuration Management Inputs: Any element involved in the project Outputs: Information about the change Description: Changes in the configuration items must follow a formal process of change. The impact is assessed and the change is accepted or rejected. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 40

Support Measurement and Analysis Inputs: Project and process specifications Outputs: Measurement reporting Description: To control the processes implemented in the organization. Information collected is measured and analyzed based on set indicators. A measurement report is drafted. Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 41

Use of The Model The proposed model has been implemented at several companies in Spain The proposed process model was adapted for each implementation to include: Justification for using a Test Factory Metrics to measure the performance of the model Methodological guides to be considered when testing Sanz, A., Garcia, J., Saldana, J., & Amescua, A. (2009). A proposal of a proces model to create a Test Factory. WoSQ '09 (pp. 65-69). Vancouver, Canada: IEEE. 12/12/2009 42

Conclusion Test Factories is one way to structure testing in organizations Successfully managing a Test Factory requires a customized management model that includes A process model An organizational structure 12/12/2009 43

Conclusion The proposed model defines: The processes required to manage a testing factory Key elements to develop a contract for outsourcing testing activities The proposed model has been implemented in several companies but the results were not presented in this article 12/12/2009 44

Future of Software Testing 12/12/2009 45