6.5.2 系统需求分析过程——绘制用例图
系统需求分析过程一般包含系统需求描述、发现和确定参与者、发现和确定用例、绘制用例图及进行用例描述4个步骤, 具体过程如下。
(1) 系统需求描述
系统需求描述是指根据系统需求的层次性, 确定系统的范围和边界。系统的范围是指待开发系统的应用领域的目标、任务、规模以及系统提供的功能和服务, 系统的边界是指一个系统的所有元素与系统之外事务的分界线。在确定使用者和用例的过程中也就确定了系统的边界, 用例是系统之中的, 使用者是系统外部的。
一个系统的范围与系统开发的目标、任务和规模密切相关, 如图6-18所示的虚线框即为系统的边界。
图6-18 系统的边界
以电信计费系统为例, 经调查该系统的需求包括个人用户、集团用户的话费查询业务。
(2) 发现和确定参与者
当系统的范围确定并明确了系统的边界以后, 就要从系统的角度寻找与系统进行信息交互的角色。
电信计费系统包含的参与者及其关系如图6-19所示。
图6-19 电信计费系统的参与者及其关系
(3) 发现和确定用例
用例是系统的一种行为, 它为参与者产生一定有价值的结果。用例描述参与者希望系统完成的事情。用例应该是一个完整的任务, 所有的用例描述是从参与者看到的系统全部功能。我们可以通过与每个参与者交流来发现和确定可能的用例。
电信计费系统包含的用例如图6-20所示。
图6-20 电信计费系统包含的用例
还可以对话费查询用例进一步细化, 细化后的用例如图6-21所示。
图6-21 电信计费系统细化后的用例
(4) 绘制用例图及进行用例描述
用例描述内容主要包括以下7个方面。
①用例名称。
②简要描述: 对用例的角色、目的的简要描述。描述要简明扼要, 但要包括参与者使用这个用例要达到的目标。
③前置条件: 表示执行用例之前系统必须要处于的状态, 或者要满足的条件, 如前置条件可能是另一个用例已经执行或用户具有运行当前用例的权限。并不是所有用例都有前置条件。
④后置条件: 表示用例一旦执行后系统所处的状态, 如一个用例运行后需要执行另外一个用例, 可在后置条件中说明这一点。并不是所有用例都有后置条件。
⑤基本事件流: 描述该用例的基本流程, 指每个流程都正常运作时所发生的事情。
⑥备选事件流: 描述这个行为或流程是可选的或备选的, 并不是总要执行它们。
⑦错误流: 描述系统本身不能完成的一些功能。
以话费查询为例, 用例描述如下。
用例名称: 话费查询
简要描述: 显示每月通话记录、短消息记录、月租费信息的查询结果。
前置条件: 执行用例前, 用户已经登录系统, 且具备查询权限。
后置条件: 用例执行成功后, 计费人员将统计结果反馈给用户。
基本事件流: 显示要查询的话费信息; 确认信息; 提示用户结果已统计, 有异议拨打咨询电话等。
备选事件流: 检索要查询的信息是否存在, 若不存在则由计费人员确定继续检索还是退出用例。