所有提交的电磁系统将被重定向到在线手稿提交系统。作者请直接提交文章在线手稿提交系统各自的杂志。

比较六优先级软件需求的技术

Manju小河* 1,Nikunj库马尔2
  1. 计算机科学与工程系、AIACT&R德里,印度
  2. 计算机科学与工程系、AIACT&R德里,印度
通讯作者:Manju小河电子邮件:manjukhari@yahoo.co.in
相关文章Pubmed,谷歌学者

访问更多的相关文章全球研究计算机科学杂志》上

文摘

有许多需求优先级技术和选择最合适的一个是决策问题的权利。本文以仔细看看这六个需求优先级技术,把它们放在一个对照实验的客观理解差异对于易用性,总时间、可伸缩性、准确性,和总数比较需要做出决定。这五个标准相结合将指示哪些技术是更合适的。实验结果显示,价值导向的优先级(VOP)产生一个准确的结果,可以扩大规模,需要最少的时间。

关键字

需求,需求优先级,优先级技术,比较

介绍

当需求引起,它往往会产生更多的需求比可以实现。需要优先的要求,最重要的是遇到了最早的产品发布[1]。项目期间,决策者在软件开发中需要做出许多不同的发布计划的决策。可用资源等问题,里程碑,相互冲突的利益相关者观点,可用市场机遇、风险、产品策略和成本时需要考虑规划将来的版本中。不幸的是,缺乏简单而有效的技术需求的优先级,可用于发布计划[2]。
我们的目标本文比较六优先软件需求的技术。所选的技术层次分析法(AHP),价值导向的优先级(VOP),累积投票(CV),数值赋值技术(NAT),二叉搜索树(BST)和规划游戏(PG)。学习这些技术,我们系统地应用技术优先考虑一组13质量要求。然后我们分类的技术从用户的角度根据五个标准如易用性、总时间、可伸缩性、准确性,和总数比较需要做出决定。

动机

在审查实践需求的状态的工程,Lubars等发现,许多组织相信,重要的是要将优先分配给需求和决策对他们根据理性,定量数据[3]。仍然看起来没有公司真正知道如何分配优先级或如何有效地沟通这些重点项目成员。越来越多的承认在工业软件开发的需求不同的重要性。
然而,到目前为止,几乎没有什么进展,理论或实践,重视软件需求的机制。
优先奠定了良好的基础软件需求提供的方法是层次分析法,层次分析法[4]。在层次分析法中,决策者的成对比较的要求来确定两个更重要的是,和到什么程度。层次分析法的基本缺点阻碍其工业制度化。因为所有独特的双需求相比,所需的努力将会是惊人的。在小型开发项目这个增长率可能是可以接受的,但在大规模开发项目所需的努力是最有可能是压倒性的。Karlsson等确定五个互补挑战AHP方法[5]。所有这些方法涉及的成对比较,因为之前的研究表明,做出相对的判断往往是更快,仍然比做出绝对的判断产生更可靠的结果[6]。
这样的成对比较耗时和遭受爆炸性增长需求的数量增加。Wiegers建议不那么严格的方法,是基于感知价值的加权评估,相对点球,预期成本和技术风险[7]。Wiegers”方法的主要困难在于,价值分配到一个给定的需求缺乏必要的粒度来确定是否要求满足关键业务的核心价值观。为了克服这些限制,以价值优先级(VOP)过程。VOP以加性加权法的形式为Vetschera描述和表达的电子表格模型Wiegers [7,8]。Paetsch et al宣称敏捷软件开发已经成为流行在过去的几年里和在这一领域,其中最流行的方法是极限编程,具有优先级技术规划游戏(PG) [9]。下一节简要描述每个技术。

优先级技术

本节照亮的优先级技术检查。

数值赋值技术(NAT):

数字分配技术是基于每个需求的原则是分配一个符号代表要求的重要性。这种方法是常见的质量功能展开(QFD)的优先候选人需要需求[10]。基于数字分配技术存在一些变异。·布兰克特提出的一个简单的方法技术[11],谁表明,需求应该归类为强制性的,可取的,或者是无关紧要的。使用细粒度的方法是为每个需求分配一个数字从1到5的数字显示:
5。强制性的(客户不能没有)。
4所示。非常重要的(客户不希望没有它)。
3所示。相当重要的(客户会喜欢它)。
2。不重要(客户会接受其缺席)。
1。无关紧要。

层次分析法(AHP):

层次分析法(AHP)首次开发并解释Saaty 1980年[4]。Regnell等[12]声称,尽管这是一种很有前途的技术,这项技术本身并不适应分布式与多个利益相关者优先;因此它必须以一种方式或另一种方式修改。然而,目前时间没有发表任何研究这样的修改如何函数。
AHP候选人要求比较明智,和到何种程度的一个需求是比其他更重要的要求。Saaty[4]国家重要性的强度应根据表1。
图像
因为这种技术规定成对比较所有候选人的要求,所需数量的比较多项式增长。软件系统与n候选人要求,n。(n - 1) / 2成对比较是必要的。

价值导向的优先级(VOP):

VOP使用一个框架,使需求工程师优先的基础和决策需求[13]。它为所有利益相关者提供可见性在决策过程中,消除冗长的讨论和争论个人需求通过强调核心业务价值。建立一个面向价值优先级的第一步是建立一个框架,用于识别过程业务的核心价值观,这些价值观之间的相对关系。VOP使用核心业务之间存在的关系值来评估和优先级的需求并确保其可追溯性。VOP框架建立了一个机制来量化和排序要求应用程序增加,原型,或软件需求规范。公司高管识别核心业务价值和使用一个简单的顺序量表重量他们根据他们对组织的重要性。
图像
图像

累积投票(简历):

累积投票(CV)或100点方法或几百元(合100美元)的测试,Leffingwell和Widrig描述是一个简单的、直接的和直观的吸引力投票方案,每个利益相关者是给定一个常数(如100年,1000年或10000年)虚构单位(例如货币),他或她可以使用投票赞成[14]最重要的问题。这样,的钱分配给一个问题代表了被申请人的相对偏好(因此优先级)相对于其他问题。点可以分布在任何方式,利益相关者的欲望。每一个利益相关者是免费的把整个数量给他或她的只有一个控制问题上的重要性。也有可能为利益相关者分发同样数量很多,甚至所有的问题。
简历有时被称为“比例选举”,因为单位的数量分配给一个问题代表了相对优先的具体问题与其他问题。“比例”这个词在这里也反映了一个事实,如果单位分配给一个问题的数量除以单位提供给每一个利益相关者的常数,结果变成了一个比例在0和1之间。利益相关者的评级的问题可以因此视为“成分”或“混合”的人对这个问题的意见,在抽象的意义上,每个问题占据了一定比例(百分比)的偏好在人的信念或判断。
分配的过程可能导致问题零单位显示特定涉众认为这些问题完全不重要。0通常是一个问题在这种类型的数据,因为他们使相对偏好或重要性的概念完全毫无意义和比率的计算是不可能的。当然,一份调查问卷,0是不允许可以设计,但总的来说,简历的原则是让利益相关者自由传播他们的总量没有进一步的限制。

二叉搜索树(BST):

BST是计算机算法存储信息的目的,然后可以检索或追求。的BST¢通常要么是空的,或者有一个或两个子节点。右边的子节点(¢r)有更大的价值/ r比根节点重要性,和左边的子节点(¢l)减少价值/重要性然后根节点r .每个子节点本身就是一个根节点的子节点。如果一个节点没有子节点,它就是一片叶子。这使得在BST递归搜索成为可能。使用BST的好处,当优先需求,与n需求,它只需要n o (log n)[15]比较,直到所有的需求都被插入。使BST快速的候选人,这可能是好如果有很多需求优先级,即BST可以很容易地扩展到成千上万的需求,和仍然是一个非常快的候选人。有一个重要的知道BST算法,即一棵树需要平衡有最短的插入时间。
平衡BST BST没有叶子是超过一定数量远比任何其他叶子从根。插入或删除一个节点后树可能必须重新平衡如果只有BST将达到一个平衡。的原因是插入一个节点应该是最优的,即o (log n)。
每个需求之间的规模等级分类。这意味着我只能找到一个需求是否比另一个更重要,而不是到什么程度。BST的另一个负面问题是没有一致性比率,我们可以计算,因此我们不知道如果我们做了精确的优先。

计划游戏(PG):

在极端编程的需求是客户写的一个故事卡片。然后客户把需求分成三个不同的桩。根据贝克,桩应该名称;“那些没有系统不会功能”,“那些不那么重要但提供重大商业价值”和“那些就好了”[16]。同时客户类型故事卡片,程序员估计每个需求需要多长时间实现然后开始需求分成三个不同的桩,即按风险排序,名称;“那些可以精确估计”、“那些可以估计相当不错”,“那些无法估计”。
客户或一个或多个代表为客户可以确定一个固定的发布日期,或决定哪些需求应该被包括在未来版本。最终的结果排序的排序列表的需求等级分类。自PG需要一个需求然后决定桩要求所属每个需求相比,没有被任何其他要求,优先考虑n需求是比较的时候。这意味着PG非常灵活,可以扩大,而大量的需求,没有花太长时间优先。

实验框架

本节描述的实验设计和实验将如何进行。

作品简介:

这个实验的目的是比较六优先技术评估,其中一个似乎是更好的,即要使用哪些技术是最简单的,花最短的时间,可伸缩时添加更多的需求,准确和需要的数量比较少。这是测试通过让参与者的回答他们如何经验,相信每个技术能够满足每个标准。这个实验深受[17]中概述的实验方法。

设计:

获得更好的理解的动机需求优先级技术,我们进行一个项目研究目标是描述和评价六个优先技术从用户的角度[17]。实验是填充7个研究生和研究生的学生。要求他们优先十三正在考虑使用优先级质量要求技术[18]。独立需求,这些参与者都优先,最好的知识。优先考虑质量要求都是没有考虑到实现的成本需求。也就是说,只考虑到客户的重要性。此外,需求被认为是垂直的,即一个需求的重要性并不依赖于另一个。
为了减少风险,参与者记得他们是如何过去的优先级,我们测试在一段时间内传播与固定的间隔。一天只有一个技术进行了研究。每天20分钟用于展示的技术观察那天从每个参与者获得确认后的技术理解清楚,60分钟完成实验的配额。每个参与者都提供必要的文件和时间由每个参与者分别完成实验记录。

威胁的有效性:

当阅读从一个实验结果,其中最重要的问题是:如何有效的结果吗?使结果的有效性实验设计时需要考虑的一个重要的问题。试验的目的是评价六个需求优先级技术进行比较。我们不认为这个实验获得的结果可以推广和使用的任何应用程序的用户在任何环境中。相反,我们试图说明需求优先级技术来更好地了解他们。已确定以下威胁:
我要求:太少n的分析数据,很明显,实验要求太少。然而,在实验之前,它讨论了是否可以考虑超过13个需求,但因为有一个时间限制,即参与者多少时间可以参与;需求的数量是有限的。真正反映一个真实的项目,需求的数量应该是几百;这将是或多或少地不切实际的处理能够在有限时间内的这个实验。因此,决定拍摄需求的数量只能13。
几个人参与实验:结果的意义是有限的,由于一些人的参与与实验(7人)。这就是为什么结果更不确定的,因此可以被视为一个部分威胁评估。但是,如果要求参加实验的人口众多,有更大的机会,风险的可能性也会被减到最小。
离线评估:评价是独立于一个真正的软件项目可能对这次试验被认为是一个潜在的问题。然而,它并不认为是一个主要的威胁,本评价的主要目的是获得理解和说明各种可能优先考虑软件需求的方法。
只有非功能需求考虑:这个实验只是关心非功能性需求。然而,这种限制是不被认为是一个主要威胁来自实验的结果。
需求是相互依赖:在实践中,必须考虑需求之间的相互依存。本文中所述的优先技术提供了处理意味着相互依存;因此实验这种限制并不认为影响的实际评估不同的方法。
总重要的是识别威胁一个实验,以便确定的内部和外部效度结果。因此,上述潜在威胁时应牢记分析结果。

分析收集的数据:

每一个技术的测试开始的第一个问题;其次是第二和第三。对于每个问题,参与者排名每个方法最后平均值。这些问题后,参与者被要求每个技术如下:
a。参与者被问到的第一个问题是优先级的技术是多么简单适用。问题的答案是图1所示。
图1清楚地表明,参与者认为规划游戏(PG)其次是VOP是应用最简单的方法。NAT之后,层次分析法是最难处理的。简历和BST中间的两组。
图像
图3中的结果表明大多数的参与者认为VOP,和BST优先级技术,更适合作为候选人处理更多的需求。参与者发现AHP紧随其后NAT将最糟糕的候选人为更多的需求扩大。中间是PG
d。第四个问题是,参与者被要求安排技术根据他们的意见每个方法产生的结果的准确性。图4所示的结果
图像
图4中的结果清楚地表明,大部分的参与者认为BST和VOP是最好的技术。NAT之后,AHP收益率不准确的结果。简历和PG位于这两个组之间。预计,AHP在此方法中,将产生最精确的结果根据数学规则要求优先。一个解释为什么AHP这里或多或少这样做不可以,参与者不懂如何读出,矩阵,提出了优先级的结果。
e。最后,参与者被要求记录有多少比较每个所需的技术。结果是图5所示。
图像
图5中的结果清楚地表明,AHP需要最多的比较,因为数量比较AHP n (n - 1) / 2。NAT, VOP、简历和PG被要求的最低数量的比较,因为他们只需要n比较。BST这两组中,因为它需要n (logn)治疗。

发现整体最佳优先级技术

基于以上示意标准收集数据后,我们分配给每个标准的体重,然后应用公式(2)和(3)找出最好的整体需求优先级技术。上述每个标准根据表三世被分配重量。
图像
图6中清楚地表明,在考虑需求优先级技术,VOP应该是最好的一个基于提到评估标准。
此订单的需求优先级技术从这个实验获得,然而,不是一个全球排名可以被重新排序准则权重分配不同。然而,这里使用的技术和公式比较在不同优先级技术可以用在任何场景用适当的标准重量适合这种情况。
图像

结论

实验结果表示,VOP应该是排序软件需求的最好方法。它是一个简单的方法,它给了一个最准确的结果,这是很舒适的处理,即使有更多的需求。在大多数问题的PG和BST位于中间,既不是最好的也不是最糟糕的技术。然而,测试对象认为PG是这六个技术的最好方法时优先使用。根据结果是NAT。最糟糕的候选人NAT的最差表现的原因是确定绝对信息比相对困难,参与者的主观意见一个数量存在很大的不同,它不是有效数字的需求很低,不准确的信息,需要最长时间优先。然而,这订单的需求优先级技术从这个实验中,然而,不是一个全球排名可以被重新排序准则权重分配不同。然而,这里使用的技术和公式比较在不同优先级技术可以用在任何场景用适当的标准重量适合这种情况。
论文的generalisability有限由于小样本和特定的上下文。一个真正的项目需求的相互依赖关系,考虑时间和预算压力,导致决策困难得多。然而,我们相信VOP作为优先级技术是有效的。实验的主要缺点是很难推广到工业项目,这将是有价值的尝试实验案例研究。参与组织将获得知识优先,也许找到一个适合他们的需求的技术。

引用

  1. j . Siddiqi m.c Shekaran,“需求工程:新兴智慧”,IEEE软件13(2),15 - 19,1996页。
  2. Karlsson j·k·瑞恩,“使用成本价值优先需求的方法,”IEEE软件14(5),67 - 74年,1997页。
  3. m . Lubars c . Potts和c级,“审核状态的实践需求建模,”:IEEE国际研讨会的需求工程,2 - 14,1993页。
  4. T.L. Saaty,层次分析法:规划、优先级设置,资源分配,麦格劳-希尔公司。1980。
  5. j . Karlsson c·沃林表示,b . Regnell优先软件需求的评估方法,”信息和软件技术,939 - 947年,1998页。
  6. j . Karlsson“软件需求优先”:第二IEEE国际会议进行需求工程,110 - 116年,1996页。
  7. k . Wiegers软件需求,第二版,微软出版社,2003年。
  8. r . Vetschera个性化决策支持在软件工程中,软件工程价值,s . Biffl a·兰姆波姆,h . Erdogmus和p . Grunbachereds施普林格,67 - 89年,2006页。
  9. f . Paetsch a Eberlein f·毛雷尔,“需求工程和敏捷软件开发,”《12 IEEE国际研讨会,IEEE计算机协会,1 - 6,2003页。
  10. l·沙利文,质量功能部署:一个系统来确保客户的需求得到产品设计和生产过程中,质量的进步,39-50,1986页。
  11. J.W.布拉克特软件需求技术报告sei - cm - 19 - 1.2, Camegie梅隆大学软件工程研究所,1990。
  12. b . Regnell M.J.主机,p . Beremark和t . Hjelm”一个工业案例研究在以市场为导向的分配优先级打包软件需求工程,“需求工程,6卷,51 - 62,2001页。
  13. j .阿扎尔的r·k·史密斯和d . Cordes“价值导向的需求优先级在小型开发组织中,“IEEE软件,32 - 73年,2007页。
  14. d . Leffingwell和d . Widrig管理软件需求:一个用例的方法,第二版,addison - wesley, 2003年波士顿,美国。
  15. t·斯坦迪什,数据结构在Java中,addison - wesley, 1997年波士顿,美国。
  16. k·贝克,极限编程:解释说,第七版,addison - wesley, 2001年波士顿,美国。
  17. 塞尔比以R.W.稳压器Basili和D.H. Hutchens实验在软件工程中,IEEE反式。软件工程12(7),733 - 743年,1986页。
  18. S.E.凯勒,低速齿轮卡恩和R.B. Panara,“指定软件质量要求与指标,”:右金缕梅和m·多尔夫曼(Eds),系统和软件需求工程,145 - 163年,1990页。
全球技术峰会