四大软件开发方法

admin 软件开发 2018-12-01 19:56 0
 
 
 成功的项目管理得很好。为了有效地管理项目,经理或开发团队必须检查许多软件开发方法,以选择最适合手头项目的方法。所有方法都有不同的优点和缺点,并且存在的原因各不相同。以下是最常用的软件开发方法的概述,以及为什么存在不同的方法。
 
 瀑布开发方法论

 
 该  瀑布方法被认为是传统的软件开发方法。它是一个刚性线性模型,由连续阶段(需求,设计,实施,验证,维护)组成,其中实现了不同的目标。在下一阶段开始之前,每个阶段必须100%完成,并且传统上没有返回修改项目或方向的过程。
 
 优点:此方法的线性特性使其易于理解和管理。具有明确目标和稳定需求的项目可以最好地使用瀑布方法。经验较少的项目经理,项目团队和组成经常变化的团队可能会从使用瀑布式开发方法中受益最多。
 
 缺点:由于刚性结构和严格的控制,它通常是缓慢而昂贵的。这些缺点导致瀑布式方法用户探索其他软件开发方法。
 
 快速应用开发方法
 
 
 快速应用程序开发  (RAD)是一个简化的开发过程,可以生成低质量的高质量系统。在最近的福布斯文章中,UM技术公司首席执行官兼总裁斯科特·斯坦纳说:“这个RAD流程允许我们的开发人员快速适应快节奏和不断变化的市场中不断变化的需求。”快速调整的能力是允许的如此低的投资成本。快速应用程序开发方法包含四个阶段:需求计划,用户设计,构造和切换。用户设计和构造阶段重复进行,直到用户确认产品符合所有要求。
 
 优点:RAD对于具有明确定义的业务目标和明确定义的用户组的项目最有效,但计算复杂度不高。如果项目中小型且时间敏感,则特别有用。
 
 缺点:需要一个稳定的团队组合,拥有对应用领域有深入了解的高技能开发人员和用户。在制定需要在每个施工阶段后获得批准的简明开发时间表时,深入的知识是必不可少的。如果您没有这些要求,RAD可能无法很好地适用于您的组织。
 
 敏捷开发方法
 
 
 敏捷开发方法 有许多不同的形式,包括scrum,crystal,极限编程(XP)和特性驱动开发(FDD)。
 
 优点:敏捷方法在通过以新功能的小增量迭代开发软件来添加新功能时,尝试最小化风险(例如错误,成本超支和不断变化的需求)。多次迭代的好处是它可以通过早期发现和修复缺陷和期望不匹配来提高效率。
 
 缺点:敏捷方法依赖于实时通信,无法为新用户提供文档以便快速上手。它们需要用户花费大量时间并且是劳动密集型的,因为开发人员必须在每次迭代中完全完成每个功能以供用户批准。由于迭代的增量增加,用户很早就意识到了软件的好处。敏捷方法与RAD类似,在大型组织中效率低下。习惯于瀑布方法的程序员,管理人员和组织可能难以适应敏捷。因此,混合方法通常适用于他们。
 
 DevOps部署方法
 
 
 DevOps部署以组织变更为中心,增强了负责开发生命周期不同部分的部门之间的协作,例如开发,质量保证和运营。
 
 优点:DevOps专注于缩短产品上市时间,降低新版本的故障率,缩短修复之间的提前期,并优先考虑最小的中断和最大的可靠性。为实现这一目标,DevOps旨在实现自动化持续部署,以确保一切顺利,可靠地进行。使用DevOps的公司可以   大大缩短产品上市时间,提高客户满意度,产品质量,员工生产力和效率。
 
 缺点:即使考虑到它的好处,DevOps也有一些缺点:
 
 有些客户不希望对其系统进行持续更新。
 一些行业的法规需要在项目进入运营阶段之前进行大量测试。
 不同部门中使用的不同环境可以允许未检测到的问题进入生产阶段。
 一些质量属性需要人工交互,这会减慢交付管道。
 
 这四种软件开发方法在软件开发中最为普遍。每个人都有自己的优点和缺点,并在不同的情况下有效地工作。选择开发方法时,此信息可能对您有所帮助。
 

分享:

扫一扫在手机阅读、分享本文

发表评论

评论列表(条)