1. 题目

  1. 分析 Chap.5.1 (Lec.17) 自动售货机软件例子生成的判定表图例的第6列和第23列,分别给出:
    • 输入条件的自然语义陈述;
    • 输出结果的自然语义陈述;
    • 用命题逻辑形式描述实现上述输入-输出过程所应用的判定规则,并写出获得输出结果的推理演算过程。

2. 答案

Chap.5.1 (Lec.17) 自动售货机软件例子生成的判定表图例

设计处理单价为5角的饮料的自动售货机软件的测试用例。软件规格说明如下:

  • 操作者投入5角或1元的硬币,按下 “橙汁” 或 “啤酒” 的按钮,售货机送出相应的饮料 (不考虑饮料不足的情况)。
  • 若售货机没有零钱找,则一个显示 “零钱找完” 的红灯亮。
    此时操作者投入1元硬币并按下按钮后,不送出饮料,而是退还1元硬币。
  • 若售货机有零钱找,则显示 的红灯灭。
    此时操作者投入1元硬币并按下按钮后,售货机送出饮料,退还5角硬币。
    软件测试 Assignment 6

原因清单 (输入条件)

  • C1 售货机可找零
  • C2 投入1元硬币
  • C3 投入5角硬币
  • C4 按下 橙汁 按钮
  • C5 按下 啤酒 按钮

结果清单 (输出结果)

  • E21 “零钱找完” 灯亮
  • E22 退还1元硬币
  • E23 退还5角硬币
  • E24 送出橙汁饮料
  • E25 送出啤酒饮料

建立中间结点,表示处理的中间状态

  • T11 投入1元硬币且按下饮料按钮
  • T12 按下 “橙汁” 或 “啤酒” 按钮
  • T13 应当找5角零钱并且售货机有零钱找
  • T14 钱已付清

1. 输入条件的自然语义陈述

  1. 第6列:售货机可找零,顾客投入一元硬币并按下 “橙汁” 按钮。
  2. 第23列:售货机不可找零,顾客投入一元硬币并按下 “啤酒” 按钮。

2. 输出结果的自然语义陈述

  1. 第6列:售货机退还5角硬币并送出橙汁。
  2. 第23列:售货机“零钱找完”灯亮并退还1元。

3. 用命题逻辑形式描述实现上述输入-输出过程所应用的判定规则,并写出获得输出结果的推理演算过程

  1. 第6列实现上述输入-输出的规则描述:
    C1 ^ T11 -> T13
    C2 ^ T12 -> T11
    C4 V C5 -> T12
    C3 V T13 -> T14
    T13 -> E23
    C4 ^ T14 -> E24

  2. 第6列推理演算过程:
    已知C1 = 1, C2 = 1, C4 = 1:
    由 C4 V C5 -> T12 得到T12 = 1。
    再由 C2 ^ T12 -> T11得到T11 = 1。
    再由 C1 ^ T11 -> T13得到T13 = 1。
    再由T13 -> E23 得到E23 = 1。
    再由C3 V T13 -> T14 得到 T14 = 1。
    最后由C4 ^ T14 -> E24得到E24 = 1。

  3. 第23列实现上述输入-输出的规则描述:
    C4 V C5 -> T12
    C2 ^ T12 -> T11
    ~C1 -> E21
    ~C1 ^ T11 -> E22

  4. 第23列推理演算过程:
    已知C1 = 0, C2 = 1, C5 = 1:
    由~C1 -> E21 得 E21 = 1
    由C4 V C5 -> T12 得 T12 = 1
    由C2 ^ T12 -> T11 得 T11 = 1
    由~C1 ^ T11 -> E22 得E22 = 1

相关文章: