書名: 軟件測(cè)試實(shí)用教程作者名: 劉震 吳娟本章字?jǐn)?shù): 2617字更新時(shí)間: 2021-01-28 17:34:48
1.2 軟件測(cè)試的組織形式
早期微軟的開(kāi)發(fā)團(tuán)隊(duì)中也沒(méi)有獨(dú)立的測(cè)試組。那個(gè)時(shí)候通常由幾百個(gè)人做幾個(gè)項(xiàng)目,程序員寫完程序自己測(cè)試一下就算完成了。后來(lái)隨著微軟的項(xiàng)目越來(lái)越大,開(kāi)發(fā)的軟件也越來(lái)越復(fù)雜,編碼和測(cè)試的工作需要并行地開(kāi)展,于是就漸漸產(chǎn)生了獨(dú)立的測(cè)試組。在微軟的產(chǎn)品組中開(kāi)發(fā)人員和測(cè)試人員的普遍比例是3∶1。在研發(fā)團(tuán)隊(duì)中開(kāi)發(fā)測(cè)試比多少合適,是個(gè)仁者見(jiàn)仁智者見(jiàn)智的問(wèn)題,微軟是3∶1,Google是10∶1,百度是5∶1。究竟開(kāi)發(fā)測(cè)試比多少合適,不但與系統(tǒng)的復(fù)雜度、公司對(duì)產(chǎn)品的質(zhì)量要求有關(guān),還和團(tuán)隊(duì)的開(kāi)發(fā)、測(cè)試工程師的素質(zhì)有密不可分的關(guān)系。
1.2.1 軟件鼻祖微軟的經(jīng)驗(yàn)教訓(xùn)
在微軟的起步初期,微軟的許多軟件都出現(xiàn)了很多的Bug。例如,在1981年與IBM PC機(jī)綁定的BASIC軟件,用戶使用“1”除以10時(shí)就會(huì)出錯(cuò),引起了大量用戶的投訴。
微軟公司的高層領(lǐng)導(dǎo)覺(jué)得有必要引入更好的測(cè)試和質(zhì)量控制方法,但是遭到很多開(kāi)發(fā)人員和項(xiàng)目經(jīng)理的反對(duì),因?yàn)樗麄冋J(rèn)為開(kāi)發(fā)人員自己能測(cè)試產(chǎn)品,無(wú)需加入太多的人力。
1984年,微軟公司請(qǐng)Arthur Anderson咨詢公司對(duì)其在蘋果機(jī)上的電子表格軟件進(jìn)行測(cè)試,但是外部的測(cè)試沒(méi)有能力進(jìn)行得很全面,結(jié)果漏測(cè)的一個(gè)Bug,讓微軟為2萬(wàn)多個(gè)用戶免費(fèi)提供更新版本,損失達(dá)20萬(wàn)美元。
在這以后,微軟得出了一個(gè)結(jié)論:不能依賴開(kāi)發(fā)人員測(cè)試,也不能依賴外部的測(cè)試,必須自己建立一個(gè)獨(dú)立的測(cè)試部門。
1.2.2 軟件測(cè)試組織的雛形
最簡(jiǎn)單的軟件測(cè)試組織形式就是沒(méi)有任何組織的測(cè)試,幾個(gè)人就把所有軟件測(cè)試工作做完,這樣做沒(méi)有任何分工、沒(méi)有任何層次結(jié)構(gòu)。
簡(jiǎn)單的軟件測(cè)試組織帶來(lái)的問(wèn)題是:軟件測(cè)試依附在軟件開(kāi)發(fā)的組織下,不能真正發(fā)揮軟件測(cè)試的威力。
一兩個(gè)人的軟件測(cè)試缺乏交流和思維的碰撞,導(dǎo)致測(cè)試人員的進(jìn)步非常有限。缺乏測(cè)試的組織,導(dǎo)致測(cè)試無(wú)計(jì)劃進(jìn)行,測(cè)試人員疲于應(yīng)付各項(xiàng)突如其來(lái)的測(cè)試任務(wù),測(cè)試經(jīng)驗(yàn)也得不到很好的總結(jié)。
1.2.3 組織形式的分類
軟件測(cè)試的組織形式可以按測(cè)試人員參與的程度分為專職和兼職兩類,如果按測(cè)試人員的從屬關(guān)系則可分為項(xiàng)目型和職能型兩大類。
1.專職VS.兼職
按照測(cè)試人員的職責(zé)明確程度,可以劃分成兼職測(cè)試和專職測(cè)試兩大類。目前在很多軟件企業(yè),尤其是小規(guī)模的軟件企業(yè),往往沒(méi)有專職的測(cè)試人員。在做測(cè)試工作的同時(shí)還要兼顧軟件開(kāi)發(fā)、配置管理、技術(shù)文檔編寫、用戶教育、系統(tǒng)部署實(shí)施等工作。
即使是在一些比較大規(guī)模的軟件企業(yè),擁有專門的質(zhì)量部門,也會(huì)有兼職的情況。最常見(jiàn)的兼職工作是測(cè)試+配置管理,或者測(cè)試+QA。這種方式的好處是節(jié)省成本,可以充分利用資源。但是這樣的測(cè)試人員缺乏專門獨(dú)立的發(fā)展空間,不利于測(cè)試的縱深方向的發(fā)展,很難把測(cè)試做得精細(xì),也不利于測(cè)試經(jīng)驗(yàn)的積累和測(cè)試知識(shí)的傳播。
當(dāng)然,由于目前軟件企業(yè)的現(xiàn)狀,很多企業(yè)還是使用這種方式。對(duì)于測(cè)試人員來(lái)說(shuō),不要過(guò)分地去抱怨這些工作,尤其是對(duì)于新入行的測(cè)試人員來(lái)說(shuō),可以認(rèn)為這是對(duì)自己的很好的鍛煉機(jī)會(huì)。
測(cè)試本身的要求就是知識(shí)面要廣,而這些工作有助于從不同層面、不同角度、不同角色的位置考慮軟件的相關(guān)問(wèn)題。
2.項(xiàng)目型VS.職能型
按測(cè)試人員參與項(xiàng)目的形式來(lái)劃分,可分成項(xiàng)目型和職能型。
項(xiàng)目型的測(cè)試組織是指測(cè)試人員作為項(xiàng)目組成員之一緊密地結(jié)合到項(xiàng)目中,與項(xiàng)目組其他人員緊密協(xié)作,一般是從頭到尾跟著項(xiàng)目走。當(dāng)然,也有些項(xiàng)目是到了中后期才考慮把測(cè)試人員加入到項(xiàng)目中。項(xiàng)目型的組織結(jié)構(gòu)一般如圖1.2所示。

圖1.2 項(xiàng)目型軟件測(cè)試組織
這種類型的測(cè)試組織一般不會(huì)有測(cè)試組長(zhǎng),測(cè)試的管理由項(xiàng)目的主管或項(xiàng)目經(jīng)理負(fù)責(zé)。當(dāng)然,在一些大的項(xiàng)目中,會(huì)劃分出開(kāi)發(fā)組長(zhǎng),也會(huì)劃分出測(cè)試組長(zhǎng),但是最終報(bào)告的對(duì)象都是項(xiàng)目經(jīng)理。因此項(xiàng)目經(jīng)理是負(fù)責(zé)測(cè)試資源調(diào)配和測(cè)試計(jì)劃的主要人員。
而職能型的測(cè)試組織是指測(cè)試人員參與到項(xiàng)目中是以獨(dú)立的測(cè)試部門委派的方式進(jìn)入的。職能型的測(cè)試組織如圖1.3所示。
在這種結(jié)構(gòu)中,一個(gè)測(cè)試人員有可能不僅僅測(cè)試一個(gè)項(xiàng)目的產(chǎn)品,可能會(huì)同時(shí)測(cè)試多個(gè)項(xiàng)目的產(chǎn)品。測(cè)試人員也可能不是長(zhǎng)期穩(wěn)定地從頭到尾參與同一個(gè)項(xiàng)目。

圖1.3 職能型軟件測(cè)試組織
測(cè)試人員不向項(xiàng)目主管或項(xiàng)目經(jīng)理報(bào)告工作,而是向自己所在的部門經(jīng)理報(bào)告工作。并且,這種結(jié)構(gòu)的項(xiàng)目經(jīng)理也可能是虛擬的,或者由多個(gè)部門經(jīng)理共同擔(dān)當(dāng)。
這兩種方式各有利弊。項(xiàng)目型的好處是測(cè)試人員參與的力度很強(qiáng),能深入了解項(xiàng)目的方方面面的信息,有利于穩(wěn)定、持續(xù)有效地測(cè)試出更多細(xì)節(jié)問(wèn)題;但是也有弊端,就是測(cè)試人員受項(xiàng)目負(fù)責(zé)人的管理,在對(duì)待Bug的處理意見(jiàn)上往往受到約束,同時(shí)由于過(guò)于親密,很可能出現(xiàn)“網(wǎng)開(kāi)一面”、不能嚴(yán)格要求的情況。而且由于缺乏獨(dú)立的組織,測(cè)試人員的知識(shí)可能局限在項(xiàng)目組內(nèi)傳播,不利于測(cè)試經(jīng)驗(yàn)在不同項(xiàng)目組之間的傳播。某些測(cè)試人員在這種組織中可能會(huì)感到孤獨(dú)和無(wú)助。
而職能型的好處是能避免項(xiàng)目型的部分問(wèn)題,并且能節(jié)省部分測(cè)試資源,充分利用各個(gè)項(xiàng)目階段之間的時(shí)間差來(lái)合理利用測(cè)試資源;但是也不可避免地存在一些問(wèn)題。例如,深入程度不夠,尤其是對(duì)項(xiàng)目涉及的領(lǐng)域知識(shí)和業(yè)務(wù)知識(shí)理解可能不夠深入,導(dǎo)致測(cè)試的問(wèn)題比較表面。
1.2.4 綜合型的測(cè)試組織
盡管獨(dú)立的測(cè)試部門會(huì)有一些不可避免的問(wèn)題,例如參與項(xiàng)目的深入程度,容易導(dǎo)致“扔過(guò)墻”的測(cè)試。但是很多軟件企業(yè)還是傾向于建立一個(gè)相對(duì)獨(dú)立的軟件測(cè)試組織。
一個(gè)理想的軟件測(cè)試組織可以是綜合和兼容了幾種結(jié)構(gòu)方式的組織,這要視公司的軟件測(cè)試資源配備和項(xiàng)目經(jīng)理、測(cè)試部門經(jīng)理的具體職責(zé)定義來(lái)設(shè)計(jì)。
例如,可以將項(xiàng)目型結(jié)構(gòu)和職能型結(jié)構(gòu)組合起來(lái)并加以改造。測(cè)試部門是獨(dú)立的部門,測(cè)試部門經(jīng)理根據(jù)各項(xiàng)目組的項(xiàng)目經(jīng)理的請(qǐng)求,結(jié)合起來(lái)公司對(duì)項(xiàng)目的投入和重點(diǎn)方向,決定委派哪些測(cè)試人員加入到項(xiàng)目組,并且長(zhǎng)期穩(wěn)定、持續(xù)地跟進(jìn)項(xiàng)目,在項(xiàng)目的各個(gè)階段都參與并做測(cè)試的相關(guān)工作內(nèi)容。測(cè)試人員作為一種服務(wù)資源供項(xiàng)目組調(diào)用,測(cè)試的結(jié)果和報(bào)告作為評(píng)估軟件產(chǎn)品質(zhì)量的必要參考信息,為項(xiàng)目經(jīng)理做出產(chǎn)品發(fā)布的決定提供參考價(jià)值。
測(cè)試部門的測(cè)試人員分為常規(guī)項(xiàng)目測(cè)試人員和專項(xiàng)測(cè)試人員,常規(guī)項(xiàng)目測(cè)試人員即參與到項(xiàng)目組中的測(cè)試人員。而專項(xiàng)測(cè)試人員一般由性能測(cè)試工程師、自動(dòng)化功能測(cè)試工程師、界面及用戶體驗(yàn)測(cè)試工程師、安全測(cè)試工程師等負(fù)責(zé)專門測(cè)試領(lǐng)域的人員構(gòu)成,這些測(cè)試人員在項(xiàng)目發(fā)生專門的測(cè)試需求時(shí),被調(diào)用到項(xiàng)目組,與常規(guī)項(xiàng)目測(cè)試人員一起工作,但是重點(diǎn)解決專項(xiàng)的測(cè)試問(wèn)題。

圖1.4 綜合型軟件測(cè)試組織
當(dāng)然還可以根據(jù)需要豐富這個(gè)組織結(jié)構(gòu),例如,設(shè)置一個(gè)專門的培訓(xùn)中心,負(fù)責(zé)對(duì)測(cè)試人員的內(nèi)部培訓(xùn),同時(shí)負(fù)責(zé)收集和整理各個(gè)項(xiàng)目的測(cè)試經(jīng)驗(yàn)和測(cè)試知識(shí)。
- C及C++程序設(shè)計(jì)(第4版)
- Python 3.7網(wǎng)絡(luò)爬蟲快速入門
- R語(yǔ)言數(shù)據(jù)分析從入門到精通
- GeoServer Cookbook
- Effective C#:改善C#代碼的50個(gè)有效方法(原書第3版)
- JIRA 7 Administration Cookbook(Second Edition)
- Mastering Python Scripting for System Administrators
- 精通搜索分析
- NativeScript for Angular Mobile Development
- oreilly精品圖書:軟件開(kāi)發(fā)者路線圖叢書(共8冊(cè))
- Python機(jī)器學(xué)習(xí)編程與實(shí)戰(zhàn)
- RISC-V體系結(jié)構(gòu)編程與實(shí)踐(第2版)
- R語(yǔ)言:邁向大數(shù)據(jù)之路(加強(qiáng)版)
- Vue.js 3.x高效前端開(kāi)發(fā)(視頻教學(xué)版)
- Android 5從入門到精通