序列图(SD)和系统序列图(SSD)之间的区别?
Posted
技术标签:
【中文标题】序列图(SD)和系统序列图(SSD)之间的区别?【英文标题】:Difference between Sequence Diagram (SD) and a System Sequence Diagram (SSD)? 【发布时间】:2013-05-29 03:34:11 【问题描述】:我正在为一个研究生班做一个项目,但我仍然无法理解它们。
序列图 (SD) 和 系统序列图 (SSD) 有什么区别?
在从事系统开发项目时,它们应该按什么顺序开发?
【问题讨论】:
【参考方案1】:System sequence diagram 可视化用例,而a sequence diagram 可视化类的方法。
系统序列图中参与(交换消息)的元素是参与者和系统。这些元素交换的消息可以是任何类型,具体取决于系统(从 Web 服务调用到人类的数据输入)。
参与序列图的元素是对象(各种类的实例)。这些元素交换的消息是方法调用。
首先,您将分析并记录用例。每个用例都描述了所需的主要业务任务。系统用例图是此活动的一部分。
稍后您将设计每个子系统,即参与系统用例图的每个元素。您绘制一个或多个类图来描述参与解决方案的类。然后,您将为最重要(或难以理解)的方法绘制序列图。
编辑:可以在agile modelling site 中找到一些示例。
【讨论】:
我想补充一下这个很好的答案,因为一些演员(人类)不能真正向系统发送消息,所以有一个表示层的工作是识别一些用户手势并翻译它变成一条消息发送到系统。 Web 表单使用字段和按钮,Siri/Google/Alexa/Cortana 使用语音识别,甚至现在还有 Amazon Go 商店使用摄像头识别手势和发送消息。 SSD 抽象了该层,但它必须存在于 Actor 端。【参考方案2】:序列图只是一个更常见的术语。
序列图主要用于显示之间的交互 按顺序表示为生命线的对象。
(来自 VP ULM 帮助) 所以,顺便说一句,您可以看到它不是 @nakosspy 所写的一种方法的可视化 .
它可以用于任何级别:方法、服务、组件、系统。
至于系统时序图,是为最高层次制作的时序图。正如Wiki 所说,它甚至可以描述一组用例,而不仅仅是一个用例。但更重要的是,系统 SD 的元素应该用用户术语来描述,而不是 IT 俚语。因为它属于项目文档的需求部分。
【讨论】:
【参考方案3】:序列图:显示两个对象之间的交互。 系统序列图:显示系统和参与者之间的交互。
【讨论】:
【参考方案4】:我们在 UML 中只有一个序列图,我们可以将它用于不同的抽象级别。我们可以使用此图来记录参与者与组件、类等之间的交互。有时您可以找到名称“系统序列图”以防万一,图描述了实现特定操作(可能是webservice),没有actor的组件。
【讨论】:
以上是关于序列图(SD)和系统序列图(SSD)之间的区别?的主要内容,如果未能解决你的问题,请参考以下文章
MarkDown画图(实例讲解) —— 流程图、序列图、饼图、甘特图