📜  软件工程中的因果图示例

📅  最后修改于: 2022-05-13 01:56:59.405000             🧑  作者: Mango

软件工程中的因果图示例

问题:有两列:col1 和 col2。 col1 中允许的字符是“a”或“b”。 col2 中允许的字符是数字 0-9。如果列(即 col1 和 col2)都正确,则更新文件。如果 col1 不正确,则显示消息“X”,如果 col2 不正确,则显示消息“Y”。画出给定问题的因果图。

解决方案:

执行以下步骤以创建因果图:

1. 找出原因:

2. 识别效果:

3. 为所有因果创建节点:

4. 使用 AND、NOT、OR 和 Identity 函数来建立因果关系:

1. 从c1、c2、c3中得到e1,方法如下:

2. e2 是从 c1 和 c2 中得到的,方法如下:

3. e3 通过以下方式从 c3 中获得:

5. 向图中添加约束(如果有):

c1 和c2 原因之间存在排他约束(或E 约束),因为在某个时间点,它们中只有一个可以为1,即它们不能同时为1。因此,在它们之间应用了 E 约束。上图是给定问题的最终因果图。