什么是敏捷开发?

概念

简单的说,敏捷开发是一种以人为核心、迭代、循序渐进的开发方法。在敏捷开发中,软件项目的构建被切分成多个子项目,各个子项目的成果都经过测试,具备集成和可运行的特征。

换言之,就是把一个大项目分为多个相互联系,但也可独立运行的小项目,并分别完成,在此过程中软件一直处于可使用状态。

敏捷最大的特色是迭代式开发。

特点

敏捷开发最大的特点是迭代式开发,各个阶段都具备独立运行和独立交付的特性。主要是以客户的需求进化为核心,采用迭代、循序渐进的方法进行软件开发。

在敏捷开发中,软件项目在构建初期被切分成多个子项目,即就是多个sprint,每个sprint中又会有划分成多个build,在一个软件项目完成后会对整个产品从头到尾进行回归验证,以确保软件在每一次迭代过程中没有错误产生。在软件最后的发布阶段,客户会对最终的产品进行验收工作。上线后对软件进行一直的维护。

以软件项目中的一个迭代即一个sprint为例,一个sprint一般会被分割成2-4个build,每个build的周期约为1周,每个sprint的第一步都需要对项目进行需求的分析和澄清过程,确保达到需求对齐(甲方和乙方)的目的。第二步根据分析所得的需求对测试进行计划,确保在有计划的基础上进行每一项工作和任务。第三步根据测试计划进行设计测试用例,需要有清晰的思路,对要测什么,按照什么顺序测,覆盖哪些要求,有明确的方向。第四步根据测试设计去进行软件的开发,开发完成后,自己测试完毕并把测试出来的bug修复后进行版本转测。基于每个build,第一步需要搭建测试环境,完成后对开发给的测试包进行冒烟测试,如果测试通过进行下一步操作,如果没有通过进行版本打回。第二步执行测试用例,根据测试用例执行的结果将bug提交成开发,等bug修复后再次进行测试,完成通过后进行下一个build,等所有的build执行完成后,基于一个sprint,对真个过程进行总结,并编写测试报告。

敏捷相关概念:

Sprint(Sprint本身是一个事件,包括了如下4个事件)

Sprint计划会议(SprintPlanning Meeting)

每日站会(DailyScrum Meeting)

Sprint评审会议(SprintReview Meeting)

Sprint回顾会议(SprintRetrospective Meeting)

TDD:测试驱动开发(Test-DrivenDevelopment)

测试驱动开发是敏捷开发中的一项核心实践和技术,也是一种设计方法论。TDD的原理是在开发功能代码之前,先编写单元测试用例代码,测试代码确定需要编写什么产品代码。TDD的基本思路就是通过测试来推动整个开发的进行,但测试驱动开发并不只是单纯的测试工作,而是把需求分析,设计,质量控制量化的过程。TDD首先考虑使用需求(对象、功能、过程、接口等),主要是编写测试用例框架对功能的过程和接口进行设计,而测试框架可以持续进行验证。

BDD:行为驱动开发(BehaviorDriven Development)

行为驱动开发是一种敏捷软件开发的技术,它鼓励软件项目中的开发者、QA和非技术人员或商业参与者之间的协作。主要是从用户的需求出发,强调系统行为。BDD包括验收测试和客户测试驱动等的极限编程的实践,作为对测试驱动开发的回应。

持续集成CI(Continuous Integration)

持续集成强调开发人员提交了新代码之后,立刻自动的进行构建、(单元)测试。根据测试结果,我们可以确定新代码和原有代码能否正确地集成在一起。

持续集成过程中很重视自动化测试验证结果,对可能出现的一些问题进行预警,以保障最终合并的代码没有问题。

持续部署CD(continuous deployment)

是通过自动化的构建、测试和部署循环来快速交付高质量的产品。某种程度上代表了一个开发团队工程化的程度,毕竟快速运转的互联网公司人力成本会高于机器,投资机器优化开发流程化相对也提高了人的效率,让 engineering productivity 最大化。

  • 8
    点赞
  • 33
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
Scrum基本知识 读前预习内容  Scrum概觅  Scrum是什么意思?  Scrum敏捷方法一分钟扫盲  Scrum敏捷方法丨的工作产品  Scrum敏捷方法丨的觇色  猪不鸡的故亊 Scrum过程 读前预习内容  创建和维护产品待开収项(Product Backlog)  迭代计划会 产品负责人准备什么?讲览什么?  迭代计划会 团队怎样估算?  扑克牉估算(Planning Poker)  办公环境  每日立会(Standup Meeting)  评审会(Review Meeting)  反思会(Retrospective Meeting) 用户故事 扩展阅诺  何为用户故亊  面向用户价值编写用户故亊  用户建模  优先级排序(待续)  用户故亊的分类  用户故亊的产生不组细结极  用户故亊不MVC 敏捷计划 扩展阅诺  敏捷计划流程  可用时间计算  迭代计划  迭代意向表  故亊讲览不估算 敏捷日常跟迚 扩展阅诺  故亊板,看板  燃尽图(Burndown Chart)  跟迕图不渐迕评审  跟迕表  拥抱发化?迓是迭代期内无发更? 敏捷生态系统 扩展阅诺  需求管理  客户价值导向-可工作软件-响应发化  计划不跟踪  跨职能团队-共同估算-每日立会-同行压力  需求优先级排序-迭代期内无发更-团队承诹 敏捷绩效考核 扩展阅诺  考核对象的发化  为团队设定目标,讥团队把控绅节 智慧敏捷 扩展阅诺  精益生产的吭示  写丌写文档?  敏捷实践的表象不内涵

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

张驰Terry

知识源于创作热情,感谢你的支持

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值