資源描述:
《微軟開發(fā)流程》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、一.團隊組織1.常見問題·沒有人愿意做測試·覺得養(yǎng)不起那么多測試人員·開發(fā)人員不遵循規(guī)范,隨心所欲·項目經(jīng)理事必躬親,分身乏術(shù)2.微軟團隊模型各角色的職責(zé)角色?職責(zé)項目經(jīng)理編寫功能規(guī)范,協(xié)調(diào)各角色關(guān)系產(chǎn)品經(jīng)理客戶聯(lián)系的橋梁,進行需求分析用戶教育讓產(chǎn)品容易使用發(fā)布經(jīng)理保證產(chǎn)品順利發(fā)布二.項目管理1.常見問題·無法決定項目所需的資源(人力和預(yù)算)·無法決定項目的進度表·無法控制外包項目的進度和質(zhì)量2.微軟項目管理--多里程碑式流程·每個里程碑完成部分功能·便于團隊集中力量完成一個又一個功能·提供多個機會以適應(yīng)需求的更改如何完成一個里程碑·步驟一:達成共識·基本完成需求調(diào)研和分析(產(chǎn)品經(jīng)
2、理負責(zé))·確定大方向和長中短期目標(biāo)·所有角色都參與討論并真正認同結(jié)論·產(chǎn)生的文檔:o常見用戶情景:覆蓋80%以上功能oVision:言簡意賅地說明大方向,并有激勵團隊的作用·步驟二:完成項目計劃o編寫詳細的功能規(guī)范(項目經(jīng)理負責(zé))o在編程前想清楚所有功能流程,并引導(dǎo)用戶明確需求o所有角色都參與審閱功能規(guī)范o制訂開發(fā)計劃和進度表(開發(fā)團隊)o制訂測試計劃和進度表(測試團隊)o分配資源(人力和預(yù)算)o形成項目綜合計劃和綜合進度表o產(chǎn)生的文檔:功能規(guī)范,開發(fā)計劃,測試計劃(用例),項目綜合計劃開發(fā)進度表,測試進度表,綜合進度表·步驟三:完成功能·開發(fā)人員分別完成自己的功能·使用版本控制工
3、具·使程序員及時checkout和checkin,避免積累大量代碼·及時進行模塊間的整合,及時發(fā)現(xiàn)問題(dailybuild)·對每一項可測試的功能進行測試,無需等待·使用測試用例工具,對功能進行完整和重復(fù)的檢驗·使用BMS進行缺陷跟蹤·記錄所有程序問題·實現(xiàn)解決Bug的自動流程·按照綜合進度表不斷檢查進度 ·使用的工具:o版本控制工具VSSo缺陷跟蹤工具Raid/BMSo測試用例管理工具·步驟四:穩(wěn)定與發(fā)布·測試組全面地測試功能,包括性能和穩(wěn)定性·開發(fā)組全力配合解決Bug·使用BMS進行o監(jiān)測質(zhì)量情況o預(yù)測發(fā)布日期·專家會診機制:o決定Bug的優(yōu)先度o決定哪些Bug可以等到下個里
4、程碑或版本中解決o決定由誰解決某個Bug ·使用的工具:o版本控制工具VSSo缺陷跟蹤工具BMSo測試用例管理工具三.微軟的開發(fā)管理經(jīng)驗:100%以Bug為核心1.Bug及常見類型·功能未實現(xiàn),和規(guī)格說明書不一致·不能工作:死機,沒反應(yīng)·不兼容·邊界條件·界面、消息、提示不夠準(zhǔn)確,不友好·把尚未完成的工作也作為一個Bug·文檔與幫助信息中的缺陷也是Bug2.RAID/BMS的基本功能·完整的Bug數(shù)據(jù)庫·整個產(chǎn)品組的中央記錄和控制·強大的查詢功能,有效地跟蹤項目的狀態(tài)·所有的記錄無法刪除,對于每個記錄只能一直添加內(nèi)容·豐富的報表功能,為產(chǎn)品發(fā)布提供判斷標(biāo)準(zhǔn)3.Bug記錄中的有效信息
5、·狀態(tài)·負責(zé)人·問題種類·嚴重級·優(yōu)先級·修改時間·登記時間·缺陷來源·解決方案·運行環(huán)境·缺陷關(guān)聯(lián)·附件·附圖·缺陷細節(jié)4.Bug的嚴重程度1.死機,數(shù)據(jù)丟失,主要功能組完全喪失,系統(tǒng)懸掛2.主要功能喪失,導(dǎo)致嚴重的問題,或致命的錯誤聲明3.次要功能喪失,不太嚴重,如提示信息不太準(zhǔn)確4.微小的問題,對功能幾乎沒有影響,產(chǎn)品及屬性仍可使用.如有個錯別字5.激活的Bug數(shù)量的趨勢·代碼完成前:很少·代碼完成后:增長很快·接近Beta:下降·接近RC:奔向零·產(chǎn)品質(zhì)量和里程碑的信號·每天新建的Bug與修正的Bug相比較·Active狀態(tài)Bug的總數(shù)四.微軟的一天1.讓我們看看項目中每個
6、角色的一天是如何度過的·開發(fā)·測試·項目經(jīng)理注:里程碑的每個階段每個角色的工作有不同側(cè)重點,我們以“完成功能”階段為例微軟的一天從幾點開始?答案:半夜為什么?因為DailyBuild是所有工作的核心,而且是在半夜自動啟動。每日構(gòu)造DailyBuild·你知道自己所用Windows的版本號嗎?·DailyBuild的意義:o模塊得以及時整合o要求程序員及時把最新代碼放入代碼庫·用腳本語言和編譯/鏈接工具實現(xiàn)·BVTBuildVerificationTesto對Build進行驗證·BlockingBugo讓Build無法完成的問題oBVT中發(fā)現(xiàn)的問題2.程序員每天上班前最擔(dān)心什么?答案
7、:因為自己昨天的代碼check-in,造成BlockingBug.為什么?因為每天的Build是所有人當(dāng)天工作的基礎(chǔ):程序員需要Build驗證與其他模塊的接口測試需要Build發(fā)現(xiàn)新Bug,并驗證新Build中已解決的Bug有BlockingBug怎么辦?解決問題,并對今天的Build打Patch。開發(fā)人員的正事經(jīng)歷對Build的提心吊膽和爭分奪秒之后,第一件事做什么答案:打開缺陷跟蹤工具,查看指定給自己的Bug,解決高優(yōu)先度的Bug。因為質(zhì)量重于新功能。接下來,開發(fā)