200人以上的專(zhuān)業(yè)團(tuán)隊(duì)開(kāi)發(fā)2到3年時(shí)間。游戲項(xiàng)目的需求涉及到很多內(nèi)容,包括游戲類(lèi)型、界面類(lèi)型、引擎、游戲性等。
游戲項(xiàng)目的需求文檔最初來(lái)源于策劃案,內(nèi)容包括劇情創(chuàng)意、玩法、美術(shù)風(fēng)格等。結(jié)合游戲硬件和軟件環(huán)境等因素,被分解生成《游戲功能描述書(shū)》,包含眾多內(nèi)容,若用整篇的文檔來(lái)指導(dǎo)開(kāi)發(fā)和測(cè)試工作,很容易引起任務(wù)分配的混亂;當(dāng)發(fā)生需求變更時(shí),也很難追溯歷史版本。TechExcel從實(shí)踐中提煉出一個(gè)行之有效的解決方法-用規(guī)范點(diǎn)(Specification,以下簡(jiǎn)稱(chēng)Spec)量化需求,正規(guī)表達(dá)每一個(gè)功能單元。只需打開(kāi)《游戲功能描述書(shū)》的WORD文檔,就可以利用插件,將其中的功能單元逐條地復(fù)制出來(lái),在需求管理系統(tǒng)DevSpec中直接生成Spec。相對(duì)于需求,Spec是更面向技術(shù)人員的語(yǔ)言。
有序管理需求變更
在實(shí)際項(xiàng)目中,實(shí)現(xiàn)需求變更的成本隨著開(kāi)發(fā)進(jìn)度呈指數(shù)級(jí)增長(zhǎng)。需求變更的流程化管理能保障正常的開(kāi)發(fā)進(jìn)度,將變更及時(shí)反應(yīng)到開(kāi)發(fā)測(cè)試部門(mén)。
以下描述的是一個(gè)典型過(guò)程(如圖1)。一項(xiàng)變更請(qǐng)求在需求管理系統(tǒng)中被提交后,與之關(guān)聯(lián)的各個(gè)部門(mén),如市場(chǎng)、程序、美術(shù)、測(cè)試等,都會(huì)有相關(guān)人員接到系統(tǒng)通知而介入。他們將組成評(píng)估團(tuán)隊(duì),根據(jù)實(shí)施難度、周期、費(fèi)用、對(duì)其他機(jī)制的影響等指標(biāo),對(duì)該變更進(jìn)行全面考察和評(píng)估。在理想的游戲研發(fā)管理平臺(tái)中,需求管理與所有規(guī)劃、開(kāi)發(fā)、測(cè)試管理過(guò)程相集成。因此,需求的正規(guī)表達(dá)Spec,以及圍繞Spec正在或?qū)⒁M(jìn)行的開(kāi)發(fā)任務(wù)和測(cè)試任務(wù),都能被納入綜合考慮的范疇,便于評(píng)估團(tuán)隊(duì)估算該變更造成的"牽一發(fā)而動(dòng)全身"的潛在影響。有時(shí),還要結(jié)合商業(yè)需求進(jìn)行考量,為了趕上最佳發(fā)布時(shí)機(jī),有些變更將被拒絕。這個(gè)過(guò)程由獨(dú)立的工作流控制,通常包括請(qǐng)求、復(fù)查、討論、調(diào)整、批準(zhǔn)和拒絕等狀態(tài),只有具備權(quán)限的項(xiàng)目成員才能改變狀態(tài)。按照預(yù)設(shè)的流程,各方審批全部通過(guò)后,該變更才能被接受。
變更請(qǐng)求被批準(zhǔn)后,與之相關(guān)聯(lián)的開(kāi)發(fā)、測(cè)試任務(wù)都會(huì)在系統(tǒng)中被一一標(biāo)記出來(lái),以提醒程序和測(cè)試部門(mén)的相關(guān)負(fù)責(zé)人,引發(fā)這些任務(wù)的需求已經(jīng)變更,請(qǐng)他們做出相應(yīng)的調(diào)整處理。在系統(tǒng)中跟蹤這些任務(wù)的進(jìn)展,可以實(shí)時(shí)掌握該變更的落實(shí)情況。變更完成后,也可以核算它對(duì)開(kāi)發(fā)周期和費(fèi)用的實(shí)際影響,與評(píng)估時(shí)的預(yù)測(cè)相對(duì)比,找出差異原因,為將來(lái)更準(zhǔn)確地評(píng)估提供參考。
需求指導(dǎo)項(xiàng)目規(guī)劃與執(zhí)行
縱使項(xiàng)目最初都有比較全面的計(jì)劃,延期仍然會(huì)時(shí)常發(fā)生,即便是在管理機(jī)制比較成熟的歐美游戲公司,跳票也不可避免。通常情況下,導(dǎo)致跳票主要有以下幾點(diǎn)原因:功能設(shè)計(jì)規(guī)劃過(guò)多,很多又無(wú)法刪除,如不增加開(kāi)發(fā)時(shí)間,游戲幾乎不能完成;缺乏有經(jīng)驗(yàn)的管理或開(kāi)發(fā)人員,不能準(zhǔn)確估計(jì)工作量;任務(wù)執(zhí)行缺乏規(guī)范,開(kāi)發(fā)人員隨意更改功能設(shè)計(jì),影響整體進(jìn)度;過(guò)高的人員流動(dòng)率,導(dǎo)致知識(shí)的流失,任務(wù)不能及時(shí)跟進(jìn)。針對(duì)以上問(wèn)題,只要從量化需求入手,有序管理需求變更,用正規(guī)表達(dá)、可量化的Spec來(lái)指導(dǎo)項(xiàng)目規(guī)劃、編程和測(cè)試,就能把風(fēng)險(xiǎn)降到最低。
基于結(jié)構(gòu)化的Spec集合,可以將項(xiàng)目分解為多個(gè)子項(xiàng)目,將Spec直接分配到各自對(duì)應(yīng)的子項(xiàng)目中,以此來(lái)規(guī)劃和估算子項(xiàng)目的工作量。項(xiàng)目管理人員為每個(gè)子項(xiàng)目分配資源,安排優(yōu)先順序,確定項(xiàng)目里程碑。在游戲項(xiàng)目中,不同部門(mén)協(xié)作異常緊密,因此子項(xiàng)目間的優(yōu)先順序顯得尤為重要。例如,游戲音效制作與程序開(kāi)發(fā)之間的相關(guān)度看似并不非常緊密,但若音效人員不實(shí)際感受游戲,很難體會(huì)玩家心情,也就難以創(chuàng)作出應(yīng)景的音效。
在項(xiàng)目執(zhí)行時(shí),可以為每一個(gè)Spec產(chǎn)生出一系列開(kāi)發(fā)任務(wù)。自定義的工作流機(jī)制確保每一個(gè)任務(wù)從提交到最終解決的生命周期都嚴(yán)格符合業(yè)務(wù)流程,保證任何時(shí)刻都有唯一的負(fù)責(zé)人、狀態(tài)和截止日期。這樣,不僅能規(guī)范游戲制作的過(guò)程,還能降低人員流動(dòng)帶來(lái)的風(fēng)險(xiǎn)。任務(wù)的流轉(zhuǎn)及相關(guān)知識(shí)文檔,如源代碼、美術(shù)資源等,都得到系統(tǒng)完整的記錄,還能與任務(wù)關(guān)聯(lián),便于追溯。一旦有人離開(kāi)項(xiàng)目,接替的人員能夠查看任務(wù)和文檔信息,迅速?gòu)浹a(bǔ)人員空缺。
以上所述的需求管理經(jīng)驗(yàn),雖然是從游戲行業(yè)的實(shí)踐中總結(jié)得出,卻不囿于游戲行業(yè),項(xiàng)目復(fù)雜度較低的一般軟件企業(yè)也可以借鑒。