字號: 小 中 大 |
推薦給好友
上一篇 |
下一篇
漫談企業應用項目的軟件開發過程 一個PRM系統實施的經驗與教訓
發布: 2008-9-22 10:25 |
作者: 不詳 |
來源:
領測軟件測試網 采編 |
查看: 47次 | 進入軟件測試論壇討論
領測軟件測試網
IS!A1Wf上述兩種情況在少量負載的單元測試和集成測試中是不可能出現的。
@S^Va7Jl$K`軟件測試技術網xD6[!J4Q$XN8r教訓二:對于企業應用系統,尤其是業務系統,沒有切實注意負載、性能等非功能性需求。
效率與設計:在J2EE中,已經成功的運用了很多設計模式的思想,為系統的開發提供了一個很好框架。但是,在項目的架構設計中,除了考慮可維護性、可復用性等問題以外,還要考慮代碼執行效率的問題[5]。軟件測試技術網 r"~w6C-X
軟件測試技術網*f.Qf
r.B8C0X
隨著計算機硬件技術的發展,"莫爾定律"被一再的驗證,系統硬件的價格逐漸降低。對于很多使用J2EE架構或者JAVA技術的項目來說,解決性能與效率問題的解決方案就是增加硬件方面的投入。而實際上,軟件開發過程中優劣算法之間的差距是靠硬件的投入平衡不了的。軟件測試技術網&q\O$`,fT%b
軟件測試技術網#\k^%A|d3I
該項目在系統維護期間,對代碼進行走查,修改了很多對于性能有影響的語句;同時,在框架設計中,尤其是數據庫操作方法,利用Cache原理,從一定程度上解決了性能的問題。軟件測試技術網S8T5q)A,i(m
軟件測試技術網I6q0S\Cq
教訓三:系統框架設計只考慮面向對象和可維護性,沒有在完美的設計與高效率的代碼之間做出權衡。
數據庫設計:JAVA是純粹的面向對象語言,利用J2EE開發的項目,也強調首先進行OOAD的分析,首先有對象,然后再有數據庫的設計。DBA在項目中的作用,已經遠遠沒有傳統的結構性編程中重要。而實際情況卻是遠非如此:大部分的業務系統,如果要對系統的性能做出優化,對數據庫層或者SQL語句進行優化是關鍵的步驟之一。軟件測試技術網2[%q&FWW+e+f
軟件測試技術網:dlHW#h[%f
對于這個PRM系統,在數據庫的設計上并沒有經過DBA的審查就開始進行開發;而在性能問題出現以后,客戶增加了512M的內存,也沒有請求DBA對Oracle的參數做相應的調整,造成了很大的資源浪費。
%E.|$K g7w B
在項目維護過程中,依靠DBA的幫助,開發商對于數據庫系統參數、索引、存儲過程和SQL語句都做了一定的調整,這對于系統性能的提高起了很大的作用。軟件測試技術網|dFd"mWK
教訓四:在面向對象的軟件系統構建中,忽視數據庫設計以及DBA的重要作用。
客戶參與:在傳統的軟件開發過程中,一般情況下,客戶在簽訂合同后,項目交付前是很少有機會看到系統的,這樣就造成了系統交付后,客戶抱怨很多的情況;而在以XP為代表的敏捷軟件開發方法中,強化了客戶在軟件開發中的重要作用,XP更是提出了"現場客戶"的實踐,將客戶作為項目小組的一員,客戶對于項目的發布計劃、內容和優先級等方面有絕對的控制權。
1?]Jx+xS/\m4A'X軟件測試技術網-G w(tw%K'kcat
對于這個PRM項目,由于客戶的原因,不可能采取"現場客戶"的實踐,但是,開發商的BD對于該客戶十分熟悉,完全可以作為客戶代表參與到項目中來,因此,開發商將客戶經理作為項目組的一員。
k I \G(J;Ns`實際情況是:開發過程中,客戶經理由于業務拓展的原因,并沒有在項目上分配多少時間進行審查;而客戶在交付前也沒有花費很多的時間研究系統,也沒有提交很多的反饋報告。在系統交付出現性能等問題后,客戶經理與開發人員一起對于系統需求進行審查,提出了很多有參考性的意見。如果從一開始,就強化"現場客戶"的最佳實踐,就可以很早發現問題。教訓五:客戶或者客戶經理對于項目的參與力度不夠。
e{'k,]2` 四、 結論軟件測試技術網ZS4?
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月