题目:
某软件的一个模块的需求规格说明书中描述:
(1)年薪制员工:严重过失,扣年终风险金的4%;过失,扣年终风险金的2%。
(2)非年薪制员工:严重过失,扣当月薪资的8%;过失,扣当月薪资的4%。
请绘制出因果图和决策表,并给出相应的测试用例。
答案:
答:
1、确定需求中的原因与结果
原因 | 结果 |
A1:年薪制员工 | C1:扣年终风险金的4% |
A2:非年薪制员工 | C2:扣年终风险金的2% |
A3:严重过失 | C3:扣当月薪资的8% |
A4:过失 | C4:扣当月薪资的4% |
2、确认因果图中的约束
原因与原因之间
关于是否为年薪制员工:A1与A2是互斥关系(O)
关于是否为严重过失:A3与A4是互斥关系(O)
是否为年薪制员工与是否为严重过失之间不可独立存在,属于与关系(I)
原因与结果之间
是否为年薪制员工与是否为严重过失进行两两组合,形成中级状态,到达结果
得到的因果与中间状态列表:
关系1 | 关系2 | 原因 | 中间状态 | 结果 |
互斥关系(O) | A1:年薪制员工 | B1:A1&A3 | C1:扣年终风险金的4% | |
与关系(I) | A2:非年薪制员工 | B2:A1&A4 | C3:扣当月薪资的8% | |
互斥关系(O) | A3:严重过失 | B3:A2&A3 | C2:扣年终风险金的2% | |
A4:过失 | B4:A2&A4 | C4:扣当月薪资的4% |
梳理关系得到因果图:
3、将因果图转化为判定表:
原因 | 中间 | 结果 | 结果 | |||||||||
编号 | A1 | A2 | A3 | A4 | B1 | B2 | B3 | B4 | C1 | C2 | C3 | C4 |
1 | 1 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 |
2 | 1 | 0 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 1 | 0 |
3 | 0 | 1 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 1 | 0 | 0 |
4 | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 1 | 0 | 0 | 0 | 1 |
4、根据判定表写测试用例
测试用例序号 | 输入 | 输出 |
1 | 年薪制员工严重过失 | 扣年终风险的4% |
2 | 年薪制员工过失 | 扣年终风险的2% |
3 | 非年薪制员工严重过失 | 扣当月薪资的8% |
4 | 非年薪制员工过失 | 扣当月薪资的4% |