Decision Table Training Session

15

Click here to load reader

description

Decision Table Training Session

Transcript of Decision Table Training Session

  • Decision TablesA useful testing technique and moreMarien de Wilde, Solution Architect

  • In this session DefinitionApplication areasSteps to create a decision tableExerciseSolution to exercise

  • DefinitionComponentsA decision table lists causes and effects in a matrix. Each column represents a unique combination.Purpose is to structure logicCause = condition Effect = action = expected results

  • Application AreasBusiness AnalysisProgrammingTestingHardware Designetc

  • Steps to Create a decision tableList all causes in the decision tableCalculate the number of possible combinationsFill columns with all possible combinationsReduce test combinationsCheck covered combinationsAdd effects to the table

  • Step 1: List all causesHints:Write down the values the cause/condition can assumeCluster related causesPut the most dominating cause firstPut multi valued causes last

  • Step 2: Calculate combinationsIf all causes are simply Y/N values: 2number of causesIf 1 cause with 3 values and 3 with 2: 31 * 23 = 24Or, use the Values column and multiply each value down the column, eg. 3*2*2*2=24Number of Values to the power of the number of causes with these values

  • Step 3: Fill columnsAlgorithm:Determine Repeating Factor (RF): divide remaining combinations by the number of possible values for that causeWrite RF times the first value, then RF times the next etc. until row is fullNext row, go to 1.

    Sheet1

    Combinations

    CausesValues12345678

    Cause 1Y, NYYYYNNNN

    Cause 2Y, NYYNNYYNN

    Cause 3Y, NYNYNYNYN

    Effects

    Effect 1XXX

    Effect 2XXX

    Sheet2

    Sheet3

  • Step 4: Reduce combinationsFind indifferent combinations place a -Join columns where columns are identicalTip: ensure the effects are the same

  • Step 5: Check covered combinationsChecksumFor each column calculate the combinations it representsA - represents as many combinations as the cause hasMultiply for each - down the columnAdd up total and compare with step 2

  • Step 6: Add effects to tableRead column by column and determine the effectsOne effect can occur in multiple test combinations

  • Exercise: SpecificationCreate a decision tableA mailing is to be sent out to customers. The content of the mailing is about the current level of discounting and potential levels of discounting. The content is different for different types of customers.Customer Types A, B and C get a normal letter except Customer Type C, who get a special letter. Any customer with 2 or more current lines or with a credit rating of X get a special paragraph added with an offer to subscribe to another level of discounting.

  • Solution on next slide

  • Exercise: possible solution2 or more current lines OR credit rating X. What if both: AND?Other customer types? See O-Other above.What about non current lines?

  • Thank You

    Often there are dependencies between causes. For example cause 1 can test if a field is entered (Y/N) and cause 2 can test if the same field is valid (Y/N). It is no use testing if the field is valid if it has not been entered.

    Join columns: When in a column a cause is of no interest any more to determine the effects, a dash - is placed in the column for that cause. This has to be done for both the column with a Y and the column with a N. This makes the 2 columns identical and one of them can be deleted.Ask questions from the analyst for clarification