如何用正確的方法來寫出質量好的軟件的75條體會[轉貼]

這七十五條,是我這些年來,尤其是在微軟工作兩年來的體會的總結,關於如何用正確的方法來寫出質量好的軟件的體會的總結。或許看似平淡無奇,但大音希聲,這七十五條的效用,未必及不上那幾十頁幾百頁的體系,卻遠遠比那好用:

1. 你們的項目組使用源代碼管理工具了麼?
2. 你們的項目組使用缺陷管理系統了麼?
3. 你們的測試組還在用Word寫測試用例麼?
4. 你們的項目組有沒有建立一個門戶網站?
5. 你們的項目組用了你能買到最好的工具麼?
6. 你們的程序員工作在安靜的環境裏麼?
7. 你們的員工每個人都有一部電話麼?
8. 你們每個人都知道出了問題應該找誰麼?
9. 你遇到過有人說“我以爲…”麼?
10. 你們的項目組中所有的人都坐在一起麼?
11. 你們的進度表是否反映最新開發進展情況?
12. 你們的工作量是先由每個人自己估算的麼?
13. 你們的開發人員從項目一開始就加班麼?
14. 你們的項目計劃中Buffer Time是加在每個小任務後面的麼?
15. 值得再多花一些時間,從95%做到100%好
16. 登記新缺陷時,是否寫清了重現步驟?
17. 寫新代碼前會把已知缺陷解決麼?
18. 你們對缺陷的輕重緩急有事先的約定麼?
19. 你們對意見不一的缺陷有三國會議麼?
20. 所有的缺陷都是由登記的人最後關閉的麼?
21. 你們的程序員厭惡修改老的代碼麼?
22. 你們項目組有Team Morale Activity麼?
23. 你們項目組有自己的Logo麼?
24. 你們的員工有印有公司Logo的T-Shirt麼?
25. 總經理至少每月參加一次項目組會議
26. 你們是給每個Dev開一個分支麼?
27. 有人長期不Check-In代碼麼?
28. 在Check-In代碼時都填寫註釋了麼?
29. 有沒有設定每天Check-In的最後期限?
30. 你們能把所有源碼一下子編譯成安裝文件嗎?
31. 你們的項目組做每日編譯麼?
32. 你們公司有沒有積累一個項目風險列表?
33. 設計越簡單越好
34. 儘量利用現有的產品、技術、代碼
35. 你們會隔一段時間就停下來夯實代碼麼?
36. 你們的項目組每個人都寫Daily Report麼?
37. 你們的項目經理會發出Weekly Report麼?
38. 你們項目組是否至少每週全體開會一次?
39. 你們項目組的會議、討論都有記錄麼?
40. 其他部門知道你們項目組在幹什麼麼?
41. 通過Email進行所有正式溝通
42. 爲項目組建立多個Mailing Group
43. 每個人都知道哪裏可以找到全部的文檔麼?
44. 你做決定、做變化時,告訴大家原因了麼?
45. Stay agile and expect change
46. 你們有沒有專職的軟件測試人員?
47. 你們的測試有一份總的計劃來規定做什麼和怎麼做麼?
48. 你是先寫Test Case然後再測試的麼?
49. 你是否會爲各種輸入組合創建測試用例?
50. 你們的程序員能看到測試用例麼?
51. 你們是否隨便抓一些人來做易用性測試?
52. 你對自動測試的期望正確麼?
53. 你們的性能測試是等所有功能都開發完才做的麼?
54. 你注意到測試中的殺蟲劑效應了麼?
55. 你們項目組中有人能說出產品的當前整體質量情況麼?
56. 你們有單元測試麼?
57. 你們的程序員是寫完代碼就扔過牆的麼?
58. 你們的程序中所有的函數都有輸入檢查麼?
59. 產品有統一的錯誤處理機制和報錯界面麼?
60. 你們有統一的代碼書寫規範麼?
61. 你們的每個人都瞭解項目的商業意義麼?
62. 產品各部分的界面和操作習慣一致麼?
63. 有可以作爲宣傳亮點的Cool Feature麼?
64. 儘可能縮短產品的啓動時間
65. 不要過於注重內在品質而忽視了第一眼的外在印象
66. 你們根據詳細產品功能說明書做開發麼?
67. 開始開發和測試之前每個人都仔細審閱功能設計麼?
68. 所有人都始終想着The Whole Image麼?
69. Dev工作的劃分是單純縱向或橫向的麼?
70. 你們的程序員寫程序設計說明文檔麼?
71. 你在招人面試時讓他寫一段程序麼?
72. 你們有沒有技術交流講座?
73. 你們的程序員都能專注於一件事情麼?
74. 你們的程序員會誇大完成某項工作所需要的時間麼?
75. 儘量不要用Virtual Heads

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章