极限编程基本概念
2006-10-16 08:55
351 查看
极限编程
极限编程是价值而非实践驱动的高度迭代的开发过程。
极限编程的价值:
1、沟通(Communication):追求有效的沟通。
2、简单(Simplicity):实现最简单的可行方案。
3、反馈(Feedback):快速有效的反馈
4、勇气(Courage):勇于放弃和重构
基本原则:
1、快速反馈(Rapid Feedback)
2、假定简单(Assume Simplicity)
3、递增改变(Incremental Change)
4、拥抱改变(Embrace Change)
5、质量产品(Quality Work)
核心活动:
需求->测试->编码->设计
极限编程基本实践:
1、小版本(Small Release)迭代
2、规则游戏(Planning Game)(用例驱动)
3、现场客户(On-Site Customer)
4、隐喻(Metaphor)(统一术语)
5、简单设计(Simple Design)
6、重构(Refactoring)
7、测试驱动开发(Test-Driven Development,TDD)
8、持续集成(Continuous Integration)
9、结对编程(Pair Programming)
10、代码共有(Collective Code Ownership)
11、编码标准(Coding Standards)
12、每周40小时工作制
极限编程的优点
1、重视客户的参与
2、重视团队合作和沟通
3、制定计划前要做出合理预测
4、让编程人员参与软件功能的管理
5、重视质量
6、简单设计
7、高频率的重新设计和重构
8、高频率及全面的测试
9、递增开发
10、连续的过程评估
11、对过去的工作持续不断的检查
极限编程的缺点
1、以代码为中心,忽略了设计
2、缺乏设计文档,局限于小规模项目
3、对已完成工作的检查步骤缺乏清晰的结构
4、质量保证依赖于测试
5、缺乏质量规划
6、没有提供数据的收集和使用的指导
7、开发过程不详细
8、全新的管理手法带来的认同度问题
9、缺乏过渡时的必要支持
极限编程是价值而非实践驱动的高度迭代的开发过程。
极限编程的价值:
1、沟通(Communication):追求有效的沟通。
2、简单(Simplicity):实现最简单的可行方案。
3、反馈(Feedback):快速有效的反馈
4、勇气(Courage):勇于放弃和重构
基本原则:
1、快速反馈(Rapid Feedback)
2、假定简单(Assume Simplicity)
3、递增改变(Incremental Change)
4、拥抱改变(Embrace Change)
5、质量产品(Quality Work)
核心活动:
需求->测试->编码->设计
极限编程基本实践:
1、小版本(Small Release)迭代
2、规则游戏(Planning Game)(用例驱动)
3、现场客户(On-Site Customer)
4、隐喻(Metaphor)(统一术语)
5、简单设计(Simple Design)
6、重构(Refactoring)
7、测试驱动开发(Test-Driven Development,TDD)
8、持续集成(Continuous Integration)
9、结对编程(Pair Programming)
10、代码共有(Collective Code Ownership)
11、编码标准(Coding Standards)
12、每周40小时工作制
极限编程的优点
1、重视客户的参与
2、重视团队合作和沟通
3、制定计划前要做出合理预测
4、让编程人员参与软件功能的管理
5、重视质量
6、简单设计
7、高频率的重新设计和重构
8、高频率及全面的测试
9、递增开发
10、连续的过程评估
11、对过去的工作持续不断的检查
极限编程的缺点
1、以代码为中心,忽略了设计
2、缺乏设计文档,局限于小规模项目
3、对已完成工作的检查步骤缺乏清晰的结构
4、质量保证依赖于测试
5、缺乏质量规划
6、没有提供数据的收集和使用的指导
7、开发过程不详细
8、全新的管理手法带来的认同度问题
9、缺乏过渡时的必要支持
相关文章推荐
- Linux的进程编程-之一-基本概念
- C#网络编程(基本概念和操作)
- 编程思想基本概念
- 网络编程系列一网络编程中的基本概念
- 深入浅出Visual C++动态链接库(Dll)编程之一:基本概念
- Linux系统进程控制编程(一)————基本概念和函数getpid的使用
- 【Unity编程】Unity中的基本概念
- 【转载】C#网络编程(基本概念和操作)
- Java并发编程 - 基本概念
- 图形编程的基本概念即自定义view的实现方法
- 【3】Java并发编程:多线程基本概念
- 深入浅出Visual C++动态链接库(Dll)编程之一:基本概念
- socket编程--socket基本概念
- Linux系统编程手册一 :Linux系统基本概念。
- 网络编程的一些基本概念
- 玩转MFC文档视图架构编程1——深入浅出MFC文档/视图架构之基本概念深入浅出MFC文档/视图架构之文档
- SSD8网络的一些事 网络编程的基本概念,TCP/IP协议简介
- Linux Shell 基本概念及编程(8)
- C#网络编程(基本概念和操作) - Part.1
- 网络编程中的基本概念