需求工程:第五章 确定项目的前景和范围-目标分析第六章 涉众分析与硬数据采样
第五章 确定项目的前景和范围-目标分析
目标分析
为什么需要目标?业务需求不够严谨,无法形成方法学支持(建模)
目标:
是系统被开发的目的,有着明确的定义方式,名称、类型、关注、定义(正式,非正式)、优先级、主体、拥有者等。
目标的不同抽象
高层次目标:战略性的,全局的,业务相关的
低层次目标:技术性的,局部的,产品设计相关的
如果一个目标的主体只有待开发的软件系统一个,那么该目标就可以等同于需求了。
目标分类
功能目标:描述预期的系统行为,满足型目标和信息型目标
非功能目标:常见的是质量目标和约束目标,安全目标,性能目标,可用性目标等等。
软目标和硬目标:能否用技术手段确认是否满足。
目标之间的关系:
精华关系:一个高层次目标G可以精华为低层次目标{G1,G2…}
AND精华关系:一系列子目标的完成有助于目标G的完成
Complete AND精华关系:子目标的完成可以直接保证G的完成
OR精华关系:任一子目标都是G的替代方案。
阻碍关系:如果子目标O的达成会使得高层目标G失败
阻碍关系本身就是一种特殊的精华—反向精华
支持和冲突关系:多个目标之间的关系
目标和主体之间的关系
Assignment链接表示为实现目标而需要参与的主体
目标与操作关系
Operationalization链接
目标和场景的关系
Cover链接表示场景涉及所有行为都是目标所包含的操作的子集
目标与数据模型
Concerns链接用来描述目标与应用领域对象之间的关系
目标分析过程
面向目标的方法
高层目标的获取:现状和背景的分析,问题和缺陷
底层目标的获取:需求获取和目标分析,已有目标的验证和细化,基于场景的方法
目标分析:精化和分解,建立系统的目标模型
目标实现:收集与目标相关的需求信息,讨论可能的候选解决方案,确定最终的系统详细需求和解决方案。
目标精化的结束条件:子目标展开到单一事务时终止。单一事务可以被进一步展开为场景。
目标实现:将最底层目标分配给主体,设计实现最底层目标的操作,
非功能需求要从目标模型中获取。
业务过程分析
基于数据流图-》业务过程模型-》UML活动图
建立系统边界
边界目标:存在系统与环境的互动
边界目标所覆盖的场景和操纵的操作、关注的数据对象:建立系统边界定义
系统用例图,上下文图
前景和范围文档
业务需求、高层次解决方案和系统特性都应该被定义到项目前景和范围文档之中。
第6章 涉众分析与硬数据采样
涉众
所有能够影响软件系统的实现或者会被实现后的软件系统所影响的,关键个人和团体。
信息系统的四种类型
小型系统:小型系统是指那些能够支持组织的部分工作,但又不会影响整个组织基础工作的信息系统,涉众有限且明显。
组织级系统:其功能能够影响整个组织基础工作的系统,它的功能在质量上和小型系统有着明显的差异,分析组织内各类人群的互动关系。
战略信息系统:作为组织战略决策而得以开发的系统,无法根据现有的业务和技术状况来确定系统将来的应用效果。分析组织内各类人群的互动关系,各种风险/机遇对既有互动关系的影响。
组织间系统:通过系统自身的实施建立或增强组织之间的合作关系,分析组织见的互动关系,分析关系到组织间互动的各类人群在组织内的互动关系。
涉众识别
关键涉众类别判定:涉众互动:如果互动及其关注点属于项目的目标与范围,那么涉众就属于关键涉众。
涉众识别方法
简单方法:先膨胀后收缩,膨胀(收集到背景资料后,凭借自己的经验,尽可能多地列出涉众类别,越多越好),收缩(需求工程师判断是否有两类或多类涉众的立场是一样的,将一样的多个类别进行合并)
经验方法:检查列表
经典方法:涉众网络:首先讨论列出涉众类别列表,对涉众类别列表进行分析,缩减为一个关键涉众类别列表,对关键涉众类别选择代表来列出新的涉众类别列表,不断迭代,直至稳定。
识别关键涉众类别:
主体依赖模型ADM
目标依赖:依赖者希望被依赖者满足一个条件,但不会规定怎样满足该条件。
软目标依赖:一种特殊类型的目标依赖,其条件是无法量化描述的。
任务依赖:依赖者希望被依赖者执行特定任务。
资源依赖:依赖者希望被依赖者提供资源实体为自己所用,但不关注提供资源需要被依赖者执行的行为和解决的问题。
涉众描述
涉众评估
优先级评估:优先考虑涉众的基本特征,尤其是任务特征
共赢分析:
涉众代表选择
用户替代源:因为业务关系而和用户频繁接触的人,能够代表他们发布看法
参与策略制定
硬数据采样
定量硬数据
数据收集表格
统计报表
定性硬数据
整个组织的描述稳定
业务指导文档
业务备忘