作业8
1、分析 Chap.5 (Lec.19) 自动售货机软件例子生成的判定表图例的第6列和第23列,分别给出:
(1)、输入条件的自然语义陈述; (2)、输出结果的自然语义陈述; (3)、用命题逻辑形式描述实现上述输入-输出过程所应用的判定规则,并写出获得输出结果的推理演算过程。
自动售货机软件例子:
- 设计处理单价为5角的饮料的自动售货机软件的测试用例。软件规格说明如下:
- (1) 常规情况下,操作者投入5角或1元的硬币,按下 橙汁 或 啤酒 的按钮,售货机送出相应的饮料 (不考虑饮料不足的情况)。
- (2) 若售货机没有零钱找,则一个显示 零钱找完 的红灯亮。
- 此时操作者投入1元硬币并按下按钮后,不送出饮料,而是退还1元硬币。
- (3) 若售货机有零钱找,则显示 零钱找完 的红灯灭。
- 此时操作者投入1元硬币并按下按钮后,售货机送出饮料,退还5角硬币。
原因和结果清单:
- 原因清单 (输入条件)
- C1 售货机可找零
- C2 投入1元硬币
- C3 投入5角硬币
- C4 按下 橙汁 按钮
- C5 按下 啤酒 按钮
- 结果清单 (输出结果)
- E21 零钱找完 灯亮
- E22 退还1元硬币
- E23 退还5角硬币
- E24 送出橙汁饮料
- E25 送出啤酒饮料
处理的中间状态:
- T11 投入1元硬币且按下饮料按钮
- T12 按下 橙汁 或 啤酒 按钮
- T13 应当找5角零钱并且售货机有零钱找
- T14 钱已付清
因果图:
判定表图例:
答:
(1)、输入条件的自然语义陈述
第6列:输入条件的C1、C2、C4为真,C3、C5为假,自然语义陈述为当售货机可找零时,投入1元硬币并按下橙汁按钮。
第23列:输入条件的C2、C5为真,C1、C3、C4为假,自然语义陈述为当售货机不能找零时,投入1元硬币并按下啤酒按钮。
(2)、输出结果的自然语义陈述
第6列:输出结果的E23和E24为真,E21、E22、E25为假,自然语义陈述为售货机零钱找完灯灭,退还5角硬币并且送出橙汁饮料。
第23列:输出结果的E21和E22为真,E23、E24、E25为假,自然语义陈述为售货机零钱找完灯亮,退还1元硬币并不送出饮料。
(3)、用命题逻辑形式描述实现上述输入-输出过程所应用的判定规则,并写出获得输出结果的推理演算过程
第6列:
判定规则:
C4 ∨ C5 ? T12 C2 ∧ T12 ? T11 C1 ∧ T11 ? T13 C3 ∨ T13 ? T14 T13 ? E23 C4 ∧ T14 ? E24
推演过程:
以C1、C2、C4为前提,应用上述规则:
∵ C4 ∨ C5 ? T12,C4为真 ∴ T12为真 ∵ C2为真,T12为真,C2 ∧ T12 ? T11 ∴ T11为真 ∵ C1为真,T11为真,C1 ∧ T11 ? T13 ∴ T13为真 ∵ T13为真,C3 ∨ T13 ? T14,T13 ? E23 ∴ T14、E23为真 ∵ C4为真,T14为真,C4 ∧ T14 ? E24 ∴ E24为真
从而E23、E24得证
第23列:
判定规则:
C4 ∨ C5 ? T12 C2 ∧ T12 ? T11 ﹁C1 ? E21 ﹁C1 ∧ T11 ? E22
推演过程:
以C2、C5为前提,应用上述规则:
∵ C5为真,C4 ∨ C5 ? T12 ∴ T12为真 ∵ C2为真,T12为真,C2 ∧ T12 ? T11 ∴ T11为真 ∵ ﹁C1为真,﹁C1 ? E21 ∴ E21为真 ∵ ﹁C1为真,T11为真,﹁C1 ∧ T11 ? E22 ∴ E22为真
从而E21、E22得证
|