基于FR―NFR矩阵软件产品线需求差异度量方法.docVIP

基于FR―NFR矩阵软件产品线需求差异度量方法.doc

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于FR―NFR矩阵软件产品线需求差异度量方法

基于FR―NFR矩阵软件产品线需求差异度量方法   摘要:软件产品线是一种面向特定领域的大规模、大粒度的软件复用技术,目前已被软件开发人员普遍接受。基于软件产品线的需求分析是产品线技术研究领域的一个关键问题。通过对软件产品线的需求进行类型分解,并在此基础上对需求形式化表示;通过分析需求的相似性,提出用FR-NFR矩阵模型来描述需求,并基于FR-NFR矩阵来度量需求差异。差异度量的最终目的在于确保复用质量的同时,提高现有核心资产的复用率和为产品线的演化提供支持。   关键词:软件产品线;需求形式化表示;FR-NFR矩阵;差异度量   中图分类号:TP311 文献标识码:A 文章编号:1674-1161(2014)11-0040-03   软件产品线是一组软件密集的系统,共享一个公共的、受管理的特征集,满足一个特定的市场阶段或任务的特别需要,并且是一种规定的方式,从一组公共核心资产开发出来的。随着人们对产品线技术认识的不断发展,这种大粒度、大规模的软件开发方法也不断被接受和使用。同一领域的产品,其开发过程中包含了大量的相似性,这就为在开发过程中使用复用技术提供了可能。需求分析作为软件产品线开发的一个重要部分,其分析的合理性及正确性直接影响后续工作的开展及质量。因此,对需求共性和特性的分析,对需求的形式化表示,以及如何度量需求之间的差异成为软件产品线技术研究的重点。   1 软件产品线需求分析   1.1 软件需求分类   需求作为一个人为术语,在软件行业中的使用可能很不一致。有时需求被视为对系统应该提供的服务或对系统的约束的一个高层次抽象描述;而另一种极端情况,它被定义为是对系统功能的详细的、用数学方法的形式化描述。因此,可以根据对象的不同,从两个方面来描述软件需求:1) 用户需求是用自然语言加图表的形式给出关于系统需要提供哪些服务,以及系统操作受到哪些约束的声明。2) 系统需求是详细给出系统将要提供的服务以及系统所受到的约束。   从这2个定义可以看出,对于用户来说,软件需求是用户对系统的要求;而对于系统来说,软件需求是系统对用户要求的一种满足反馈。用户的需求是概括性的、非结构化的;系统的需求是详细的,结构化的。用户需求和系统需求都包括功能需求、非功能需求和领域需求3个部分。其中,功能需求包括对系统应该提供的服务、如何对输入做出反应,以及系统在特定条件下的行为的描述;非功能需求是对系统提供的服务或功能给出的约束;领域需求是来自系统的应用领域的需求,反应了该领域的特点。   1.2 软件产品线需求分析过程   软件产品线需求的分析过程对应着软件产品线工程。因此,该过程可以分为面向产品线的领域需求过程,以及面向产品线中某个具体产品的应用需求过程。   领域需求过程的参与者包括领域专家和分析人员。其过程是确定需求范围,以及在产品线范围定义的基础上建立面向整个产品线的需求模型,找出产品线中所有产品的共性和可变性,形成整个产品线可复用的需求核心资产库。应用需求过程的参与者包括用户和分析人员,其过程是根据具体产品的需求模型,获得最后的需求规格说明书。   领域需求过程区分领域内产品的共性和可变性,将来自系统应用领域的需求分离出来,这些需求带有系统的共性,每个产品都要符合这些共性需求的约束,因此对这类需求差异分析的意义不大。本文的需求差异分析主要是针对应用需求过程中用户提出的功能和非功能需求。   2 需求形式化表示   用户需求是由软件产品的使用者提供的,因此不可能使用任何实现模型来描述,而只能用自然语言、图表或者直观的图形来描述,易现描述不够清楚、需求混乱和需求混合的问题。将用户需求系统化、结构化是需求形式化表示的基础,通过类型分解法可以直观的体现需求之间的相似性。   2.1 需求类型分解法   由于用户需求是概括性的、非结构的,而系统需求是详细的、结构的。因此,如何将用户需求转变成开发过程中使用的系统需求是该分解方法的重点。需求类型分解法的具体步骤为:   1) 操作:用户通过自然语言或者图形语言描述自己所需产品的需求。   2) 规约:该过程所使用的自然语言和图像语言必须是用户和系统分析人员都可接受、可理解的、唯一性可确定的语言   3) 操作:需求分析人员得到用户需求之后,将其分解成用户功能需求和用户非功能需求,并将分解后的结果返回给用户进行新一轮的确认。   4) 规约:将分解结果返回给用户进行再确认的同时,附带用户可理解的功能分解说明。   5) 操作:在反复确认之后,需求分析人员将用户的功能需求分解成系统的功能需求,将用户的非功能需求分解成系统的非功能需求。   6) 规约:将用户需求细化成若干项系统需求,每项系统需求要求具有原子性和相互正交性,即每一项系统需求有且只有一个功能点

文档评论(0)

bokegood + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档