看了Eric77的軟件開發(fā)的一些感想(五年工作經(jīng)驗(yàn)總結(jié)),很有感觸。這個(gè)世界真是好大,自己作為個(gè)體真是太渺小,還有太多的東西需要學(xué)習(xí)。
把他文章的部分轉(zhuǎn)接過來,順便自己也備注下,對(duì)自己有個(gè)參考。
一、需求分析,設(shè)計(jì),開發(fā),測試和項(xiàng)目管理整個(gè)流程:
對(duì)任何系統(tǒng)來說: 無非是做好3件事: IPO. 也就是Input,Process,Output. (偏重于設(shè)計(jì),類似于計(jì)算機(jī)本身,作為總結(jié)本身還是蠻清楚的)
對(duì)需求分析來說: 你最重要的是搞明白,用戶的需求.也就是搞清用戶的輸入(Input)和輸出(Output)是什么,它的要求達(dá)到的功能(Process)是什么. 明白以后,你就可以寫一些用戶需求說明書,描述用例,輸入輸出處理異常什么的,或者做一個(gè)簡單的Demo系統(tǒng),拿去給用戶看,看看這個(gè)界面是不是用戶喜歡的,這個(gè)流程是不是用戶所需要的等等.(注:如果加入點(diǎn)管理,就豐滿了。還有以后的需求變更,要知道需要可能是不斷變化的)
然后就是系統(tǒng)分析: 首先,你需要對(duì)用戶的需求分模塊,每個(gè)模塊的IPO是什么,他們應(yīng)采用什么架構(gòu),需要和那些模塊交互,互相之間的接口是怎樣的,需要使用什么技術(shù).每個(gè)模塊的運(yùn)行環(huán)境是什么樣子的,對(duì)效率,安全或者容錯(cuò)等特性是否要著重考慮.(注:考慮的蠻多的,加個(gè)詞:系統(tǒng)的可擴(kuò)展性)
接著就是系統(tǒng)設(shè)計(jì): 每個(gè)模塊的數(shù)據(jù)庫要怎么設(shè)計(jì),所用技術(shù)和架構(gòu)決定后,要確定不同層次有哪些接口,比如說表現(xiàn)層,業(yè)務(wù)邏輯層,數(shù)據(jù)庫訪問層,相互之間怎么調(diào)用,定好框架和開發(fā)模式和格式,剩下的就是編碼了..(注:說的似乎少了點(diǎn))
編碼部分: 首先團(tuán)隊(duì)要有一個(gè)良好的編碼規(guī)范.并且對(duì)每個(gè)人提交的代碼要review,我發(fā)現(xiàn)程序編多了,自己就成了一臺(tái)計(jì)算,看到程序就會(huì)知道會(huì)出現(xiàn)什么結(jié)果,根本都不用跑起來.(注:編碼的時(shí)候,多考慮下:復(fù)用和模式)
測試: 單元測試是否編寫測試用例? Junit是個(gè)好工具.每個(gè)人都要保證好自己的代碼沒有問題. 整體測試就要整個(gè)流程的跑一下,看看需求實(shí)現(xiàn)的對(duì)不對(duì),還有沒有什么其他紕漏. .(注:測試分好多種,單元,壓力,持久性、黑白盒等,有專門的測試部分或組就不一樣了)
風(fēng)險(xiǎn)管理: 這一點(diǎn)很重要,要時(shí)刻知道自己的項(xiàng)目有什么風(fēng)險(xiǎn),無論是人員的,技術(shù)的,時(shí)間的,還是協(xié)調(diào)上面的.都要心里有數(shù),按時(shí)按周向領(lǐng)導(dǎo)匯報(bào)。
以下部分——
記得我去IBM面試的時(shí)候,問過,以后有幾條職業(yè)發(fā)展的方向,回答有三條,一條是IT Specialist,一條是Project Manager,還有一條是IT Architect. 我還曾要求以后能不能向IT Architect發(fā)展,那人說,Architect要熟悉很多技術(shù)呢,我問了兩遍,他這樣回答了兩遍.后來給我訂了Advisory I/T Specialist. 我當(dāng)時(shí)很納悶,我搞Java這么久,J2ME,J2SE,J2EE全都搞過,而且對(duì)Gof的<Design Pattern>也悟了5年,了熟于心,各種各樣的經(jīng)典書籍也看了不少,怎么不能向Architect發(fā)展呢. 現(xiàn)在我加入了IBM,進(jìn)入一個(gè)香港的項(xiàng)目,過段時(shí)間要去香港培訓(xùn)幾星期,才明白了,原來一個(gè)大項(xiàng)目會(huì)涉及到各種各樣的語言,技術(shù),什么Cobal(音譯),forturn(音譯),java,vb,C#,soa xx總線模式,mq,大型機(jī)開發(fā),等,很多我只在書上看到過的古老語言,還有一些聽都沒聽過的語言,框架,模式,全都出現(xiàn)了.我當(dāng)時(shí)這個(gè)汗哪,我才發(fā)現(xiàn)我真的很無知.知識(shí)就是一個(gè)氣球,你知道的越多,接觸的越多就會(huì)發(fā)現(xiàn)自己越無知.所以這也是我要今天趕緊把這個(gè)寫出來的原因. 我怕以后又有了變故,還要沉淀,需要時(shí)間.
本文部分來自CSDN博客:http://blog.csdn.net/Eric77/archive/2010/08/01/5781573.aspx