以目标为导向的需求工程建模方法:KAOS

来源:互联网 发布:网络拓扑画图软件 编辑:程序博客网 时间:2024/05/04 10:20

KAOS是一个可用于需求分析和需求工程建模的方法。可以使用http://www.objectiver.com 这个工具来进行建模。

下面以一个"计划管理的应用"为例,来看一下如何使用KAOS建模。

1. 目标模型

  • 系统总体目标
  • 目标拆解:这里以功能性需求“创建计划”,和非功能性需求“低成本”来详细分析

(1)创建计划


(2)低成本目标

2. 责任模型:主要是用于表示各需求的责任方,这里以安全性需求为例

3. 对象模型:用于表示各对象之间的关系,这里以计划创建和进度更新为例


4.操作模型:操作模型用于展示某个操作后的输入输出以及状态转变,这里以监督者评判一个计划执行进度为例


5.障碍模型:用于展示系统实现或使用过程中可能出现问题的场景,并提出解决方案。这里以计划失败押金被监督者平分这个功能,有可能被用户恶意利用的问题为例。

用户的计划可以被监督,只有超过50%的监督者认同每天的计划项已被正常执行,该天的计划项才算成功,否则计划项失败,整个计划也就失败,相应的押金将被平分给监督者。该场景面临几个问题:
1) 监督者忘记评判某计划某天的计划项,导致认同者没有超过50%而导致计划失败
2) 监督者们相互勾结,故意反对计划的执行进度,导致计划失败,押金被监督者平分
障碍模型如下图:

为解决该问题,采用以下策略:
1) 用户如果不反对则默认通过
2) 只有用户的好友可以监督计划
3) 用户如果对监督者的评判不有异议,可以申诉。


以上是用KAOS模型对需求进行建模的示例,如果有兴趣详细研究,Objectiver官网也提供了详细的示例和说明,请下载查看。



1 0