關(guān)于我們

在線客服

幫助

24小時(shí)客服:010-82326699 400-810-5999

建設(shè)工程教育網(wǎng) 報(bào)錯(cuò)頁(yè)面_建設(shè)工程教育網(wǎng)

您訪問的頁(yè)面已經(jīng)離家出走了

您可以:返回 上一頁(yè)或者返回首頁(yè)
9秒后跳轉(zhuǎn)到建設(shè)工程教育網(wǎng)首頁(yè)
 > 正文

從一個(gè)失敗的項(xiàng)目說起——需求和設(shè)計(jì)

2009-12-04 14:14    【  【打印】【我要糾錯(cuò)】

  由于是一個(gè)小項(xiàng)目,感覺需求也簡(jiǎn)單,再加上時(shí)間緊,如果從需求開始一步步來,時(shí)間肯定來不及,在這種情況下,項(xiàng)目就匆匆的開始了。為了節(jié)省時(shí)間,分層、設(shè)計(jì)等等都不去考慮了,想到哪寫到哪,完全瀑布式開發(fā)。直接結(jié)果是,完工時(shí)間一拖再拖,最后不得不決定下一版本整個(gè)推倒重來。項(xiàng)目失敗的原因有兩個(gè):需求分析不到位、架構(gòu)設(shè)計(jì)不合理。

  需求和架構(gòu)設(shè)計(jì)是相輔相成的,如果需求分析做的好,架構(gòu)設(shè)計(jì)合理,那么就可以靈活的適應(yīng)變化的需求,這是理想的狀況。如果需求好了,架構(gòu)有不合理的地方,項(xiàng)目也可以實(shí)現(xiàn),只是以后的維護(hù)會(huì)有困難。架構(gòu)好了,需求沒有做好,隨著需求的進(jìn)一步完善,項(xiàng)目也會(huì)完成,這是容易實(shí)現(xiàn)的一種狀況。如果都沒有做好,象這個(gè)項(xiàng)目一樣,就只能有兩種選擇:

  1、盡早重來,這樣雖然會(huì)推出項(xiàng)目的完成日期,但總的來說還是省了時(shí)間,也可以交出一個(gè)滿意的項(xiàng)目。

  2、通過架構(gòu)的修補(bǔ)、需求的完善,先在規(guī)定時(shí)間交出一個(gè)不完善的版本,等下一個(gè)版本在重新開始。

  好的需求,會(huì)加快項(xiàng)目的進(jìn)度,也可以給開發(fā)人員的設(shè)計(jì)提供幫助。項(xiàng)目開始前一定要做好需求和設(shè)計(jì),至少要有明確的思路,匆忙開始的項(xiàng)目很可能會(huì)失敗,至少也會(huì)走彎路,而走彎路花的時(shí)間很可能會(huì)超過在需求和設(shè)計(jì)上省下來的時(shí)間,更不用說失敗的項(xiàng)目所造成的后果。需求和設(shè)計(jì)難做時(shí),也可以先動(dòng)手實(shí)現(xiàn)一個(gè)版本,讓客戶體驗(yàn),這樣可以防止設(shè)計(jì)上迷失方向,在設(shè)計(jì)上走錯(cuò)路。

  小型項(xiàng)目是不是還需要設(shè)計(jì)?

  我以前一直認(rèn)為,項(xiàng)目小,完全可以不做任何設(shè)計(jì),類、接口等都不用去想,分層也是不必要的,因?yàn)樽鲈O(shè)計(jì)會(huì)花時(shí)間,實(shí)現(xiàn)設(shè)計(jì)也會(huì)花比直接寫代碼(如雙擊按鈕,在事件中寫代碼,而不去掉用已經(jīng)封裝好的實(shí)現(xiàn)。)花更多的時(shí)間。簡(jiǎn)單有效的方法就是邊想邊寫,這樣可以有最快的開發(fā)速度。但通過這個(gè)項(xiàng)目,我認(rèn)識(shí)到,小的項(xiàng)目,也可能存在你現(xiàn)在還沒有發(fā)現(xiàn)的陷阱,如果采用上面的開發(fā)方式,遇到陷阱時(shí)就不能靈活應(yīng)對(duì),因?yàn)榧軜?gòu)不好。更不用說,經(jīng)常要變化的需求,等需求一變,又是頭痛的時(shí)候,還是因?yàn)榧軜?gòu)不好,最后設(shè)計(jì)越來越糟,到處都是重復(fù)的代碼,時(shí)間在逐漸的流逝,而項(xiàng)目的進(jìn)度會(huì)越來越慢,你最后發(fā)現(xiàn),要想讓項(xiàng)目完美的實(shí)現(xiàn)已經(jīng)不可能了,時(shí)間都浪費(fèi)在一些重復(fù)的勞動(dòng)上,而有好的架構(gòu),這些都是可以避免的。人也會(huì)變的絕望,面對(duì)著象線團(tuán)一樣的代碼,根本沒有了工作的激情,也沒有了動(dòng)力。再加上一些小項(xiàng)目有時(shí)候會(huì)牽扯到幾個(gè)系統(tǒng),按照這種設(shè)計(jì),根本沒有辦法進(jìn)行單元測(cè)試,集成測(cè)試又會(huì)耗費(fèi)太多的時(shí)間,有時(shí)根本就不能測(cè)試。結(jié)果只有痛苦的重新開賽。

  而有好的設(shè)計(jì),情況就會(huì)完全不同,開始會(huì)慢一些,而隨著項(xiàng)目的進(jìn)行,一切會(huì)逐漸的明晰,你也不會(huì)懼怕陷阱和需求的變化?粗(xiàng)目在一天天的完善,心情也會(huì)開心。最好項(xiàng)目會(huì)成功。

  因此,即使是小的項(xiàng)目設(shè)計(jì)也是十分必要的。

  什么是好需求?

  需求要從客戶的角度去尋找,需求是客戶要求的抽象,而不是具體的表現(xiàn),這樣做的需求才能對(duì)以后的設(shè)計(jì)產(chǎn)生積極的影響。而一些具體的要求可能都是易變的,這些可能是商業(yè)政策,而不是真正的需求。需求總是易變的,這就要求架構(gòu)要有靈活性,靈活性不是靠提前設(shè)計(jì)實(shí)現(xiàn)“你認(rèn)為將來會(huì)有的需求”,而是靠抽象,這樣可以在需求變化時(shí),架構(gòu)做最少的修改。從開發(fā)者角度說,需求是架構(gòu)必須要實(shí)現(xiàn)的要求,要把抽象的需求再擴(kuò)展到具體。這樣需求就經(jīng)歷了從具體(客戶的描繪)到抽象(架構(gòu),好的需求)再到具體(實(shí)現(xiàn))的一個(gè)過程都是自己的理解,有不合理的地方請(qǐng)指教,剛才圖書館借了本關(guān)于需求的書,以前對(duì)需求了解太少了,上學(xué)時(shí)學(xué)的印象不深,只有碰到問題才能加深理解。

收藏分享:論壇
分享到:
相關(guān)新聞
  • 特色班
    4大班次+2-3套全真模擬題
    提升學(xué)習(xí)效果
  • 精品班
    4大班次+2-3套全真模擬題+1套預(yù)測(cè)試題
  • 實(shí)驗(yàn)班
    3套全真模擬題+2套預(yù)測(cè)試題+考前沖關(guān)寶典
  • 定制班
    3套模擬題+3套預(yù)測(cè)題+考前沖關(guān)寶典+考前重點(diǎn)
  • 移動(dòng)班
    以知識(shí)點(diǎn)為單元授課練習(xí),
    強(qiáng)化重點(diǎn)、難點(diǎn)、考點(diǎn)
版權(quán)聲明

  1、凡本網(wǎng)注明“來源:建設(shè)工程教育網(wǎng)”的所有作品,版權(quán)均屬建設(shè)工程教育網(wǎng)所有,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、鏈接、轉(zhuǎn)貼或以其他方式使用;已經(jīng)本網(wǎng)授權(quán)的,應(yīng)在授權(quán)范圍內(nèi)使用,且必須注明“來源:建設(shè)工程教育網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其法律責(zé)任。
  2、本網(wǎng)部分資料為網(wǎng)上搜集轉(zhuǎn)載,均盡力標(biāo)明作者和出處。對(duì)于本網(wǎng)刊載作品涉及版權(quán)等問題的,請(qǐng)作者與本網(wǎng)站聯(lián)系,本網(wǎng)站核實(shí)確認(rèn)后會(huì)盡快予以處理。
  本網(wǎng)轉(zhuǎn)載之作品,并不意味著認(rèn)同該作品的觀點(diǎn)或真實(shí)性。如其他媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用,請(qǐng)與著作權(quán)人聯(lián)系,并自負(fù)法律責(zé)任。
  3、本網(wǎng)站歡迎積極投稿。