构建高效的软件开发流程和团队ppt课件_第1页
构建高效的软件开发流程和团队ppt课件_第2页
构建高效的软件开发流程和团队ppt课件_第3页
构建高效的软件开发流程和团队ppt课件_第4页
构建高效的软件开发流程和团队ppt课件_第5页
已阅读5页,还剩16页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、 构建高效的软件开发流程和团队进入目 录1. 极限编程(Extreme Programming)2. 如何构建高效软件开发流程和团队 什么是极限编程 极限编程Extreme Programming 业内人简称为XP,不要把XP与Windows XP联络在一同。它们没有很大的关系。XP = (eXtreme Programming) 中国给它一个很酷的名字“极限编程。 XP是一个轻量级的、乖巧的软件开发方法;同时它也是一个非常严谨和缜密的方法。它的根底和价值观是交流、朴素、反响和勇气;即,任何一个软件工程都可以从四个方面入手进展改善:加强交流;从简单做起;寻求反响;勇于实事求是。XP适用于需求经

2、常发生变化的工程他的客户对系统应该做什么能够没有一个固定的想法;一个系统每隔几个月其功能就要求进展一定的改动。大多数软件工程的需求都处于这样的动态变化之中。XP适用于高风险的工程 假设客户需求一个新的系统,而且要求在某天前完成,这里的风险就比较高;假设他的开发组没有做过类似的系统,风险就更高了;运用XP可以降低风险和添加胜利的能够性。XP适用于小规模的工程组普通在2到10人之间。运用XP不需求拥有博士头衔的开发人员,普通的开发人员就可以。但不能在一个大型的工程组中采用XP。我们留意到,对于一个需求动态变化和高风险的工程而言,一小组XP开发人员要比大的开发组更加有效。XP对可测试性有要求他必需建

3、立自动的单元测试和功能测试。虽然在某些情况下这个要求不能满足,但现实上他会诧异地看到经过某种方式依然可以到达这个要求。XP对消费力也有要求一切采取XP的工程组都无一例外地比其它工程组的消费力高。但这从来不是XP的目的。XP的真正目的在于按时交付客户需求的软件。假设这对于他的工程而言很重要,他就可以尝试一下XP。How do we deliver functionality to business clients quickly?How do we keep up with near-continuous change?如何能快速地向商业用户交付功能?如何才干跟上近乎延续的变化? 方案的制定 小

4、版本 隐喻 简单的设计 重构 测试 结对编程 代码共享 每周只干40小时 编码规范方案的制定 迭代式工程的特点、每三周为一个循环,频繁地更新,按优先级划分义务与技术。小版本 一切的大的工程都可以被分为部分的、小的步骤。实现渐进式发布。隐喻 XP运用隐喻定义一个从开发者到商业客户都可联络的全面一致的主题。 简单的设计 1、为已定义的功能进展设计,而不是为潜在地未来能够的功能进展设计 . 2、创建最正确的可以实现功能的设计。换句话说,不用管未来会是怎样,只创建一个目前为止可以实现的最好的设计。“只需在他真正需求的时候才去做 。 重构XP原那么该当坚持继续设计。当变化既快而且频繁的时候,应投入更多的

5、精神于重构之上 。测试 先测试后编码 、单元测试和功能测试 1.单元测试 (这是软件开发的“圣杯。) 单元测试是从程序员的角度编写的。它确保类的某个特定方法胜利执行一系列特定的义务。每个测试都确保只需给定输入,方法将输出预期的结果。 2. 功能测试 功能测试是从用户的角度编写的。这种测试确保系统执行用户期望它执行的任务。 结对编程相互检验对方的代码.代码共享 工程组中的每个人都可以在任何时候修正其他工程成员的代码,这就是XP中所定义的代码共享 。 诸如“我不想让那些笨蛋改我的代码,“出现问题我应该怪谁?等等。共享代码从另一个层面提供了对配对编程中协作的支持。 经常集成 经常周期性的构造buil

6、d 。XP提示我们有能够有严重的集成错误。 每周只干40小时 Jeffries提供了关于加班的思索:“我们说的是加班被定义为我们不想在办公室的时候呆在办公室。而且不该当加班超越一周。假设他超越了,就有什么东西出了问题由于他过于劳累,有能够比他按时下班干的还差。 在我们年轻和满身干劲的时候,这也许没问题。值得留意的是拖沓的一周又一周。现场客户: XP,同其他的快速开发一样,要求客户在现场继续地参与到工程组中。 编码规范: 一个团队应有相应的一个编码规范。例如,假设他进展配对编程并让他人修正共有代码,那么编码规范看起来就是必需的。 如何构建高效软件开发流程和团队 工程方案 BUG数据库是方案一种参

7、照。合理的方案个人 组长 管理层 )尽力按照这个开发进度来执行 重新方案1. 轻型的 XP原那么,周期性(三周)的变卦方案2. 灾难的 (20%的任务量会占据80% 发生时)如何构建高效的开发环境 工程方案开发文档 整理思绪与架构、磨刀不误砍柴工 Function Spec中需求写明的是本模块完成的义务,处理什么问题,有什么作用,为什么要这些功能,此外我们还会添加进适用范围,有什么缺乏,留意点是什么,还有哪些地方在以后可以进展改良。 Design Document主要描画实现此模块所涉及到的主要算法、数据构造、类的层次构造及调用关系。 如何构建高效的开发环境 开发文档编写代码 一致的代码风格提

8、供详细的注释及阐明 主要的模块要编写UnitTest如何构建高效的开发环境 编写代码代码管理 源代码的一致管理。daily build 如何构建高效的开发环境 代码管理BUG管理 经过BUG Tracking System 管理Bug库。测试部门发现一个BUG后在BUG Track中添加一个BUG,同时填入相关信息并assign给相应的开发人员,开发人员收到BUG分析并fix后assign给测试部门去verify,其中要填上分析的结果以及如何处理的详细阐明。假设测试部门对此BUG verify经过那么close BUG,假设verify failed并重新assign给开发人员并等待其fix。

9、测试部门发现BUG后,开发人员应马上矫正。 周期性汇报BUG情况。如何构建高效的开发环境 BUG管理Code Freeze 在code freeze阶段,测试部门在紧张地进展着各种测试,得出各种数据,并决议本版天性否可以release了。 如何构建高效的开发环境 Code FreezeCode Review Code Review中大家会提出问题和建议,集思广益,多个人共同出主意,有些能够一个人没有想到的问题会被大家发现,相互学习,共同提高。 如何构建高效的开发环境 Code ReviewTech Talk 计算机知识更新速度非常快,经常有一些新的术语、新的名词、新的思想、新的技术所产生,如过分开此行业几个月后重新回来就会对这些新的事物不解,而我们平常为了本人的工程埋头苦干能够忘了周围的世界发生了什么。Tech Tal

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论