IS4500 – SOFTWARE QUALITY ASSURANCE TESTING STRATEGIES Copyright © 2012 by Martin Schedlbauer, Ph.D. All Rights Reserved. Do Not Duplicate or Distribute.

Slides:



Advertisements
Similar presentations
Copyright Insight Test Services Testing From The Start – Test Driven Development TM Summit Fran OHara, Insight Test Services
Advertisements

Test process essentials Riitta Viitamäki,
Chapter 7: Software production process Refers to the activities that are used for building, delivering, deploying, and evolving a software product, from.
Testing and Quality Assurance
Chapter 4 Quality Assurance in Context
© 2013 IBM Corporation Tivoli and Maximo Quality Improvement Initiatives March 2014.
Verification and Validation: A Quick Introduction 1-2 Lectures.
Verification and Validation: A Quick Introduction Authors Massood Towhidnejad Massood Towhidnejad Mike Rowe Mike Rowe David Dampier David Dampier Sponsored.
Software Life Cycles ECE 417/617: Elements of Software Engineering
CMSC 345, Version 11/07 SD Vick from S. Mitchell Software Testing.
Chapter 9 Testing the System, part 2. Testing  Unit testing White (glass) box Code walkthroughs and inspections  Integration testing Bottom-up Top-down.
Chapter 15 Design, Coding, and Testing. Copyright © 2005 Pearson Addison-Wesley. All rights reserved Design Document The next step in the Software.
1 Software Testing and Quality Assurance Lecture 15 - Planning for Testing (Chapter 3, A Practical Guide to Testing Object- Oriented Software)
SE 555 Software Requirements & Specification Requirements Validation.
Software Testing. “Software and Cathedrals are much the same: First we build them, then we pray!!!” -Sam Redwine, Jr.
Organizational Influences and Life Cycle
High Level: Generic Test Process (from chapter 6 of your text and earlier lesson) Test Planning & Preparation Test Execution Goals met? Analysis & Follow-up.
Chapter 11: Testing The dynamic verification of the behavior of a program on a finite set of test cases, suitable selected from the usually infinite execution.
 What is Software Testing  Terminologies used in Software testing  Types of Testing  What is Manual Testing  Types of Manual Testing  Process that.
Verification and Validation
Testing. What is Testing? Definition: exercising a program under controlled conditions and verifying the results Purpose is to detect program defects.
1 Software Process Lecture Outline Nature of software projects Engineering approaches Software process A process step Characteristics of a good.
1 Software Testing (Part-II) Lecture Software Testing Software Testing is the process of finding the bugs in a software. It helps in Verifying and.
University of Palestine software engineering department Testing of Software Systems Fundamentals of testing instructor: Tasneem Darwish.
Acceptance Testing Senior Design Fall 2013
Software Engineering Chapter 15 Construction Leads to Initial Operational Capability Fall 2001.
CLEANROOM SOFTWARE ENGINEERING.
Chapter 1: Introduction to Systems Analysis and Design
Business Analysis and Essential Competencies
CS 360 Lecture 3.  The software process is a structured set of activities required to develop a software system.  Fundamental Assumption:  Good software.
IS4500 – SOFTWARE QUALITY ASSURANCE SERVICE & FUNCTIONAL TESTING STRATEGIES Copyright © 2012 by Martin Schedlbauer, Ph.D. All Rights Reserved. Do Not Duplicate.
MODULE 6: QUALITY ASSURANCE PRACTICES Copyright © 2010 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute.
Software Testing. What is Testing? The process consisting of all life cycle activities, both static and dynamic, concerned with planning, preparation.
Verification and Validation Assuring that a software system meets a user's needs.
(1) A beginners guide to testing Philip Johnson Collaborative Software Development Laboratory Information and Computer Sciences University of Hawaii Honolulu.
WHITE BOX TESTING IS4500 Copyright © 2012 by The Cathris Group and Martin J. Schedlbauer. All Rights Reserved. Do Not Duplicate or Distribute Without Written.
Chapter 1: Fundamental of Testing Systems Testing & Evaluation (MNN1063)
Software Engineering1  Verification: The software should conform to its specification  Validation: The software should do what the user really requires.
LOGO TESTING Team 8: 1.Nguyễn Hoàng Khánh 2.Dương Quốc Việt 3.Trang Thế Vinh.
Chapter 10 Information Systems Development. Learning Objectives Upon successful completion of this chapter, you will be able to: Explain the overall process.
HNDIT23082 Lecture 09:Software Testing. Validations and Verification Validation and verification ( V & V ) is the name given to the checking and analysis.
Software Development Process CS 360 Lecture 3. Software Process The software process is a structured set of activities required to develop a software.
IS4500 – SOFTWARE QUALITY ASSURANCE QUALITY OF SERVICE TESTING STRATEGIES Copyright © 2012 by Martin Schedlbauer, Ph.D. All Rights Reserved. Do Not Duplicate.
1 Software Testing and Quality Assurance Lecture 17 - Test Analysis & Design Models (Chapter 4, A Practical Guide to Testing Object-Oriented Software)
Introduction to Software Testing Maili Markvardt.
Verification vs. Validation Verification: "Are we building the product right?" The software should conform to its specification.The software should conform.
Testing Integral part of the software development process.
HO CHI MINH CITY NATIONAL UNIVERSITY HO CHI MINH CITY UNIVERSITY OF TECHNOLOGY SYSTEM ANALYSIS AND DESIGN LECTURER: Nguyen Thanh Tung.
Software Testing Kobla Setriakor Nyomi Faculty Intern (Programming II)
Software Engineering (CSI 321)
Software Testing.
SOFTWARE TESTING Date: 29-Dec-2016 By: Ram Karthick.
PREPARED BY G.VIJAYA KUMAR ASST.PROFESSOR
Software Development and Safety Critical Decisions
Software Engineering (CSI 321)
Chapter 1: Introduction to Systems Analysis and Design
IS4500 Software Quality Assurance
Chapter 9: Class Tournament
Johanna Rothman Know What “Done” Means Chapter 11
Introduction to Software Testing
Lecture 09:Software Testing
Introducing ISTQB Agile Foundation Extending the ISTQB Program’s Support Further Presented by Rex Black, CTAL Copyright © 2014 ASTQB 1.
CS240: Advanced Programming Concepts
Chapter 10: Test Tournament
Test Case Test case Describes an input Description and an expected output Description. Test case ID Section 1: Before execution Section 2: After execution.
Chapter 1: Introduction to Systems Analysis and Design
Chapter 13: Construction
Chapter 1: Introduction to Systems Analysis and Design
Presentation transcript:

IS4500 – SOFTWARE QUALITY ASSURANCE TESTING STRATEGIES Copyright © 2012 by Martin Schedlbauer, Ph.D. All Rights Reserved. Do Not Duplicate or Distribute Without Written Consent of the Author. ·

Objectives Upon completion of this chapter you will be able to: ◦ Differentiate between different testing approaches ◦ Appreciate the role of testing in different project lifecycles ◦ Use incremental approaches to testing v Solution Validation & Testing

Reality of Testing Most testers believe that it is their job to prove that a solution does not contain any defects. This is impossible; a program cannot be tested completely. ◦ There will always be some remaining defects. Testing is therefore a risk reducing activity. Reducing the risk to zero may be cost prohibitive. ◦ balance the cost with the amount of residual risk of defects one is willing to accept v Solution Validation & Testing

Workshop Activity v Solution Validation & Testing Goal: Understand the reality of testing. Time: 5 minutesFormat: Individually or in groups Materials: Whiteboard, flipchart, or paper Instructions: List at least three reasons why software solutions cannot be fully tested. Give examples.

Defect Clusters Software defects tend to be clustered. Finding one defect in some area of a solution will likely reveal additional defects in the same module. Why is this the case? v Solution Validation & Testing

Managing Defects Once defects are found, they need to be documented and then removed. But, removing the defects may not be feasible: ◦ Not enough time before release ◦ May cause other parts of solution to break ◦ Work-arounds are available Defects that remain in the solution are referred to as latent defects. v Solution Validation & Testing

Testing Approaches Two overall categories: ◦ Dynamic testing  Black box vs. white box ◦ Static testing Testing can check ◦ Functionality of services/behavior ◦ Quality of service Testing presumes that there is a specification of expected behavior. v Solution Validation & Testing

Exploratory vs. Predictive Testing Testing presumes that there is a specification based on stakeholder requirements. The specification is used to create appropriate test cases and scenarios. In the absence of specifications or requirements documentation, testers may choose to conduct exploratory testing. Exploratory testing is an ad hoc testing approach that uses the intuition of the tester and principally looks for possible failures of the solution. v Solution Validation & Testing

Incremental Testing Testing should be done incrementally from smallest to largest. v Solution Validation & Testing

Taxonomy of Testing Approaches v Solution Validation & Testing

Workshop Activity v Solution Validation & Testing Goal: Define testing approaches and testing terms. Time: 10 minutesFormat: Individually or in groups Materials: Whiteboard, flipchart, or paper Instructions: Define the following testing terms. For each term, specify if the approach is in use in your organization and if you have used it.

Lifecycle Methodologies A lifecycle methodology guides the team during the development of the system and prescribes activities and deliverables. Most organizations have their own internally developed methods that leverage industry best practices. Project lifecycle methodologies can be broadly classified into two extremes: ◦ sequential and iterative methods. v Solution Validation & Testing

Sequential Lifecycle Model v Solution Validation & Testing

Iterative/Agile Lifecycle Model v Solution Validation & Testing

Summary In this module we learned that: ◦ Testing is a risk-based activity and limited which implies that not all defects can be found ◦ Testing is an iterative and incremental endeavor ◦ Project lifecycles determine when, how, and to what extent testing is done ◦ Testing is done on the static code and the running solution ◦ User acceptance testing requires well-define acceptance criteria that must be defined when the requirements are documented 15 Solution Validation & Testing v1.01