抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

七つの海

ひと結び、人を結んで

下面是这一次的实验要求:

#####
系统建模实验

一、实验名称:系统建模实验

二、实验目的

  1. 理解多视角系统建模思想和技术

  2. 掌握常见UML建模图形。

三、实验内容和要求

  1. 对你使用和熟悉的一个系统进行上下文、结构、行为和交互建模

  2. 建模不需要是整个系统,重点是建模角度

  3. 为了方便理解建模结果,给出必要的背景或上下文描述

  4. 使用用例图+脚本、顺序图、活动图、类图或包图、状态图

实验过程

系统建模是一个开发系统抽象模型的过程,每个模型表示系统的不同方面或角度,其意味着用某种图形符号表示系 统,常见的图形符号基于 UML 。

UML 建模最主要的五个图是用例图、静态结构、序列图、状态机图和活动图。当然也包含了一些其他的例如数据库表示图,只是使用没有前面五种图常见;下面的内容根据 Java 大作业 todo-list 工程绘制:

活动图(上下文建模)

对于一个任务清单程序,它的基本功能就如下所示:

活动图.png

将这些功能使用 UML 的方法绘制成流程图,那就是活动图了。

静态结构模型(类图)

设计好了功能之后,就要根据设计的功能设计模型了;将程序中的关键概念抽象成类,并梳理之间的关系,就得到了静态结构模型:

静态结构.png

将一些概念进行泛化聚合,就可以得到上图。

行为模型

描述行为模型主要有两种图:

  • 数据驱动建模(数据流图)

    UML不支持数据流图。原因是DFD关注的是系统功能而不识别系统对象。然而,因为数据驱动系统在业务中太常用了,所有 UML2.0引入了与数据流图类似的活动图。在UML中也用时序图表示系统处理序列。

  • 事件驱动建模(状态图)

    状态图表示系统状态和引起状态改变的事件。状态图不表示系统中的数据流,但可能包括在每一状态在每一状态中所执行运 算的附加信息。

对于 todo-list 程序,总结得到的状态机图可以根据展示的页面的逻辑来划分:

状态图.png

页面分为编辑页面和显示页面,再加上其后的存储进程,就成了这个工程的三个状态。

交互模型(时序图)

交互即用户交互,与用户输入输出有关;有可能是正在开发的系统与其他系统之间的或是系统各部分之间的交互。为用户交互建模主要是因为它有助于我们识别用户需求。为系统间的交互建模应将重点放在可能产生的交流问题上。为系统各部分之 间的交互建模有助于我们分析所提出的系统结构能否实现系统所需的功能及其可靠性。

交互模型在 UML 体系中主要使用两种图来表示:

  • 用例建模:该方法主要用来为系统与外部参与者(用户或其他系统)之间的交互建模。
用例图.png

上面的就是用例图。

  • 时序图:该方法用来为系统各部分之间的交互建模;尽管也包括一些外部因素。

    顺序图.png

实验总结

通过这次实验,我理解了多视角系统建模思想和技术,掌握了基本常见的UML建模图形;通过对一个之前工程系统进行上下文、结构、行为和交互建模,更一步加深了对建模的理解。

评论