第3章敏捷开发要点.ppt

  1. 1、本文档共42页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
本章的目标是介绍敏捷软件开发的几种方法 理解敏捷软件开发的基本原理,敏捷方法的内涵,以及和其它软件开发方法之间的差别; 了解极限编程的主要做法,以及它是如何贯彻和遵循敏捷软件开发方法的一般性的原理的; 理解敏捷项目管理的Scrum方法; 了解在大型软件项目开发过程中应用可伸缩敏捷方法时的事项和问题。 快速软件开发基本特征 描述、设计、实现是项目交织在一起的 系统通过一系列版本开发出来。最终用户和其他信息持有者参与对各个版本的评估。 用户界面经常用IDE工具快速完成。 表 1 敏捷开发、计划驱动软件开发比较 多数软件的开发均可用计划驱动和敏捷方法完成。选用何种方法,参见上一页的内容。敏捷方法是一种思想,不是具体的实现过程。目前,列入敏捷方法的有10多种。 极限编程实践 (2) 极限编程实践 (4) XP测试 Xp中的测试的关键特性: 测试优先开发; 来自脚本的增量式测试开发; 用户参与测试开发; 自动测试系统的使用; Xp强调先写测试程序,再写代码,测试超前于代码的编写。 可以对任务卡设计测试的用例描述。 Scrum过程-冲刺循环 Scrum会议 在冲刺中,每一天都会举行项目状况会议,被称为 “每日站立会议”,15min,内容包括: 说明工作进度 遇到的问题 接下来一天的工作计划 结对编程Pair programming 结对编程(Pair Programming)是一个编程模式(Programming pattern)。两个程序员并排坐在一台电脑前,面对同一个显示器,使用同一个键盘,同一个鼠标一起工作。他们一起分析,一起设计,一起写测试例子,一起编码,一起单元测试,一起集成测试,一起写文档等。基本上所有的开发环节都一齐肩并肩地,平等地,互补地进行开发工作。 结对编程不是一个人简单地看着另一个在做什么——在卓有成效的配对工作里,这两个合作伙伴常常工作在不同抽象层次,一个人关注的是为实现眼前目标而编写的代码的细节,而另一个人考虑的是更大的前景和下一步要做的事情,这两个人的角色频繁进行更换。这是一项高强度的、严密的,且常常令人疲劳的活动,但是能够创造出经过深思熟虑的高质量代码。 ——Laurie Williams Steve Hayes   * Chapter 3 Agile software development 结对编程的好处 支持共同拥有软件和共同对系统负责 担当了非正式的复查过程 有助于支持重构 Chapter 3 Agile software development * 3.4 敏捷项目管理 敏捷方法的倡导者经常发现:在应用开发中,对动态变更很难得到管理方面的支持。这些方法需要开发者、管理者和用户都改变他们工作和思考的方式。例如,XP实践中的结对编程、测试优先的开发、持续集成以及在场客户等是很难让人接受的。而且,这些方法论更倾向于以开发者为中心,似乎并不太重视管理角色。 实践证明,加强管理是敏捷方法被成功采纳并应用的关键 而传统项目管理方法学和工具与这些新的敏捷方法缺少关联 * Chapter 3 Agile software development Scrum Scrum是一个通用的敏捷方法,但它主要注重迭代开发的管理,而不是管理敏捷软件工程的专门的技术方法。 Chapter 3 Agile software development * Scrum 管理过程图 * Chapter 3 Agile software development Scrum的三个阶段: 1 规划纲要:建立大致的目标,设计软件体系结构 2 冲刺循环:每个循环开发出一个增量 3 项目结束阶段总结项目:完善项目文档,如系统帮助,用户手册,总结项目开发经验 在每一次冲刺(一个15到30天的周期,其长度由开发团队决定)当中,开发团队创建可用的(可以随时推出)软件的一个增量。每一个冲刺所要实现的功能来自产品订单(product backlog)。产品订单是按照优先级排列的要完成的工作的概要的需求,哪些订单项会被加入一次冲刺将由冲刺计划会议决定。 在会议中,产品负责人告诉开发团队他需要完成产品订单中的哪些订单项。开发团队决定在下一次冲刺中他们能够承诺完成多少订单项。在冲刺的过程中,没有人能够变更冲刺订单(sprint backlog),这意味着在一个冲刺中需求是被冻结的。 可扩展的敏捷方法 Scaling agile methods 尽管公司实施大型敏捷项目已经许多年了,但是“敏捷方法只适用于小型项目”这样的话依旧是新手所面临的普遍障碍,并且成为制定敏捷标准的战斗口号。 对于大型软件系统,

文档评论(0)

w5544434 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档