Categories

工作態度 (1)    方法論 (5)    本土化 (9)    危機管理 (2)    死亡 (1)    自我成長 (1)    自我管理 (3)    決策管理 (1)    版本 (1)    社會 (2)    品管 (3)    風險管理 (1)    效能 問題 (1)    時間管理 (5)    專案 (10)    教育 (1)    產能 (1)    產業 (5)    軟體 (4)    測試 (10)    閒聊 (14)    溝通 (4)    道德 (1)    漫談 (23)    管理 (1)    機器翻譯 (1)    簡轉繁 (2)    翻譯 (8)    booksore (1)    Chinese (1)    Flash (1)    G11N (1)    I18N (3)    Industry (1)    L10N (8)    politics (1)    Project Management (6)    Revision (1)    Software (3)    Testing (4)    Time Management (1)    Translation (4)    UI Design (1)   

2009年8月25日

V-Model 與軟體測試

且看軟體工程的其中一種開發模型 V-Model 各個開發階段與對應的測試工作的對應。

我覺得這個軟工模型還挺淺顯易懂的,特別是針對開發與測試的對應關係來看。

由 V-Model 的左半部來看,軟體的開發流程應當歷經需求分析、系統設計、架構設計、模組設計、然後進入軟體程式碼的撰寫。搭配右半部來看,當需求被進行分析並確認之後,緊接著應當要設計接受度測試。當系統設計確立後,應當進行系統測試設計,依此類推。

我在原始的 V-Model 概念圖上加上了對應的角色,例如需求分析應該是由系統分析師來進行,架構設計應該由架構設計師進行,依此類推。

相對應的,軟體模組的單元測試,應該是由軟體開發者進行,整合測試應該是由內部的 QA 進行,依此類推。

在這樣的流程與設計之下,每個階段會有不同的角色來進行測試、驗收,包含到了最後一個階段的接受度測試,通常是由客戶來進行最後的驗收,而其所應對照的是左半邊初期的需求規劃,逐一驗證交付的產品是否符合所有需求。

大體上 V-Model 雖是瀑布式模型的一種改進,但其實改的並不太多,而且以開發對應測試來說很清楚明暸。

過去我曾說我反對開發團隊必須遵照測試團隊的測試案例來進行交付前的測試,在 V-Model 裡可以有很好的解釋。開發團隊應該是在初期的單元/模組測試著手;有些大的開發團隊會另有專人負責測試,撰寫一些測試程式來輔助測試整合後的模組或系統,有些公司則是由開發團隊協助專責的測試團隊撰寫測試程式,然後交由測試團隊來進行;到了系統測試階段,原則上產品已經至少到了 beta 或是 RC 階段,此時有別於開發團隊中的測試組以外的專責測試團隊應該要對產品進行全功能測試。在上圖我暫時把這樣的團隊列為 B Team ,以有別於可能是隸屬於開發團隊之中的測試組。

0 Comments: