部門內(nèi)部存在盲目樂觀的氣氛。對實(shí)時(shí)數(shù)據(jù)庫下一階段任務(wù)的艱巨性也無很多判斷,對新知識的學(xué)習(xí)等仍是按步就班不緊不慢。將一篇經(jīng)歷過的某失敗項(xiàng)目的總結(jié)放上,希望大家共勉。
關(guān)于XX項(xiàng)目的工作總結(jié)報(bào)告
XX項(xiàng)目是公司發(fā)展過程中的一個(gè)非常重要的項(xiàng)目,公司為之投入了相當(dāng)多的人力物力,目前的結(jié)果卻不盡如人意。及時(shí)總結(jié)一下該項(xiàng)目中的經(jīng)驗(yàn)教訓(xùn),對公司產(chǎn)品研發(fā)的戰(zhàn)略決策具有借鑒作用。
參與該項(xiàng)目的所有人員在主觀上都有將該項(xiàng)目圓滿完成的良好心愿;絕大部分同事也全心全意、盡心盡力,在該項(xiàng)目的實(shí)施中發(fā)揮了重要的作用。但針對一個(gè)尚未全部完成的項(xiàng)目,發(fā)現(xiàn)問題、找出不足,改正錯(cuò)誤、改進(jìn)方案、調(diào)整決策等才是最重要的目的,因此,本總結(jié)中只將XX項(xiàng)目中存在的問題列出,重點(diǎn)是為下一步項(xiàng)目重啟和其它項(xiàng)目決策等提供意見。
一、 XX項(xiàng)目的現(xiàn)狀
XX項(xiàng)目在200X年X月XX日之后,已經(jīng)暫時(shí)停止下來。不論在感情上愿不愿意接受,該項(xiàng)目是一個(gè)失敗的項(xiàng)目:
1、 項(xiàng)目的實(shí)施時(shí)間大大超出先期計(jì)劃;
2、 經(jīng)過實(shí)際工程檢驗(yàn),證明系統(tǒng)框架在穩(wěn)定性、性能、速度、內(nèi)存消耗等方面不能達(dá)到實(shí)用化要求;
3、 用戶所需的XX及XX等功能,在現(xiàn)有的框架結(jié)構(gòu)上不能實(shí)現(xiàn);
4、 開發(fā)團(tuán)隊(duì)的建設(shè)未能完全達(dá)到預(yù)期的目標(biāo);
二、 失敗原因的分析
1、 程序的接口未能在前期經(jīng)過嚴(yán)密的理論推導(dǎo)及嚴(yán)格定義;
為了達(dá)到團(tuán)隊(duì)并行開發(fā)的目標(biāo),本項(xiàng)目在方案設(shè)計(jì)時(shí)決定采用XX、XX、XX等三個(gè)同時(shí)推進(jìn)的子系統(tǒng)。這三個(gè)子系統(tǒng)之間的接口在最初未能嚴(yán)格定義,主要存在如下的問題:
A、 接口實(shí)現(xiàn)的冗余度及可選度太大;
B、 接口定義未能完全屏蔽內(nèi)部實(shí)現(xiàn)細(xì)節(jié),將太多的內(nèi)部實(shí)現(xiàn)細(xì)節(jié)及其依賴關(guān)系暴露給調(diào)用者,未能完全實(shí)現(xiàn)接口調(diào)用的內(nèi)部透明化;
C、 接口的約束關(guān)系不是足夠明確,接口不夠建壯,不正確的格式、參數(shù)等處理也能處理,但會導(dǎo)出一個(gè)不正確的結(jié)果;
D、 接口的功能集不建全,在后期由于功能的增加,臨時(shí)增加了相當(dāng)多的新接口,而新增的接口只以功能上滿足特定需求為目標(biāo),未能統(tǒng)一推導(dǎo)及定義。
產(chǎn)生該問題的原因有:
A、 XX項(xiàng)目是一個(gè)新的項(xiàng)目,在項(xiàng)目初期許多需求及實(shí)現(xiàn)的細(xì)節(jié)未能明了;
B、 XX項(xiàng)目是一個(gè)非常大的項(xiàng)目,許多接口在實(shí)現(xiàn)過程中才能發(fā)現(xiàn)其遺漏;或?yàn)榱藢?shí)現(xiàn)某些優(yōu)化處理必須改變接口;
C、 在項(xiàng)目實(shí)施初期,功能需求未能真正明了,實(shí)現(xiàn)細(xì)節(jié)未能有實(shí)際的效果;
從項(xiàng)目實(shí)施的過程來看,接口未能嚴(yán)格定義導(dǎo)致了如下問題:
A、 三個(gè)程序組在具體實(shí)現(xiàn)某具體功能時(shí)才決定增加接口,導(dǎo)致系統(tǒng)的并行開發(fā)未能完全高效地開展;
B、 出現(xiàn)多次比較劇烈的程序收斂振蕩,許多本已解決的問題或不存在的問題在新版本中重復(fù)出現(xiàn)。導(dǎo)致開發(fā)進(jìn)度的控制無法有序進(jìn)行;三個(gè)程序組可能會由于同一個(gè)錯(cuò)誤同時(shí)耽擱時(shí)間;
C、 對程序的測試工作加長,測試進(jìn)度及測試重點(diǎn)無法確定;
2、 前期對框架的性能瓶頸沒有足夠的重視,在設(shè)計(jì)框架時(shí),未能提前將系統(tǒng)性能及其可能導(dǎo)致的結(jié)構(gòu)調(diào)整進(jìn)行充分論證;
系統(tǒng)的開發(fā)過程中,針對老XX中存在的一些問題,希望提供一個(gè)能解決現(xiàn)有系統(tǒng)的新框架,主要有如下問題:
A、 老XX的框架不適合并行開發(fā);
B、 老XX的系統(tǒng)擴(kuò)充不方便;
C、 老XX的系統(tǒng)結(jié)構(gòu)大,程序維護(hù)工作比較困難;
D、 老XX沒有模板的概念;
E、 老XX無法描述層次型的數(shù)據(jù)結(jié)構(gòu);
在設(shè)計(jì)系統(tǒng)時(shí),提出了元對象的概念,進(jìn)而提出了服務(wù)器元對象樹的內(nèi)部數(shù)據(jù)定義,各部分接口針對元對象樹進(jìn)行遍歷和操作,在理論上提供
一種模仿真實(shí)世界的一種模型。但是在該模型的實(shí)施過程中,對性能、速度等問題考慮得不多,主要有如下方