在XP中經理人與程式設計師的權利

Extreme Progamming - Installed
Author: Ron Jefries, Ann Anderson, Chet Hendrickson
Translator: 范綱志
Chapter 1 極致軟體製程


經理人和客戶的權利
1. 你有權了解全盤的設計規劃, 知道哪些是可以做到, 何時可完成, 以及費用為何?

- 任何想要成功的專案, 都必須先對哪些要做, 何時要完成, 以及預算經費有整體的了解
- User stories 可以被利用來陳述來定義產品
- Small release則可確保你能在限期前瞭解你需要知道什麼

2. 你有權要求員工在工作周發揮最大的潛力
- 擁有計畫並不代表什麼, 只有確實依計畫行事才能成功
- 每個iteration通常不長, 因此必須確認每週該做的事都有確實完成

3. 你有權在實際可執行的環境下, 並依您指定的程序測試系統
- 實際的管理來自具體的資訊
- 除了依照Small release發表經常性的版本外, XP 專案也要求隨時保持系統的完整性, 也就是要做continuous integration
- 需要用客戶指定的測試程序進行測試, 以驗證系統的正確性

4. 你有權在不支付額外花費的情況下改變你的心意, 代換功能, 或著更動實作的優先順序
- 事物隨時都在改變, 因此XP專案必須simple design, 並且利用refactoring保持專案的簡單, 來面對隨時可能的改變.

5. 你有權得知計畫的變動, 並及時修該專案範圍以符合預定的完成日期. 你隨時都可以中止計畫, 同時還能得到可以反映已投入資源的可運作系統
- 專案太長在完成百分之九時以後, 遇到瓶頸而一籌莫展, 真正完成那一日遙遙無期
- XP的精神是要保證每個人都了解事情的真相, 這當然要告清晰且誠實的報告, 和公開的acceptance test才能做到
- 因為XP專案一定會先實作有business value的部份, 而且又有small release和continuous integration的理念, 所以XP的產品隨時都可以拿來發表


程式設計師的權利
1. 你有權知道哪些功能是必須的, 並且有非常清楚的優先順序
- User stories和iteration planning會告知business value是什麼, 以及重要功能為何
- 所以程式設計師一定要實作具有business value的功能

2. 你有權隨時提供高品質的產出
- Unit testing, refactoring, 和simple design是確保高品質的產出
- Pair programming也是能幫助提高品質, 縮短開發時程, 甚至能提供交互訓練的功能

3. 你有權要求和接受同事, 上層, 或客戶方面的協助
- 有時後供程式會被複雜的工作所淹沒, 若同事和經理能適時提供協助, 必能幫助他儘早回到正軌.
- 在XP中我們有customer onsite來確保所有需求都很徹底地被了解;我們有pair programming欄提供持續性的協助.
- 基本原則: 沒有人可以拒絕協助一個需要幫助的小組成員

4. 你有權自行決定和更新功能評估
- 專案成功與否的最主要關鍵, 是否明確知道你要做的是什麼, 再仔細評估執行專案所需的時間
- XP的iteration planning可以讓你進行此種管理

5. 你有權接受您的責任, 而不是只能被動地接受指定的責任
- 人們在了解並接受自己責任的情況下, 會展現較高的工作效率. 而不是用強迫的方式, 要求人們接受.
- 因此XP的規則之一"iteration planning", 就是要讓員工認同他們的職責, 我們讓員工自己決定要負責的工作項目
- 這種作法可以提升員工的榮譽感, 自然而然便能提供整個團隊的榮譽感

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 kojenchieh 的頭像
    kojenchieh

    David Ko的學習之旅

    kojenchieh 發表在 痞客邦 留言(0) 人氣()