在前面兩節(jié)中,我們討論了如何規(guī)避大連AI智能軟件開發(fā)中的風(fēng)險(xiǎn)。然而在現(xiàn)實(shí)中,我們往往不得不面對(duì)這樣的軟件系統(tǒng)——程序結(jié)構(gòu)混亂、擴(kuò)展性極差、版本失控,為這樣的軟件系統(tǒng)添加新的功能是一件痛苦的事情。不幸的是,絕大多數(shù)的軟件維護(hù)人員都逃不過這樣的命運(yùn)。
我一直在表達(dá)這樣一個(gè)觀點(diǎn),從技術(shù)的角度來看,企業(yè)信息系統(tǒng)是簡單的。一個(gè)統(tǒng)一的靜態(tài)模型加上基于靜態(tài)模型的計(jì)算,僅此而已。
老實(shí)說,每次當(dāng)我參加技術(shù)方面的“垃圾”會(huì)議時(shí),心里都在想,為什么不用最簡單的方法呢?
我曾經(jīng)用20分鐘構(gòu)思的一個(gè)框架,被一家企業(yè)使用了5年。在此之前,為推廣這個(gè)框架,用了1年的時(shí)間,而現(xiàn)在要推翻這個(gè)框架簡直遙遙無期。
是什么阻礙了單純的大連AI智能軟件維護(hù)開發(fā)呢?
在軟件維護(hù)階段,我們聽到最多的一個(gè)詞是——?dú)v史遺留問題。
致遠(yuǎn)服軟認(rèn)為:http://www.soft8.com.cn/絕大多數(shù)的軟件開發(fā)人員都喜歡夸大解決歷史遺留問題的風(fēng)險(xiǎn),這是一種短視的眼光。事實(shí)上,歷史遺留問題帶來的維護(hù)成本要遠(yuǎn)遠(yuǎn)大于解決它的成本;從另一個(gè)方面來說,解決歷史遺留問題是一種進(jìn)步,而頑固保守的態(tài)度則會(huì)在歷史遺留問題上越滑越遠(yuǎn)。
我總是覺得很奇怪,拋開利益問題,難道那些承擔(dān)著經(jīng)營風(fēng)險(xiǎn)的人都不明白這個(gè)淺顯的道理嗎?
大連AI智能軟件維護(hù)是一項(xiàng)系統(tǒng)的工程。對(duì)于那些程序結(jié)構(gòu)混亂、擴(kuò)展性極差、版本失控的軟件系統(tǒng)來說,軟件維護(hù)的難度要大于構(gòu)建一個(gè)新的大連AI只能軟件維護(hù)系統(tǒng)。道理很簡單,對(duì)于軟件維護(hù)人員來說,首先,要理解一個(gè)既陌生又難于理解的設(shè)計(jì)思想(如果那也算是設(shè)計(jì)思想的話),其次,要在大量的限制下尋求解決方案。
據(jù)我所知,面對(duì)資料匱乏、原始開發(fā)人員嚴(yán)重流失的程序,很多軟件維護(hù)人員簡直不知道該從何下手,更別提在下手后會(huì)遇到“歷史遺留問題”者的種種阻撓。
我們在本書的每一個(gè)章節(jié)中,都在談?wù)撍悸坊蛘咚枷氲膯栴},這里也不例外。如果你已經(jīng)有了解決問題的思路而且驗(yàn)證有效,則可以跳過本書的大多數(shù)內(nèi)容。事實(shí)上,在我看來,沒有思想上的指導(dǎo)和清晰的思路,是無法順利解決問題的。
關(guān)于大連保險(xiǎn)行業(yè)軟件維護(hù),我有兩個(gè)思路可以與讀者分享:第一,要堅(jiān)定地展開重構(gòu);第二,在故事講清楚后再開始重構(gòu)。
堅(jiān)定地展開重構(gòu),是對(duì)“歷史遺留問題”者的挑戰(zhàn)。所謂“堅(jiān)定”,是指不向非技術(shù)因素妥協(xié)、不向夸大的未知風(fēng)險(xiǎn)妥協(xié)。