📜  极限编程-附加功能

📅  最后修改于: 2021-01-07 06:15:52             🧑  作者: Mango


在本章中,我们将学习极限编程的一些附加功能。

反馈回路

极限编程的魅力在于持续不断的反馈,使每个人都专注于开发,并且朝着正确的方向继续发展而没有任何延迟。

在极限编程中,反馈是在不同级别上完成的,并达到了所需的足够的细节。在迭代和发行版中也要连续不断地完成此操作。

下表说明了反馈事件和反馈持续时间。

Feedback Event Feedback Duration
Pair Programming Seconds
Unit Testing Minutes
Clarifications among Team and with the Customer Hours
Progress In a Day
Acceptance Testing Days
Iteration Planning Weeks
Release Planning Months

项目管理

在极限编程中,不强调项目管理,并且经理角色执行最少和最基本的管理活动。

但是,这些活动嵌入了项目管理要求。

  • 发布计划

    • 范围由故事卡中的用户故事定义。

    • 估计是故事的估计,可以是故事点。

    • 发布里程碑记录了交付里程碑。

    • 发布分为迭代。

  • 迭代计划

    • 故事被充入任务卡中的任务中。

    • 估计是任务估计。

    • 通过平衡团队中的负载因子完成任务分配。

    • 任务的接受取决于团队的承诺和责任心。

  • 追踪

    • 从项目实施的实际时间开始的故事点速度。

    • 在开发人员级别执行的实际时间中,根据任务估算得出的生产率。

    • 缺陷追踪

极限编程–行业经验

从整个行业执行的极限编程项目中,有一些对团队有用的知识。

XP实践中的经验教训

在以下各节中,您将了解这些知识。

  • 简单设计-简单设计有效,易于构建和维护。

  • 隐喻-使用隐喻的主要目的是在整个开发过程中使用特定于域名的名称,这使客户也可以积极参与开发。

  • 集体所有权-每个人都为自己的良好守则感到自豪。通过共同努力,每个人都为每个人的代码感到自豪。

  • 计划-如果团队在一次迭代中完成许多用户案例,请减小迭代次数。让团队达成共识以更改计划。

扩展极限编程

最初,极限编程在较小的团队中很有效,团队规模最多为12-16个开发人员。

后来发现,将极限编程扩展到40-50人的团队是可能的。但是,建议通过建立递归团队来进行扩展。首先建立一个小团队,然后逐步成长,并使用第一团队为递归团队提供种子。

文献资料

极限编程不反对任何文档。它鼓励记录要求的内容,何时需要的内容以及仅记录到所需的充分细节。这可能因项目而异,并且由项目决定文档的范围。但是,极限编程实践不允许跳过文档。

应用XP的优势

发现极限编程在-

  • 高度不确定的环境

  • 内部项目

  • 合资企业

应用XP的缺点

发现极端编程在以下情况下是不利的:

  • 环境很大且很复杂。

  • 要求是众所周知的。

  • 客户距离遥远或无法联系。

对XP的误解

关于极限编程有一些误解。下表提供了对存在的误解的澄清。

Misconception Clarification
No written documentation Minimal and sufficient documentation needs to be there. However, there are no formal standards for how much or what kind of documents are needed.
No design Minimal explicit and up-front design needs to be there that evolves as the development progresses.
Extreme Programming is just pair programming and easy Pair Programming is just one of the Extreme Programming practices. It requires great discipline and consistency that is achieved in conjunction with the other Extreme Programming practices.
Extreme Programming is the one, true way to build software Extreme Programming is effective only in certain type of projects.