- 精益軟件度量——實踐者的觀察與思考
- 張松
- 767字
- 2019-01-01 23:46:34
1.3 度量不是什么
1.度量不是軟件開發固有的活動。
度量本身并不對客戶直接可見,不是作為產品或服務的一部分為客戶直接創造價值,因此根據精益的理念,應該盡可能地減少。作為一個組織來講,應該積極地評估當前的度量活動的成本,分析是否真正為達成業務目標發揮著價值,從而確保運行度量體系的投入產出是在一個合理的水平。
2.度量應該避免跟績效直接相關。
正如前面所說的,軟件開發當中的度量大多使用的是衍生指標,因此單獨的指標,甚至是一系列的指標加在一起,也通常無法反應具體開發場景的上下文。用度量結果作為判定績效級別的主要手段是一件非常危險的事情,幾個同樣優秀的團隊或個人在具體指標上的表現,各自可以有很大的差異。這就好像用同樣的指標,比如GDP,來考核一個舒緩輕松的旅游城市大理和一個緊張繁忙的工業城市東莞。如果由此造成了兩個城市趨同的建設行為,比如大建工廠,大修基礎設施,想象一下在洱海邊工廠林立的情景吧,對大理來說,這就會是災難性的后果。同樣,把一套標準的度量與個人、團隊績效強相關,很可能導致各種奇怪的博弈行為,中長期的負面作用經常會大于短時間指標提升帶來的好處。前面提到的通過代碼行數產出度量生產效率的方式,帶來的大量冗余代碼、廢代碼就是軟件開發中的諸多博弈行為之一。
3.度量不是免費的。
度量需要投入團隊的時間,項目管理人員的時間,質量保障人員的時間,以及公司管理人員的時間,還可能會有工具和基礎設施的投入。圍繞各種目標需要度量體系的設計和實施,體系的運轉需要數據的收集、分析和匯報,這些環節做得不到位是不可能產生預期效果的,而要做到位,所需的投入可能并不是一個可以忽略的小數目。因此,目標和指標的選擇就顯得特別重要,試圖實施一個大而全的度量體系,通常弊大于利。
最后,軟件開發中并不是所有的目的都要用度量來達成,度量也不是幫助達成所有目標的靈丹妙藥。
推薦閱讀
- Spring開發者的Quarkus實戰
- 卡爾曼濾波原理及應用:MATLAB仿真(第2版)
- 搜索引擎與程序化廣告:原理、設計與實戰
- Python跨平臺應用軟件開發實戰
- CATIA V5 從入門到精通(第二版)
- Unity 2017經典游戲開發教程:算法分析與實現
- 36個創意電子小制作:安全衛士
- 持續交付2.0:業務引領的DevOps精要(增訂本)
- Kubernetes Operator開發進階
- 構建移動網站與APP:ionic移動開發入門與實戰 (跨平臺移動開發叢書)
- Serverless核心技術和大規模實踐
- ChatGPT驅動軟件開發:AI在軟件研發全流程中的革新與實踐
- C++從入門到精通(第2版)
- 軟件工程最佳實踐
- 軟件工程