以用户的需求进化为核心的敏捷开发方案
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
不论团队内外, 传递信息效果 最好效率也最 高的方式是面 对面交流
可工作的软件 是进度的首要 度量标准。
08
敏捷过程倡导 可持续开发。 责任人、开发 人员和用户要 能够共同维持 其步调稳定延 续。
敏捷开发——十二原则
09
10
坚持不懈地追求 技术卓越和良好 设计,敏捷能力 由此增强。
以简洁为本, 它是极力减少 不必要工作量 的艺术。
难实现
架构文档
详细设计
设计模型
编码
代码文件
测试
敏捷开发——流程
敏捷开发(迭代的方式)
需求
迭代
产品
01
强调在获得最简短的可执行功能 的部分,能够及早给予企业价值
02 整个项目的生命周期里,可以持
续的改善、增加未来的功能
敏捷开发VS传统开发 敏捷开发
VS
传统开发
客户田总要求开发一辆上班用的交通 工具,时间紧迫,要求马上上车
生命周期直观对比
开发过程对比
传统开发过程
敏捷开发过程
互联网需要敏捷开发
今年张小龙在WXG大会上提到:
我们今天可以想一些与众不同的点子,然后我们可以很快就看到效果, 因为我们可以很快把它上线了,然后可以去验证,如果不对就下线,如果 还有改进余地,下个版本再去改它。这是一个能够持续实现你的想法的过 程
需求变动
需求总是在变动,反复 变动,无限拖延。
理解出现错误
最后做出来的成品完全不 是产品经理想要的样子。
传统的软件工程方法
改不完的BUG
开发工程师做出来的项 目,bug不但多,而且 经常改不好。常常是改 了一个bug,出现另一 个Bug。原本好的功能, 反而会因为改Bug导致 出现的问题更多。
团队缺乏战斗力凝聚力
10
敏捷开发——迭代
子项目 软件项目构建
子阶段
集成
可使用
可运行
可演示
敏捷开发——四个开发宣言
个体和交互胜过过程和工具
1
客户合作胜过合同谈判
4
可以工作的软件胜过面面俱到的文档
2
3
响应变化胜过遵循计划
开发宣言
敏捷开发——十二原则
01
02
03
我们最重要的目 标,是通过及早 和持续不断地交 付有价值的软件 使客户满意
欣然面对需求变 化,即使在开发 后期也一样。 为了客户的竞争 优势,敏捷过程 掌控变化。
经常地交付可 工作的软件, 相隔几星期或 一两个月,倾 向于采取较短 的周期。
04
业务人员和开 发人员必须相 互合作,项目 中的每一天都 不例外。
敏捷开发——十二原则
05
06
07
激发个体的斗志, 以他们为核心搭建 项目。提供所需的 环境和支援,辅以 信任,从而达成目 标。
敏捷开发——敏捷开发的要求
1.敏捷开发强调开发团队不同功 能的人员间紧密协同,而这需 要较高的人员素质。 2.敏捷开发强调人的核心作用替 代文档,人员稳定性就成为了 潜在的隐患。而且文档也并非 一无是处,文档本身就有不可 替代的价值。 3.敏捷开发追求为终端用户提供 更多的价值,持续性的改进必 然导致部分功能或配置过时或 孤立。为了追寻有用价值而删 除这些,反而有可能会使现有 功能无法运行或出错。
敏捷开发 过程比传统开发要为项 目和产品带来更低的风险(RISK)
敏捷开发拥着比传统开发更大 的透明度(VISIBILITY)
敏捷开发模式使产品和团队自 身都有很强的适应力 (ADAPTABILITY)和生命力
敏捷开发——为什么采用敏捷开发
更快的开发周期 来自终端用户的持续反馈
更强的灵活性 持续反馈
张小龙所说的上线、验证、改进的持续循环流程实际上就是一个快速试 错和拥抱变化的过程。 当今的互联网,市场变化日新月异,在不断变化的 市场中取得成功就要拥有快速试错的能力。
关键词:快速试错 拥抱变化
互联网需要敏捷开发
右面是滴滴打车最新的客户端截图。 从图中可以看到,滴滴支持的全部车 辆服务已经覆盖到了快车、单车、出 租车、顺风车、专车等多达10种服务, 而大众刚刚熟悉滴滴时,滴滴仅有出 租车、快车和顺风车三种车型。
敏捷开发(Agile Development)是一种以人为核心、迭代、循序渐进的开发方法
以人为核心
迭代
循序渐进
8
敏捷开发
以人为核心
敏捷开发
敏捷开发它只写有必要的文档, 或尽量少写文档,敏捷开发注重 的是人与人之间,面对面的交流, 所以它强调以人为核心。
迭代
迭代是指把一个复杂且开发周期 很长的开发任务,分解为很多小 周期可完成的任务,这样的一个 周期就是一次迭代的过程;同时 每一次迭代都可以生产或开发出 一个可以交付的软件产品。
敏捷开发
Agile development
目录 Contents
1
2
3
4
产生背景 敏捷开发
敏捷框架
总结
01 敏捷开发的产生背景
敏捷开发的产生背景
预定义的过程 使用已知的方法解决已知的问题
管理软件开发 引入过程控制
经验性过程
不能够完全预先定义好,结果是 不可预知的,生产过程是不可重 复的.
敏捷开发的产生背景
11
12
最好的架构、 需求和设计出 自自组织团队。
团队定期地反 思如何能提高 成效,并依此 调整自身的行 为表现。
敏捷开发——传统开发的流程
软件概念
用户需求
瀑布模型(预见性的方法)
需求分析
软件需求原型
1 固定的、没有弹性的基于文档的开发方式
架构设计
2 很难去达到互动 3 需求没有完全的被了解或需要完全地改变,瀑布模型很
Team的战斗力和凝聚 力不强,经常是对着干, 对分配的任务总是各种 抱怨,出现问题后第一 反应是这个不管我的事, 不是我的问题,是后端/ 前端设计的问题。
02 敏捷开发详细介绍
敏捷开发详细介绍
1
概念
2
开发宣言
3
十二原则
4
敏捷流程
5 敏捷VS传统
6 为什么采用它
7
要求
8
适用范围
敏捷开发——概念
敏捷开发——以人为核心
一是开发设计者,即百度文库软件整个项目中的程序分析、构建、 设计和测试等等相关人员。他们是项目开发的最终实现者,对 软件的质量、进度等起到决定性作用。
二是客户。这里的客户不但是指软件最终用户,也可以指 上级领导和大项目经理等这些本单位上层领导。
开发是技术,同时也是一门艺术。敏捷开发的艺术,就是以本设计团体为中心,和外界各类人员进行配合的艺术。
试想如果滴滴从一开始就计划设计 出10种车型再开始上线推广,那估计 现在满街跑的就该是Uber或者快的 或者什么滴而不是滴滴了。
商机转瞬即逝,正是在一次次的上 线中,从车主、用户及市场的反馈中 不断调整迭代,才造就了今天的滴滴, 而这正是敏捷思想的精髓所在。
敏捷开发——为什么采用敏捷开发
(敏捷开发与传统开发的比较)