陳國秋,樓潤瑜,付東明
(1.廣州出入境檢驗檢疫局,廣東 廣州 510623;2.廈門出入境檢驗檢疫局,福建 廈門 361022;3.江門出入境檢驗檢疫局,廣東 江門 529000)
來源于質量界的一個統計發(fā)現:約85%的質量問題是由過程/系統引起的,而不是人的因素。目前,人們已經認識到,產品質量不是單純檢驗出來的,也不是宣傳出來的。
顯然,產品質量是產品實現全過程的結果,有一個從產生、形成和實現的過程,在這一個過程中的每一個環(huán)節(jié)都直接或間接地影響到產品的質量,這些環(huán)節(jié)就是常說的質量職能。隨著國際先進管理要求和管理模型的引入,為基于 “過程質量決定產品質量”這樣一個假設提供依據。大家都認識到這個假設,那如何通過過程質量去保證產品質量呢?本文將通過對電子產品測試管理體系的建立與實施,向大家展示假設的具體保證方法:首先,我們要全面了解定義一個過程可以參考的證據;第二,我們在可操作條件下如何系統地定義過程;第三,采取何種方法可以讓過程得以正確、有效地運行,且可以獲得持續(xù)的改進。
測試作為質量控制的一種有效手段,開展該活動可以找出產品中潛在的各種缺陷,通過協助生產或開發(fā)人員修正缺陷來提高產品質量,避免產品各階段因潛在的缺陷和錯誤而產生質量隱患和降低質量成本。通過檢測過程管理體系的建立,為產品測試活動的實施與過程改進提供依據,起到預防缺陷的作用。
體系策劃及建立需要一定的基礎支持,包括:識別產品質量要點、測試類別、測試方法、測試程序,以及測試活動開展時所需要的軟、硬件環(huán)境等要素。這些信息的明確離不開企業(yè)長期以來的積累,從以往的測試活動中收集和分析數據,評價執(zhí)行效果、測試活動的有效性等信息。建立一套較為完整的測試項目庫,該庫將作為企業(yè)內部測量標準來指導各測試活動的開發(fā)與實施。
根據國家、行業(yè)及地區(qū)產品的特性要求,收集和整理測試項目庫。測試項目庫的信息來源可從多處收集,企業(yè)的質量管理部門應明確負責人員,定期收集法律、法規(guī)的要求;對于新的標準或是標準的有效性進行定期的跟進。
根據電子產品的質量需要,整理組織以往的測試活動內容,并分析質量檢測的不足之處,例如,電子產品手機出廠前的測試項目有:鍵盤測試——40萬次的按鍵,溫度測試——85℃高溫,硬度測試—4種雜質混放,防水測試——三維防水,防震測試——多小時震動,以及軟件系統的性能測試、穩(wěn)定性測試、邊界值測試等。需要建立產品各階段的測試項目庫,詳細程度要能涵蓋測試項目、測試環(huán)境、測試步驟和測試準則等信息。這項工作是測試活動有序、合理開展的重要過程,因此,根據產品系列、產品的特性對產品各環(huán)節(jié)的質量檢測方案進行明確,為測試活動提供工作準則。
根據測試項目庫的建立,也對測試工具的選擇和測試環(huán)境的準備提出要求。測試管理團隊對測試的環(huán)境進行梳理,建立特殊的測試環(huán)境,準備測試工具等。測試工具還包括電子產品軟系統測試所需的測試軟件,測試軟件的選擇,要有選擇評價的記錄,而且還要根據產品性能要求的不同,進行適宜性調整或是重新選擇。每次測試前還需要對測試軟件的版本和測試工具校準期進行驗證。
測試數據庫的核心就是將以往檢測時所采用的模擬數據、測試結果等進行收集與有效管理。歷史數據的收集,可以為進行的檢測活動提供參考。同時可以定期對這些數據進行分析總結,將數據反饋的信息成為企業(yè)改進的依據,以便快速地開展更為靈活的商業(yè)決策、工藝改進等活動。
通過開展以上4項工作,就不難建立企業(yè)的產品測試標準庫。
產品的特性不同,檢測的流程也不盡相同。企業(yè)的質量管理部門需要針對產品具體的特性來定義其質量檢測的流程。檢測流程的設計應按產品類別、檢測階段進行,每個產品形成一套系統的檢測流程。定義檢測流程時需要考慮的內容有:檢測活動的目的、活動輸入、參與角色與職責以及檢測活動的時機、檢測結果的輸出等?,F在以軟件產品的集成測試流程設計為例,集成測試主要是驗證軟件單元的組合能否正常工作,以及與其它模塊集成之后是否能正常工作。集成測試活動的流程定義包括以下內容:
集成測試是在組件測試的基礎上,將所有的軟件單元按照設計規(guī)程說明的要求組裝成模塊、子系統或系統,并檢驗各部分工作是否達到或實現相應技術指標及要求的過程和活動。集成測試是在軟件單元測試之后,驗證集成軟件系統能否滿足如下要求:
1)對模塊和子系統的連接進行測試,確保各程序模塊之間無錯誤連接;
2)驗證軟件系統或子系統的正常處理能力和異常處理能力。
根據集成測試活動的開展需要,明確參與角色及其在該項活動中的職責,例如,項目經理在集成測試活動的職責為:協助測試主管組織集成測試;審批集成測試計劃;審批集成測試報告。
此項目內容要列出哪些元素可以作為集成測試的單體。例如:
1)完成單元測試或代碼掃描,并提交 《單元測試報告》/《測試問題報告》;
2)代碼已經進入測試庫并完成產品集成。
集成測試工作的有序開展需要參考的輸入文件如下:
1)《概要設計說明書》;
2)《詳細設計說明書》;
3)《測試問題報告》;
4)測試用例;
5)……。
集成測試活動的目的是:驗證各軟件單元集成后形成的模塊能否達到概要設計說明書的設計目的,具體實現的測試內容有功能性、可靠性、易用性、效率、可維護性和可移植性等。具體的測試特性要根據軟件需求和設計的要求而選定。
測試工作首先在我們選定的測試節(jié)點活動下展開,總體測試活動的策劃圖及詳細的集成測試流程如圖1、2所示:
圖1 軟件產品總測試流程
圖1是電子產品中應用軟件的測試流程,根據各測試工作的需求,可以擴展各類測試的工作流程及測試要求。
圖2 集成測試流程圖
3.6.1 制定集成測試計劃
a)測試主管和項目經理共同協商測試計劃。測試主管組織編寫 《集成測試計劃》。
b)集成測試計劃主要包括以下要素:
1)測試范圍(內容)
本文檔的目的在于指導XXX產品的集成環(huán)境的建立與產品的組裝工作,確保項目能夠提供可交付安裝使用的產品。
2)測試類型
根據各次測試目的主要的內容來選定測試類型,通常可選擇的測試類型如表1所示。
表1 測試類型
對于每類測試類型,給出詳細的測試說明,如表2所示。
表2 詳細的測試說明
3)測試環(huán)境和測試數據準備
配置測試環(huán)境是測試實施的一個重要階段,測試環(huán)境適合與否會嚴重影響測試結果的真實性和正確性。
測試環(huán)境包括硬件環(huán)境和軟件環(huán)境,前者是指測試必需的服務器、客戶端、網絡連接設備,以及打印機/掃描儀等輔助硬件設備所構成的環(huán)境;后者是被測軟件運行時的操作系統、數據庫及其它應用軟件所構成的環(huán)境。
測試數據的準備:分階段存在兩大類測試數據。在集成測試階段,不能引用真實的客戶數據進行測試,因此,集成測試數據的來源是,以往的數據沉淀,或是測試人員根據系統的測試要求而模擬生成的數據。驗收測試數據的來源是,由客戶提供真實的但經過處理的、可用于測試的運行數據。對于客戶提供的測試數據,測試管理團隊應對客戶的數據進行識別、管理和嚴格控制對其的使用,確??蛻魯祿陌踩院屯暾?。
4)測試結束準則
測試結束準則是防止將沒有完成的任務錯誤地看成任務已經完成,可能用于測試結束準則的定義項有:測試需求覆蓋率達到100%;測試對象有80%語句被執(zhí)行;失效發(fā)現率小于0.2個/人天。
并可根據產品特性及測試階段來定義本次測試活動的結束準則。
5)人員與任務進度要求
例如:對各小組的職責以及測試工作任務的進度安排如表3所示,這是需要在測試計劃中明確的。
《集成測試計劃》需要由PMO&項目經理或其授權人審核和測試經理&PMO審批,納入配置管理。
表3 任務安排表
3.6.2 集成測試
集成測試是在模擬真實的環(huán)境,選擇有效、適宜的測試方法,驗證所測試的軟件是否滿足測試目的。
a)[Step1]篩選測試用例
1)測試主管根據總體測試計劃的測試用例覆蓋要求,組織選擇或新增測試用例,測試用例除了正常流程的用例外,還必須要注意異常流程的測試用例的編寫;
2)測試主管根據測試內容在測試用例庫中選定集成測試的測試用例,作為 《集成測試計劃》的附件,或在集成測試計劃中識別所使用到的測試案例。
b)[Step2]構建測試環(huán)境
測試管理小組根據集成測試計劃要求來搭建測試軟、硬件環(huán)境,并且記錄硬件的配置,同時進行測試數據準備:產品所支持的操作系統,產品所必須依賴的軟件(數據庫;安裝測試軟件包;導入測試數據等)。
c)[Step3]執(zhí)行集成測試
1)測試組各成員依據 《集成測試計劃》和選用的測試用例執(zhí)行集成測試,并將測試結果記錄在《集成測試報告》中;
2)將測試發(fā)現的問題納入缺陷管理,測試管理大體系中定義 《缺陷管理規(guī)程》,用缺陷管理規(guī)程加強對缺陷的收集、分析、處理、驗證以及積累。
d)[Step4]相關文檔的審查
文檔審查是對用戶文檔進行符合性檢查,包括:用戶安裝手冊和用戶操作手冊等。
1)在測試過程中應當嚴格遵守用戶操作手冊中規(guī)定的使用步驟,以便檢查這些文檔資料的完整性和正確性,必須仔細記錄所發(fā)現的遺漏情況和錯誤,并且適當地補充和改正;
2)將測試發(fā)現的問題納入缺陷管理,參見《缺陷管理規(guī)程》。
e)[Step5]提交測試報告
《集成測試報告》在集成測試階段結束后或達到集成測試結束準則時,由測試管理團隊組織編寫測試報告。集成測試報告中需要包括以下要素:
1)測試范圍;
2)測試環(huán)境(硬件、軟件和測試數據);
3)測試執(zhí)行情況(選用的測試用例執(zhí)行度量數據、缺陷數據、測試工作量以及測試執(zhí)行等情況);
4)缺陷統計分析(缺陷統計和缺陷分析)
對缺陷的度量是對測試活動的有效監(jiān)控,通過對測試發(fā)現和修復分析、測試缺陷的發(fā)現趨勢分析,以及對缺陷嚴重程度的分析等。以下給出幾個分析圖示,如圖3、4所示。
圖3 缺陷發(fā)現與修復進度
圖4 趨勢分析
5)測試風險
測試可能會存在風險,包括人員、環(huán)境、測試時間不足和測試版本等風險。報告中需要對測試活動所發(fā)現的風險、采取的有效措施、風險規(guī)避的效果分析等進行總結。
6)評價
測試主管通過測試風險、工作量、測試執(zhí)行和缺陷方面的詳細分析,對測試結果進行評價,給出測試結論和遺留缺陷解決的建議。
《集成測試報告》需要由項目經理或其授權人審核和測試經理審批,納入項目數據管理。
測試活動核心流程的描述是通過集成測試過程而進行的,對于一個完整的測試活動規(guī)程,還應該包括輸出、出口準則、引用文檔和采用模板等對測試活動的支持內容。
體系文件的確立,并不能保證是可用的,是適宜的,一定要通過體系的推廣運行來驗證其是否合理,是否充分。而且為保證體系的運行效果,需要從意識上改變,將被動實施轉變?yōu)橹鲃訄?zhí)行。因此在正式、全面地推行體系之前,企業(yè)需要開展以下一系列的活動來推動這項工作:
a)了解體系
在正式運行體系之前,企業(yè)質量管理部門應通過張貼、培訓和體系知識問答等方式來加強企業(yè)人員對于體系的認識。先從思想上、意識上為體系的推行做好準備。
b)領導效應
在企業(yè)推行管理體系的過程中,每個細節(jié)的改變都需要有足夠的決心與堅持,需要各層領導的支持。企業(yè)根據需要可以制定一些獎懲措施來促進管理體系的推行。
c)試運行驗證體系
我們至少選擇3個產品按照檢測體系的要求開展活動,通過對系統的試運行,驗證體系的覆蓋程度的適宜性。在試運行期間,按文件要求作業(yè),嚴禁隨意操作;按文件要求記錄,嚴禁弄虛作假;通過正常渠道向質量管理部門反映問題,嚴禁詆毀文件。質量管理部門根據試運行的情況,分析體系是否存在不足,有無改進空間,對體系進行系統調整后重新發(fā)布,正式進入體系的全面推廣期。
d)體系全面推行
習慣的改變至少要4個月的時間,因此在體系推廣前期,企業(yè)要加大體系輔導人員及監(jiān)督人員的投入。在每項新活動的開展前,要組織專場培訓,加強執(zhí)行人員對于體系的認識。在活動開展過程中,質量保證人員要及時、細致地跟進,發(fā)現不符合之處及時提出并采取適宜的措施進行更正。同時,公司可以建立考核機制,有效促動管理體系的推廣應用。
f)加強內外審核
通過企業(yè)內部質量管理體系審核及第三方的評估,客觀地判斷體系運行的效果,發(fā)現不足之處,需要及時采取糾正及預防措施。同時,通過內外部審核來挖掘體系持續(xù)改進的元素,不斷適應及滿足企業(yè)質量管理的需要。
不管是什么類型的體系,不管是對哪個流程的約束,體系策劃要從產品特性及企業(yè)的商業(yè)目標及管理目標出發(fā),收集可以參考的歷史數據,根據企業(yè)的資源配置,及管理目的進行合理規(guī)劃。企業(yè)切莫追求大而全的管理,要從實用、可行、有效的管理原則出發(fā)。本文分三大主題對電子產品測試管理體系的策劃、建立、推行進行論述,并引用實際的案例對主題展開論述。過程質量決定產品質量,企業(yè)要從產品生命周期的每一個活動入手,策劃與組織切合實際的管理活動,應用PDCA的過程方法更有效地評估企業(yè)管理活動的有效性,形成動態(tài)提升的企業(yè)質量管理體系。
[1]鄭文強,馬均飛.軟件測試管理[M].北京:電子工業(yè)出版社,2010.