建立系统事件模型
1743字,阅读需时6分钟

对系统需求建模就是把系统要实现的具体业务,通过事件列表、数据字典、数据流图、实体关系图、流程图、用例图等图形完整描述出来,用户可以通过模型感知或认识到系统,并进一步提出问题和改进需求,避免出现实际研发出的系统和用户最初的期望相背离的问题。

所有的系统开发方法都是以事件开始建模的,事件发生在某一特点的时间和地点、可描述并且系统应该记录下来。

我们先看个事件的例子,家中用的空调都是自动调节温度的,用于调节温度的重要部件是温度控制器,它可以感知周围的环境温度。当温度高于设定温度时,温度控制器触发继电器闭合,空调运转,当温度低于设定温度时,温度控制器触发继电器断开,空调停止运转。

18.PNG

从图2-1看出,温度控制器本身触发了2个事件,一个事件是当温度高于设定温度时发生,事件发生后执行的动作是启动空调;另外一个事件是当温度低于设定温度时发生,事件发生后行的动作是关闭空调。

系统所有的过程都是由事件驱动或触发的。当为一个系统定义需求时,先调查清楚能对该系统产生影响的事件是十分有用的,概括说,就是什么事件发生时,需要系统做出响应?通过调查对系统有影响的事件,可以把注意力集中在系统外部环境上,并把整个系统看成一个黑盒,从较高层次上全面考察系统,而不是集中在系统内部工作上。

在调查系统需求之前,需要先识别出系统干系人,然后针对识别出的系统干系人进行调查,列出系统需求列表。

调研系统相关者

系统功能需求的主要来源是新系统的各种系统相关者,系统相关者是对系统感兴趣的人。对基于互联网提供服务的系统来说,系统相关者主要有四类:一是通过互联网使用系统的人,这类人也称为用户;二是购买和拥有系统的人,这类人也称为客户,例如软件公司为互联网公司研发系统;三是为系统提供服务的人,这类人也称为系统运营者;四是确保系统运行的维护人员,这类人也称为系统管理员。

19.PNG

图2-2描述了电子图书在线阅读系统相关者。

用户是通过计算机浏览器、或通过APP客户端使用系统的人,他们通过浏览器或APP客户端购买和阅读图书。

系统运营者是为系统提供服务的人,他们通过浏览器登录系统后端,完成上传图书、上架或下架图书、处理用户的投诉和建议等任务。

系统管理员为系统正常运行提供技术支持,他们负责系统的部署、维护和数据备份。

客户是为系统提供资金的人和组织。客户可能是项目招标方、购买系统的个人和组织、制定项目的公司管理层等。把客户包括在系统相关者列表中,是因为系统开发者必须在项目的整个开发过程中,始终向客户提供项目进展的概要情况。

召开需求座谈会是理解系统功能和业务规则最有效方法,但也非常耗费时间和资源。在这种方法中,我们需要准备关于系统需求的一些问题,然后和系统使用者、系统运营者或客户讨论,直到理解了他们对系统的需求和期望,需求座谈会根据项目开发需要有可能会进行多次。

需求座谈会最终的成果是系统功能需求列表,电子图书在线阅读系统功能需求见表格2-1。

20.PNG

识别系统事件

从表格2-1需求列表识别外部实体,外部实体是和系统打交道的人,表格2-2列出了系统的外部实体。

21.PNG

依据表2-2列出的外部实体,识别外部实体触发系统的事件。图2-3是用户触发的系统事件。

22.PNG

图2-4给出了系统运营者触发的系统事件。

23.PNG

事件识别出后,还要注意每个事件的附加信息,以备将来分析使用。一个事件的附加信息有触发器、来源、动作、响应和目的地。触发器就是通知系统该事件将要发生,需要系统对该事件做出响应。事件的来源就是触发该事件的外部实体或参与者。事件的动作就是事件发生时,系统执行的一系列操作。事件的响应就是事件处理完毕,系统产生的输出结果。事件的目的地就是接受系统输出结果的外部实体或参与者。

触发器——

用来通知系统某一事件发生了,这一事件可以是需要处理的数据到达了或到了一个时间点

来源——

为系统提供数据的外部实体或参与者

动作——

当某一事件发生时系统执行的操作

响应——

系统产生的一个输出结果,该结果将被选到某个目的地

目的地——

接收系统输出数据的外部实体或参与者

事件的附加信息一般以事件列表进行组织,一个事件列表包括行和列,行代表事件,列是事件的附加信息。事件表中的每行都记录了一个事件的信息,表中的每列代表了事件的一个关键信息。

表格2-3给出了用户事件列表。

26.PNG

表格2-4给出了系统运营者事件列表。

27.PNG

我要评论
全部评论