如何知道項(xiàng)目已經(jīng)完成(必須要定義一些完成的準(zhǔn)則)何以知道已經(jīng)完成?
當(dāng)產(chǎn)品已經(jīng)足夠好的情況下,可以確認(rèn)是否已經(jīng)完成。
“足夠好”:是指產(chǎn)品已經(jīng)具備一些可接受的綜合屬性,如功能、質(zhì)量、時(shí)效性、客戶價(jià)值、競爭力以及支撐的基礎(chǔ)設(shè)施已經(jīng)準(zhǔn)備緒。
客戶對質(zhì)量的看法主要取決于可靠性(持續(xù)運(yùn)行無故障)和性能(操作的響應(yīng)時(shí)間)
內(nèi)部對質(zhì)量的看法主要設(shè)計(jì)如下方面:軟件在未來的可修改性、可維護(hù)性、文檔的可理解性等
如何定義產(chǎn)品發(fā)布準(zhǔn)則?
發(fā)布準(zhǔn)則必須要與成功準(zhǔn)則相對應(yīng),沒有放四海而皆準(zhǔn)的發(fā)布準(zhǔn)則,要確保項(xiàng)目取得終的成功,反映產(chǎn)品能夠上線發(fā)布的指標(biāo)都必須要有一定的可信度和可測度。
如果指定了不符合項(xiàng)目業(yè)務(wù)目標(biāo)的寬松的發(fā)布準(zhǔn)則,可能會(huì)造成一種一定會(huì)可能會(huì)取得成功的假象。
一些寬松的發(fā)布準(zhǔn)則:廣泛的客戶群體曝光率,“很高的客戶滿意度”
某些模棱兩可的措辭:可接受的、足夠的、恰當(dāng)?shù)摹V泛的、精確地、高的、改進(jìn)的、低的、合理的、健壯的、準(zhǔn)確無誤的和有效率的。這些措辭要盡量避免使用。
發(fā)布準(zhǔn)則必須要滿足:
Specific【明確的(不是空泛的)】
Measurable【可度量的(不是定性的或主觀的)】
Attainable【可實(shí)現(xiàn)的(不是一對不可能實(shí)現(xiàn)的目標(biāo))】
Relevant【相關(guān)的(與客戶要求和業(yè)務(wù)目標(biāo)相關(guān)聯(lián))】
Trackable【可跟蹤的(在整個(gè)項(xiàng)目過程中可以進(jìn)行監(jiān)控)】
制定準(zhǔn)則時(shí):
認(rèn)真考慮不同項(xiàng)目干系人對團(tuán)體的想法和意見,避免沖突和分歧
考慮用戶提出的驗(yàn)收標(biāo)準(zhǔn)
于關(guān)鍵用戶代表進(jìn)行充分溝通
出現(xiàn)沖突時(shí),全體團(tuán)隊(duì)成員必須要工作在共同的目標(biāo)集合上,并做出適當(dāng)?shù)恼壑信袛唷?/p>
可能的發(fā)布準(zhǔn)則項(xiàng):
1)缺陷
質(zhì)量是一系列復(fù)雜和多維度的產(chǎn)品特點(diǎn)的集合。發(fā)布一個(gè)不成熟且存在很多缺陷的產(chǎn)品會(huì)導(dǎo)致很高的運(yùn)行成本、用戶的失望、很差的產(chǎn)品評(píng)價(jià)、過高的維護(hù)成本、產(chǎn)品退貨甚至法律糾紛。作為質(zhì)量的指標(biāo)之一,可以對開發(fā)和測試中發(fā)現(xiàn)的缺陷的數(shù)量和類型進(jìn)行跟蹤。
如果質(zhì)量是項(xiàng)目的一個(gè)成功準(zhǔn)則,可以參考如下與缺陷相關(guān)的發(fā)布準(zhǔn)則:
在一個(gè)四級(jí)的缺陷跟蹤系統(tǒng)中,不存在未解決的嚴(yán)重的1級(jí)或2級(jí)缺陷。在過去的X周內(nèi),未解決的缺陷數(shù)量持續(xù)下降,同時(shí)估算的遺留缺陷數(shù)量是可以接受的(可以采用缺陷模型來進(jìn)行預(yù)測)
在編譯器中、源碼分析與運(yùn)行時(shí)分析中所報(bào)告的所有錯(cuò)誤和警告都得到了修正。
前一發(fā)布版本出現(xiàn)的問題都已經(jīng)得到了修正,在修復(fù)過程中也沒有引入額外的缺陷。
2)測試
大多數(shù)軟件團(tuán)隊(duì)都非常依賴不同類型的測試來發(fā)現(xiàn)缺陷,可以通過查看估算的未發(fā)現(xiàn)缺陷數(shù)量是否處在可接受范圍內(nèi),或者在預(yù)設(shè)的測試時(shí)間內(nèi)并沒有發(fā)現(xiàn)新的缺陷時(shí)是否決定停止測試,一些主要的發(fā)布準(zhǔn)則如下:
代碼編譯、構(gòu)建和冒煙測試是否在所有平臺(tái)上通過;
綜合測試和系統(tǒng)測試通過
特定的功能通過了所有的系統(tǒng)和用戶驗(yàn)收測試(如正常流程和相關(guān)的異常處理流程在普遍的用例中測試通過)
測試計(jì)劃中涵蓋的所有記錄在案的功能需求的測試用例都得到了執(zhí)行
達(dá)到了預(yù)先設(shè)定的代碼或需求(如功能需求、測試用例流程或者產(chǎn)品屬性)
綜合考慮測試和缺陷相關(guān)的因素,一位學(xué)者認(rèn)提出的產(chǎn)品發(fā)布準(zhǔn)則:
完成了覆蓋功能點(diǎn)和80%的回歸測試
不存在嚴(yán)重等級(jí)1和等級(jí)2的缺陷;
已知的遺留缺陷密度少于每千行代碼0.5個(gè)缺陷;
每1000小時(shí)的測試工作發(fā)現(xiàn)新缺陷的數(shù)量少于40個(gè)
發(fā)現(xiàn)缺陷的平均間隔時(shí)間少于100小時(shí)
完成了壓力測試、配置測試、安裝測試、本地化測試、可用性測試和傻瓜用戶測試。
3)質(zhì)量屬性
質(zhì)量屬性是另一只哦能夠用于描述產(chǎn)品行為的思維方式,這些屬性包括可靠性、安全性、完整性、可用性、便攜性、可維護(hù)性、高效性、健壯性和交互型等。一些相關(guān)的準(zhǔn)則是:
在所有的平臺(tái)上的定量性能目標(biāo)得到滿足
可靠性目標(biāo)得到滿足
相關(guān)公司的安全策略和需求得到了滿足
特定的條件已經(jīng)符合,可以使得產(chǎn)品通過必要的評(píng)審或者審計(jì)
4) 功能
在即將發(fā)布的產(chǎn)品版本上,所有的承諾的高優(yōu)先級(jí)需求已經(jīng)實(shí)現(xiàn)并能正常工作
滿足特定客戶的驗(yàn)收的標(biāo)準(zhǔn)
滿足所有非健全人士的可訪問性需求
如果需要軟件在不同語言環(huán)境下運(yùn)行,所有本地化與全球化測試都能通過
滿足特定法規(guī)、合約、標(biāo)準(zhǔn)規(guī)范和監(jiān)管目標(biāo)
所有的功能需求都可以通過測試用例進(jìn)行追蹤
5) 配置管理
產(chǎn)品可以在所有目標(biāo)平臺(tái)上重復(fù)構(gòu)建
物理配置審計(jì)確認(rèn)現(xiàn)有的所有組件都是正確的版本
產(chǎn)品在所有的目標(biāo)平臺(tái)上都能成功安裝
發(fā)布的介質(zhì)和鏡像文件經(jīng)過了反病毒和惡意軟件掃描
6)支持
這里主要指確保產(chǎn)品順利安裝和實(shí)施的其他關(guān)鍵要素。
發(fā)布說明已經(jīng)準(zhǔn)備完畢,包含新版本中的已修復(fù)的缺陷信息、增加的功能和刪除的功能
受影響的項(xiàng)目干系人均了解軟件發(fā)布和支持流程
已知的未修復(fù)缺陷全部記錄在項(xiàng)目的缺陷跟蹤系統(tǒng)中
支持部門已經(jīng)做好了接受和回應(yīng)客戶問題報(bào)告的準(zhǔn)備
執(zhí)行軟件的運(yùn)行環(huán)境所需的各種基礎(chǔ)設(shè)備已經(jīng)到位
軟件的生產(chǎn)和下發(fā)已經(jīng)做好了接收產(chǎn)品的準(zhǔn)備。