官术网_书友最值得收藏!

Introduction to the mechanics of XP

Here are the basic characteristics and features of Extreme Programming:

  • Planning style: Adaptive
  • Delivery style: Iterative/Incremental, sustainable pace
  • Iteration length: Ranges from 1 to 3 weeks, with a preference for the shortest possible
  • Values: Communication, simplicity, feedback, courage, and respect
  • Roles: Customer, Development Team
  • Team size: small, 2-10
  • Artifacts: Release plan, iteration plan, User Stories, tasks, CRC cards
  • Technical practices: Pair Programming all production code, TDD, metaphor, refactoring, collective code ownership, Continuous Integration, daily builds, Spikes, sustainable pace
  • Events: Release planning/iteration planning, daily standup
  • Special features: Prescribes technical practices, gathers requirements with User Stories, promotes working at a sustainable pace
  • Lacks: Compromise—it's a fully committed, all-or-nothing approach

These are the roles XP recommends for a team:

There doesn't need to be a one-to-one relationship between team members and functions. One person can perform more than one role.

For example, the person who has the Coach role could also have the Tracker role. Some instances of combined roles are Programmer-Tracker, Programmer-Tester, and Coach-Tracker. Some roles shouldn't be mixed; for example, for the Coach to remain objective, they probably shouldn’t combine with anything except Tracker. The same is true for the Customer, where we will also want to avoid conflicts of interest. Plus it's a time-consuming role in its own right.

XP requires that the Customer is part of the team; their involvement throughout the product development life cycle is key to its success. In XP, it's assumed that the customer has the most information about the value of what is being built. At the same time, it's expected that the Development Team has the best idea of how to implement that value and how much it will cost.

While this may be a radical shift from your current way of working, you'll be amazed by the results of having the customer on the team—I've seen this work well many times. We may be the experts at building software, but our customer is the expert in their domain and is the person closest to the real-world problem that we're trying to solve.

XP uses iterations to deliver working software incrementally. The iteration length is anywhere from 1 to 3 weeks. The team should pick an iteration length and fix it, only changing it if it's necessary:

主站蜘蛛池模板: 瑞安市| 鸡泽县| 泸西县| 丰台区| 攀枝花市| 定陶县| 阿勒泰市| 林西县| 南部县| 龙游县| 邹平县| 田林县| 汾西县| 赣州市| 常宁市| 达孜县| 鹿泉市| 海宁市| 南陵县| 顺昌县| 潜江市| 毕节市| 宁武县| 陵川县| 德令哈市| 绥德县| 红原县| 景德镇市| 武平县| 东港市| 滦南县| 十堰市| 淮阳县| 青阳县| 镇宁| 高陵县| 保康县| 榆社县| 毕节市| 长春市| 平陆县|