10個開發原則
2011/9/15 14:47:56

在從事軟件開發若干年之后,我已經對“軟件應該如何設計”有些心得。實際上,我有了這樣一個結論:所有的事情最后都濃縮成10個原則,如果我們很好地執行這些原則,任何軟件開發都應該會取得成功。
1.客戶至上
“如果我們沒有關注客戶……其他人將會取代我們。”
從客戶的角度出發,客戶首先會把焦點集中在產品開發的真正價值,其他方面(例如概念、需求、技術等等)在項目中是次要的。
不關注客戶,就是程序員常犯的5個非技術性錯誤的其中之一。
2.代碼質量
即使代碼質量是一些非常主觀性的東西,(甚至有人說所有的代碼都有問題),它卻影響著很多重要的方面,比如:如何去維護應用程序,或者如何去帶一個新手程序員。
在我看來,代碼質量的指標在于:簡單性、可讀性、健壯性和可測試性。其他特性,例如外觀或者可擴展性,如果沒有要求的話,在你的應用程序中可以靈活設計。
3.授權
軟件開發過程中最重要的資源是人力,而非技術。人力決定產品的好壞,但他們需要得到授權。
授權是一個鼓勵開發者積極做事和制定決策的過程。一些高效的機構的授權體現為:指導、配合或者委派。不知你是否也有過和Derek相同的經歷,每隔 5分鐘就有員工跑過來向他請示這個和那個問題?如果有,可以通過《管理者的困境:放權或者崩潰》這篇文章看看Derek如何解決這個問題的。

4.持續集成
從我的經驗看來,集成是軟件開發的主要問題。在項目后期或者大型功能模塊完成后,等著集成是一個令人糾結的過程。
持續的集成是保證每部分委托的代碼在系統中自動集成的過程。請記住,持續集成優先于持續編譯。Martin Fowler的這篇文章是網上關于持續集成的最優秀的參考文獻之一。
5.迭代
迭代提供了持續的反饋信息。持續反饋很重要,因為它降低了軟件開發的不穩定性。
雖然迭代經常與敏捷方法有關系,不過有其他方法例如RUP,也使用迭代,他們卻不是敏捷方法家族中的一員,記住這一點很重要。
6.自動化測試
允許重構和遞歸,給開發者帶來自信,如果得到有效貫徹的話,會提高最終產品的正確性。對于自動化測試,你可以考慮與測試有關的一些情況和如何編寫一個良好測試組件的建議。
7.重構
不管你如何關注編碼,在你邁出第一步的時候,你將會走錯路。重構是我們用來保持代碼修改的做法,以滿足系統說明的必要更迭。
8.非正式架構
前期的大型設計,除非你是NASA,能夠把項目50-60%的時間花在這上面,否則這完全是浪費,毫無準備去編碼情形也一樣。非正式架構是一種折衷解決方案,它在項目發展的基礎上進行討論,并存留于文件,留言板或者類似的物件之中。
9.溝通
軟件開發只與溝通有關。客戶向軟件開發團隊闡述他想要達到的目標,以便于軟件開發團隊能通過編碼形式向計算機解釋。

10.避免浪費
浪費是軟件開發過程的主要生產力殺手之一。毫無必要的會議、毫無必要的要求、毫無必要的過程和毫無必要的文件成為最常見和最危險的浪費。

返回列表
返回首頁 主站蜘蛛池模板: 国产私拍福利精品视频网站| 新木乃伊电影免费观看完整版| 亚洲精品老司机| 色135综合网| 国产成人久久精品二区三区| 7777精品久久久大香线蕉| 好吊妞视频这里有精品| 中文字幕一区二区三区精彩视频 | 国产小鲜肉男同志gay| 69无人区卡一卡二卡| 好男人好影视在线播放| 中文字幕在线第二页| 日本理论片午午伦夜理片2021| 亚洲五月综合网色九月色| 波多野结衣四虎| 免费在线观看一级毛片| 美女被免费网站在线视| 国产免费变态视频网址网站 | 日日干日日操日日射| 久久精品无码中文字幕| 欧美乱大交xxxxxbbb| 亚洲欧洲美洲无码精品VA| 狠狠综合久久综合88亚洲| 冠希实干阿娇13分钟视频在线看| 色哟哟精品视频在线观看| 国产后入又长又硬| 国产卡一卡二卡3卡4卡无卡视频| 国产精品免费看香蕉| 911色主站性欧美| 欧美日韩国产高清一区二区三区| 免费人成网站在线观看欧美 | 精品美女模特在线网站| 国产ts人妖另类专区| 青青草原综合网| 国产在线高清理伦片a电影| 国产激情久久久久影| 国产日韩成人内射视频| 午夜免费1000部| 国产精品91视频| 福利视频导航网| 国产精品免费看香蕉|