IVEA算法:软件产品线中功能与非功能需求的优化特征选择

PDF格式 | 403KB | 更新于2024-08-28 | 132 浏览量 | 0 下载量 举报
收藏
本文主要探讨了在软件产品线中针对功能(Functional Requirements, FR)和非功能需求(Non-functional Requirements, NFR)进行功能选择的问题。软件产品线是现代软件开发的重要模式,其中有效管理特征(features)的选择对于满足用户需求和提升产品质量至关重要。传统的功能选择往往侧重于FR,但随着NFR在系统性能、可维护性、安全性和用户体验等方面的重要性日益凸显,如何平衡这两类需求成为亟待解决的挑战。 NFRs通常包含数值约束,例如响应时间、内存消耗等,而FRs如核心功能需求则是明确且定量的。然而,由于缺乏明确的标准,如何在满足NFR约束的同时选择最优的特征集合成为一项复杂任务。现有的选择方法往往忽视了这两种需求类型的结合,导致可能牺牲非功能性能以满足功能性需求,或者反之。 为了克服这一问题,论文提出了一种多目标优化算法——Integrated Vector Evaluation Approach (IVEA),它特别设计了二维适应度函数,旨在同时优化无约束的NFR和约束性FR的组合。这种适应度函数分为两部分:一部分关注在不考虑数量限制的情况下优化NFR的表现,另一部分确保所选特征能满足FR的要求,并且考虑到特征之间的复杂约束和依赖关系。 IVEA采用违规原则来指导优化过程,确保在满足所有约束条件下找到最佳解。论文通过对比IVEA与其他多目标优化算法,如Invasive weed optimization (IBEA-HD), IBEAε+, Non-dominated Sorting Genetic Algorithm II (NSGA-II), 和 Strength Pareto Evolutionary Algorithm 2 (SPEA2),在不同规模的特征模型上进行了实验。实验结果显示,IVEA在优化NFR方面表现出显著优势,能够在更短的时间内找到满足FR和NFR约束且与特征模型完全匹配的解决方案。 本研究对于软件产品线中的功能选择提供了创新的方法论,强调了同时考虑功能和非功能需求的重要性,并通过IVEA算法展示了在实际应用中的高效性能。这对于提高软件产品的整体质量和市场竞争力具有重要意义。

相关推荐