當(dāng)前位置:機(jī)電之家首頁(yè) >> 工程造價(jià)>> 工程論文 >> 軟件工程論文 >> 軟件工程思想(6)
軟件工程思想(6)

">再生工程主要有三種類(lèi)型:重構(gòu)、逆向工程和前向工程。

 

8.3.1 重構(gòu)

重構(gòu)一般是指通過(guò)修改代碼或數(shù)據(jù)以使軟件符合新的要求。重構(gòu)通常并不推翻原有軟件的體系結(jié)構(gòu),主要是改造一些模塊和數(shù)據(jù)結(jié)構(gòu)。重構(gòu)的一些好處如下:

1)使軟件的質(zhì)量更高,或使軟件順應(yīng)新的潮流(標(biāo)準(zhǔn))。

2)使軟件的后續(xù)(升級(jí))版本的生產(chǎn)率更高。

3)降低后期的維護(hù)代價(jià)。

      要注意的是,在代碼重構(gòu)和數(shù)據(jù)重構(gòu)之后,一定要重構(gòu)相應(yīng)的文檔。

 

8.3.2 逆向工程

逆向工程來(lái)源于硬件世界。硬件廠商總想弄到競(jìng)爭(zhēng)對(duì)手產(chǎn)品的設(shè)計(jì)和制造“奧秘”。但是又得不到現(xiàn)成的檔案,只好拆卸對(duì)手的產(chǎn)品并進(jìn)行分析,企圖從中獲取有價(jià)值的東西。我的很多同學(xué)從事集成電路設(shè)計(jì)工作,他們經(jīng)常解剖國(guó)外的集成電路,甚至不作分析就原封不動(dòng)地復(fù)制該電路的版圖,然后投入生產(chǎn),并美其名曰“反向設(shè)計(jì)”(Reverse Design)。

軟件的逆向工程在道理上與硬件的相似。但在很多時(shí)候,軟件的逆向工程并不是針對(duì)競(jìng)爭(zhēng)對(duì)手的,而是針對(duì)自己公司多年前的產(chǎn)品。期望從老產(chǎn)品中提取系統(tǒng)設(shè)計(jì)、需求說(shuō)明等有價(jià)值的信息。

 

8.3.3 前向工程

前向工程也稱(chēng)預(yù)防性維護(hù),由Miller倡導(dǎo)。他把這個(gè)術(shù)語(yǔ)解釋成“為了明天的需要,把今天的方法應(yīng)用到昨天的系統(tǒng)上”。[Pressman 1999]

乍看起來(lái),主動(dòng)去改造一個(gè)目前運(yùn)行得正常的軟件系統(tǒng)簡(jiǎn)直就是“惹事生非”。但是軟件技術(shù)發(fā)展如此迅速,與其等待一個(gè)有價(jià)值的產(chǎn)品逐漸老死,還不如主動(dòng)去更新,以獲取更大的收益。其道理就同打預(yù)防性針一樣。所以,預(yù)防性維護(hù)是“吃小虧占大便宜”的事。

 

8.4  結(jié)

 

大學(xué)科研機(jī)構(gòu)里的軟件維護(hù)工作恐怕是做得最差的了。幾乎每一批新的研究生都會(huì)把畢業(yè)生留下的軟件臭罵一通,然后全部推到重做。到他畢業(yè)該走時(shí),就輪到別人罵他的工作了。如此輪回,最終沒(méi)有什么成果留下。

如果希望軟件系統(tǒng)能活下,必須要對(duì)它進(jìn)行維護(hù)。如果希望軟件系統(tǒng)有效益,則必須設(shè)法降低維護(hù)的代價(jià)。

 

作者:未知 點(diǎn)擊:544次 [打印] [關(guān)閉] [返回頂部]
本文標(biāo)簽:軟件工程思想(6)
* 由于無(wú)法獲得聯(lián)系方式等原因,本網(wǎng)使用的文字及圖片的作品報(bào)酬未能及時(shí)支付,在此深表歉意,請(qǐng)《軟件工程思想(6)》相關(guān)權(quán)利人與機(jī)電之家網(wǎng)取得聯(lián)系。
關(guān)于“軟件工程思想(6)”的更多資訊

電子樣本

SN系列樣冊(cè)
:鞏經(jīng)理
:13915946763
:南京塞姆泵業(yè)有限公司
個(gè)人求購(gòu)

相先生 【求購(gòu)】  潤(rùn)滑油  2025-12-8
 【求購(gòu)】  94 BF...  2025-12-8
李女士 【求購(gòu)】   Etan...  2025-12-8
 【求購(gòu)】  DG4V-...  2025-12-8
 【求購(gòu)】  立式加工中...  2025-12-8
吳小姐 【求購(gòu)】  粉碎機(jī)  2025-12-5
 【求購(gòu)】  冶煉用的重...  2025-12-5
柳女士 【求購(gòu)】  斷路器  2025-12-5
VIP公司推薦