<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    posts - 6, comments - 6, trackbacks - 0, articles - 14

    微軟Bug管理

    Posted on 2005-02-17 11:22 zhoulch's blog 閱讀(180) 評論(0)  編輯  收藏 所屬分類: 軟件管理

    微軟Bug管理

    來自:微軟   蔡锫

    一.團隊組織

    1.常見問題

    • 沒有人愿意做測試
    • 覺得養不起那么多測試人員
    • 開發人員不遵循規范,隨心所欲
    • 項目經理事必躬親,分身乏術

    2.微軟團隊模型

    各角色的職責

    角色 職責
    項目經理 編寫功能規范,協調各角色關系
    產品經理 客戶聯系的橋梁,進行需求分析
    用戶教育 讓產品容易使用
    發布經理 保證產品順利發布

    二.項目管理

    1.常見問題

    • 無法決定項目所需的資源(人力和預算)
    • 無法決定項目的進度表
    • 無法控制外包項目的進度和質量

    2.微軟項目管理-- 多里程碑式流程

    • 每個里程碑完成部分功能
    • 便于團隊集中力量完成一個又一個功能
    • 提供多個機會以適應需求的更改

    如何完成一個里程碑

    • 步驟一: 達成共識
    • 基本完成需求調研和分析 (產品經理負責)
    • 確定大方向和長中短期目標
    • 所有角色都參與討論并真正認同結論
    • 產生的文檔:
      • 常見用戶情景:覆蓋80%以上功能
      • Vision:言簡意賅地說明大方向,并有激勵團隊的作用
    • 步驟二: 完成項目計劃
      • 編寫詳細的功能規范(項目經理負責)
      • 在編程前想清楚所有功能流程,并引導用戶明確需求
      • 所有角色都參與審閱功能規范
      • 制訂開發計劃和進度表(開發團隊)
      • 制訂測試計劃和進度表(測試團隊)
      • 分配資源(人力和預算)
      • 形成項目綜合計劃和綜合進度表
      • 產生的文檔:
        功能規范,開發計劃,測試計劃(用例),項目綜合計劃
        開發進度表,測試進度表,綜合進度表
    • 步驟三: 完成功能
    • 開發人員分別完成自己的功能
    • 使用版本控制工具
    • 使程序員及時check out和check in,避免積累大量代碼
    • 及時進行模塊間的整合,及時發現問題(daily build)
    • 對每一項可測試的功能進行測試,無需等待
    • 使用測試用例工具,對功能進行完整和重復的檢驗
    • 使用BMS進行缺陷跟蹤
    • 記錄所有程序問題
    • 實現解決Bug的自動流程
    • 按照綜合進度表不斷檢查進度
       
    • 使用的工具:
      • 版本控制工具 VSS
      • 缺陷跟蹤工具 Raid/BMS
      • 測試用例管理工具
    • 步驟四: 穩定與發布
    • 測試組全面地測試功能,包括性能和穩定性
    • 開發組全力配合解決Bug
    • 使用BMS進行
      • 監測質量情況
      • 預測發布日期
    • 專家會診機制:
      • 決定Bug的優先度
      • 決定哪些Bug可以等到下個里程碑或版本中解決
      • 決定由誰解決某個Bug
         
    • 使用的工具:
      • 版本控制工具 VSS
      • 缺陷跟蹤工具 BMS
      • 測試用例管理工具

    三. 微軟的開發管理經驗:100%以Bug為核心

    1.Bug 及常見類型

    • 功能未實現,和規格說明書不一致
    • 不能工作:死機,沒反應
    • 不兼容
    • 邊界條件
    • 界面、消息、提示不夠準確,不友好
    • 把尚未完成的工作也作為一個Bug
    • 文檔與幫助信息中的缺陷也是Bug

    2.RAID/BMS的基本功能

    • 完整的Bug數據庫
    • 整個產品組的中央記錄和控制
    • 強大的查詢功能,有效地跟蹤項目的狀態
    • 所有的記錄無法刪除,對于每個記錄只能一直添加內容
    • 豐富的報表功能,為產品發布提供判斷標準

    3.Bug 記錄中的有效信息
    • 狀態
    • 負責人
    • 問題種類
    • 嚴重級
    • 優先級
    • 修改時間
    • 登記時間
    • 缺陷來源
    • 解決方案
    • 運行環境
    • 缺陷關聯
    • 附件
    • 附圖
    • 缺陷細節

    4.Bug 的嚴重程度

    1. 死機,數據丟失,主要功能組完全喪失,系統懸掛
    2. 主要功能喪失,導致嚴重的問題,或致命的錯誤聲明
    3. 次要功能喪失, 不太嚴重,如提示信息不太準確
    4. 微小的問題,對功能幾乎沒有影響,產品及屬性仍可使用. 如有個錯別字

    5.激活的Bug數量的趨勢

    • 代碼完成前:很少
    • 代碼完成后:增長很快
    • 接近Beta: 下降
    • 接近RC: 奔向零
    • 產品質量和里程碑的信號
    • 每天新建的Bug 與 修正的 Bug 相比較
    • Active 狀態 Bug 的總數

    四.微軟的一天

    1. 讓我們看看項目中每個角色的一天是如何度過的

    • 開發
    • 測試
    • 項目經理

    注:里程碑的每個階段每個角色的工作有不同側重點,我們以“完成功能”階段為例


    微軟的一天從幾點開始?

    答案:半夜

    為什么?

    因為Daily Build是所有工作的核心,而且是在半夜自動啟動。

    每日構造Daily Build

    • 你知道自己所用Windows的版本號嗎?
    • Daily Build的意義:
      • 模塊得以及時整合
      • 要求程序員及時把最新代碼放入代碼庫
    • 用腳本語言和編譯/鏈接工具實現
    • BVT Build Verification Test
      • 對Build進行驗證
    • Blocking Bug
      • 讓Build無法完成的問題
      • BVT中發現的問題

    2.程序員每天上班前最擔心什么?

    答案:因為自己昨天的代碼check-in,造成Blocking Bug.

    為什么?

    因為每天的Build是所有人當天工作的基礎:
    程序員需要Build驗證與其他模塊的接口
    測試需要Build發現新Bug,并驗證新Build中已解決的Bug

    有Blocking Bug怎么辦?

    解決問題,并對今天的Build打Patch。

    開發人員的正事

    經歷對Build的提心吊膽和爭分奪秒之后,第一件事做什么
    答案:打開缺陷跟蹤工具,查看指定給自己的Bug,解決高優先度的Bug。因為質量重于新功能。

    接下來,開發人員會…

    從版本控制工具中Check out代碼
    修改代碼(解決Bug或實現新功能)
    取得版本工具中最新變化,在本機Build和單元測試
    請開發組同事作Code Review
    Check in代碼



    3.測試人員第一件事做什么?

    答案:打開Raid/BMS,查看指定給自己的Bug,驗證已解決的Bug。

    接下來,測試人員會…

    • 根據測試用例檢驗今天的Build
    • 在Raid/BMS中記錄新發現的Bug

    4.專家會診

    • 參加者:項目經理和開發組長、測試組長
    • 通過Raid/BMS評估每個未解決的Bug
      • 決定Bug優先度
      • 可否等到下個里程碑或版本解決?
      • 誰來解決
    • 預測項目實際進度和發布時間

    缺陷走勢圖

    5.回顧微軟的一天

    • 構造: daily build
    • 開發: 解決blocking bugs, 實現功能, check-out, code review, check-in
    • 測試: BVT, 使用測試用例進行測試
    • 項目經理/組長: 專家會診

    6.微軟的做法解決了那些常見問題?

    質量問題

    • 以前解決過的問題發布時又出現了,需要返工
    • 無法預估發布時間 過早發布,帶來質量和維護問題
    • 測試發現的問題被忘卻或不了了之
    • 無法衡量測試員和開發員的工作
    • 程序中的問題往往在發布后才發現

    文檔管理問題

    • 文檔與程序脫節,文檔成為程序結果的描述
    • 項目組把寫文檔看成負擔

    團隊協調問題

    • 開發人員各自為戰,進行整合時發現模塊銜接中的嚴重問題 需要作大的改動
    • 沒有保管好公司以往的版本和代碼,無法滿足用戶對舊版本的更改要求
    • 開發人員離職對項目帶來很大沖擊,沒有人知道代碼在哪,或無法讀懂

    五.提高軟件管理的步驟

    1. 使用Raid/BMS,將流程管理自動化
    2. 使用測試用例管理工具
    3. 使用文檔管理工具
    4. 使用版本控制工具,進行Daily Build
    5. 建立代碼標準
    6. 建立Code Review機制
    7. 建立專家會診機制
    8. 建立團隊溝通機制
    9. 根據需要調整團隊結構


    只有注冊用戶登錄后才能發表評論。


    網站導航:
     
    主站蜘蛛池模板: 四虎影视在线看免费观看| 亚洲AV一二三区成人影片| 国产免费不卡v片在线观看| 精品国产_亚洲人成在线高清| 九九九精品视频免费| 最近免费中文字幕大全免费 | 亚洲第一网站男人都懂| 亚洲国产美女精品久久久久∴| 一级看片免费视频| 超清首页国产亚洲丝袜| 国产亚洲精品bv在线观看| 午夜视频免费在线观看| 国产一区在线观看免费| 精品视频免费在线| 亚洲综合另类小说色区| 成全视频高清免费观看电视剧| 国产精品免费看久久久无码| 内射少妇36P亚洲区| 污污免费在线观看| 在线亚洲午夜理论AV大片| 久久永久免费人妻精品| 亚洲中文字幕久久精品无码喷水| 日本一区二区免费看| 亚洲日本视频在线观看| 亚欧免费一级毛片| 亚洲人成小说网站色| 可以免费观看的一级毛片| 免费无码又爽又刺激网站| 亚洲精品在线播放视频| 久久免费视频观看| 国产精品亚洲片在线| ww在线观视频免费观看| 欧亚一级毛片免费看| 亚洲激情电影在线| 国产禁女女网站免费看| 久久狠狠躁免费观看2020| 亚洲欧美第一成人网站7777| 在线观看亚洲精品福利片| www.黄色免费网站| 国产裸体美女永久免费无遮挡| 亚洲另类小说图片|