從一個(gè)執(zhí)行層面的測試做到測試主管這個(gè)級別,當(dāng)你手下管理多個(gè)項(xiàng)目和測試人員時(shí),流程成為你必須要考慮的事,一般公司也很少有自己獨(dú)立的SQA部門進(jìn)行過程管控,如果是弱矩陣式的組織架構(gòu)的模式下,基本QA/QC作為一個(gè)質(zhì)量部門存在于公司內(nèi),而過程管控流程制定一般也分?jǐn)偟巾?xiàng)目管理者或質(zhì)量部門中。那我們今天就來討論一下軟件研發(fā)流程這個(gè)話題,對于大多數(shù)普通的人員來看,流程是否完善規(guī)范,也是看一家公司的軟件研發(fā)是否正規(guī)的主要標(biāo)準(zhǔn)。對于國內(nèi)的軟件企業(yè),我們一般常見的幾種開發(fā)模型有:
邊做邊改模型:沒有規(guī)格說明,沒有相關(guān)的設(shè)計(jì),得到客戶需求直接進(jìn)行編碼形成版本,隨著客戶的需要一次一次不斷的修改;也就是我們早期所說的作坊式軟件開發(fā)模型
瀑布模型:相信也是現(xiàn)在傳統(tǒng)軟件研發(fā)使用最廣泛的開發(fā)模型,軟件生命周期被計(jì)劃、需求、設(shè)計(jì)、編碼、測試、維護(hù)六個(gè)階段進(jìn)行劃分,自上而下以固定次序銜接著進(jìn)行一輪迭代。
快速原型模型:在需求階段建立一個(gè)快速模型讓客戶或客戶代表以此原型進(jìn)行需求評論,細(xì)化需求,等原型滿足用戶需求后再進(jìn)行軟件的開發(fā),常見的是那種客戶前端和研發(fā)后端相分離的組織里,產(chǎn)品運(yùn)營產(chǎn)品經(jīng)理,UI設(shè)計(jì)及客戶體驗(yàn)或QA驗(yàn)收作為一個(gè)客戶代表團(tuán)隊(duì),前端后端QC測試作為一個(gè)實(shí)現(xiàn)團(tuán)隊(duì)分部合作的項(xiàng)目中比較常見這種開發(fā)模型也算是彌補(bǔ)了瀑布模型的需求開發(fā)風(fēng)險(xiǎn)不明確的風(fēng)險(xiǎn)缺點(diǎn)
增量模型:又叫演化模型,在此模型中軟件各階段并不直接交付一個(gè)可運(yùn)行的完整產(chǎn)品,而是交付滿足客戶需求一的個(gè)子集的可運(yùn)行的產(chǎn)品,整個(gè)產(chǎn)品被分解成若干個(gè)構(gòu)件,研發(fā)人員逐個(gè)構(gòu)件進(jìn)行交付,迭代的完成整個(gè)軟件產(chǎn)品,我們常說的敏捷開發(fā)就主要以這種開發(fā)模型發(fā)展改良為主
RUP:這個(gè)模型是由rational公司提出的一套開發(fā)過程模型,是一個(gè)面向?qū)ο筌浖こ痰耐ㄓ脴I(yè)務(wù)流程,主要適合大型的商業(yè)軟件項(xiàng)目,是一整套系統(tǒng)的方法論,對應(yīng)的它有一整套工具集和規(guī)范標(biāo)準(zhǔn)進(jìn)行輔助,因?yàn)槠鋸?fù)雜度和適應(yīng)性,國內(nèi)很少有企業(yè)進(jìn)行項(xiàng)目實(shí)踐
IPD模型、螺旋模型、智能模型等等:因適用性的問題在這里就不一一說明了,網(wǎng)上相關(guān)的介紹文章有很多
介紹了那么多通用工作流程,主要并不是想去比較哪個(gè)流程孰優(yōu)孰劣,而是覺得每個(gè)流程都有其可取之處,只有適合之說而沒有好壞之分。就拿我們普遍認(rèn)為小作坊式的邊做邊改模式,你不可否認(rèn)其工作的便利性和靈活性,初創(chuàng)公司在沒有用戶及資源基礎(chǔ)或非矩陣式組織內(nèi)人員不多的情況下,這種工作方式是最適合不過的了。
延伸閱讀
學(xué)習(xí)是年輕人改變自己的最好方式