如何保證軟件的質(zhì)量一直就是令人頭疼的事,這里列了一個(gè)自己實(shí)際運(yùn)作的一套用于保證軟件質(zhì)量的體系,還望大家多加指點(diǎn)。
軟件的質(zhì)量保證的關(guān)注點(diǎn)主要分為三個(gè)方面:
1、對(duì)于需求的滿足
保證軟件的設(shè)計(jì)/實(shí)現(xiàn)對(duì)于需求是滿足的。
2、對(duì)于設(shè)計(jì)的滿足
保證代碼的實(shí)現(xiàn)是遵循設(shè)計(jì)的。
3、代碼的質(zhì)量/性能
避免代碼實(shí)現(xiàn)造成的性能或其他的一些非功能性問(wèn)題。
為了保證這三點(diǎn)的達(dá)成,在實(shí)際的項(xiàng)目/產(chǎn)品中采用了一套這樣的方法,涉及到的角色有項(xiàng)目經(jīng)理/開(kāi)發(fā)經(jīng)理/需求人員/設(shè)計(jì)人員/開(kāi)發(fā)人員/測(cè)試人員:
1、對(duì)于需求的滿足
在對(duì)于需求的滿足上,為避免代碼的設(shè)計(jì)/實(shí)現(xiàn)與需求出現(xiàn)大的偏差,要求由需求人員提供驗(yàn)證的場(chǎng)景,同時(shí)根據(jù)每天早會(huì)大家的計(jì)劃在下班時(shí)對(duì)計(jì)劃的完成根據(jù)驗(yàn)證場(chǎng)景進(jìn)行驗(yàn)證。
涉及到的角色:需求人員(負(fù)責(zé)驗(yàn)證場(chǎng)景的提供和需求實(shí)現(xiàn)的驗(yàn)證)
測(cè)試人員(根據(jù)驗(yàn)證場(chǎng)景進(jìn)行驗(yàn)證)
2、對(duì)于設(shè)計(jì)的滿足
在對(duì)于設(shè)計(jì)的滿足上,為避免出現(xiàn)代碼和設(shè)計(jì)嚴(yán)重偏離的現(xiàn)象,要求設(shè)計(jì)人員和開(kāi)發(fā)人員頻繁的交流,確信開(kāi)發(fā)人員對(duì)于設(shè)計(jì)意圖的理解,開(kāi)發(fā)人員在進(jìn)行代碼實(shí)現(xiàn)時(shí)根據(jù)設(shè)計(jì)人員提供的概要設(shè)計(jì)完成詳細(xì)設(shè)計(jì),在開(kāi)發(fā)過(guò)程中采用TDD的方式進(jìn)行,確保代碼對(duì)于設(shè)計(jì)的符合,這樣并不是說(shuō)設(shè)計(jì)是不可修改的,但設(shè)計(jì)和代碼的實(shí)現(xiàn)需要是可映射的。
要求設(shè)計(jì)人員對(duì)開(kāi)發(fā)人員的代碼進(jìn)行頻繁的Code Review,確定設(shè)計(jì)被正常的實(shí)現(xiàn)。
涉及到的角色:設(shè)計(jì)人員(提供對(duì)于設(shè)計(jì)驗(yàn)證的方法)
開(kāi)發(fā)人員(TDD)
3、代碼的質(zhì)量/性能
為保證代碼的質(zhì)量,在PP不能完全執(zhí)行的情況下也要求盡量的多采用PP的方式進(jìn)行開(kāi)發(fā),同時(shí)通過(guò)設(shè)計(jì)人員對(duì)于開(kāi)發(fā)人員以及開(kāi)發(fā)人員互相的Code Review來(lái)保證代碼的質(zhì)量。
對(duì)于代碼的性能更多的是通過(guò)單元測(cè)試執(zhí)行的耗時(shí)來(lái)分析。
對(duì)于設(shè)計(jì)以及代碼進(jìn)行重構(gòu)來(lái)提升代碼的質(zhì)量和性能。
涉及到的角色:設(shè)計(jì)人員(Code Review、性能分析、設(shè)計(jì)重構(gòu))
開(kāi)發(fā)人員(PP、Code Review、代碼重構(gòu))
4、任務(wù)完成情況/差距分析
為保證軟件開(kāi)發(fā)順利完成,應(yīng)不斷的對(duì)任務(wù)完成的情況進(jìn)行差距分析,以盡早做出應(yīng)對(duì)措施并調(diào)整。
涉及到的角色:項(xiàng)目經(jīng)理/開(kāi)發(fā)經(jīng)理
在開(kāi)發(fā)過(guò)程中首先要求的是高質(zhì)量的測(cè)試代碼(滿足需求/設(shè)計(jì)) ,之后才是高質(zhì)量的實(shí)現(xiàn)代碼,對(duì)于實(shí)現(xiàn)代碼在有了測(cè)試代碼的情況下更多的可以通過(guò)重構(gòu)去達(dá)到高質(zhì)量。
總體而言,在軟件開(kāi)發(fā)過(guò)程中最重要的就是要保證各種角色人員的接口的明確、交流/反饋的暢通,同時(shí)采取小步前進(jìn)的方式,通過(guò)重構(gòu)來(lái)達(dá)到目標(biāo)。