【软件测试】HW6

Assignment

Assignment 6.

  1. 分析 Chap.5.1 (Lec.17) 自动售货机软件例子生成的判定表图例的第6列和第23列,分别给出:

    (1) 输入条件的自然语义陈述;

    (2) 输出结果的自然语义陈述;

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

Answer

  1. 分析需求说明,列出原因和结果清单

    • 原因清单 (输入条件)
      • C1 售货机可找零
      • C2 投入1元硬币
      • C3 投入5角硬币
      • C4按下橙汁按钮
      • C5按下啤酒按钮
    • 结果清单 (输出结果)
      • E21 零钱找完灯亮
      • E22 退还1元硬币
      • E23 退还5角硬币
      • E24 送出橙汁饮料
      • E25 送出啤酒饮料
    • 建立中间结点,表示处理的中间状态
      • T11 投入1元硬币且按下饮料按钮
      • T12按下橙汁或啤酒按钮
      • T13 应当找5角零钱并且售货机有零钱找
      • T14 钱已付清
  2. 画出因果图

    在这里插入图片描述

  3. 因果图转换成判定表

在这里插入图片描述
4. 判定表的分析

  • 第6列

    • 输入11010,表示C1售货机可找零、C2投入1元硬币、C4按 下橙汁按钮。输出 00110,表示 E23 退还5角硬币、E24 送出橙汁饮料。

    • 实现上述输入-输出过程的规则描述:

      C 1 ( 1 ) ⋀ T 11 ( 1 ) → T 13 ( 1 ) C1(1)\bigwedge T11(1) \rightarrow T13(1) C1(1)T11(1)T13(1) (3)

      C 2 ( 1 ) ⋀ T 12 ( 1 ) → T 11 ( 1 ) C2(1) \bigwedge T12(1) \rightarrow T11(1) C2(1)T12(1)T11(1) (2)

      C 4 ( 1 ) ⋁ C 5 ( 0 ) → T 12 ( 1 ) C4(1) \bigvee C5(0) \rightarrow T12(1) C4(1)C5(0)T12(1) (1)

      C 3 ( 0 ) ⋁ T 13 ( 1 ) → T 14 ( 1 ) C3(0) \bigvee T13(1) \rightarrow T14(1) C3(0)T13(1)T14(1) (4)

      C 4 ( 1 ) ⋀ T 14 ( 1 ) → E 24 ( 1 ) C4(1) \bigwedge T14(1) \rightarrow E24(1) C4(1)T14(1)E24(1) (5)

      T 13 ( 1 ) → E 23 ( 1 ) T13(1) \rightarrow E23(1) T13(1)E23(1) (6)

    • C 1 , C 2 , C 4 C1,C2,C4 C1,C2,C4为前提,应用上述规则,可以证明逻辑结论 E 23 E23 E23 E 24 E24 E24

      可以证明结论 ¬ E 21 , ¬ E 22 , ¬ E 25 \neg E21,\neg E22,\neg E25 ¬E21,¬E22,¬E25为真:

      C 1 ( 1 ) → ¬ E 21 ( 0 ) C1(1) \rightarrow \neg E21(0) C1(1)¬E21(0)

      C 1 ( 1 ) ⋁ ¬ T 11 ( 1 ) → ¬ E 22 ( 0 ) C1(1) \bigvee \neg T11(1) \rightarrow \neg E22(0) C1(1)¬T11(1)¬E22(0)

      ¬ C 5 ( 0 ) ⋁ ¬ T 14 ( 1 ) → ¬ E 25 ( 0 ) \neg C5(0) \bigvee \neg T14(1) \rightarrow \neg E25(0) ¬C5(0)¬T14(1)¬E25(0)

  • 第23列

    • 输入01001,表示C1售货机不可找零、C2 投入1元硬币、C5按下啤酒按钮。输出 11000,表示 E21 零钱找完灯亮 、E22 退还1元硬币。

    • 实现上述输入-输出过程的规则描述:

      ¬ C 1 ( 0 ) → E 21 ( 1 ) \neg C1(0) \rightarrow E21(1) ¬C1(0)E21(1) (4)

      ¬ C 1 ( 0 ) ⋀ T 11 ( 1 ) → E 22 ( 1 ) \neg C1(0) \bigwedge T11(1) \rightarrow E22(1) ¬C1(0)T11(1)E22(1) (3)

      C 2 ( 1 ) ⋀ T 12 ( 1 ) → T 11 ( 1 ) C2(1) \bigwedge T12(1) \rightarrow T11(1) C2(1)T12(1)T11(1) (2)

      C 4 ( 0 ) ⋁ C 5 ( 1 ) → T 12 ( 1 ) C4(0)\bigvee C5(1)\rightarrow T12(1) C4(0)C5(1)T12(1) (1)

    • C 2 , C 5 C2,C5 C2,C5为前提,应用上述规则,可以证明逻辑结论$ E21$ 和 E 22 E22 E22

      可以证明结论 ¬ E 23 , ¬ E 24 , ¬ E 25 \neg E23,\neg E24,\neg E25 ¬E23,¬E24,¬E25为真:

      ¬ C 1 ( 0 ) ⋁ ¬ T 11 ( 1 ) → ¬ T 13 ( 0 ) \neg C1(0)\bigvee \neg T11(1) \rightarrow \neg T13(0) ¬C1(0)¬T11(1)¬T13(0)

      ¬ T 13 ( 0 ) ↔ ¬ E 24 ( 0 ) \neg T13(0)\leftrightarrow \neg E24(0) ¬T13(0)¬E24(0)

      ¬ C 3 ( 0 ) ⋀ T 13 ( 0 ) → ¬ T 14 ( 0 ) \neg C3(0) \bigwedge T13(0) \rightarrow \neg T14(0) ¬C3(0)T13(0)¬T14(0)

      ¬ C 4 ( 0 ) ⋁ ¬ T 14 ( 0 ) → ¬ E 24 ( 0 ) \neg C4(0) \bigvee \neg T14(0) \rightarrow \neg E24(0) ¬C4(0)¬T14(0)¬E24(0)

      ¬ C 5 ( 1 ) ⋁ ¬ T 14 ( 0 ) → ¬ E 25 ( 0 ) \neg C5(1) \bigvee \neg T14(0) \rightarrow \neg E25(0) ¬C5(1)¬T14(0)¬E25(0)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值