浅谈软件需求分析中的参与者

                                                          

       在面向对象的软件开发过程中,需求分析应该是分析员最早面临的工作。主要内容是分析用户需求,形成对需求的准确认识和规范化描述。在从事软件分析工作经历中,我认为需求分析中的一个重点是对于系统参与者(Actor)的发现、挖掘,想谈一下自己的理解。

 

       参与者是在系统之外(透过系统边界)与系统进行交互的任何事物。研究参与者的根本动机是为了搞清楚系统对它的外部世界所表现的行为,即被开发的系统应该对它的外部世界发挥什么作用才能满足用户需求。它不仅包括与系统进行交互的各类人员,还包括了与系统进行交互的任何其它事物。因为只有全面地考察系统与边界以外的各种事物的交互情况才能全面地了解系统对外部世界所发挥的作用。

 

       如何发现参与者?发现参与者的基本思路是,从用户的角度,考虑这个系统建立之后将在应用领域发挥什么作用。主要是考虑系统外部将有哪些事物与它进行某种交互。例如:使用系统所提供的某项功能,按它的要求进行某些操作,向它输入或从它获得某些数据,输入操作命令以控制系统的运行,或者在系统的监控下进行某些工作等。所有的交互都可以概括为与系统进行数据信息或控制信息的交换。凡是与系统进行这种信息交换的外部事物都应该被看成是参与者。常见的参与者有人员、设备与外系统。一下分别从这三方面简要讨论。

 

       人员,几乎任何一个系统的问题域都包含各种各样的人员。为发现参与者应改考虑的焦点问题是,现实世界中的人是否与系统直接进行交互。首先从接受系统服务的人员中发现参与者。找出那些人员是系统的直接使用者,这些人员就是参与者。其次,从为系统直接提供服务的各类人员中发现参与者。这些人员包括为系统的日常运行而工作,并且直接与系统交互的各类人员。但是范围只限于那些通过与系统直接对话而为系统工作的人。

 

       设备,与系统相联,想系统提供外界信息或者在系统控制下运行的设备是另一类可被系统看作参与者的事物。但对某些设备而言,需要认真辨别是否应该把它们看成是参与者。首先应该明确排除两种:1、不与系统直接相连的设备;2、计算机系统附带的设备,如键盘、鼠标、显示器等。因为它们与主机软硬件之间的联系是早已在系统软件中被解决的问题,不需要由应用系统的分析员来考虑。明显的应看成系统参与者的设备是那些对内与计算机系统相连,对外不必经过与人员的交互而直接发挥某种作用的设备。

 

外系统,与当前系统相联的外系统是系统边界之外的另一种参与者。所谓“外系统”包括:当前系统的子系统、上级系统以及没有上下级关系但与本系统交换信息的任何其它系统。可以作为参与者的外系统必须具备两个条件:1、与本系统相连,并进行信息交互。2、它的开发不是自己这个分析员小组的当前责任。外系统与本系统的交互反映了本系统应该对外系统提供什么功能和信息,或者本系统应该以什么行为方式去利用外系统的功能和信息。在这一点上,外系统和人员、设备这两种参与者没有根本的不同,所以应该把外系统也看成一种参与者。尽管一个外系统可能是很复杂的,但是我们只须关心在它与本系统的接触点上将进行何种信息交换,从而发现这种交换将对本系统提出的何种要求。其实,人的大脑也是一个复杂的“外系统”,但是对于人员这种参与者,也只关心他与系统的交互,而并不关心人的大脑内部的复杂功能。

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值