新聞中心
最近半年撲在一個(gè)項(xiàng)目上難以自拔,簡(jiǎn)直就是一個(gè)泥潭,無(wú)數(shù)同行來(lái)到這里、陷在這里,誰(shuí)也不知道到底完成項(xiàng)目還需要多少人來(lái)填坑。項(xiàng)目管理混亂,高層領(lǐng)導(dǎo)離職,已無(wú)進(jìn)度管理可言(自打來(lái)了項(xiàng)目組,就沒(méi)見(jiàn)“里程碑”為何物)。干到現(xiàn)在,我所感覺(jué)到的僅僅剩下失望、苦悶與挫敗感。寫(xiě)到這里有點(diǎn)發(fā)牢騷的味道,其實(shí)我想說(shuō)的是項(xiàng)目的成敗與管理有莫大的關(guān)系,作為一個(gè)管理學(xué)出身(我現(xiàn)在是開(kāi)發(fā)),我也想通過(guò)我的經(jīng)歷說(shuō)說(shuō)我對(duì)項(xiàng)目管理的認(rèn)識(shí)。

成都創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比靜安網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式靜安網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋靜安地區(qū)。費(fèi)用合理售后完善,10余年實(shí)體公司更值得信賴(lài)。
首先,說(shuō)說(shuō)我們項(xiàng)目組自身的不足。
1 沒(méi)有“規(guī)范”。進(jìn)入項(xiàng)目我沒(méi)有拿到任何“規(guī)范”性文檔,所以開(kāi)發(fā)中數(shù)據(jù)表、變量、工作流等命名極其混亂。
2 沒(méi)有數(shù)據(jù)字典。開(kāi)發(fā)對(duì)數(shù)據(jù)庫(kù)的認(rèn)識(shí)僅能通過(guò)查詢(xún)來(lái)了解,對(duì)于一個(gè)企業(yè)級(jí)項(xiàng)目來(lái)說(shuō),表實(shí)在是太多了,我們不了解某些數(shù)據(jù),現(xiàn)有的表是否保存。
3 沒(méi)有核心人物。對(duì)于一個(gè)使用獨(dú)立框架開(kāi)發(fā)的系統(tǒng),沒(méi)有一個(gè)對(duì)其十分了解的技術(shù)總監(jiān),所有人都是在按照之前的版本改造,嘗試性地引入新功能,經(jīng)常是一錯(cuò)錯(cuò)一片,需要不斷地進(jìn)行整體的返工,非常耗時(shí)。
4 沒(méi)有責(zé)任到人。項(xiàng)目一貫的拆東墻補(bǔ)西墻的做法,導(dǎo)致某個(gè)功能點(diǎn)被分配了N手,所有人都要看前人的代碼并熟悉業(yè)務(wù),但項(xiàng)目組有不給你足夠的時(shí)間交接,這樣的結(jié)果就是大量代碼重復(fù),BUG數(shù)量飆升,以及出問(wèn)題沒(méi)人認(rèn)領(lǐng),互相推諉,最后接手的人要為前人買(mǎi)單。
5 缺乏溝通。在如此一個(gè)需求不明確的情況下,開(kāi)發(fā)就應(yīng)該坐在需求部門(mén)邊上不斷掌握需求,但是多數(shù)人沒(méi)有,導(dǎo)致了我們都變更單都快追上《C#高級(jí)編程》了,而且內(nèi)部人員溝通不足,缺乏協(xié)作。
6 不做代碼審查。項(xiàng)目組沒(méi)有質(zhì)管,破壞現(xiàn)有代碼分層,插入不寫(xiě)驗(yàn)證的情況很多,誰(shuí)來(lái)為他們的BUG買(mǎi)單?
7 資源分配不合理,獎(jiǎng)懲不均。甲方人員閑的打游戲,乙方人員加班到半夜。這其實(shí)也沒(méi)啥,但是我要說(shuō)的是為啥表?yè)P(yáng)的總是甲方,乙方加班就是應(yīng)該的對(duì)嗎。開(kāi)發(fā)兼職運(yùn)維,每天都要浪費(fèi)大量時(shí)間來(lái)解答用戶(hù)的各種問(wèn)題,這也沒(méi)啥,但為啥不讓用戶(hù)去找培訓(xùn)人員而來(lái)找我們,為啥解決問(wèn)題消耗的人日不列入計(jì)劃。
其次,說(shuō)說(shuō)我們的合作廠商的問(wèn)題。
1 顧問(wèn)能力不足。多數(shù)顧問(wèn)不懂技術(shù),其設(shè)計(jì)的系統(tǒng)完全違背大型分布式系統(tǒng)的開(kāi)發(fā)原則。一個(gè)接口對(duì)應(yīng)N個(gè)功能點(diǎn),為了復(fù)用代碼他們絞盡腦汁呀,可你可知道你提高了系統(tǒng)的耦合度,你對(duì)維護(hù)提高的多少成本。自己接口從不寫(xiě)驗(yàn)證,你為啥那么相信你的外圍系統(tǒng),你自己的庫(kù)你都不看好門(mén)嗎。完全不知道需求文檔該怎么寫(xiě),你是顧問(wèn),你要將用戶(hù)的需求轉(zhuǎn)換為需求文檔,而不是指導(dǎo)用戶(hù)如果寫(xiě)個(gè)EXCEL來(lái)應(yīng)付差事,你的用戶(hù)不知道開(kāi)發(fā)人員需要什么,也不知道該如何表示自己的需求,再說(shuō)哪有讓用戶(hù)寫(xiě)需求文檔的。完全不能估算工作量,單方地認(rèn)為改改字段就像改EXCEL文檔那樣簡(jiǎn)單,壓外圍進(jìn)度壓的好死。此外,顧問(wèn)的業(yè)務(wù)水平也不高(經(jīng)常遭投訴),定個(gè)需求要開(kāi)幾天會(huì),等真正做的時(shí)候發(fā)現(xiàn)業(yè)務(wù)又走不通了,明顯在設(shè)計(jì)時(shí),沒(méi)有根據(jù)實(shí)際業(yè)務(wù)對(duì)設(shè)計(jì)進(jìn)行反復(fù)迭代。
2 糟糕的文檔。先不說(shuō)文檔的質(zhì)量,首先數(shù)量就不全,經(jīng)常是先開(kāi)發(fā)后補(bǔ)文檔。再說(shuō)質(zhì)量,完全是外行人寫(xiě)的東西,不過(guò)也可以理解,畢竟大部分文檔是用戶(hù)寫(xiě)的,我就想問(wèn),讓用戶(hù)出設(shè)計(jì)那還要你顧問(wèn)干啥,難到就是發(fā)發(fā)郵件當(dāng)監(jiān)工。我覺(jué)得這已經(jīng)不是能力問(wèn)題了而是職業(yè)道德和責(zé)任心的問(wèn)題。
3 推卸責(zé)任。業(yè)務(wù)上本該自己系統(tǒng)實(shí)現(xiàn)的功能,因?yàn)椴缓米鼍拖掳l(fā)給外圍系統(tǒng),你個(gè)幾千萬(wàn)的系統(tǒng)做不了,你要個(gè)幾百萬(wàn)的實(shí)現(xiàn),這理由充分嗎。每個(gè)系統(tǒng)都應(yīng)該承擔(dān)起自己的責(zé)任,占有自己的位置,不要因?yàn)榭蛻?hù)不懂技術(shù),就偷懶。雖然作為顧問(wèn),維護(hù)己方開(kāi)發(fā)人員的利益是合理的,但也你不能夠以犧牲系統(tǒng)的可用性為代價(jià)。
4 換人不做交接。很難相信會(huì)發(fā)生這樣的事情。不過(guò)我確實(shí)遇到了,換了人了,之前的設(shè)計(jì)全報(bào)廢,然后做新的。
5 環(huán)境混亂。完全不理解為啥開(kāi)發(fā)需要搭建如此多個(gè)環(huán)境。用戶(hù)不停地從1個(gè)環(huán)境上測(cè)完去另外一個(gè)。你同類(lèi)環(huán)境1個(gè)就夠了,為啥整一堆沒(méi)有針對(duì)性的測(cè)試環(huán)境,最要命的是還不能保證發(fā)布的版本同步。而且環(huán)境數(shù)據(jù)臟了就整新的,那得啥時(shí)是個(gè)頭。
6 不接受意見(jiàn)。外部廠商顧問(wèn)不愛(ài)接受外圍系統(tǒng)給出的意見(jiàn),比如接口復(fù)用問(wèn)題。完全是把接口做成一個(gè)并集,來(lái)最大限度進(jìn)行復(fù)用。
7 頻繁變更。變更過(guò)于頻繁,這也是項(xiàng)目組遇到最大的問(wèn)題。不管是否收到甲方的確認(rèn)函,變更都會(huì)到來(lái),我報(bào)廢掉的代碼比現(xiàn)在可用的高出數(shù)倍。你完全不知道你的任務(wù)啥時(shí)候完了,到開(kāi)發(fā)完成,測(cè)試結(jié)束,用戶(hù)確認(rèn)并試點(diǎn)上線(xiàn)之后,本該認(rèn)為是沒(méi)事了,但是到來(lái)的不是BUG而是變更。看過(guò)《C#高級(jí)編程》都知道那書(shū)有多厚,如果把我們的辦更文檔都打印出來(lái),頁(yè)數(shù)也差不多了。
說(shuō)了這么多,很多都是自己的牢騷與不滿(mǎn),不過(guò)我真正想說(shuō)的是軟件工程的重要性。是什么造就了軟件泥潭?原因的多方面的,但是好的項(xiàng)目管理能夠幫助我們規(guī)避風(fēng)險(xiǎn)降低開(kāi)發(fā)成本,并提高代碼質(zhì)量。比如,與用和其他參與者(包括合作廠商)密切溝通,對(duì)需求反復(fù)迭代,規(guī)范技術(shù)文檔,好的版本控制,統(tǒng)一編碼風(fēng)格,進(jìn)行代碼走查,問(wèn)題責(zé)任到人,采用合適的開(kāi)發(fā)模型,正確評(píng)估工作量,制定合理的進(jìn)度管理和激勵(lì)機(jī)制,這些都有助于對(duì)一個(gè)項(xiàng)目的跟進(jìn)。
感謝讀者能夠耐心地讀完我的這篇”牢騷“,作為一名普通的開(kāi)發(fā)人員,我不想指責(zé)誰(shuí)的過(guò)失,因?yàn)楫吘刮覜](méi)有坐到那個(gè)崗位上,沒(méi)有資格指責(zé)別人的工作。我覺(jué)得,一個(gè)項(xiàng)目的成敗,雖然不是某個(gè)人能左右的,但是只有各個(gè)崗位的人各司其職,全力配合才能夠保證系統(tǒng)的順利上線(xiàn)。我想對(duì)剛?cè)胄械某绦騿T們說(shuō)的是,請(qǐng)對(duì)你們的代碼負(fù)責(zé),用戶(hù)不提的不代表你就不用做了,沒(méi)測(cè)出BUG不代表就沒(méi)BUG,請(qǐng)?jiān)谔峤磺白龊么a走查,并不要推卸你的責(zé)任,是人就會(huì)犯錯(cuò),你要做的就是承認(rèn)錯(cuò)誤并及時(shí)解決;對(duì)顧問(wèn)說(shuō)的是請(qǐng)對(duì)你們的客戶(hù)和你的設(shè)計(jì)負(fù)責(zé),你要知道你出具的文檔是我們開(kāi)發(fā)系統(tǒng)的重要依據(jù),我們是如此的信任著你,請(qǐng)不要讓我們失望。
最后送上我比較喜歡的一句話(huà):軟件開(kāi)發(fā)如同在水面行走一樣簡(jiǎn)單,只需需求已確認(rèn),水面已結(jié)冰。
分享標(biāo)題:淺析哪些軟件開(kāi)發(fā)項(xiàng)目不能做
標(biāo)題網(wǎng)址:http://www.5511xx.com/article/djedcjg.html


咨詢(xún)
建站咨詢(xún)
