500 likes | 901 Views
Test Management Approach (TMap). Chris Hampton, PMP Practice Manager, Software Control & Testing Sogeti USA September 2007. Agenda:. The State of, and Business Case for, Software Quality What is testing? Sogeti’s Test Management Approach ® (Tmap ® )
E N D
Test Management Approach (TMap) Chris Hampton, PMP Practice Manager, Software Control & Testing Sogeti USA September 2007
Agenda: The State of, and Business Case for, Software Quality What is testing? Sogeti’s Test Management Approach® (Tmap®) Sogeti’s Test Process Improvement® (TPI®) Methodology
Poor State of Software Delivery “Software failure costs the American economy $59.5 billion annually.” Source: NIST (2002) 90% of projects are delivered late 66% of projects rated unsuccessful 54% of projects over budget 30% of projects cancelled early Source: Standish 2003 4
The Business Case For QA • Compliance • Basel II, Sarbanes Oxley, HIPAA, etc… • Reduced liability from defective software and defective process • Cost Savings • Quality processes now reduce support costs later • Lost revenue • Satisfaction • Higher User satisfaction • Improved business alignment • Growth • Better quality and measurements allows development optimization • Increase ability to deliver 5
Where Quality Problems Originate 7% 10% 56% 27% Source: James Martin
How Quality Provides Tremendous Savings Source: Cutter Consortium/Forrester/Sogeti Planning Analysis System Design $140 Production Code $14000 Unit Test $1000 COST TO REPAIR DEFECT Unit Test Certification Test System Test $4500 Integration Test $2500 $7000 Code Time cost and resource effort increase exponentially later in the lifecycle
What is testing? Testing is a process aimed at: • Finding defects in a controlled manner • Detecting the level of quality of the test object • Demonstrating the gap between specifications and the actual product • Demonstrating that the end product functions as called for in the requirements
Testing is not . . . . Testing is not: • Implementation • Acceptance • Defect repair • A phase after development – although testing includes a phase after development • Training on a new system
Why do we test ? • To mitigate business risks that have been identified: • Validate software quality • Verify integration of business processes • Reduce time-to-market • Competitive purposes • To ensure business usability of the software: • Release low-error/known-error software • Move high quality software (meets or exceeds quality expectations) into production • Demonstrate the usefulness of new technology
Application Software Hardware System Software Procedures Documentation Functionality Continuity Performance Usability Interoperability (between different applications and systems) Testing of information systems What do we test? 11
Structured Software Testing Testing everything is impractical Funding limitations Limited time and resources Diminishing value after a certain point Isn’t there a more effective way? Yes! Structured software testing: a risk-based, quality-centric approach to testing
Test Management Approach (TMap®) Sogeti’s methodology for structured testing of software products. TMap® has evolved to be the standard for software testing in Europe and quickly gaining traction in the US. It is being used by more than three hundred Dutch, Belgium and German organizations. Industry adoption includes : Financial Services Insurance Government Consumer Electronics Telecommunications Medical systems 13
4 Essentials of TMap® • Business-driven test management (BDTM) approach • Structured test process • Complete tool box • Adaptive test method BDTM puts focus on risk-based testing—only testing what has impacts to the organization. 14
Business Driven Test Management • Choices must be made in what is tested and how thoroughly. • This is an economic decision based on: • The risks that an organization thinks it will incur • The availability of time and resources • The results the customer wishes to achieve. • The choices based on risks, result, time and cost constitutes the basis for the BDTM approach. 15
The BDTM Process Formulate the test goals. Determine the risk class for each combination of characteristic and object part. Determining the depth of testing required. Based on risk/resource trade off Develop the test estimate and test plan. Allocate the appropriate test techniques. Throughout the test process, the test manager provides the stakeholders with insight into and control options over test process and test object. 16
Risk Definition 17 • Testing should be based on the mitigation of risk and validation of expected quality defined by the business requirements • Definition of risk • A “risk” is a chance of a failure occurring, related to expected damage to the project (should the failure occur) • Risk Categories • Risks identified in different categories such as business risks, project risks, product risks, process risks • Risk Ranking • Risk are ranked in criticality relative to one another, by instituting a method of risk ranking (or “risk rating”)
How Risk Ranking Works Assemble a team of people representing various roles from the project PMs, Business Leads/SMEs, Test Leads, Tech Leads Create an initial list of risks Team assigns a numeric value to each risk = the probability of occurrence of each risk Team assigns a second value to each risk, representing the impact on the project/organization Multiply the two values together (the probability of occurrence X the impact) The result is a relative value for each risk Order the risks by their relative risk values “risk rating” or “risk ranking” Ranking helps manage the most critical risks, especially those falling in the middle tier of the ranking Periodically update the list of risks
Risks – quality characteristics matrix Multi-Level Matrix High Priority/ Medium Risk High Priority/ High Risk High Priority High Priority/ Low Risk Quality Characteristics Medium Priority/ Medium Risk Medium Priority/ High Risk Medium Priority Medium Priority/ Low Risk Low Priority Low Priority/ Low Risk Low Priority/ High Risk Low Priority/ Medium Risk High Medium Low Risks
Ten steps for creating a test case Step 10 CREATE TEST CASES Step 9 Select suitable test techniques Step 8 Associate test scenarios with risks Facilitated Sessions Step 7 Create test scenarios for each subsystem Step 6 Create subsystem / quality characteristic pairings Step 5 Rank relevant quality characteristics Step 4 Agree on relevant quality characteristics Step 3 Rank risks Step 2 Identify risks Step 1 Identify sub-systems / sub-processes FUNCTIONAL AREA
Structured Test Process • Master Test Plan, managing the total test process • Acceptance and System Tests • Developmental Test • Supporting Processes • Lifecycle Model
Master Test Plan Developed by the test manager in partnership with the appropriate stakeholders Jointly define: What will be tested for each test level, When it will be tested To what degree of thoroughness. This plan constitutes the basis for the test plans for the separate test levels. Unit Testing Systems Integration Testing Acceptance Testing Developmental Testing
Life Cycle Model The life cycle model is a generic model. Can be applied to all test levels and test types Used in parallel with the life cycle models for system development. Test activities are divided across seven phases: Planning Control Setting up and maintaining infrastructure Preparation, Specification Execution Completion
TMap - Structured testing lifecycle PREPARATION • Testability review • Allocate techniques • Requirements review • Data cycle test • Process cycle test • Other tests • Specify test cases • Create/assess infrastructure • Test specification • Data flow test EXECUTION • Pretest • (Re)test • Checking • Assessing • Debugger • Record and playback • Monitoring • Preserve testware • Evaluate process SPECIFICATION • Create test scripts • Create infrastructure S C P E P&C COMPLETION • Preserve testware for future use • Evaluate process PLANNING & CONTROL • Inspection and study -Test strategy • Develop test strategy -Test estimation • Risk analysis -Reports • Test Estimation (TPA) -Management tools • Setup organization -Budgeting tools • Prepare test plan -Defect management • Management and control tool
Complete Tool Kit Techniques Many techniques can be used in the test process. A test technique is a combination of actions to produce a test product in a universal manner. TMap provides techniques for the following: Test estimation Defect management Creating metrics Product risk analysis Test design Product evaluation.
Adaptive Test Method • Complete And Flexible • Works with any SDLC • Iterative • RAD • Agile • Waterfall • RUP • Works with any technology • Mainframe • Web • ERP • SOA
TMap® – Differentiators • Business-Driven Test Management • Risk-based test strategy • Efficient testing—coverage without overlap • Testing off of critical path as much as possible • Criteria and metrics about production readiness • Management of testing to project timelines • Compliments industry tools Proven methodology applied in hundreds of companies internationally over the past 14 years!
Benefits of Structure Testing • Defects are found early, costing less time/money to reach production delivering a higher quality product • Required quality of the various test objects is tested for and validated, by focusing on testing for quality as a risk mitigation strategy • By keeping a larger percentage of the testing process/effort off the critical path, faster time-to-market results • Structured software testing is more cost-effective and efficient than non-structured testing approaches • Sound test coverage is provided, without the need to overlap phases • Establishes a test organization that is prepared and efficient • Delivers a repeatable process
Test Process Improvement (TPI) The Sogeti TPI® Model was developed to facilitate a stepwise improvement of the testing process. Developed from practical experience from 30+ years of Sogeti work in testing. Offers a frame of reference to determine the strengths and weaknesses of your current testing process. Covers 20 key areas that need specific improvement to achieve a well define testing process. Key TPI Areas: Test Strategy 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 and Low-Level Testing
Typical TPI Process Steps Interview key people Describe the ‘As-Is’ process including Strengths & Weaknesses Describe the ‘To-Be’ process Document process improvement actions Define expected benefits in terms of Objectives Plan for Implementation of the Improvement Actions (short-term and long-term)
TPI - Test Maturity Matrix Increasing Maturity
Resources Web Sites Sogeti USA Web Site: www.us.sogeti.com TMap Web Site: http://eng.tmap.net/Home/ TMap® certification (Netherlands) Foundation TMap ® professional Advanced/Expert TMap ® management Advanced/Expert Books
Sogeti SCT Services Managed Testing Services (MTS) Quality Management Services Test Automation Services Testing Professional Services SAP Testing Services 3000+ people worldwide in SCT space 30+ yrs experience
Sogeti’s Geographical Presence USA • A workforce of over 18,000 staff spread over 200 locations Sweden UK Denmark Ireland NL Germany Belux Switzerland France Spain India
Thank you! Chris Hampton, PMP Practice Manager, Software Control & Testing Sogeti USA Chris.Hampton@us.sogeti.com Cell: (214) 549-7613 Sogeti Office: (972) 892-3400