濟南軟件開(kāi)發(fā)—開(kāi)發(fā)方式的缺點

2015-10-23 13:30:49
    目前開(kāi)發(fā)方式存在弊病的來源主要在于設計,實現和運行時的分離和弱連接。 
    1、實現(代碼)和運行時的分離。這(zhè)種(zhǒng)分離導緻了開(kāi)發(fā)者在編寫代碼的需要想象系統運行時的狀況,這(zhè)時候開(kāi)發(fā)者可以用很多實現的方法,使用哪一種(zhǒng)取決于開(kāi)發(fā)者的素質和經(jīng)驗,這(zhè)也就(jiù)是說編程是藝術的原因。消除這(zhè)種(zhǒng)随意性和不一緻,就(jiù)要通過(guò)反複的測試來驗證運行時的結果,就(jiù)是這(zhè)樣(yàng)也無法保證代碼的不作出意料之外的事(shì)情。上述因素導緻了軟件質量低下和漫長(cháng)的測試周期。解決上述問題,一般是通過(guò)提供粒度更大的功能(néng)模塊,4GL界面(miàn),加強開(kāi)發(fā)規範等方法,流行的XP就(jiù)是一個比較好(hǎo)的方法,主要也是通過(guò)挖掘人的潛能(néng)。 

    2、設計和實現的分離。目前的所有設計都(dōu)是弱的設計,就(jiù)是說設計不能(néng)直接的或不能(néng)完全直接的産生代碼實現,一旦管理不嚴,代碼實現就(jiù)會(huì)脫離設計,尤其在一個項目測試後(hòu)期或運行期,并且需求變化比較大的時候;甚至一個被(bèi)長(cháng)期維護的系統,設計往往早已消失,隻有維護的人員知道(dào)系統目前的樣(yàng)子。至于從實現反向(xiàng)的産生設計的反向(xiàng)工程,那更是一個高難的動作。這(zhè)種(zhǒng)弱的設計直接導緻的就(jiù)是實現缺乏控制,最後(hòu)導緻軟件的失敗或縮短軟件生命期。目前解決這(zhè)個問題從技術和人兩(liǎng)個角度來考慮,一方面(miàn)使用UML這(zhè)樣(yàng)的語言來強化設計,另一方面(miàn)用CMM這(zhè)樣(yàng)的規範來強化人的管理。要指出的是UML對(duì)設計的強化是有限度的,CMM的管理也會(huì)大幅度提高成(chéng)本。 
 
   上述重要因素的分離導緻從需求到設計到代碼實現到産生運行結果,就(jiù)像一個松散的鏈條,一個漫長(cháng)的行軍隊伍,問題的複雜度在人爲因素的逐級參與下變得更加複雜。爲了達到目的:將(jiāng)最終結果約束到最開(kāi)始的需求上,就(jiù)需要增加人力成(chéng)本和技術成(chéng)本來完成(chéng),如購買各種(zhǒng)開(kāi)發(fā)輔助工具和增強項目管理和人員的培訓,總之是通過(guò)增加各類成(chéng)本來努力消除來軟件的質量問題和保證進(jìn)度。