基于以下原因,需要确定项目相关人员使用自然语言描述的需求同说明这个系统的具体模型之间的关系。
(1)将抽象的需求跟系统模型联系起来,会增加系统的可跟踪性——在用户需求发生改变时,便于评估需求变更的影响以及估计变更成本。
(2)开发系统模型时,经常会揭示需求问题。显然,需求和模型之间的直观联系有助于交叉检验模型相关需求。
(3)需求和系统模型之间直观的联系会减少需求规约发生偏差的可能性。当需求分析人员过于关注一份具体规约的开发而忽视了项目相关人员真正的要求时,往往会发生一些偏差。
(4)需求规约的读者很容易就能发现将自然语言的需求具体化的系统模型。
需求和系统模型之间有4种可能的映射关系(假设每项需求和每个系统模型都能够被引用):
(1)1∶1:这种关系最简单,可在需求的语句旁边添加一条指向具体定义需求的系统模型的引用,在每一个模型中也可包括一个类似的指向需求的引用。(www.xing528.com)
(2)1∶M:一项需求可以映射为多个系统模型。这时,需求和相关模型之间的联系可以通过给需求增加一个模型标识符列表来表示。
(3)M∶1:一个系统模型可以详细地说明多个需求。这时较为复杂,需要给每项需求添加指向这个系统模型的引用,并在模型中增加解释性的文字以说明模型的各个部分是如何同需求相关联的。
(4)M∶N:使用一组系统模型来说明一项需求,而这些系统模型同时还包含了其他系统需求的信息。这种情况最为常见,也最为复杂,必须解释在每个系统模型中分别说明了每项需求的哪些方面,同时在每个系统模型中,必须包含对它所说明的需求的引用,并解释它对需求的哪些部分做了说明。
可跟踪性矩阵只能描述从模型的组成部分到各个需求之间的简单映射关系,而一些大规模的CASE工具通过一个信息库来存放系统所有信息,可以从需求数据库的各个需求找到相应的模型来描述。但是工具的购买和使用成本非常高,对于开发中小规模的系统不划算。
系统体系结构模型与需求之间不存在简单的联系,不适于更详细地说明需求,但是能有助于划分需求,以便了解系统以及它对组织业务目标的帮助。
需要注意的是,在需求工程过程中需要大量的时间创建和维护需求同具体的系统模型之间的联系,但却不能从这些信息中获得短期收益。因此需要对需求工程师做职业精神动员,并把模型和需求之间的联系放在需求确认过程中去检查。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。