CSCE 747 Software Testing and Quality Assurance

Similar documents
Test Case Design Techniques

Test case design techniques II: Blackbox testing CISS

Activities Grades K 2 THE FOUR-SQUARE QUILT. Put triangles together to make patterns.

Test case design techniques I: Whitebox testing CISS

Exercises for Design of Test Cases

Preparation Prepare a set of standard triangle shapes for each student. The shapes are found in the Guess My Rule Cards handout.

Test Design: Functional Testing

Geometry: Classifying, Identifying, and Constructing Triangles

Binary Adders: Half Adders and Full Adders

Intermediate Math Circles October 10, 2012 Geometry I: Angles

Software Testing. Jeffrey Carver University of Alabama. April 7, 2016

FORM 3 MATHEMATICS SCHEME C TIME: 30 minutes Non Calculator Paper INSTRUCTIONS TO CANDIDATES

Requirements-Based Testing - Cause-Effect Graphing. Gary E. Mogyorodi, B.Math., M.B.A. Principal Consultant. Software Testing Services

[Refer Slide Time: 05:10]

Normalization. Reduces the liklihood of anomolies

What is a Loop? Pretest Loops in C++ Types of Loop Testing. Count-controlled loops. Loops can be...

Chapter 11 Report and Research Basics

CHAPTER 3. Methods of Proofs. 1. Logical Arguments and Formal Proofs

Chapter 5.1 and 5.2 Triangles

Pigeonhole Principle Solutions


UNIT H1 Angles and Symmetry Activities

Exercise: Analyzing the Triangle Problem

Name Period 10/22 11/1 10/31 11/1. Chapter 4 Section 1 and 2: Classifying Triangles and Interior and Exterior Angle Theorem

Geometry of 2D Shapes

Test Design Strategies

/27 Intro to Geometry Review

South East of Process Main Building / 1F. North East of Process Main Building / 1F. At 14:05 April 16, Sample not collected

Boosting.

International Journal of Emerging Technologies in Computational and Applied Sciences (IJETCAS)

Improved Software Testing Using McCabe IQ Coverage Analysis

One-Inch Graph Paper

University of Dayton Department of Computer Science Undergraduate Programs Assessment Plan DRAFT September 14, 2011

Software Testing I. Prof. Dr. Holger Schlingloff. Humboldt-Universität zu Berlin

The Use of Dynamic Geometry Software in the Teaching and Learning of Geometry through Transformations

Take-Home Exercise. z y x. Erik Jonsson School of Engineering and Computer Science. The University of Texas at Dallas

3/13/2012. Writing Simple C Programs. ESc101: Decision making using if-else and switch statements. Writing Simple C Programs

2010: LTL Base Rate Analysis

Measuring and Monitoring the Quality of Master Data By Thomas Ravn and Martin Høedholt, November 2008

Microsoft Project From the WBS to a Complete Schedule Emanuele Della Valle, Lecturer: Dario Cerizza

Schools of Software Testing

Target To know the properties of a rectangle

Mathematical Induction

Chapter 7. Permutation Groups

Name: Chapter 4 Guided Notes: Congruent Triangles. Chapter Start Date: Chapter End Date: Test Day/Date: Geometry Fall Semester

Test Case Design Using Classification Trees

Warm-Up y. What type of triangle is formed by the points A(4,2), B(6, 1), and C( 1, 3)? A. right B. equilateral C. isosceles D.

Software Testing. Definition: Testing is a process of executing a program with data, with the sole intention of finding errors in the program.

Estimating Angle Measures

Applications of Machine Learning in Software Testing. Lionel C. Briand Simula Research Laboratory and University of Oslo

Elementary Number Theory and Methods of Proof. CSE 215, Foundations of Computer Science Stony Brook University

Professor: Dr. Esra Memili Office: 370 Bryan Office Hours: Monday 2:00-6:00pm and 8:50-9:50pm, and by appointment

Patterns in Pascal s Triangle

Sonatype CLM Server - Dashboard. Sonatype CLM Server - Dashboard

11.3 Curves, Polygons and Symmetry

Introduction to ANSYS ICEM CFD

Mathematics K 6 continuum of key ideas

Course Overview Lean Six Sigma Green Belt

(Refer Slide Time: 01:52)

sensors and actuators? How do we handle the errors introduced due to noise, quantization etc?

Which two rectangles fit together, without overlapping, to make a square?

Schedule Risk Analysis A large DoD Development Program

Computer Science 1015F ~ 2010 ~ Notes to Students

Counters are sequential circuits which "count" through a specific state sequence.

Loop Invariants and Binary Search

Practice Book. Practice. Practice Book

The New Frontier... Third Generation Software Testing Automation

The Triangle and its Properties

Standard for Software Component Testing

2 SYSTEM DESCRIPTION TECHNIQUES

This file contains 2 years of our interlibrary loan transactions downloaded from ILLiad. 70,000+ rows, multiple fields = an ideal file for pivot

Visual Data Mining. Motivation. Why Visual Data Mining. Integration of visualization and data mining : Chidroop Madhavarapu CSE 591:Visual Analytics

Different Approaches to White Box Testing Technique for Finding Errors

DATA INPUT METHODS OBJECTIVE QUESTIONS

NEW MEXICO Grade 6 MATHEMATICS STANDARDS

End of Daylight Saving Time Fall

Section IV.1: Recursive Algorithms and Recursion Trees

ENGI 241 Experiment 5 Basic Logic Gates

Process Discovery The First Step of BPM

The Graphical Method: An Example

1. Define: (a) Variable, (b) Constant, (c) Type, (d) Enumerated Type, (e) Identifier.

Data Mining Practical Machine Learning Tools and Techniques

ANALYSIS OF TREND CHAPTER 5

Mario Guarracino. Data warehousing

269 Business Intelligence Technologies Data Mining Winter (See pages 8-9 for information about 469)

RentersPLUS Move In Special

Change Impact Analysis

Chapter 14: Boolean Expressions Bradley Kjell (Revised 10/08/08)

Business Process Modeling

FFIRS 08/25/ :31:15 Page 2

First, we ll look at some basics all too often the things you cannot change easily!

Final Review Geometry A Fall Semester

Basics of Dimensional Modeling

Which shapes make floor tilings?

Today s topics. Digital Computers. More on binary. Binary Digits (Bits)

Having read this workbook you should be able to: recognise the arrangement of NAND gates used to form an S-R flip-flop.

Review. Bayesianism and Reliability. Today s Class

8. Comparing Means Using One Way ANOVA

Regression Testing. Presented by Dennis Jeffrey. September 18, CSc 620 Neelam Gupta and Rajiv Gupta, Instructors

Transcription:

CSCE 747 Software Testing and Quality Assurance Lecture 04 Decision Tables Based Testing 1 Lec 04 Decision Tables 1 9/9/2013

Last Time Equivalence Class Testing Revision Control Systems Git intro Today Decision Table Based Testing Ch 7 pp 103 116 Decision Trees Decision Tables for Business Logic Decision Tables for Testing 9/9/2013 Lec 04 Decision Tables 2 2

Decision Trees CSCE 510 2013 Slide 3 Sockets II Lec 04 Decision Tables 3 http://en.wikipedia.org/wiki/decision_tree

Decision Tables Slide 4 Sockets II Lec 04 Decision Tables 4 http://en.wikipedia.org/wiki/decision_table

Decision Tables Decision tables have been used to represent and analyze complex logical relationships since the early 1960s. Ideal for describing situations in which a number of combinations of actions are taken under varying sets of conditions Capture Business Logic Capture = describe = document = display for stakeholders Lec 04 Decision Tables 5

Decision Tables Support Completeness Decision table with boolean conditions like rotated truth table Supports complete coverage of the logic Testing based on decision tables enforce logical rigor. Related methods are used: cause effect graphing (Elmendorf, 1973; Myers, 1979) and the decision tableau method (Mosley, 1993). Lec 04 Decision Tables 6

Decision Table for Triangle Problem01 Lec 04 Decision Tables 7

Decision Tables to Test Cases To identify test cases with decision tables, we: 1. Interpret conditions as inputs and actions as outputs. Sometimes conditions end up referring to equivalence classes of inputs, and 2. Actions refer to major functional processing portions of the item tested. 3. The rules are then interpreted as test cases. Because the decision table can mechanically be forced to be complete, we know we have a comprehensive set of test cases. Lec 04 Decision Tables 8

Lec 04 Decision Tables 9

Lec 04 Decision Tables 10

NextDate Decision tables What are meaningful decisions for NextDate? Months M1 ={ months that have 30 days} M2 ={ months that have 31 days} M3 ={February} Days D1 ( ), D2( ), D3( ), D4( ) Years Y1(2000), Y2(non century leap year), Y3() So how big is the table? 9 boolean tests 2 10 =1024 3*4*3 Lec 04 Decision Tables 11

When conditions refer to equivalence classes In NextDate Consider equivalence class = samelengthmonth Lec 04 Decision Tables 12

Rule Counts Rule Count number of corresponding cases Note sum of counts = 64 for complete truth table Lec 04 Decision Tables 13

Lec 04 Decision Tables 14

Rule Counts for NextDate Lec 04 Decision Tables 15

Consider Equivalence Relation M X D Eg. 2.3 = equivalence class M2 X D3 Lec 04 Decision Tables 16

Impossible Rules Impossible Rules cases that cannot happen Lec 04 Decision Tables 17

Redundancy in Decision Tables Here rules 4 and rule 9 are identical; redundant Lec 04 Decision Tables 18

Redundancy OK; but Inconsistency? Now consider rules 4 and 9 Lec 04 Decision Tables 19

Test Cases for the Triangle Problem 11 test cases 3 impossible 3 not triangle 1 equilateral 1 scalene 3 isosceles? means invalid Lec 04 Decision Tables 20

NextDate Try1 8 boolean conditions 2 8 =256 cases Lec 04 Decision Tables 21

Test Cases for NextDate Invalid actions a1: Day invalid for this month a2: Cannot happen in a non leap year a3: Compute the next date 3([months])*4([days])*3([year]) = 36 equiv classes [x] = equivalence classes <m,d,y> 36 equiv. classes on M x D x Y 36 rules/test cases reducing by combining rules with don t care cases yields 16 rules Lec 04 Decision Tables 22

NextDate 2 nd Try Lec 04 Decision Tables 23

Lec 04 Decision Tables 24

But Problems Remain December problems in rule 8 Feb 28 problems in 9, 11 and 12 So new decomposition M1 = {month : month has 30 days} M2 = {month : month has 31 days except December} M3 = {month : month is December} M4 = {month : month is February} D1 = {day : 1 day 27} D2 = {day : day = 28} D3 = {day : day = 29} D4 = {day : day = 30} D5 = {day : day = 31} Y1 = {year : year is a leap year} Y2 = {year : year is a common year} note author eliminated Y3 to make tables smaller Lec 04 Decision Tables 25

Lec 04 Decision Tables 26

Lec 04 Decision Tables 27

Compressing the Table Combining columns Table for 11 22 in text Lec 04 Decision Tables 28

NextDate Decision Table Test cases Lec 04 Decision Tables 29

Decision Table for Commission Problem Not well suited Very little decision logic Variables truly independent no impossible cases as in NextDate 3 equivalence classes: Commission1, commission2, commission3 Lec 04 Decision Tables 30

Guidelines and Observations 1. Decision table approach appropriate for applications with Prominent if then else logic Logical relationships among input variables Calculations involving subsets of inputs 2. Decision tables do not scale up well 3. Iteration helps. Start then refine. Lec 04 Decision Tables 31

Homework 1. Consider a NextMonth function NextMonth(Feb, 15, 2000) = (March, 15, 2000) NextMonth(jan, 30, 2000) =? There are multiple correct answers here. Your answer here will affect #2. 2. Develop a decision table for NextMonth function (not ignoring days) Lec 04 Decision Tables 32