- 用例图及用例描述(在上一篇里有,就不做赘述)
- 确定各需求条目的优先级,选取优先分析的用例
序号 |
用例/质量需求项名称 |
优先级 |
说明 |
1 |
设定课程信息 |
高 |
必须完整实现 |
2 |
制定课表 |
高 |
同上 |
3 |
制定选课计划 |
中 |
应实现其中大部分功能 |
4 |
制定选课计划【考虑学生数量限制】 |
中 |
尽量实现 |
5 |
查询课表及课程信息 |
高 |
必须完整实现 |
6 |
查询选课计划 |
中 |
应实现其中大部分功能 |
7 |
查询选课学生信息 |
高 |
必须完整实现 |
8 |
用户身份验证 |
高 |
同上 |
9 |
检测课程设置冲突 |
高 |
同上 |
10 |
搜索课程和教师信息 |
高 |
同上 |
11 |
汇总选课计划 |
中 |
应实现其中大部分功能 |
12 |
性能:Req-Performance-001~002 |
高 |
对产品的可接受度影响最大 |
13 |
可靠性:Req-Peliability-001~003 |
高 |
同上 |
14 |
易用性:Req-EasyUse-001~002 |
中 |
对产品的接受度有一定影响 |
15 |
安全性:Req-Authentication-001 |
高 |
对产品的接受度影响最大 |
16 |
安全性:Req-Authorization-001 Req-Audit-001 |
中 |
对产品接受度有一定影响 |
17 |
兼容性:Req-Compatibility-001 |
低 |
可以不实现,但实现可提高接受度 |
18 |
兼容性:Req-Compatibility-002 |
中 |
对产品接受度有一定影响 |
19 |
本地化与国际化:Req-Intl-001 |
低 |
可以不实现,但实现可提高接受度 |
(此处的优先级是我个人的想法,仅作参考)
- 用例的UML顺序图
“制定选课计划”用例的顺序图:
【上图参照课本《软件工程(第4版)》P120页图】
“查询课表及选课信息”用例的顺序图:
“设定课程信息”用例的顺序图:
“汇总选课计划”用例的顺序图:
- 分析类图
(综合所有的用例的顺序图,创建分析类图,优化类图)
【课本P90页图】
- 关键对象(如课程设置对象)的状态图
课程设置对象:
【课本P127页】
学生(教师)对象:
课表对象:
- 核心用例(如制订课表用例)的活动图
“制定课表”用例的活动图:
- 总结
以前在使用课程注册管理系统时,只觉得很方便。如今学习了需求分析去绘制它相关的各种图的时候只觉得麻爪子,每个用例背后对应的操作都很多(我画的并不完善,因为还有很多不懂的地方)。在绘制这些图的时候,我更多的是根据学校的教务系统拥有的功能去对应然后再完善,在有一个成熟目标软件的情况下,我尚且不理解一些图该如何去绘制,可见作为需求工程师的强大(不仅要有很好的业务能力更要有较强的信息化能力,才能成为开发方和用户之间的沟通桥梁)。
这里的用例图、类图、状态图、活动图……这些都还仅包含这个目标软件最简单和基础的一些功能。画完图后,感觉对整个软件的“骨架”和它运作的内部有了初步的认识,希望对最后的编程能有更多帮助。
最后,欢迎大家的指导和探讨。