ISSN在线(2320 - 9801)打印(2320 - 9798)
m . Soumya克里希南
|
相关文章Pubmed,谷歌学者 |
访问更多的相关文章国际期刊的创新在计算机和通信工程的研究
软件公司面临很多的困难,选择正确的发展模式,当项目需要面对很多风险因素,从低到高。当软件开发变得复杂的自然界中由于风险,公司通常的做法是切换到唯一的风险检测传统模式——循环。螺旋模型被认为是最好的传统风险分析模型。但在现代发展的风格,所有的开发周期在一个趋势——敏捷。本文的主要目的是研究这两个模型,得到一个结论的影响风险评估和对复杂的软件开发项目的成功因素。
关键字 |
风险因素、风险评估,螺旋模型,敏捷模型,软件开发,SDLC。 |
介绍 |
在这个快速发展的现代信息技术的世界里,软件开发已经成为一个巨大的挑战对开发人员以及组织。面临的主要挑战与各种危险因素与该项目相关联。识别、评估、管理和缓解真的软件公司铺设一个具有挑战性的情况。大多数的软件开发项目发现使用更多的资源,更多的时间和更多的预算比指定的产品,达到在一个较小的质量和功能,形成一个不满意的客户。 |
分析,发现,所有这些问题发生由于缺少风险评估在《盗梦空间》在SDLC的项目和各种活动。项目风险是那些可以避免的成就目标由项目经理和项目团队。风险通常来自技术和人民之间的关系。效率低下的风险评估和管理不善可能会创建一个巨大的负面影响公司的业务增长本身。通过本文,我试图抑制的各种通用的风险因素和影响范围的研究了在各种软件发展问题的风险考虑,两大巨头SDLC模型传统螺旋模型和最新的新一代轻质模型——敏捷。 |
二世。相关工作 |
直到今天,许多ofstudies发现领域的软件开发方法研究通过比较不同模型以及基于风险因素及其影响软件的发展各种观点。当然,这些研究没有完成在程度上被准确的风险因素以及如何从这些影响模型成功。在[1]中,作者指出了风险因素及其评估技术使用不同的标准。[2]的概念强调风险评估和管理经验的敏捷方法。在这里,它显然是对五个不同的步骤轻松地管理这些风险。这是我研究的主要来源。在[3],Boehm试图解释所涉及的主要步骤和技术软件风险管理。[4]给出了一个了解软件过程模型及其基于许多特性的比较。从这篇文章中,我们得到了一个好主意关于每个软件过程模型的整体性质。[5]强调整体了解敏捷方法,以及它如何帮助it经理去提高他们的生产效率。 In [6], the author helped in reviewing about the leading software process model and explained about the risk states and their management methods. Thus, they have tried to reveal the concept that some of the development methodologies inherently possessed risk management capability and are inevitable in nature. [7] refers to the comparison between the five different software models by stating their advantages and disadvantages very clearly.And finally, in [8], the author has discussed about the linear sequential model and its risk factors throughout its development phases. All these together helped me to gain an insight about risk and their effect on various software models. |
三世。概述在SDLC OFRISK评估模型 |
风险评估和管理已经成为软件开发的一个重要组成部分。那里发生了一个巨大的转换从传统风险分析模型——螺旋的最新时尚模式——敏捷。这种变化创造了新的挑战领域的风险分析和管理。 |
在本文中,我犯了一个比较研究的不同方面的风险和效率这两个模型在处理和评估这些风险因素。在这项研究中,我选择了两个著名的模型——螺旋和敏捷。让我们先对这些模型和忽视他们的一般特征,然后将它们应用在通用的风险因素,找出这些模型的效率应对这些风险在正常的软件开发生命周期。 |
螺旋模型 |
螺旋生命周期模型是一种迭代软件开发模型,通常是在高风险的项目实施。在1986年首次提出的Barry Boehm通过他的文章——“螺旋模型软件开发和增强”[3]。在这种方法中,我们结合两者的特点,瀑布模型、原型模型。在螺旋模型我们可以安排所有的发展活动的形式循环或循环。 |
每个循环螺旋表明一个开发阶段(我们可以拥有任意数量的循环根据项目的大小和性质)。每个循环都有四个象限:第一象限是用来确定目标,选择和约束。在这里,我们试图理解产品的意图,设计的变化和约束执行成本,技术,和进度。第二象限表示选择的风险分析和评价。在这里,我们试图找到其他方法可以实现以实现确定的约束。这里,业务和技术问题的重要性。风险识别和缓解主要集中在这个阶段。和基于这些因素确定未来的行动。第三象限表示执行的发展阶段。现在,我们开发计划中的产品。测试也同样重要。 In order to do software development, waterfall or incremental approach can be considered. Fourth quadrant helps planning the next phase. Here we evaluate the progress and take decisions by considering all constraints. During this phase, the developer has the privilege to decide whether to continue with the project or to stop working with the project. If solvable issues are identified, it could be resolved and necessary steps to proceed further can be planned. Consequent loops of spiral model involve similar phases. Here, analysis and engineering efforts are applied. Huge, expensive or complicated projects use this type of life cycle. At any point of time, if one feels that the risk involved in the project is large and unmanageable than expected, there is a provision to abort it. Assessments at different phases can be done by an internal person or by an external client. |
螺旋——一个元模型 |
螺旋模型也被称为元模型,因为在某种程度上它结合了SDLC的其他模型的属性。主要是瀑布和原型模型是考虑。这里我们做软件开发系统的循环(后的瀑布型开发方法),与此同时,我们做一个原型,展示给用户不同阶段完成后(如原型模型)。通过这种方式,我们能够评估和降低风险以及遵循系统化方法。 |
螺旋模型的风险驱动的方法有助于模型,以适应任何类型的规范为导向,面向模型或其他转换的方法来开发软件。同样,风险管理因素帮助我们确定的时间和精力致力于等项目活动计划、变更管理、质量因素,正式的技术评审,测试等。雷竞技苹果下载 |
的最高点的这个模型是每个循环完成后通过卓有成效的客户和开发人员之间的交互与项目有关。尽管这个模型有许多积极的关联点,像往常一样,该模型也有很多消极的一面。让我们总结一下这个模型的优点和de-merits如下:- |
优势 |
一个¯·螺旋生命周期模型是最灵活的SDLC模型之一。开发阶段可以由项目经理决定,根据复杂性,项目的大小和类型。 |
一个¯·监督项目很容易和活跃。每个阶段、每个循环要求有关机关审查。这使得模型更加明显。 |
一个¯·风险管理模型的主要特征之一,这使得它与其他模型相比更可靠。 |
一个¯·可以稍后公布在生命周期的变化。 |
一个¯·项目却在进度方面,成本、质量等变得更现实随着项目的推进和循环螺旋和完成。 |
一个¯·这是最适合高风险项目,业务需求可能不稳定,non-predictive。 |
一个¯·一个高度个性化的产品可以开发使用。 |
缺点 |
一个¯·参与这个模型通常是不可预测的高成本。 |
一个¯·这是一个复杂的方法特别是对项目有一个清晰规范(SRS)。 |
¯·技能要求,不时地评估和审查项目,需要高技能。 |
一个¯·程序和协议应遵循正确有效地实现这个模型。都会遵循这种活动的项目是一个真正的威胁方面。 |
一个¯·由于各种定制可以接受从客户在任何时候,使用相同的原型在其他项目中,总是会影响未来 |
一个¯·这不是一个为低风险项目建议模型。 |
¯·会议经济和计划要求是危险的,如果这种方式的发展过程。 |
一个¯·所需的文档在中间阶段的项目中,管理复杂。 |
敏捷开发模型 |
敏捷模型是软件开发方法的现代趋势用于加快操作产品/系统预定的时间内交付使用的一组值,包括适应性、透明度,以有效和轻型加权的方式简单和统一。敏捷模型是广泛实践模型有频繁的方法简化的过程分为短而轻阶段等需求,规格、架构、设计、实现、测试、部署和维护,导致有效的软件系统。有许多特定的敏捷开发方法。大多数鼓励开发,团队精神、协会和流程合规项目的整个生命周期。 |
敏捷方法以最小的计划和任务分解成小的增量不直接涉及长期规划。迭代是很短的时间框架也称为时间盒,通常范围从1到4周。每个迭代是一个跨职能团队工作在项目计划等所有任务,需求分析,系统架构设计,编码,单元级测试,最后验收测试。在每一个迭代结束时,一个工作产品是对利益相关者进行验证。这允许项目总体风险降到最低,并允许快速适应变化。可能需要大量的迭代发布一个产品。一个模型显示敏捷生命周期及其风险分析阶段如图2所示。 |
敏捷软件开发和使用一些成熟的方法包括: |
一个¯·晶莹剔透 |
一个¯·动态系统开发方法或(共享) |
一个¯·极限编程(XP) |
一个¯·特征驱动开发(FDD) |
一个¯·看板(开发) |
一个¯·精益软件开发 |
一个¯·Scrum |
优势 |
一个¯·包客户满意通过释放迅速,持续交付所需的软件。 |
一个¯·和交互的人强调而不是过程和工具。客户/用户、开发人员和测试人员不断地相互作用。 |
一个¯·交付工作软件定期(周,而不是几个月)。 |
一个¯·面对面交谈是最好的适应形式的沟通。 |
一个¯·密切和日常交互和业务人员和开发人员之间的合作。 |
一个¯·连续关注技术完美和好的设计是考虑。 |
一个¯·定期接受适应不断变化的环境。 |
一个¯·欢迎需求即使在后期的变化。 |
缺点 |
一个¯·大型软件项目,它是reallydifficult评估所需的努力在软件开发生命周期的开始。 |
一个¯·发生缺乏必要的设计和文档。 |
一个¯·项目可以很容易地更改跟踪如果客户不清楚最终的结果,他们需要。 |
一个¯·只有高级程序员精通发展过程中采取正确的决策需要。因此它没有适合新手或初级程序员,除非结合经验丰富的资源。 |
四、在SDLC一般风险因素评估 |
风险总是定义为项创建未来可能出现的伤害行为由于一些礼物。风险管理是最重要的问题参与软件项目的开发。风险管理包括不同的过程、方法和工具,用于处理各种风险因素的SDLC过程软件开发。它也定义为活动,识别风险,评估风险,并定义了策略来减少或减轻风险。风险管理可以被定义为系统的实践决定成本有效的方法减少威胁和最大化的结果在未来的机会。 |
关于软件风险的基本因素有:- |
一个¯·风险是影响方面可能有害地影响项目的结果。 |
一个¯·风险是不确定性的直接后果。如果没有不确定性,但它却永远不会被称为风险——它被称为确定性。 |
一个¯·风险分析是用来帮助团队理解不同形式的不确定性,可能影响项目的结果。 |
一个¯·风险管理(有时称为风险缓解)团队提出的方法为预测,并减轻项目风险的影响。 |
要记住的重要方面是,即使在简单的项目,都是受到出错,你需要制定计划来减少这些事件发生时的影响。处理风险的主要活动或步骤是: |
风险识别 |
风险分类 |
风险量化 |
风险规划和采取行动 |
重复基于风险的情况。 |
在本文中,我试图分类的风险是可能发生在开发的软件。然后让两个以上模型的比较研究,找出真正的风险评估和效果上创建这些模型的影响。 |
一些主要的潜在风险类别相关的软件开发中,我所选择的研究包括:- |
一个¯·组织的使命和目标 |
一个¯·项目管理能力 |
卡车司机一个¯·决定 |
一个¯·组织管理 |
一个¯·客户/用户关系 |
一个¯·项目约束 |
一个¯·软件内容 |
一个¯·部署的因素 |
一个¯·开发活动 |
一个¯·开发环境 |
一个¯·项目管理 |
一个¯·项目团队 |
一个¯·技术问题 |
一个¯·维护因素 |
以上提到的风险类型有很多数量的子类别风险。让我们经历每一因素和分类风险低,中或高根据他们对软件开发的影响。然后比较螺旋和敏捷模型看到他们处理所谓的潜在风险评估能力的情况。风险评估模型、方法和技术被广泛应用在软件开发控制风险。风险评估产生积极或消极的结果。坏的结果是风险和好的结果是生产高质量软件的可能性。现在,让我们看看我们如何能让这个风险评估使用传统的螺旋模型和新一代敏捷模型。并找出这两个模型的效率风险评估能力和他们的管理方法。 |
诉风险评估CAPABILITYOF螺旋和AGILEMODELS——进行比较研究 |
根据Barry Boehm和理查德•特纳风险分析可以用来选择自适应(敏捷- Valuedriven)和预测(螺旋)计划驱动的方法和得出结论,相关范围的每一方都有自己的特性,如表1所示: |
表1描述了明显不同的螺旋的风险评估能力和敏捷模型。关于临界应力主要集中在五个不同的点,类开发人员、需求变更、开发人员以及随后的原则和理念。总的来说,我们可以发现敏捷模型支持的整体问题,给出了一个较小的风险概率在开发生命周期。 |
现在,让我们有一个比较检查的各种风险因素及其相关影响表2中所示的两种模型。风险影响评分低、中、高两大风险分析模型。 |
表2表达的一些主要风险类别及其相关危险因素的基础上,我做了一个评估风险的影响和两个模型——螺旋和敏捷如何处理这种情况。这些数据收集来自各种软件开发公司和做了定量研究基于这些事实。 |
基于这些事实,定量分析的手段进行了如Table3所示。这正好显示了风险率比例在每个模型。从这个Table3,很明显,高风险率非常敏捷和介质类型风险更少螺旋模型。 |
使它更清楚一个饼图是用这些数据如Graph1所示。 |
因此,它是发现,这取决于许多危险因素,敏捷模型显示一个好的影响最小化风险和产生一个更好的频率导致成功开发软件使用这个模型。许多标准和子标准的被认为是在这个相对研究。 |
六。结论和未来的工作 |
从这个比较研究,我们可以发现的风险级别更高的在处理螺旋模型或软件的发展与最新的轻量级方法相比——敏捷。虽然我们有一个概念,敏捷方法在大型组织效率低下和某些类型的项目,它似乎是最适合发展的小而非时序的基于风险评估完成此项目。许多组织相信敏捷方法,采用一种混合方法,敏捷的和计划驱动的螺旋的混合元素的方法。螺旋模型是发现高阶风险比敏捷模型。即使是这样。我们可以得出结论,基于项目的类型和其庞大的规模、螺旋模型在软件开发中也起着非常重要的作用和处理与软件项目开发相关的危险因素。 |
即使在较低的风险水平敏捷模型相比,螺旋,在许多情况下项目规模、客户体验和工作流程的本质,螺旋模型也考虑到软件开发的各种组织现在天。但从分析完成,据估计,大多数现代开发公司支持敏捷模型考虑住它作为他们的核心模型,快速交付,近年来软件发展模式。风险评估和产品开发总是手牵手,没有适当的风险评估,永不能开发出一种高质量的产品。因此,我们可以得出结论,根据类型、项目的规模和复杂性,正确选择软件的发展模式可以帮助组织评估各种风险因素和基于组织可以释放一种高质量的产品在给定的时间和预算。 |
引用 |
|