每一個testing activity有多個inputs 並且包含一個或多個tasks,一個tasks又包含多個output
Master test planing
一個testing tasks的概觀包含
(1)Master testing task
(2)Verfication testing tasks (對每一個activity)
       (i) 計畫
       (ii)執行
(3)Validation testing tasks (對每一個activity)
       (i) 計畫
       (ii)測試軟體(testware)開發
       (iii)執行測試
       (iv)測試軟體的維護

考慮master test planning的風險包含:
  - 被測試產品的大小和複雜度
  - 產品的關鍵性
  - 測試的形式 (完整,部分,endgame,audit)
  - 人力, 經驗,和組織

通常用三個層次的優先順序(LO, MED, HI) 就足夠了, 當執行工作時,HI 優先順序的項目則最先被執行
在master test planning的目標是得到一個big picture在一個high-level的document上面
其中big picture可交付的就是software verification 和 validation plan,執行software verification 和 validation plan可以保證錯誤在軟體開發的早期就可以被找到並且修正,而且,專案風險和schedule effect可以最小,提高軟體品質以及可靠度,和改變可以很快被評估
   附件: Deliverable : software V&V plan (outline)

software V&V是SQAP的一部份,SQAP是最高層,關於測試的文件,SQAP的目的是告訴使用者,開發人員,和大眾用來保證軟體品質的所用的評估方法

Verification testing tasks and deliverables

verification activities包含:
  (1) 活動
       (i) requirement驗證
       (ii) functional design的驗證
       (iii) internal design的驗證
       (iv) code 驗證
  (2) 驗證 tasks包含:
       (i) 計畫
       (ii) 執行

Verification test planning

我們是否做requirement verification?我們要採取什麼方法: full-down formal inspections, walkthroughs, desk checks? ...

verification test planning包含了:
   (1) 要執行的verification 活動
   (2) 要使用的method
   (3) 哪些東西要被verified
   (4) 風險??
   (5) priority
   (6) 資源,時程,工作,設備,責任

每一個verification activity都會有一個verification test plan, 包含了要怎麼執行,哪些東西要被verified,相關的風險和優先順序,是否有其他相關的標準規格計畫資訊
   附錄: verification test plan

Verificaion excution

  tasks: inspection, walkthrough, technical reviews
  deliverables: inspection report, verification test report

每一個個別的inspection 對一項activity 產生一個 report, 內容有 我檢查了什麼? 誰 ? 多少人力? error rate? defect 在哪並且 多嚴重? 針對這項產品,我們有什麼結論 ? 錯誤修正以後,是否需要再重新檢查? meeting誰有來? ...
  附錄: inspection report

還有一個verifaction執行相關的文件,verification test report, 這個文件用來總結verification 的 活動, 我們目標是100% 驗證所有相關的的文件, 而我們最後實際驗證了多少呢? 哪些是我們達到的,哪些不是呢? 所以 這個文件可以把他看成是 "執行的總結" (excutive summary), 可以拿來作為管理testing process的提醒, 告訴他們要注意什麼
  附錄: verification test report

每一個work product只會有一個verification test report, 主要是用來總結所有verification steps,針對此文件並沒有IEEE/ANSI的標準

Validation testing tasks and deliverables

validation活動包含:
     1. unit testing
     2. usablity testing
     3. function testing
     4. system testing
     5. acceptance testing

validation tasks:
    - high-level planing for all validation activities as a whole
    - testware architecture design
    - 每一個activity
           - 詳細的計畫
           - testware development
           - test 執行
           - test 評估
           - testware maintainance

Validation test planning

我們要採用什麼方法來validation? 哪一種test automation,工具? 我們有多少預算? 我們需要什麼軟體和訓練? 我們要怎麼做configuraction management?
validation test planning包含了:
   1. test method
   2. 工具
   3. test automation
   4. support software
   5. configuration management
   6. 風險

這些都要在整個testing裡面和個別validation activity考慮進去
master validation test plan應該要在整個validation effort時候產生, 一個或多個detailed validation test plan要在每個validation activity產生

master validation test plan的目的是提供概觀的validation testing effort,  他可以提供 哪些特定validation activity被執行, 大概用了哪些資源, 每一個的schedule, overall training 和風險
   附錄: master validation test plan每一個validation testing activity 至少有一個detailed plan, 主要是要拿來 描述validation activity詳細的運作:
         (1) unit testing
         (2) integration testing
         (3) usablity testing
         (4) function testing
   (5) system testing

test plan 列出 上述可能會被用在detailed 和 master validation test plans, detailed test plan 列出的每一個項目都可以被實施 (我們要去測什麼, 哪些feature要被測,哪些沒有測)

Test architecture design

有一個master validation test plan的重要的補充就是test architecture design, architecture design 是一個 "設計一個有意義並且有用的測試架構流程",我們要怎麼組織測試,他們是requirement-based test?還是function-based tests?還是internal-based test?我們要怎麼分類?...

每一個軟體產品都有一個architecture spec. ,可以看成整個測試文庫的root, 設計architecture design 的要點有:
       (1) 根據test basis去組織
       (2) 分類測試並且分組
       (3) 針對test 文庫的 架構和命名習慣
       (4) grouping of tests for reasonable excution periods
  附錄: test-architecture spec

Testware development - detailed design and implementation

testware 具有下面的目標:
    - detect 最多的error
    - 最小化測試開發的成本
    - 最小化測試執行的成本
    - 最小化測試維護的成本

testware 是一個軟體,所以,在開發testware也要採用 好的軟體設計和軟體工程技術
發展testware的 tasks有:
       - detailed design
       - implementation

在這個階段,我們工作朝向test design spec,  我們要側什麼? 優先順序? 要怎麼把把high-level測試放在一起, 要怎麼去做真正的測試?
detailed design是一個 針對軟體feature和辨認相關的test case  詳細的test 方法 流程, 內容包含:
      - 滿足所有測試開發的目標
      - 遵守test architecture
      - 設計給每一個test case
detailed design 產出的 deliverable是 "test design spec","test case spec"

test basic steps of detailed test design

- 辨認哪些item要被測試
- 給item priority
- 發展high-level design給同一個group內的items
- 從high-level design去設計test case
  附錄: Test design specification, test case specification, test procedure specification

Test excution

包含:
       - 挑選 test case
       - pre-run setup, execution, post-run analysis
       - 紀錄activities和結果,和意外
       - 決定是產品的錯誤或者測試本身的錯誤
       - 評估內部logic coverage

有些組織會定義某些criteria, 必須滿足這些criteria才可以進入測試 (附錄: requirement for entry to test)
test excution產生的文件有: test logs, test incident reports, logic coverage reports
usabilty testing 是 validation test, 並且會產生test log 和 incident report
  附錄:test log

inciden report 是defect的另一種名稱, 最重要的不是描述發生了什麼, 而是比較和預期結果的差異
      附錄: test incident report

每一個incident report應該都有一個嚴重性...
嚴重性的概念的價值在於建立service priority!在測量產品準備狀態和界定數個quality標準

Test evaluation

大概來說包含:
      -  (a) test coverage evaluation  (涵蓋範圍)
      -  (b) product error evalution     (產生的error)
      -  (c) test effectiveness evaltion(有效性)
(a) 評估整個測試的完整性(thoughtness),  不同程度的level, function-coverage, requirement-coverage, logic coverage

(b) product error evalution 是一個評估產品品質的流程

(c) test effectiveness evalution 是一個評估整體目前testing 工作有效性和test 完成的criteria和什麼時候停止測試或增加測試有關, 和test coverage evalution和產品錯誤評估相關

 

 


     

Roddick 發表在 痞客邦 PIXNET 留言(0) 人氣()