Skip to content

Commit

Permalink
Merge pull request #2126 from cyh1069247088/master
Browse files Browse the repository at this point in the history
#6 #1185 Lab6: Interation Modeling
  • Loading branch information
zengsn authored Apr 4, 2020
2 parents 389e694 + 8793b00 commit 5ef2433
Show file tree
Hide file tree
Showing 15 changed files with 90 additions and 33 deletions.
4 changes: 2 additions & 2 deletions students/1714080901141/lab1.md
Original file line number Diff line number Diff line change
Expand Up @@ -37,11 +37,11 @@ wget http://staruml.io/download/releases/StarUML-3.2.2.AppImage
7. 在lab1.md中使用图片:
- Adding the following code in lab1.md.
```
![第一个UML图](./model1.jpg)
![Diagram](./lab1_Diagram.jpg)
```
## 四、实验结果

![第一个UML图](./model1.jpg)
![Diagram](./lab1_Diagram.jpg.jpg)

## 五、实验收获
1. 养成良好的写实验的习惯,即明确的实验目的,粗略但全面的内容的实验内容,细致的实验步骤,明了的实验结果,简洁的实验总结,深度的调试。
Expand Down
46 changes: 21 additions & 25 deletions students/1714080901141/lab2.md
Original file line number Diff line number Diff line change
Expand Up @@ -46,40 +46,36 @@
用例编号 | UC01 | 备注
-|:-|-
用例名称 | 添加航班 |
前置条件 | 管理员已登录飞机订票管理系统 | *可选*
前置条件 | 管理员已在航班添加的操作页面 | *可选*
后置条件 | | *可选*
基本流程 | 1. 管理员点击“添加航班”按钮; | *用例执行成功的步骤*
~| 2. 系统显示航班添加的操作页面; |
~| 3. 管理员输入要添加的航班信息,包括航班类型、航班时间;|
~| 4. 管理员点击“确认”按钮; |
~| 5. 系统检查航班时间可兼容; |
~| 6. 系统检查对应类型航班有闲置; |
~| 7. 系统保存添加信息; |
~| 8. 系统显示航班添加成功的页面。 |
扩展流程 | 5.1 系统检查航班时间不可兼容,提示“航班时间冲突,添加失败”,返回航班添加的操作页面; |*用例执行失败的步骤*
~| 6.1 系统检查对应类型航班无闲置,提示“航班忙碌,添加失败”,返回航班添加的操作页面。 |
基本流程 | 1. 管理员输入添加的航班;| *用例执行成功的步骤*
~| 2. 管理员点击确认按钮; |
~| 3. 系统检查航班时间可兼容; |
~| 4. 系统检查对应类型航班有闲置; |
~| 5. 系统保存添加信息; |
~| 6. 系统显示航班添加成功的页面。 |
扩展流程 | 3.1 系统检查航班时间不可兼容,提示“航班时间冲突,添加失败”,返回航班添加的操作页面; |*用例执行失败的步骤*
~| 4.1 系统检查对应类型航班无闲置,提示“航班忙碌,添加失败”,返回航班添加的操作页面。 |
##### 表2:取消航班用例规约
用例编号 | UC02 | 备注
-|:-|-
用例名称 | 取消航班 |
前置条件 | 管理员已登录系统 | *可选*
前置条件 | 管理员已在可取消的航班的信息页面 | *可选*
后置条件 | | *可选*
基本流程 | 1. 管理员点击“取消航班”按钮; |*用例执行成功的步骤*
~| 2. 系统显示可取消的航班的信息页面; |
~| 3. 管理员选择要取消的航班,编辑致歉信息;|
~| 4. 管理员点击“取消航班”按钮; |
~| 5. 系统重新检测到所选航班可取消; |*选择需要时间,有时差,需要实时重新检查(step2已经检测过一次)*
~| 6. 系统显示所选航班正在取消的页面; |
~| 7. 系统保存取消信息; |
~| 8. 系统修改客户订单; |
~| 9. 系统触发对应客户的退款业务; |
~| 10. 系统发送致歉信息给对应客户; |
~| 11. 系统显示航班取消成功的页面。 |
扩展流程 | 5.1 系统重新检测到所选航班不可取消,显示航班取消失败的页面。 |*用例执行失败的步骤*
基本流程 | 1. 管理员编辑航班;|*用例执行成功的步骤*
~| 2. 管理员点击确认按钮; |
~| 3. 系统检测到所选航班可取消; |
~| 4. 系统显示所选航班正在取消的页面; |
~| 5. 系统保存取消信息; |
~| 6. 系统修改客户订单; |
~| 7. 系统触发对应客户的退款业务; |
~| 8. 系统发送致歉信息给对应客户; |
~| 9. 系统显示航班取消成功的页面。 |
扩展流程 | 3.1 系统重新检测到所选航班不可取消,显示航班取消失败的页面。 |*用例执行失败的步骤*

## 四、 实验结果
#### 图1:用例图
![UseCase](./model2.jpg)
![UseCaseDiagram](./lab2_UseCaseDiagram.jpg)

## 五、实验总结
1. 养成良好的表达习惯,有助于锻炼思维,可以通过写作提高;
Expand Down
4 changes: 2 additions & 2 deletions students/1714080901141/lab3.md
Original file line number Diff line number Diff line change
Expand Up @@ -29,9 +29,9 @@
## 四、实验结果

#### 1. 活动图1:添加航班
![Activity Diagram1](./lab3_ActivityDiagram1.jpg)
![ActivityDiagram1](./lab3_ActivityDiagram1.png)
#### 2. 活动图2:取消航班
![Activity Diagram2](./lab3_ActivityDiagram2.jpg)
![ActivityDiagram2](./lab3_ActivityDiagram2.png)

## 五、实验总结

Expand Down
Binary file removed students/1714080901141/lab3_ActivityDiagram1.jpg
Binary file not shown.
Binary file added students/1714080901141/lab3_ActivityDiagram1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed students/1714080901141/lab3_ActivityDiagram2.jpg
Binary file not shown.
Binary file added students/1714080901141/lab3_ActivityDiagram2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file removed students/1714080901141/lab4&5_ClassDiagram1.png
Binary file not shown.
Binary file removed students/1714080901141/lab4&5_ClassDiagram2.png
Binary file not shown.
Original file line number Diff line number Diff line change
Expand Up @@ -50,12 +50,12 @@
#### 2. 确定具体的类:

2.1 添加航班:
- Model(主要根据数据业务寻找):航班信息类
- Model(主要根据数据业务寻找):航班
- View(主要根据“页面”关键字寻找):航班添加成功页面和添加航班操作页面;
- Controller(功能+控制器):航班添加控制器。

2.2 取消航班:
- Model(主要根据数据业务寻找):航班信息类A和客户订单类B,B关联于A;
- Model(主要根据数据业务寻找):航班A和订单B,B关联于A;
- View(主要根据“页面”关键字寻找):所选航班正在取消的页面、可取消的航班的信息页面和航班取消成功的页面;
- Controller(功能+控制器):航班取消控制器。

Expand All @@ -70,10 +70,10 @@
## 四、实验结果

#### 1. 类图1:添加航班
![ClassDiagram1](./lab4&5_ClassDiagram1.png)
![ClassDiagram1](./lab4_5_ClassDiagram1.png)

#### 2. 类图2:取消航班
![ClassDiagram2](./lab4&5_ClassDiagram2.png)
![ClassDiagram2](./lab4_5_ClassDiagram2.png)

## 五、实验总结

Expand Down
Binary file added students/1714080901141/lab4_5_ClassDiagram1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added students/1714080901141/lab4_5_ClassDiagram2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
61 changes: 61 additions & 0 deletions students/1714080901141/lab6.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# 实验6名称:交互建模

## 一、实验目标

#### 1. 理解系统交互;
#### 2. 掌握UML顺序图的画法;
#### 3. 掌握对象交互的定义与建模方法。

## 二、实验内容

#### 1. 根据用例模型和类模型,确定功能所涉及的系统对象;
#### 2. 在顺序图上画出参与者(对象);
#### 3. 在顺序图上画出消息(交互)。

## 三、实验步骤

#### 1. 观看录制视频、学习课堂文档:

1.1 学习来源:
- [b站资料](https://space.bilibili.com/44472532/)的实验6部分
- [实验6内容及讲义](https://github.com/hzuapps/uml-modeling-2020/issues/6)

1.2 学习笔记:

1.2.1 基本概念
- 对象的概念及其画法: 对象是类的实体,title要有横线,类的首字母大写,对象的首字母小写。
- 顺序图的构成与时间顺序:由参与者和消息的交互构成。时间先后对应从上到下,时间的顺序会自动标号。
- 参与者的存活条/激活条的画法:点击Lifeline。
- 消息画法:点击Message,并编辑消息名称。

1.2.2 实验要求及注意事项
- 顺序图和用例图的数量要相等。
- 总集里面有分集的时间表示,可以跳时间分开看。

1.2.3 视频演示收获
- 先找到第一个参与者(一般是系统外的用户),然后根据类图(lab3)找到N个参与者,最后结合活动图传递消息。注意期间可能需要改进类图和活动图。

1.2.4 问题汇总
- 问题1: 提交文件冲突。原因是,多次修改导致gihub无法识别修改。解决方式是先从备份处拷贝相关文件,保证没有冲突先,之后再进行修改。
- 问题2: 建议不要M发送信息给M。原因是,控制器是交互的核心,这样逻辑比较清晰。解决方式是以控制器为媒介,进行M之间的消息传递。
- 问题3: 允许Actor与M类同名。原因是,Actor是系统外的,M类是系统内部的,不会产生混淆。解决方式是,以准确表达意思为准,不必刻意同名,也不需避开同名。

#### 2. 确定核心要素

2.1 "1 + N"参与者的确定: 主要根据类图确定
- 添加航班: 管理员 + (航班、添加航班控制器、航班添加成功的页面和航班添加的操作页面)
- 取消航班: 管理员 + (航班、订单、航班取消控制器、所选航班正在取消的页面、可取消的航班的信息页面和航班取消成功的页面)

2.2 消息确定: 主要根据活动图确定

## 四、实验结果

#### 1. 顺序图1:添加航班
![SequenceDiagram1](./lab6_SequenceDiagram1.png)

#### 2. 顺序图2:取消航班
![SequenceDiagram2](./lab6_SequenceDiagram2.png)

## 五、实验总结
- 实验总是需要迭代修改的,不能期望一次性完成实验,而且要反复检查,才能尽可能避免低级错误。老师若是提到不足的地方,要主动修改,想想有没有类似的错误。
- 先找到第一个参与者(一般是系统外的用户),然后根据类图找到N个参与者,(就有1+N个参与者了),最后结合活动图传递消息。注意期间(很)可能需要改进类图和活动图。
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added students/1714080901141/lab6_SequenceDiagram2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.

0 comments on commit 5ef2433

Please sign in to comment.