Posted on 2008-09-01 23:24
canonical 閱讀(459)
評論(2) 編輯 收藏
軟件系統(tǒng)的構(gòu)建之所以與建筑工程不同,無法達(dá)到建筑工程的精確性和可控性,其中一個很重要的原因在于建筑的產(chǎn)物是一個靜態(tài)的結(jié)構(gòu),建筑的過程主要是采用各種預(yù)制件填充某個規(guī)劃好的建筑空間,而軟件是一種動態(tài)運(yùn)行的產(chǎn)品,它的各個組成部分之間的關(guān)系不是可以靜態(tài)描述的,而是存在著復(fù)雜的交互關(guān)系,而且軟件在運(yùn)行的過程中還需要根據(jù)需求的變化進(jìn)行動態(tài)的調(diào)整,這種動態(tài)性使得軟件開發(fā)中很難抽象出固定的預(yù)制件,很難像建筑工程那樣實(shí)現(xiàn)標(biāo)準(zhǔn)件的組裝。現(xiàn)在所謂構(gòu)件技術(shù)的構(gòu)件插拔圖景其實(shí)是具有誤導(dǎo)性的。
但是從另外一方面說,軟件內(nèi)在的動態(tài)性使得它可以具備更強(qiáng)的適應(yīng)能力,如果所編制的軟件把握住了業(yè)務(wù)機(jī)制的核心內(nèi)容,則在運(yùn)行過程中只需要進(jìn)行少量調(diào)整就可以應(yīng)對大量類似情況。100棟類似的建筑需要花費(fèi)100倍的建造費(fèi)用,而100個近似的軟件需求的滿足可能只需要花費(fèi)2至3倍的開發(fā)費(fèi)用。現(xiàn)代軟件企業(yè)在研發(fā)過程中都在不斷的追求自身產(chǎn)品的平臺化,其目的正在于以不斷提高的適應(yīng)性來應(yīng)對不斷變化的客戶需求。我們所面對的要求不僅僅是精確把握需求,而是要深刻把握需求背后所對應(yīng)的業(yè)務(wù)機(jī)制。