[发明专利]非功能需求实现策略的量化选择方法有效
申请号: | 201510119570.7 | 申请日: | 2015-03-18 |
公开(公告)号: | CN104765602B | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 金芝;尹斌;张伟;赵海燕 | 申请(专利权)人: | 北京大学 |
主分类号: | G06F8/20 | 分类号: | G06F8/20 |
代理公司: | 北京睿智保诚专利代理事务所(普通合伙) 11732 | 代理人: | 杨海明 |
地址: | 100871*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 功能 需求 实现 策略 量化 选择 方法 | ||
本发明提供一种非功能需求实现策略的量化选择方法,其包括:建立一量化选择平台,该平台的支撑工具分为四层:界面层、数据层、功能层和接口层;问题图建模,通过鼠标点击平台的工具绘图区域,选取相应的建模元素,然后点击画布生成相应建模元素,在画布上进行问题框架方法中问题图的建模;在建模得到问题图的基础上,实现系统行为模型的建模;非功能需求驱动的系统行为扩展,采用基于模式的方法来在非功能需求的驱动下进行系统行为扩展;操作策略的量化选择,根据非功能需求,针对操作策略进行选择。本发明可以根据多种量化的因素,在非功能需求的指导下,从众多备选的实现策略中选取一组实现策略,使得非功能需求的满足程度达到最优。
技术领域
本发明属于软件技术领域,特别涉及一种非功能需求实现策略的量化选择方法。
背景技术
在软件开发过程中,非功能性需求是指依一些条件判断系统运作情形或其特性,而不是针对系统特定行为的需求,是对待构建的软件系统的约束。其包括安全性、可靠性、互操作性、健壮性、易使用性、可维护性、可移植性、可重用性、可扩充性等。
非功能需求在软件开发过程中起着重要的作用,甚至直接决定了软件项目的成败。很多非功能需求直接约束了系统的实现策略。如何根据非功能需求确定软件系统的最优的实现策略成为一个难点研究问题。
NFR Framework提出了一种基于软目标依赖图的自底向上的推理机制,在底层叶节点的满足状态被确认后,可以通过推理算法,逐层得到节点的满足状态,最后获得用户更为关心的目标节点的满足状态。叶节点的状态指认,可以作为系统的设计决策,也叫做实现策略。通过该推理机制,系统的每组实现策略都对应着一种目标节点的满足状态,以此来选取系统最佳的实现策略。
该推理机制的核心算法是“标签传递”(Label Propagation)。其基本思想是将软目标的满足状态看作是每个节点的标签,并根据不同的贡献关系,将子节点的标签转化为其他标签传递给父节点。在标签传递过程中,根据子节点在不同的贡献关系下对父节点满足状态的影响,节点的满足状态只能处于完全满足、完全拒绝、冲突和未知四种状态,推理过程中产生的部分满足和部分拒绝状态需要通过开发人员和客户的进一步协商沟通,合并为上述允许的四种状态。
标签传递过程本质上是描述了一个自底上向的推理过程,也叫做前向推理机制。该过程根据叶节点的满足状态指认(系统的实现策略)来评估目标节点的满足状态。而在实际应用中,通常情况下是系统分析人员根据客户对于高层目标节点的满足状态期望来指派底层叶节点的满足状态(选择系统的实现策略)。可以看出,实际应用中的场景是和评估相反的过程。如果要用基于标签传递的评估过程来选择系统的实现策略,就必须枚举所有叶节点可能的满足状态组合,并一一进行评估,最终选取最优的叶节点满足状态组合。当软目标模型规模较大时,上述方法显然不具有可行性。
发明内容
本发明的目的在于提供一种非功能需求实现策略的量化选择方法,以解决现有技术存在的当软目标模型规模较大时,其不具有可行性的问题。
为了解决上述问题,本发明提供的技术方案如下:
一种非功能需求实现策略的量化选择方法,其包括以下步骤:
建立一量化选择平台,该平台的支撑工具分为四层:界面层、数据层、功能层和接口层;其中,界面层提供支撑工具与使用者之间的接口,接受用户的输入;数据层用于存储模式库、方法执行过程中的一些中间结果和最终结果;功能层包括三个模块:系统行为构建模块、模式应用模块和策略选择模块;系统行为构建模块是根据一个建模好的问题图来导出其系统行为模型;模式应用模块根据非功能需求行为策略模式中的问题扩展描述语言来扩展一个问题;策略选择模块是根据建模好的系统行为模型,以及用户输入的非功能需求和实现策略,通过调用0-1规划求解器选择最优的实现策略选择方案;接口层的作用是为支撑工具和外部应用之间搭建桥梁,使得支撑工具可以成功调用外部应用;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京大学,未经北京大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201510119570.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种程序模块部署的方法和系统
- 下一篇:基于MPI的网格并行预处理方法