大话软件工程:需求分析与软件设计
上QQ阅读APP看书,第一时间看更新

4.13 其他模型——交互图

交互图:以干系人的交互工作为主线的有序活动过程表达。

发明者:由本书作者整理、设计。

注:关于交互图

这个模型比较特殊,它是一种有角色表达的模型,既可以用来进行分析,也可以用来进行架构设计,由于在企业级的业务架构模型中较少出现,因此仅作为参考模型推荐给读者。

4.13.1 概念与解读

1.模型概念

如图4-44所示,交互图最大的特点就是增加了“干系人”,干系人指的是与分析对象有关联的岗位(角色),这些干系人在事物的运行过程中都具有固定的角色和作用,不能随意互换。

图4-44 交互图

模型中为什么要出现干系人呢?干系人对模型的表达又会产生什么影响呢?首先了解一下什么样的研究对象需要有干系人参与。

1)适合于引入干系人的场景

在具有“窗口”特点的业务场景描述时,显示干系人会起到很好的理解作用。例如,银行窗口内/外的银行员与顾客、超市收银台前/后的顾客与收银员、图书馆借阅柜台两端的读者与图书管理员、医院取药窗口内外的药剂师与患者、讲台前/后的学生与老师、快递员与下订单的顾客等。因为“窗口”内外的干系人的角色是固定的,定义是清楚的,而且是不能互换的,所以在分析这些场景时引入干系人的概念可以帮助理解事物的关系,而且有利于发掘出更多的需求和确认需求,如图4-45所示。

图4-45 具有“窗口”的业务场景

不表现干系人,就无法说清楚活动的场景;或者加入了干系人可以让事物的逻辑表达得更加清晰的场景等,就需要采用这个交互模型来表达,让干系人充分地展现出他们之间的逻辑关系,这个关系包括“事”与“物”的内容。

2)不适合引入干系人的场景

在分析没有“窗口”做界线的业务场景时,例如,企业的采购流程、成本分析、销售战略、合同管理、财务管理等,引入干系人可能反而会影响分析结果的正确性。下面举两个例子。

【案例1】企业因人设事的场景。

当企业第一次引入信息化管理方式,在分析时如果加入以前的干系人就有可能会影响到设计的合理性,因为以前在“人-人”环境中需要的岗位在导入信息系统后可能不需要了;还有可能原来就是因人设事,导入信息系统后自然就简化掉了;数据的中间处理环节存在着大量的手工作业,在实现信息化管理后也会自动就消失了;等等。因此,在对现状分析时如果加入了这些角色(干系人)得出的结果就会发生偏差。

【案例2】开发通用性系统的场景。

有很多业务是具有共同性的,这些业务在不同的企业是由不同的岗位(角色)来完成的,如果在分析和设计时加入了特定的干系人,那么这个分析结果就不具有普遍性了。同时具有普遍性的研究对象应该不受干系人的影响,如“预算编制”工作,干系人对分析和设计的结果是没有影响的,因为不管由谁来编制,预算编制要遵循的业务方法、管理规则都不会因岗位而异,反而是加入了干系人的因素后使得分析工作变得不易理解了。

当然,在分析和设计完成后,采用加入具体的组织、干系人要素对结果进行验证是可以的,在设计完成后设计师与客户进行推演验证时,需要做业务设计的回归,此时利用泳道式流程图的方法加入部门、角色等要素可以帮助客户理解流程的设计,但要注意,此时的干系人是出现在“人-机-人”环境中的角色,他们可能与“人-人”环境中的干系人不一样,他们是按照实现了信息化管理后的情况重新设定的干系人。

2.模型解读

交互图的绘制通常是以业务的推进步骤为参考进行的,见图4-46。

图4-46 交互图的解读

(1)目标:有一个明确的目标(e),这个目标多用图形的名称来表示,目标e可以是e=借书/还书、e=超市收款/找钱。

(2)范围:范围由始点和终点确定,这个范围内的内容都是为了完成交互过程的步骤。

(3)方向:始点(s)→终点(e)的方向。

(4)主线:以始点(s)→终点(e)为主线。

(5)步骤:中间为不同角色之间的交互行为。

(6)收敛:收集的要素是向目标(e)收敛的。

4.13.2 画法与场景

1.图的画法

交互图的画法主要有以下几个步骤,见图4-47,说明如下。

图4-47 交互图的引用

①画出一个背景框作为提供服务的“窗口”。

②在背景框中建立一条交互活动过程线,方向为(s)→(e),标注出相应的活动步骤。

③标注服务者与被服务者,以及双方的名称。

④用箭头标注被服务者、步骤、服务者三者之间的互动方向、顺序。

2.适用场景

1)适用的场景

交互图不但适用于分析,而且也适用于架构设计,例如:

● 适合于用来建立低层级的业务活动关系。

● 适合于用来进行细粒度的复杂关系分析,例如窗口类型的对象。

● 适合于做细粒度的业务架构设计,如窗口类型的对象。

【案例】见图4-48,这是一个进出口交易的案例,其中有4个角色,①②是买/卖的双方;③④是买/卖双方使用的进/出口银行,两两之间有4个“窗口”,如图4-48(a)所示。每个窗口的处理过程都可以使用交互模型,该模型需要被使用4次,如图4-48(b)所示。

图4-48 交互图在进出口贸易案例上的应用

2)不适用的场景

不适合做顶层设计/规划、大粒度的架构设计。