敏捷开发方法.ppt
《敏捷开发方法.ppt》由会员分享,可在线阅读,更多相关《敏捷开发方法.ppt(40页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。
1、现在学习的是第1页,共40页l敏捷开发方法的核心思想敏捷开发方法的核心思想l敏捷开发方法的原则敏捷开发方法的原则l敏捷开发方法的代表敏捷开发方法的代表极限编程极限编程现在学习的是第2页,共40页l敏捷软件开发方法的思想是现代管理理敏捷软件开发方法的思想是现代管理理念的延伸,其核心是念的延伸,其核心是以人为本,发挥人以人为本,发挥人的主观能动性。的主观能动性。l敏捷软件开发方法认为,对项目最重要敏捷软件开发方法认为,对项目最重要的影响因素是人,而不是过程和技术。的影响因素是人,而不是过程和技术。不能把人员当做由过程驱动的不能把人员当做由过程驱动的“可插拔可插拔替换的编程单元替换的编程单元”,而要
2、发挥人的能动,而要发挥人的能动性,建立紧密协作的、自组织的团队。性,建立紧密协作的、自组织的团队。现在学习的是第3页,共40页l以过程为核心(而不是以人为核心)的软件组织以过程为核心(而不是以人为核心)的软件组织为了少犯错误,保证项目成功,而从项目开发经为了少犯错误,保证项目成功,而从项目开发经验中总结和定义了许多过程,用于约束开发行为验中总结和定义了许多过程,用于约束开发行为,避免重复相同的错误。由于项目的复杂性和多,避免重复相同的错误。由于项目的复杂性和多样性,这种过程定义会越来越多,最终形成一个样性,这种过程定义会越来越多,最终形成一个庞大的、笨重的过程集合,这样的过程集合会降庞大的、笨
3、重的过程集合,这样的过程集合会降低开发效率和产品质量,增加开发成本。低开发效率和产品质量,增加开发成本。现在学习的是第4页,共40页 我们正在通过亲身实践以及帮助他人实践,揭示更我们正在通过亲身实践以及帮助他人实践,揭示更好的软件开发方法。通过这项工作,我们认为:好的软件开发方法。通过这项工作,我们认为:人和交互人和交互 重于重于 过程和工具过程和工具 可以工作的软件可以工作的软件 重于重于 面面俱到的文档面面俱到的文档 客户合作客户合作 重于重于 合同谈判合同谈判 随时应对变化随时应对变化 重于重于 遵循计划遵循计划 虽然右项也有其价值,但我们认为左项更加重要。虽然右项也有其价值,但我们认为
4、左项更加重要。现在学习的是第5页,共40页l只有好的过程而缺乏合格的人员,不能保证项目不只有好的过程而缺乏合格的人员,不能保证项目不失败。失败。l优秀的人员不一定是顶尖的技术人才,但一定能和优秀的人员不一定是顶尖的技术人才,但一定能和其它人员良好地协作。其它人员良好地协作。l拥有一般的技术人才,但能够有效沟通、紧密协作拥有一般的技术人才,但能够有效沟通、紧密协作的团队比那种虽拥有技术精英,但不能有效沟通的的团队比那种虽拥有技术精英,但不能有效沟通的团队更有可能取得成功。团队更有可能取得成功。现在学习的是第6页,共40页l工具虽然重要,但那种最先进的、大而复杂的工具工具虽然重要,但那种最先进的、
5、大而复杂的工具不一定适合组织的需要,而且可能会给组织带来负不一定适合组织的需要,而且可能会给组织带来负面影响。面影响。l先尝试小而灵便的工具。先尝试小而灵便的工具。l首先要致力于建立团队,然后让团队根据自己的首先要致力于建立团队,然后让团队根据自己的需要配置工具环境。需要配置工具环境。现在学习的是第7页,共40页l过多的文档会带来许多负面影响。需花费许多资过多的文档会带来许多负面影响。需花费许多资源来产生这些文档并保持它们之间的一致性(特源来产生这些文档并保持它们之间的一致性(特别是文档与编码之间的一致性)。如果不一致,别是文档与编码之间的一致性)。如果不一致,文档将成为产生混乱的根源。文档将
6、成为产生混乱的根源。l应该书写一些文档来描述系统的基本结构和原理,但应该书写一些文档来描述系统的基本结构和原理,但文档一定要短而精炼,只用来描述总体设计原理和最文档一定要短而精炼,只用来描述总体设计原理和最高层次的系统结构。高层次的系统结构。l代码已包含了最丰富的、且无歧义的系统信息。代码已包含了最丰富的、且无歧义的系统信息。现在学习的是第8页,共40页l当有新的成员加入项目团队,通过与他不断地交流当有新的成员加入项目团队,通过与他不断地交流和密切地合作来使他熟悉当前项目,而不是让他阅和密切地合作来使他熟悉当前项目,而不是让他阅读大量文档。读大量文档。l不要去产生文档,除非有紧迫而明显的需求。
7、不要去产生文档,除非有紧迫而明显的需求。现在学习的是第9页,共40页l软件项目的成功依赖于客户频繁的反馈,而不是软件项目的成功依赖于客户频繁的反馈,而不是依赖于与客户达成的合同或协议。依赖于与客户达成的合同或协议。l合同中所规定的需求、进度和成本很容易变得没有合同中所规定的需求、进度和成本很容易变得没有意义,因为项目处在持续不断的变化中。意义,因为项目处在持续不断的变化中。l客户必须每天与开发团队一起工作,对开发团队的工客户必须每天与开发团队一起工作,对开发团队的工作及时提供反馈。作及时提供反馈。现在学习的是第10页,共40页l由于项目中存在很多不确定因素,应对变化的能力由于项目中存在很多不确
8、定因素,应对变化的能力常常决定了项目的成败。常常决定了项目的成败。l计划必须是灵活的,能够适应业务和技术的变化计划必须是灵活的,能够适应业务和技术的变化。l一个比较好的计划策略是:对未来两星期的工作制一个比较好的计划策略是:对未来两星期的工作制定详细的计划;对未来定详细的计划;对未来3个月的工作制定很粗略的个月的工作制定很粗略的计划;对更远的时间段,则制定最初级的计划。计划;对更远的时间段,则制定最初级的计划。现在学习的是第11页,共40页l敏捷开发方法的核心思想敏捷开发方法的核心思想l敏捷开发方法的原则敏捷开发方法的原则l敏捷开发方法的代表敏捷开发方法的代表极限编程极限编程现在学习的是第12
9、页,共40页l由敏捷软件开发宣言的思想衍生出敏捷软件开发的由敏捷软件开发宣言的思想衍生出敏捷软件开发的12条原则。条原则。(1)我们最优先要做的是通过尽早地、持续地交付我们最优先要做的是通过尽早地、持续地交付有价值的软件来满足客户的需要。有价值的软件来满足客户的需要。w 有统计数字表明,越早、越频繁地向用户交有统计数字表明,越早、越频繁地向用户交付软件,软件的质量就越好。付软件,软件的质量就越好。w 敏捷开发方法力求项目开始几周后,就向用敏捷开发方法力求项目开始几周后,就向用户交付一个最初的系统,以后每隔两周就交户交付一个最初的系统,以后每隔两周就交付一个增加了功能的系统。付一个增加了功能的系
10、统。现在学习的是第13页,共40页w对于每次交付的软件,客户可以将其投入应对于每次交付的软件,客户可以将其投入应用,如果软件的功能还不足以满足应用的需用,如果软件的功能还不足以满足应用的需要,就只对其进行审查,并提出修改意见。要,就只对其进行审查,并提出修改意见。现在学习的是第14页,共40页(2)欢迎需求的变化,即使到了开发的后期。敏捷欢迎需求的变化,即使到了开发的后期。敏捷过程能够驾驭变化,为客户创造竞争优势。过程能够驾驭变化,为客户创造竞争优势。w 使用敏捷过程的开发组织欢迎需求的变化,使用敏捷过程的开发组织欢迎需求的变化,因为他们认为需求变化可以让它们更多地了因为他们认为需求变化可以让
11、它们更多地了解市场。解市场。w 敏捷开发组织采用各种方法和技术,使软件敏捷开发组织采用各种方法和技术,使软件的结构高度灵活,需求的变化对系统的影响的结构高度灵活,需求的变化对系统的影响被最小化。被最小化。现在学习的是第15页,共40页(3)频繁交付可以工作的软件,从几个星期到几个月,频繁交付可以工作的软件,从几个星期到几个月,时间越短越好。时间越短越好。w 敏捷开发组织不满足于交付文档和计划,他敏捷开发组织不满足于交付文档和计划,他们的目标是频繁地交付可以工作的软件,从们的目标是频繁地交付可以工作的软件,从而满足客户的需要。而满足客户的需要。现在学习的是第16页,共40页(4)在整个项目开发期
12、间,业务人员和开发人员必须在整个项目开发期间,业务人员和开发人员必须每天工作在一起。每天工作在一起。w 软件项目必须被不断地调整和引导,这要求软件项目必须被不断地调整和引导,这要求用户、开发者和其他利益干系人要频繁地交用户、开发者和其他利益干系人要频繁地交流。流。现在学习的是第17页,共40页(5)围绕斗志高昂的人构建项目,给他们提供所需围绕斗志高昂的人构建项目,给他们提供所需的环境和支持,并且信任他们能够完成任务。的环境和支持,并且信任他们能够完成任务。w 在一个敏捷项目中,人员被认为是最重要的在一个敏捷项目中,人员被认为是最重要的因素,其它所有因素(过程、环境、管理等因素,其它所有因素(过
13、程、环境、管理等)都被认为是次要的,当这些因素对人员造)都被认为是次要的,当这些因素对人员造成不利影响时,就必须对其做出改变。成不利影响时,就必须对其做出改变。w 例如,如果某些过程步骤对团队人员来说是例如,如果某些过程步骤对团队人员来说是个障碍,那么过程就必须改变。个障碍,那么过程就必须改变。现在学习的是第18页,共40页(6)在团队内部,最有效率和最有效果的信息传达方在团队内部,最有效率和最有效果的信息传达方式就是面对面的交流。式就是面对面的交流。w 在敏捷项目中,主要的交流方式就是交谈。在敏捷项目中,主要的交流方式就是交谈。文档在必要的时候会被创建,但不会试图用文档在必要的时候会被创建,
14、但不会试图用文档来捕获所有项目信息。文档来捕获所有项目信息。w 在敏捷项目组中,默认的交流方式是交谈,在敏捷项目组中,默认的交流方式是交谈,而不是文档。而不是文档。现在学习的是第19页,共40页(7)可以工作的软件是进度的主要度量标准。可以工作的软件是进度的主要度量标准。w 对于敏捷项目来说,进度的度量标准是当前对于敏捷项目来说,进度的度量标准是当前可满足用户需求的软件的量,而不是当前项可满足用户需求的软件的量,而不是当前项目所处的阶段、文档数量或基础代码的数量目所处的阶段、文档数量或基础代码的数量。w 项目完成了项目完成了30%的含义是的含义是30%的用户所需功的用户所需功能已被实现。能已被
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 敏捷 开发 方法
限制150内