如果沒有QA,項目的狀況不是對每個項目成員透明化,會出現(xiàn)以上的各種情況;
QA作為協(xié)同式任務(wù)管理工具,通過對每個任務(wù)的記錄和跟蹤,讓項目成員對整個項目的情況有直觀的了解,項目經(jīng)理可隨時監(jiān)控項目推進(jìn)中的風(fēng)險是否在可控范圍,并提前快速作出調(diào)整。
不管是前期開發(fā)的工作包還是后期的測試bug,均以任務(wù)的形式錄入在QA里,然后對這個任務(wù)的一些基本屬性做設(shè)置,如:屬于哪個milestone、哪個模塊等,然后由各個階段的Triage的負(fù)責(zé)人按照需求等級標(biāo)準(zhǔn)來對任務(wù)作分類定級,并確定是否做,是否現(xiàn)在做;所有的任務(wù)都必須經(jīng)過Triage并approve通過,才能開始工作。Triage的決策需要多個層面的知識(結(jié)合產(chǎn)品、技術(shù)、進(jìn)度等多方因素),特別是在大項目中,Triage往往是一項群體工作,以功能小組(feature team)或產(chǎn)品決策組的方式來進(jìn)行。在項目的不同階段,可以由不同的角色來主導(dǎo)Triage流程。
在任務(wù)approve后,各職能方leader將任務(wù)指派給相應(yīng)具體執(zhí)行的人員。執(zhí)行人員,也是任務(wù)的owner,必須設(shè)置任務(wù)的Status date,如:Status任務(wù)狀態(tài)是Working(進(jìn)行中);Status date即完成日期點,Status date應(yīng)真實反映實際工作計劃,并應(yīng)契合項目時間表。
在執(zhí)行人員完成任務(wù)時,QA會通知各職能方leader去關(guān)閉這個任務(wù),關(guān)閉的意義在于通知任務(wù)的相關(guān)跟蹤者,可以著手下一部分的工作,如某功能代碼任務(wù)關(guān)閉,即相關(guān)測試人員知道可以開始這個功能點的測試工作;
通過任務(wù)在QA系統(tǒng)里的記錄和跟蹤,以及任務(wù)狀態(tài)的實時更新,終會匯總生成各種可視化的圖表,項目進(jìn)展直觀,且可度量,能夠很好的把握整個項目推進(jìn)的節(jié)奏,對項目中各項問題和風(fēng)險定位更容易,并可在周會上對項目的所有成員公開進(jìn)度信息,便于協(xié)調(diào)一致;
其中重要的圖表:glide path任務(wù)走勢圖:
“實際任務(wù)走勢”與“計劃任務(wù)走勢”的對比,可以衡量出計劃與實際的偏差。
每日構(gòu)建
技術(shù) K:我們只在每個小milestone才會打build。
交互 E:希望可以每日bulid,我可以每天拿到新的版本進(jìn)行測試。
測試 Q:我建議測試前期可以每個milestoen打版本,但是中期開始,每日build。
… …
每日構(gòu)建(daily build)是指每天對整個項目做一次完整的自動構(gòu)建,生成可執(zhí)行文件的過程,對Web類產(chǎn)品,每日構(gòu)建通常要伴隨自動部署的過程,將這些可執(zhí)行文件部署至測試環(huán)境,并按照一定的規(guī)則對這個安裝包或測試環(huán)境做版本編號,是一種Public build的管理方式。
每日構(gòu)建是編譯管理的一種方式,項目初期,可根據(jù)根據(jù)需要按照一定的頻率打,如:每周、每個milestone,隨著項目的進(jìn)行頻率逐漸增加build的頻率,如:每天build。
每日構(gòu)建的好處:
每日構(gòu)建讓從產(chǎn)品經(jīng)理、項目經(jīng)理、策劃、交互、視覺等所有的項目人員從第一個小功能模塊完成開始,能夠隨時測試新的版本提交bug,并能及時了解技術(shù)開發(fā)的進(jìn)度;
每日構(gòu)建讓測試人員從第一個小功能模塊完成開始,能夠每天測試新的版本,提交新bug和復(fù)查部分bug,而不需要等著某個小milestone或者所有的功能代碼都實現(xiàn)了,再開始測試,大大增加了測試和開發(fā)的重疊時間,測試更充分,測試和開發(fā)的迭代效率更高,產(chǎn)品質(zhì)量控制得更好;而且bug提交到qa上,也會一并附上build版本號,方便技術(shù)還原現(xiàn)場,更快地解決bug;
每日構(gòu)建使得技術(shù)必須對每天自己輸出的代碼負(fù)責(zé),一旦每日build失敗,必須檢查原因,并糾正不可再犯,以避免再次build失敗,這樣能非常有效地提高所提交代碼的質(zhì)量,減少bug的產(chǎn)生,加快開發(fā)效率;
雖然搭建并維護(hù)daily build,需要比較大的工作量,但物有所值。