• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
    • 軟件測試技術
    • 軟件測試博客
    • 軟件測試視頻
    • 開源軟件測試技術
    • 軟件測試論壇
    • 軟件測試沙龍
    • 軟件測試資料下載
    • 軟件測試雜志
    • 軟件測試人才招聘
      暫時沒有公告

    字號: | 推薦給好友 上一篇 | 下一篇

    敏捷測試的最佳實踐,第 2 部分: 方法與實踐

    發布: 2008-7-03 10:52 | 作者: 謝明志 | 來源: IBM | 查看: 113次 | 進入軟件測試論壇討論

    領測軟件測試網


    敏捷團隊

    考慮到敏捷團隊的組織結構,讓我們以筆者親身經歷的項目為例來說明。筆者曾共事的整支產品開發團隊被劃分成 4 個相對獨立的敏捷開發隊伍,而每支隊伍擁有相同配置的 7 名成員,他們分別具有不同的職能屬性。如圖 1 所示,每支敏捷隊伍組成成員角色包括 1 名 UCD(User Centered Designer),主要負責產品的主要設計,其工作主要包括界面設計、用戶的用例設計等等; 1 名 Visual Designer,主要負責產品界面的色彩搭配、控件的外觀設計和 UCD 界面設計方案的初步實現和美化;1 名 Information Developer,主要負責產品中信息的編輯和重要文檔的撰寫工作; 3 名開發人員,主要負責產品的實現。和 1 名 QA,主要負責產品質量的保障。(更多的我們將 QA 定義為具有相比于測試人員擁有更多責任的一個職能,在本文中,為了簡便起見,我們仍稱之測試人員)。4 支敏捷的隊伍擁有相同的 SCRUM MASTER STAKEHOLDER。通常會在同一時間進入一個迭代周期,制定各自的敏捷計劃,并在同一時間退出,發布各自功能實現。而 4 支隊伍的勞動果實被集成到一起就形成了可發布的產品了。


    圖 1. 敏捷開發團隊的組織結構
    圖 1. 敏捷開發團隊的組織結構

    因為敏捷團隊中只有 1 名測試人員,因此需要一臂承擔測試策略的制定,測試計劃,測試腳本,測試用例設計以及測試的執行,幫助團隊發現潛在問題,并協助解決問題的工作。敏捷團隊的敏捷原則也是測試人員敏捷活動的規范,測試也需要擁有和團隊的良好溝通,高度迭代的活動和不斷的獲得 STAKEHOLDER 的反饋。那團隊的結構與敏捷本身有什么直接關系呢?與敏捷測試又有多少關聯呢?

    談到這里,想起曾經有朋友向我咨詢有關敏捷團隊的某些職能的人力配備的問題。其實,筆者也無意論證 7 個人為什么是最佳組合,為什么不是 17 個,20 個人的組合。但是,敏捷原則告訴我們敏捷團隊是高度協同、民主和平等的團隊,為了讓團隊中每個人充分高效的工作。相同職能下的組員至多不好超過 3 名,最佳配置也是不同職能下配置 1 個人頭。因此、在這樣一個小型、平行的組織結構里,溝通更加易于建立,溝通復雜度也相對較低,相比 17、20 人的團隊組織,溝通的代價也小很多。相反,很難想象在一個敏捷團隊中會擁有諸多不同風格的執行者,決策者將是個怎樣的混亂情況。

    此外,經歷過敏捷測試的體驗,我們發現一個單一的敏捷團隊最好保持較小的“尺寸”。這是因為擁有很多測試人員的敏捷團隊通常不但需要更大的實際工作量來匹配龐大的機體而導致團隊任務量更巨大,更復雜,失去自我管理的信心,而每個測試人員也將要花費大量精力和時間投入到內部溝通,和可能因為內部缺乏一致而導致的更加頻繁的反復溝通中。

    每名敏捷的測試人員需要和其他敏捷團隊成員保持頻繁而必要的溝通以保證對目標,需求、設計的充分正確的理解,對需求變化能夠迅速的做出反應。另外,還需要與職能隊伍中的其他測試成員保持一致性。如此一來,溝通代價激增了,它將占到測試人員的工作中的較大比例。而這種內部溝通、協調,卻不能定義為敏捷的 Backlog 項目來計入團隊整體的工作輸出。因此,整體的測試效率并不一定隨著人力資源的投入而遞增。非但沒有實現敏捷原則,而恐怕因為團隊的組織結構變得更加龐雜。所謂的“自我管理、自我發展”的團隊只能因而依靠傳統的管理和規劃了。筆者認為,除了因為特殊階段,特殊時期,敏捷團隊需要“聚合”更多資源來一并解決存在的高優先級的體力型問題外,敏捷的團隊應該盡量保持著較小的“尺寸”。

    果真項目投入了很多的人力資源,無論設計還是實現、測試團隊擁有較大的人數,那么我們應該考慮將這樣的團隊可以分得更小些,工作量也相應分得更精細些,直至接近我們建議的最佳組合。至少我們認為要做好敏捷測試,就要確保敏捷團隊中的每一個職能擁有足夠清晰的職責范圍和一定程度下自由空間和在這個空間內的充分授權。因此,但從人數和職能構成上,敏捷團隊的構成一定是不可忽略的重點。

    正像我們前面提到的,確認軟件開發過程的正確性也尤為重要,因此作為敏捷的測試人員,更要了解敏捷的過程,比如說,測試人員需要幫助 UCD 和開發人員確定需求的可行性,測試人員要督促開發人員及時發布 build,以保障迭代結果最終能夠在通過足夠的測試后成功發布等。在 build 發布后,測試人員要首先驗證當前迭代的任務是否已經完成,其次才是驗證產品功能的正確性。也為了能夠在日后重復性和體力型勞動中解放出寶貴的時間去覆蓋測試更加緊要的內容,如可用性,全球化等,測試人員需要自動化一部分測試,創新的、靈活的工作。

    敏捷團隊是自我管理的團隊,高度協作的團隊,質量目標即是測試團隊也是整個開發團隊追求的目標,因此開發團隊應將做好單元測試,設計團隊將幫助測試團隊設計好測試用例作為計劃內的一項工作。這里我們推廣、建議開發人員采用、普及測試驅動開發模式。

    延伸閱讀

    文章來源于領測軟件測試網 http://www.kjueaiud.com/


    關于領測軟件測試網 | 領測軟件測試網合作伙伴 | 廣告服務 | 投稿指南 | 聯系我們 | 網站地圖 | 友情鏈接
    版權所有(C) 2003-2010 TestAge(領測軟件測試網)|領測國際科技(北京)有限公司|軟件測試工程師培訓網 All Rights Reserved
    北京市海淀區中關村南大街9號北京理工科技大廈1402室 京ICP備2023014753號-2
    技術支持和業務聯系:info@testage.com.cn 電話:010-51297073

    軟件測試 | 領測國際ISTQBISTQB官網TMMiTMMi認證國際軟件測試工程師認證領測軟件測試網

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>