`
holoblog
  • 浏览: 1264417 次
博客专栏
E0fcf0b7-6756-3051-9a54-90b4324c9940
SQL Server 20...
浏览量:19554
文章分类
社区版块
存档分类
最新评论

极限编程感悟

 
阅读更多
极限编程又称xp方法,是敏捷开发的软件过程模型。
极限编程的4条准则:沟通,简单,反馈和勇气(修复缺陷,集中攻关和放弃原有的代码)。
基本原则:快速反馈,假设简单,递增更改,提倡更改,优质工作。
开发软件的4项基本工作:编码,测试,倾听和设计
首先使用计划游戏,根据功能的优先级和实际进程来决定游戏的玩法,并只是制定下一阶段的计划,希望程序员主动的接受责任,并对预期实现的时间进行估计。不断发布小版本(小但是有价值)。使用隐喻,用有关整个系统如何运行的简单、众所周知的故事来指导所有的开发。使用的是简单的设计。通过测试来增强运行程序的信心,测试包括程序员进行的单元测试和客户方进行的功能测试,程序员们编写的每个测试都必须是独立的、自动化的。通过重构来简化程序并提高程序的柔性。采用结对编程,结对编程是xp方法的实践过程。代码归集体所有,防治复杂的代码进入系统,系统中不能包含重复的代码(有且仅有一次),系统拥有尽可能少的类,拥有尽可能少的方法。持续的集成,每次集成都要完成一项任务。规定每周工作时间是40个小时。要求有现场客户,要求使用统一的编码标准。分阶段的交付产品,进行迅速而具体的反馈,清晰的参赛系统的业务要求和为特殊任务配备的专家。
在xp中,团队负责体系结构。Xp不注重体系结构,但有几点机制可以确保它的实现:探究、隐喻、第一次迭代、小版本、重构和团队实践。
Xp方法一天的开发流程是:
1. 确定问题和解决问题的人。
2. 配对-快速设计会议。在战略上选择伙伴,战术上考虑选择输入编码的人。并周期性的交换角色。
3. Test,Q&A。在编码之前验证测试失败,测试可能出错的地方,如果不明确答案是什么就询问客户。
4. Refactor。找出“代码的味道”(感觉不对的地方)应用重构,验证单元测试,并使其依然通过。采用小幅度改动,每次行动后都要做单元测试。
5. 集成或丢弃代码。将集成的代码生成系统,运行所有的测试,测试必须全部通过。如果不容易集成到过去的代码中,就丢弃它,明天重试。
结对编程,有利于团队成员间的互相学习。结对编程的伙伴不仅要求人在现场,而且更重要的是对任务做出承诺。伙伴能帮助保证团队的价值观不被忽略。伙伴允许你做必须做的事,这也许意味着丢弃代码,保持学习,并从头开始。结对编程弥补了键入代码和大脑高质量思考的矛盾。因此而导致了高质量代码的快速产出。国外的结对编程经验表明追求完美的开发人员与多产的开发人员结对的效果最好。
Xp的方法提倡为了胜利而比赛。人们喜欢胜利,喜欢学习,喜欢与别人交流,喜欢成为团队的一部分,喜欢将事情控制在自己的手中,喜欢受到信任。喜欢出色的完成任务。喜欢使自己制作出的软件发挥作用。
Xp方法的好处:
1. 有利于团队的整体进步。
2. 不会因为一两个人的离队而使项目停滞不前。
3. 开发过程带给程序员快乐和趣味。
4. 开发出来的项目有质量的保证。
经过自己使用xp管理团队管理的一年的实践过程中发现,Xp方法不适用具有一下特点的团队:
1. 还没有任何编出一个项目的团队。
2. 团队中多数人并不理解xp的方法。
3. 团体中的编程人员不愿意交流。或有些编程人员希望自己独立写代码。
4. 设计未动,开发先行的团队。
5. 团队中多数人并没有学习必要的软件工程知识。或不重视团队的重要性。
6. 成员没有掌握足够的技能来评估自己的代码,或做必要的测试。
7. 成员中没有人能知道自己要实现的功能将会花费多少时间。
8. 没有充足编程时间的团队。
同时也发现xp方法不适用的项目:
1.没有客户方积极参与的项目.
2.复杂而庞大的项目.
3.有“高科技”攻关的项目.
4.项目组不熟悉的项目类型.
分享到:
评论

相关推荐

    极限编程1.3(极限编程系列)

    极限编程1.3(极限编程系列)极限编程1.3(极限编程系列)

    极限编程与敏捷开发.ppt

    "极限编程与敏捷开发" 极限编程是一种软件开发方法,它强调客户参与、迭代式开发、测试驱动开发、重构和简洁设计等原则。极限编程的核心是拥抱变化,快速响应客户需求,通过小版本的发布和客户参与来提高软件的质量...

    极限编程 XP xp简介

    在软件工程领域,随着项目复杂性的增加和用户需求的不断变化,敏捷开发方法应运而生,而极限编程(Extreme Programming,简称XP)便是敏捷方法中的一大亮点。它由知名软件开发专家Kent Beck提出,并在软件开发界引起...

    解析极限编程-拥抱变化

    解析极限编程-拥抱变化解析极限编程-拥抱变化解析极限编程-拥抱变化解析极限编程-拥抱变化解析极限编程-拥抱变化解析极限编程-拥抱变化

    我的编程感悟

    游戏之旅--我的编程感悟

    极限编程1.2(极限编程系列)

    极限编程1.2(极限编程系列)极限编程1.2(极限编程系列)

    [解析极限编程:拥抱变化(原书第2版)].pdf

    从给定的文件信息来看,标题为"解析极限编程:拥抱变化(原书第2版)",描述中提到该电子书为个人学习使用,禁止商业用途,并指出遇到版权问题需要联系删除。标签为"计算机 编程",表明这本书很可能是一本与计算机...

    24小时精通极限编程

    极限编程(Extreme Programming,简称XP)是一种敏捷软件开发方法,旨在通过提高开发团队的灵活性、协作性和响应能力来实现高质量的软件产品。本教程“24小时精通极限编程”将引领你逐步深入这一高效开发实践。 ...

    云风 游戏之旅-我的编程感悟

    虽然给出的部分内容并未包含实际的文字内容,但从标题“云风 游戏之旅-我的编程感悟”以及描述“游戏开发大神云风的经典著作 《游戏之旅-我的编程感悟》”中可以推测出书中可能涉及的关键知识点。 ### 关键知识点...

    解析极限编程 拥抱变化

    极限编程,通常称为XP,是一种针对业务和软件开发的规则,其作用在于将两者的力量集中在共同的、可以达到的目标上,使XP团队以可持续的步调生产优质的软件。本书是在《解析极限编程》第一版面世的5年之后,作者重新...

    解析极限编程拥抱变化

    解析极限编程拥抱变化

    极限编程论文

    极限编程(Extreme Programming,简称XP)是一种敏捷软件开发方法,由肯特·贝克(Kent Beck)在1997年提出。它强调快速反馈、简单设计和团队合作,以提高软件开发的质量和效率。本论文集围绕这个主题展开,深入探讨...

    [免费高清PDF]Java极限编程.扫描版.rar

    《Java极限编程》是一本深度探讨Java开发实践的书籍,主要针对如何在短时间内高效、高质量地完成软件开发项目。极限编程(Extreme Programming, XP)是一种敏捷开发方法论,它强调团队协作、快速反馈、持续集成和...

    游戏之旅-我的编程感悟云风

    游戏之旅-我的编程感悟,云风大神的编程感悟,不知道云风是谁吗???

    Java极限编程pdf资料

    Java极限编程,是一种敏捷开发的方法论,旨在通过频繁的反馈和持续改进来提高软件开发的效率和质量。这种编程方式强调快速迭代、测试驱动开发、重构以及团队协作等核心原则。下面,我们将深入探讨Java极限编程的相关...

    游戏之旅-我的编程感悟

    资源名称:游戏之旅-我的编程感悟资源截图: 资源太大,传百度网盘了,链接在附件中,有需要的同学自取。

    敏捷建模:极限编程和统一过程的有效实践

    敏捷建模:极限编程和统一过程的有效实践.pdf

Global site tag (gtag.js) - Google Analytics