获取需求系列03-定义边界、发现主角、获取业务用例

前面两篇博客,我们得到了涉众分析报告和涉众简档,规划了业务范围。现在可以开始获取需求的进程了。主角、边界、用例是相生相灭的关系,边界定义最重要,定义了边界,主角就能定义,一旦定义了主角,用例就能发现。

定义边界

根据上一个环节中整理的业务目标,可以很容易推导出边界来。例如根据业务目标“会议资料规范管理;”,我们可以定义出一个命名为“会议资料管理”的业务边界。但是不是什么时候以业务目标为依据划分边界都是有效的。例如,如果准备开发的系统是以计算、控制、自动化等为主要目的的,似乎就很难找出明确的业务目标。但是这个思路仍然是可行的,即时一个系统没有明确的业务目标,但是一定会有明确的功能目标,例如手机系统其功能目标是拨打电话、接听电话、媒体库等,也可以用它们来建立边界。

发现主角

每一个业务目标都可以用来定义边界,每个边界有不同的涉众参与,也会有不同的用例出现。边界外的涉众叫做主角,边界内涉众的叫做业务工人。一旦边界确定了,则在边界外与该边界有利益关系的一切东西,不论它是人、物或者系统,都是业务主角。
如何发现主角?首先,根据涉众分析报告,我们得到了涉众列表;其次,根据边界的定义,我们可以找到那些站在边界外的涉众。只有那些与系统直接交互的涉众才能被称为业务主角。
如果在分析过程中发现有些业务主角找不到对应的边界,或者业务主角的一些要求没地方放置,那么应该回头审视边界分析、主角定义是否完整。

获取业务用例

业务主角站在边界之外,背负则涉众赋予的业务目标。主角说:“我要做这件事,做完后我能得到什么;我还要做那件事,这样就能达到什么目的……当这些事都做完了,我就能建立一个文明。”对系统来说,每一件事就是一个业务用例,每个业务用例体现了业务主角的一个系统期望,而所有的这种期望则完成边界所代表的业务目标。

分析出有什么角色将会使用本系统,用用例图描绘出系统的功能。业务用例必须是以达到业务主角的完整业务目标为标准,而不能以实现业务主角业务目标的步骤为标准。

获取业务用例的方法有很多:1.公司的培训手册、业务流程指南等文件;2.业务主角访谈。可以通过下列问题引导业务主角代表说出他们的业务需求:

  • 您对系统有什么期望?
  • 您打算用这个系统做些什么事情?
  • 您做这件事情的目的是什么?
  • 您做完这件事希望有什么样的结果?

定义边界、发现主角、确定业务用例

参考阅读:《大象-Thinking in UML》
《火球:UML大战需求分析》