做好項(xiàng)目需求分析,才是項(xiàng)目管理的重中之重
文|洪生鵬
01
項(xiàng)目需求分析是系統(tǒng)分析和軟件設(shè)計(jì)階段之間的橋梁。
主要表現(xiàn)在兩方面:
需求分析以系統(tǒng)規(guī)格說明和項(xiàng)目規(guī)劃作為分析活動(dòng)的基本出發(fā)點(diǎn),并從軟件角度對(duì)它們進(jìn)行檢查與調(diào)整。
需求規(guī)格說明又是軟件開發(fā)設(shè)計(jì)、以及實(shí)現(xiàn)和測試直至維護(hù)的主要基礎(chǔ)。良好的分析活動(dòng)有助于避免或盡早剔除早期錯(cuò)誤,從而提高軟件生產(chǎn)率,降低開發(fā)成本,改進(jìn)軟件質(zhì)量,提高軟件系統(tǒng)的穩(wěn)定性和健全性。
可見需求分析的重要性,項(xiàng)目需求分析大致有四個(gè)過程
1、需求分析過程
需求過程包括需求開發(fā)和需求管理兩個(gè)部分:
需求開發(fā):開發(fā)前期的管理,與客戶的溝通過程,包括需求獲取、需求分析、編寫需求和需求驗(yàn)證等。
需求管理:軟件項(xiàng)目開發(fā)過程中控制和維持需求約定的活動(dòng)。包括變更控制、版本控制、需求跟蹤、需求狀態(tài)跟蹤等。
2、需求的層次
需求的層次包括:業(yè)務(wù)需求、用戶需求、功能需求、非功能需求等。
3、需求開發(fā)階段的重點(diǎn)
提取業(yè)務(wù)對(duì)象
業(yè)務(wù)對(duì)象(Business Object,BO)是對(duì)數(shù)據(jù)進(jìn)行檢索和處理的組件。是簡單的真實(shí)世界的軟件抽象。業(yè)務(wù)對(duì)象通常位于中間層或者業(yè)務(wù)邏輯層。
提取業(yè)務(wù)流程
業(yè)務(wù)流程,是為達(dá)到特定的價(jià)值目標(biāo)而由不同的人分別共同完成的一系列活動(dòng)。活動(dòng)之間不僅有嚴(yán)格的先后順序限定,而且活動(dòng)的內(nèi)容、方式、責(zé)任等也都必須有明確的安排和界定,以使不同活動(dòng)在不同崗位角色之間進(jìn)行轉(zhuǎn)手交接成為可能?;顒?dòng)與活動(dòng)之間在時(shí)間和空間上的轉(zhuǎn)移可以有較大的跨度。而狹義的業(yè)務(wù)流程,則認(rèn)為它僅僅是與客戶價(jià)值的滿足相聯(lián)系的一系列活動(dòng)。
性能需求
在分析的前期應(yīng)該注意客戶對(duì)所開發(fā)軟件的技術(shù)性能指標(biāo),如存儲(chǔ)容量限制、運(yùn)行時(shí)間限制、安全保密性等。
環(huán)境需求
環(huán)境需求是指軟件平臺(tái)運(yùn)行時(shí)的環(huán)境的要求,如硬件方面:機(jī)型、外部設(shè)備、數(shù)據(jù)通信接口;軟件方面:系統(tǒng)軟件,包括操作系統(tǒng)、網(wǎng)絡(luò)軟件等;使用方面:操作人員需要什么樣的技術(shù)水平,應(yīng)具備那些條件。
用戶界面需求
為用戶界面細(xì)致地規(guī)定到達(dá)的要求。
4、 需求分析的任務(wù)
需求分析的主要任務(wù)是借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)的邏輯模型,其流程如下:
確定對(duì)系統(tǒng)的綜合需求(功能、性能、運(yùn)行、擴(kuò)充需求)
制作產(chǎn)品需求文檔 (PRD)
分析系統(tǒng)的數(shù)據(jù)需求(概念模型、數(shù)據(jù)字典、規(guī)范化)
導(dǎo)出目標(biāo)系統(tǒng)的詳細(xì)的邏輯模型(數(shù)據(jù)流圖、數(shù)據(jù)字典、主要功能描述)
開發(fā)原形系統(tǒng)
02
如何有效進(jìn)行項(xiàng)目管理?
項(xiàng)目根據(jù)項(xiàng)目需求確定目標(biāo),主要是項(xiàng)目目標(biāo)的制定、分解和職責(zé)分工。目標(biāo)管理要求每一個(gè)分目標(biāo)都有明確的責(zé)任主體。因此,預(yù)定總體目標(biāo)之后,需要重新審查現(xiàn)有團(tuán)隊(duì)結(jié)構(gòu),進(jìn)行目標(biāo)分解,并明確目標(biāo)責(zé)任者和協(xié)調(diào)關(guān)系。分目標(biāo)要具體量化,便于考核;分清輕重緩急。
目標(biāo)管理是系統(tǒng)性工程,如果事先沒有一個(gè)詳盡的計(jì)劃,很難將各項(xiàng)工作協(xié)調(diào)一致。因此,計(jì)劃是目標(biāo)實(shí)施過程中不可缺少的一部分。目標(biāo)管理是一項(xiàng)所有成員都要參與設(shè)定自已的具體目標(biāo),然后各就各位把計(jì)劃執(zhí)行的過程。并且,上級(jí)主管要進(jìn)行階段性考查,根據(jù)實(shí)際情況作出一些調(diào)控,以便順利的完成目標(biāo)。
這里推薦自下而上的預(yù)算方法
自下而上方法要求運(yùn)用WBS(Work Breakdown Structure,工作分解結(jié)構(gòu))對(duì)項(xiàng)目的所有工作任務(wù)的時(shí)間和預(yù)算進(jìn)行仔細(xì)考察。最初,預(yù)算是針對(duì)資源(團(tuán)隊(duì)成員的工作時(shí)間、硬件的配置)進(jìn)行的,項(xiàng)目經(jīng)理在此之上再加上適當(dāng)?shù)拈g接費(fèi)用(如培訓(xùn)費(fèi)用、管理費(fèi)用、不可預(yù)見費(fèi)等)以及項(xiàng)目要達(dá)到的利潤目標(biāo)就形成了項(xiàng)目的總預(yù)算。自下而上的預(yù)算方法要求全面考慮所有涉及到的工作任務(wù),更適用于項(xiàng)目的初期與中期,它能準(zhǔn)備地評(píng)估項(xiàng)目的成本,與真實(shí)費(fèi)用相差在5% ~ 10%之間。
要是項(xiàng)目部分有外包的情況,還需要考慮接口聯(lián)調(diào)的工作量。
筆者有次做移動(dòng)客戶端跟服務(wù)端聯(lián)調(diào)接口時(shí),本來計(jì)劃10個(gè)接口一天內(nèi)聯(lián)調(diào)完的,可是那天只聯(lián)調(diào)了一個(gè)接口。
有的公司為了接口開發(fā)成本,服務(wù)端開發(fā)人員開發(fā)的接口,沒有經(jīng)過測試人員測試就直接跟客戶端聯(lián)調(diào)了。
記得那次,服務(wù)端開發(fā)人員說接口開發(fā)好了,可以聯(lián)調(diào),他直接打包發(fā)布都平臺(tái),也沒有自己先測試一下,結(jié)果我一調(diào),直接報(bào)500了。
他再打包發(fā)布,這樣一來就浪費(fèi)了很多不必要的時(shí)間,更離譜的是,接口返回?cái)?shù)據(jù)格式竟然不是客戶端想要的。
……
所以,做系統(tǒng)需求評(píng)估時(shí),要注意聯(lián)調(diào)的工作量。
做好項(xiàng)目需求分析,才是項(xiàng)目管理的重中之重。,只要做好了,才能更好的做好軟件開發(fā),開發(fā)人員才不會(huì)了因?yàn)轭l繁的需求改動(dòng)而抓狂,有更多的時(shí)間和精力去處理更有意義的事情。
【END】
聯(lián)系客服