《软件方法》阅读笔记(二)

《软件方法》阅读笔记(二)

业务建模的步骤2:组织的业务用例图,在一个用例图中,首先要找到业务的执行者,业务执行者的定义是:在组织之外和组织交互的人群或组织;在这里,举例说明,通过银行,储户来存钱,储户是业务执行者;企业来贷款,企业是业务执行者;业务执行者在用例图中的图标是一个小人,头上有一道斜杠,他实际上是一个执行者的构造型<<Bussiness Actor>>的图形表示;有一个概念很容易和业务执行者混淆,就是业务工人,属于组织之内的人肉系统。业务执行者和业务工人的区别是,一个在组织外面,一个在组织里面,一个是组织不可替换的,一个是组织可以替换掉的零件;业务工人可以被新的业务工人替换,但是更多的可能是被新的业务实体Entity替换,业务实体就是组织中的非人系统;

我们开发系统的目的在于让工作人员的工作简便,这种就是责任转移;责任转移的思想对识别待开发系统的需求很有帮助。开发人员说:“我在开发一个新系统。”其实说的就是“我在开发一个新的业务实体,取代现有工人或业务实体的一些责任。”所以我们需要画好现状的业务序列图,然后把待开发的系统作为一个新的业务实体空降到序列图,寻找改进点,得到该业务实体的责任,就可以直接映射到待开发系统的用例;

业务用例指业务执行者希望通过和组织交互达到的,而且组织能提供的价值。业务用例代表组织的本质价值,很难改变,变化的是业务用例的实现;例如:病人来医院挂号,不是一个业务用例,病人来医院看病,才是,病人来医院的价值和期望是看病而不是挂号,病人对于医院的期望是看病,对于挂号室的期望才是挂号;业务用例有几个要点:(1)业务执行者(系统之外);(2)业务用例表达的是组织的本质价值;

业务建模中最繁重的工作是--------描述业务用例的实现,即为业务流程,描述业务流程的手段有:(1)文本(2)活动图(3)序列图(序列图使用面向对象的思想来描述业务流程,把业务流程看做是一系列业务对象之间为了完成业务用例而执行的协作)。

其中描述业务流程的技能最好选择序列图,理由:

(1)活动图只关注人,序列图把人当做系统;

(2)活动图表示动作,序列图强迫思考动作背后的目的;

(3)活动图更“灵活”,序列图更不“灵活”;

软件开发的目的就是要改进当前的现实,可能是引进一个新系统,也可能是升级现有的系统,在现在的社会中,很明显,待改进的当前现实不只有业务工人,还有大量的业务实体,这些业务实体封装了许多最开始位于业务工人中的逻辑,将来和新系统交互的系统(也就是新系统的执行者),有可能只有一部分是人,另外一部分是业务实体;使用活动图来描述业务流程的时候,开发人员往往只关注人或部门的活动,忽略了业务实体的责任;

原文地址:https://www.cnblogs.com/chenjie00/p/4982487.html