目录
3.3 Scrum Framework - Framework
3.5 Scrum Ceremonies / Meetings
3.5.3 Sprint Reviews - Showcase
3.6.2 Sprint Backlog / User Story
1. 理解Agile


Agile的意思是迅速或多变。“Agile process model”是指一种基于迭代开发的软件开发方法。Agile方法将任务分解成更小的迭代,或部分不直接涉及长期规划。项目的范围和要求在开发过程的开始就已经确定了。关于迭代的数量、持续时间和每个迭代的范围的计划都是事先明确定义的。
在Agile process model中,每个迭代被认为是一个很短的时间“框架”,通常持续1到4周。将整个项目划分为较小的部分,有助于将项目风险降到最低,并减少整个项目的交付时间要求。每个迭代涉及一个团队通过完整的软件开发生命周期工作,包括规划、需求分析、设计、编码和测试,然后向客户展示一个工作产品。

1.1 Agile为什么有吸引力
- 我们处在一个不断变化的全球世界中,变化的速度越来越快
- 客户的需求和要求呈指数级增长——产品必须持续交付
- 技术成本低,易于使用,全球市场的竞争加剧,进入门槛降低
- 人才争夺战已经结束——而我们已经输了!跨职能团队有助于最大限度地减少潜在的损失
- 漫长的开发周期就像漫长的午餐,已经成为过去。
- 质量不再是我们所做的事情(事后检查)——它必须是我们所做的一切的一部分
- 跨职能小组更有趣
1.2 什么是Agile
- 一个基于迭代开发的框架,通过自我组织的跨职能团队之间的合作,需求和解决方案不断发展
- 一个鼓励频繁检查和调整的有纪律的流程
- 一种鼓励团队合作、自我组织和问责制的领导理念
- 一套旨在快速交付高质量软件的工程最佳实践
- 一种使开发与客户需求和公司目标相一致的商业方法
- 在软件开发中,我们考虑的是方法论、活动、互动、结果、工作产品、人工制品和组织工作的过程。
无论使用何种方法论,软件开发的主要任务都是一样的,但是在Agile中,活动的流程、活动的方式以及参与的人员都是极其不同的。
1.3 Agile的起源
- 20世纪90年代在美国大型企业中开始的变革
- 软件工程师对
- 产品交付前的漫长准备时间感到沮丧
- 在项目早期做出的决定后来无法改变感到沮丧
- 2000年,17位软件工程师思想领袖首次会面,讨论软件工程和不同方法
- 2001年,在Snowbird ski lodge in Utah举行了著名的会议,他们在那里开会,以改变行业设计、工程和部署软件的方式
- 敏捷宣言将他们聚集在一起
1.4 敏捷模型的各个阶段
Following are the phases in the Agile model are as follows:
- Requirements gathering
- Design the requirements
- Construction/ iteration
- Testing/ Quality assurance
- Deployment
- Feedback
1. Requirements gathering 需求收集
在这个阶段,你必须定义需求。你应该解释商业机会,并计划建立项目所需的时间和精力。根据这些信息,你可以评估技术和经济可行性。
2. Design the requirements 设计需求
当你确定了项目后,与利益相关者一起工作来定义需求。你可以使用用户流图或高级UML图来显示新功能的工作,并显示它将如何应用于你现有的系统。
3. Construction/ iteration 建设/迭代
当团队定义了需求,工作就开始了。设计师和开发人员开始在他们的项目上工作,其目的是部署一个工作产品。该产品将经历各个阶段的改进,因此它包括简单的、最小的功能。
4. Testing/ Quality assurance 测试
在这个阶段,质量保证团队检查产品的性能并寻找错误。
5. Deployment 部署
在这个阶段,团队为用户的工作环境发布产品。
6. Feedback 反馈
发布产品后,最后一步是反馈。在这个阶段,团队会收到关于产品的反馈,并通过反馈进行工作。
2. Agile框架
敏捷框架的主要内容包括:
- Manifesto(宣言)
- 12 Key Principles(12条关键原则)
- Kanban(看板)
- Scrum
2.1 Manifesto 宣言
我们正在探索更好的开发软件的方法,通过这样做,并帮助其他人这样做。通过这项工作,我们得出了以下价值:
- Individuals and interactions over processes and tools 个人和互动高于流程和工具
- Working software over comprehensive documentation 可工作软件高于全面的文件
- Customer collaboration over contract negotiation 客户合作高于合同谈判
- Responding to change over following a plan 应对变化而不是遵循计划
也就是说,虽然右边的项目有价值,但我们更重视左边的项目。
2.2 12 Key Principles 十二条宣言
Our highest priority is to satisfy the customer through early and continuous delivery of valuable software. 我们的首要任务是通过早期和持续交付有价值的软件来满足客户。
Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage. 欢迎不断变化的需求,甚至在开发后期。敏捷的流程为客户的竞争优势驾驭变化。
Deliver working software frequently, from a couple of weeks to a couple of months, shorter timeframes is the preference. 经常交付工作软件,从几周到几个月,更短的时间框架是首选。

最低0.47元/天 解锁文章
240

被折叠的 条评论
为什么被折叠?



