Verification 是開發過程有沒有照規定做,做出符合規格的東西
Validation 是最後的東西有沒有符合使用者需求
Boehm 用兩個句子說明這兩個 V
Verification. “Am I building the product right?”
Validation. “Am I building the right prodcut?”
從句子上來看,因為 right 是形容詞也是副詞
如果擺在後面 “build the product right”,right 修飾的是 build the product,表示開發的過程是對的(手段正確),屬於 verification
如果擺在 product 前面 “build the right product”,right 修飾的是 product,表示開發出來的產品是使用者要的東西(目標正確),屬於 validation
這頁 http://www.sroga.com/school/cs8263/cs8263.htm 的第二個 pdf 檔是 Boehm 的 paper,在第一頁最後一段上面一點的地方就是我上面提的那兩個句子
我不知道為什麼會聽到說,有些書有些老師的說法是兩個 V 和兩個句子的配對對調
Boehm 2003 年的書 Balancing Agility and Discipline 在第一章也有兩個 V 和那兩個句子,配對還是上面那樣,並沒有對調
已經第七版的 軟體工程經典書 在 22 章有引 Boehm 的說法
還有這兩本,也是同樣說法
Software Verification and Validation for Practitioners and Managers
所以實在不知道何來對調那樣的說法….
用 『validation verification “the right product” “the product right”』 搜尋 google,中文和台灣網頁都是 Boehm 那樣的講法,沒有對調的
英文網頁前二十個是 有一個 是對調的說法,不過其他有些雖然從 google 看好像是顛倒的說法,但其實是格式的關係,實際開去看還是和 Boehm 一樣的
所以我真的不知道有什麼理由去相信和 Boehm 相反的說法….
如果說因為 verification 是比較初期就開始的,而 validation 是比較後期,所以 verification 的 right 在前面…. 這…. 應該是英文死當班的說法….@@”