题目:
某软件的一个模块的需求规格说明书中描述:
(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%  | 



















