OOPAA

          Focusing on OO, Patterns, Architecture, and Agile
          posts - 29, comments - 75, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯(lián)系 :: 聚合  :: 管理

          讓非技術人員理解設計

          Posted on 2010-12-23 23:55 mingj 閱讀(6403) 評論(2)  編輯  收藏 所屬分類: agile 敏捷PM 項目管理

          作為技術人員,我們經(jīng)常需要跟客戶、業(yè)務分析人員等非技術人員溝通軟件設計方面的問題。如何比較直觀地向這些非技術人員解釋設計、軟件質量對項目的 影響,解釋糟糕設計、不干凈代碼給項目帶來的風險,解釋我們必須開始關注軟家設計問題?這里有兩個概念(metaphor)可以幫助我們達到這一點:

          技術債(Technical Debt)
          “技術債”指的是,團隊為了更早交付軟件、更快交付客戶價值或者其他一些考慮,被迫放棄良好的設計和干凈的代碼,從而對軟件未來的擴展和維護欠下了“債 務”。技術債就像財務上的欠債一樣,在前期債務較少的時候,投入時間和精力來解決技術債或許不如盡快交付的價值高。但隨著債務的增多,必然會影響新需求的 交付和既有代碼的維護,反而會延遲軟件的交付。而且,技術債也具有財務債的特點,就是隨著時間會像“滾雪球”一樣指數(shù)上升。

          設計償還底線(Design Payoff Line)
          與技術債對應的的概念是設計償還底線(Design Payoff Line),指的是可以通過犧牲設計質量來獲得上市速度(Time to Market)的功能數(shù)量。當系統(tǒng)功能少于這個數(shù)量時,我們還能繼續(xù)選擇承擔債務,但一旦超出這個數(shù)目時,債務就將影響軟件的上線速度。可惜的是,這個值 更多的是一個經(jīng)驗值,團隊很難預判項目的設計償還底線在哪里,但是有一個后置評判標準是:當團隊成員覺得無法忍受代碼的設計質量時,或者當客戶頻繁聽到代 碼質量影響交付速度時,團隊肯定已經(jīng)突破了這條底線。


          評論

          # re: 讓非技術人員理解設計  回復  更多評論   

          2010-12-24 09:52 by 車塵馬足顯者事,酒盞花枝隱士緣
          概念性的東西,沒看懂,想要表達什么意思//

          # re: 讓非技術人員理解設計  回復  更多評論   

          2010-12-30 16:46 by 劉恒濤
          這些都是商務層面的詞匯和方式。 只是用來忽悠客戶的。真的我們好的設計就一勞永逸了嗎,也不是。 沒有經(jīng)過詳細設計的肯定不行嗎也不一定,不同規(guī)模的項目和不同的實際情況要采用合適的方式。
          主站蜘蛛池模板: 建宁县| 祁连县| 保康县| 平凉市| 宝坻区| 论坛| 石屏县| 洪泽县| 门源| 黄陵县| 阿坝县| 郯城县| 偏关县| 科技| 高尔夫| 唐河县| 宜兰县| 繁昌县| 青龙| 铅山县| 罗平县| 沁源县| 常宁市| 湘西| 穆棱市| 澄城县| 屯门区| 滦南县| 平顺县| 大同县| 九龙城区| 任丘市| 甘南县| 道孚县| 博爱县| 克什克腾旗| 丹巴县| 通州市| 时尚| 黄梅县| 游戏|