0

我对在 DFD 中建模某些事物的最正确方法是什么表示怀疑。我对医院的系统有以下要求:

  1. “所有医生议程都将在网站上供患者使用。患者将能够选择任何医生”

    我对这个要求的问题是:

1.1:“获得议程”和“选择医生”是不同的过程吗?我想他们应该,但我不是 100% 确定。

1.2 “获得议程”能否被建模为一个简单地从“议程”数据存储中读取并生成一个输出流到“患者”外部实体的过程?或者是否需要输入流来表示患者必须首先询问议程?我更倾向于将其仅表示为输出流,因为我看到请求议程更多的是控制流而不是数据流。我对么?如果还包括一个输入流更好,我假设在这种情况下我可以在上下文图中使用对话流而不是单独的输入/输出流来询问议程和获取议程,对吗?我上传了以下图片,以图形方式显示我所指的 2 个版本是从上下文图的角度来看的:https://imgur。

  1. “患者可以支付 10 美元的费用更换指定的专科医生。医生可以免费更换指定给患者的专科医生”

2.1 我可以用一个“变更专家”流程来建模吗?在这种情况下,我如何表示仅当更改来自患者而不是专家时才需要支付费用?

除了这些关于需求的问题,任何人都可以向我推荐一个使用 METRICA 语法绘制 DFD 的好免费软件吗?该语法是可以在此链接中看到的语法:

https://manuel.cillero.es/doc/metodologia/metrica-3/tecnicas/diagrama-de-flujo-de-datos/

https://administracionelectronica.gob.es/pae_Home/dam/jcr:da7d91fa-d6bd-467c-be32-a72e27c603b3/METRICA_V3_Tecnicas.pdf

谢谢你的时间。

4

1 回答 1

0

1.1。除非您想制作非常详细的图表,否则这些要求并不意味着与 DFD 流程一一对应:

  • 该过程似乎是Book appointment医生的选择,并且查看医生议程中的空闲位置是该过程的细节。
  • 当然,您可以想象一个过程,Select doctor然后是一个过程Obtain agenda,然后是一个过程Book an agenda slot。但是随后您已经开始定义用户界面。此外,您需要在上一步中添加很多箭头,但没有数据。这将是矫枉过正。

1.2. 结论:Obtain agenda不应该是一个过程。顺便说一句,用户什么也得不到:议程保留在数据存储中。而且我怀疑患者是否可以完全访问议程并以他们的名字查看其他患者的约会。事实上,该进程Book appointment将从数据存储中读取空闲时隙Agenda,并将新约会写入数据存储。其余的是此过程的功能要求。

  1. 同样,DFD 显示了数据处理过程之间的数据流。与系统交互的外部参与者可以显示为实体。但 DFD 不是业务流程分析符号。Change specialist因此,让一个流程具有两个可以提供输入的实体似乎是合理的。适用的规则(谁可以做什么、在什么条件下以及以什么价格)是这个过程的功能规范。

工具:您问题的这一部分超出了范围。我们不推荐使用工具。顺便说一句,查看您的文档,似乎 Metrica 对流程使用了自己的语法。它似乎从 IDEF3 盒子中获得灵感,但自上而下,这与通常的 DFD 表示法不同。恐怕您找不到免费的建模工具,而您必须使用带有适当模板的简单绘图工具。

于 2021-08-11T18:12:46.250 回答