ITPub博客

首页 > IT职业 > IT职场 > 敏捷开发框架有哪些?都有什么特点

敏捷开发框架有哪些?都有什么特点

IT职场 作者:一张白纸2020 时间:2020-05-15 10:24:28 0 删除 编辑

  现在是一个快速发展的时代,无论是做什么事情都非常讲究效率,对于软件开发来说更是如此,为了改变传统软件开发方式速度慢的缺点,出现了敏捷开发方式。那么什么是敏捷开发呢?敏捷开发的小版本发布又是什么呢?下面一起来了解一下相关的知识吧!

   什么是敏捷开发的小版本发布

  (1)什么是敏捷开发的小版本发布?

  敏捷开发(Agile Development)是一种以迭代为核心、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目。但是敏捷开发并不是为了盲目进行加速或出于速度考虑才选择敏捷的版本发布。相反,它是一种符合标准的规划方法并且融入许多实践经验的开发模式。

  敏捷开发其最本质的含义是:对用户需求的快速响应,要让慢如蜗牛的开发变成快速的产品交付。在敏捷开发中不会拿到需求后就闭门造车,直到最后才将产品交付给客户。而是尽量多的产品发布,一般以周、月为单位。这样客户每隔一段时间就会拿到发布的产品进行试用,而开发人员也可以从客户那得到更多的反馈来改进产品。正因为发布频繁,每一个版本新增的功能简单,不需要复杂的设计,这样文档和设计就在很大程度上简化了。又因为简单设计,没有复杂的架构,所以客户有新的需求或者需求进行变动时,也能很快的适应。因此,敏捷开发强调小周期、小版本、快速重构。

   (2)敏捷开发小版本发布有哪些优势?

  从本质上说,敏捷开发小版本发布是一种非常务实的开发方式。因为小版本的目的是要分解复杂度、降低风险,改善和提高对需求变更的能力。表现为两个方面:一是它强调对用户不断变化的需求一定要尽快的快速响应,虽然用户需求频繁更改是最让人恼火的。二是用户的很多需求,在很多的情况下是无法事先全部预先想好的,是要在开发过程中不断完善起来的。

  小版本发布有众多优势,具体有以下几个方面:

  ①总体风险比较少:小版本总是在上一个版本基础上局部调整和增加,变化小使到技术复杂度低;由于规划的功能较少,工作量也易于估算,所以其总体风险比较少,常常能如期发布。②提升需求接纳能力:由于小版本快速实现并发布测试,然后就进入下一个小版本的周期,这样新需求一旦提出就能快速进入开发视野和尽快实现。而且在变更大的时候,小版本控制能随时将程序回复到以前某一时间点状态。③测试和开发高效协作:小版本能将开发环境与测试环境进行有效的隔离,使到开发和测试可以并行工作。例如,当开发实现第一个版本后,开发人员就进入下一个版本周期;测试人员测试新发布的版本并提交Bug,开发人员就可以在下一个版本结束时修正所有上一轮发现的Bug,然后发布新版本。如此循环往复,开发和测试实现高效协作。④频繁的小版本发布可让项目主管控制软件开发的进度。因为通过小版本发布能使项目主管对整个项目的进度、程序的编写、修改情况有一个整体的了解。

   敏捷开发如何缓解风险:

  1. 需求风险

  敏捷开发中,产品经理作为用户代表,他的职责就是和用户的沟通需求、把握好产品的愿景。一个好的产品经理会维护好产品需求列表,不会让它有大的波动。而软件开发人员则通过需求细化会议来和产品经理达成对需求的一致理解,通过迭代计划会议确定要开发的需求,通过迭代评审会议对需求做必要的调整。这些措施都会避免发生突如其来的重大需求更改给项目带来的风险。

   2. 进度风险

  敏捷开发中的下列实践可以帮助缓解进度风险。

  迭代计划会议。敏捷开发不像传统项目那样阶段式的管理,它是一个迭代周期一个迭代周期进行的。每个迭代周期时间都不是很长,因此风险可以及时发现及时处理,这就比传统项目更适合应对进度风险。而且,迭代周期内出现的意外变更或其它风险,也只会在下个迭代处理。所以,只要在迭代计划会议上制定出合理的迭代计划,那么团队就可以按照自己的开发节奏推进项目,避免被意外打乱计划。

  估算团队速率。团队速率影响迭代计划和版本计划的可行性。敏捷开发在每个迭代周期都会完成需求、设计、实现、测试这些活动,所不同的只是完成的需求不同;而且每个迭代周期都很短,所以只需要1~2个迭代之后,就可以得出比较真实的团队速率。

  现场用户交流。软件开发人员可以和作为用户代表的产品经理实时进行交流,一起对需求进行细化,排定需求的优先级。这在很大程度上避免了在开发过程中出现影响进度的大的需求变更。

  缺陷清除前移。传统的开发模式下,缺陷清除大部分是依靠后期的测试来完成的,而这种做法往往会使得修复缺陷的时间更加漫长,影响项目进度。而敏捷开发则在每个迭代周期内都要完成测试活动,使得项目后期遗留的缺陷就会很少,进度会更加可控。

   3. 人员风险

  敏捷开发中通过培养和使用T字型人才来缓解人员风险。

  所谓T字型人才,就是指一个人在开发过程某一领域具备较深的造诣,同时在其他相关领域也具备一定能力。如一个有经验的软件编码人员同时能做些详细设计工作和测试的能力。

  这样,当敏捷团队中出现人员流动的情况下,就会有很多后备人才可以承担他留下的工作。

  结对编程的实践也可以很好地应对人员离开带来的风险。毕竟结对编程的人员对设计和代码同样熟悉,他无须任何培训就可以接手工作。


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69969566/viewspace-2692307/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-03-31

  • 博文量
    62
  • 访问量
    40373