在目前市(shì)面上衆多的(de)管理(lǐ)軟件中,成長(cháng)力企業管理(lǐ)軟件算是一(yī)個異類,因為(wèi)這個軟件的(de)所有(yǒu)功能模塊,都沒有(yǒu)一(yī)行(xíng)傳統意義上的(de)代碼,全部是采用零代碼方式配置出來的(de)。而之所以要采取這種方式的(de)原因,還要從軟件開發行(xíng)業的(de)一(yī)個典故說起:“銀彈”。“銀彈”是一(yī)個比喻,在西方神話中,銀制的(de)子(zǐ)彈可(kě)以殺死号稱不死的(de)狼人;而在軟件領域中,銀彈用來比喻能夠極大提高(gāo)軟件開發效率的(de)萬能方法(一(yī)個經驗标準是讓軟件開發效率在10年(nián)內(nèi)提高(gāo)10倍)。
Fred Brooks在1987年(nián)所發表的(de)一(yī)篇關于軟件工程的(de)經典論文《沒有(yǒu)銀彈》中強調,真正的(de)銀彈并不存在,複雜的(de)軟件工程問題無法靠簡單的(de)手段來解決。這篇經典論文揭示了軟件開發的(de)存在的(de)問題,軟件開發的(de)複雜度很難控制,且往往因為(wèi)複雜程度不可(kě)控而最終導緻失敗,這是很多軟件項目開發失敗的(de)根本原因。這篇論文同時也指明了提高(gāo)軟件開發效率的(de)兩個方向:降低(dī)複雜度和(hé)需求妥協,保持複雜度可(kě)控,并在次要功能時做(zuò)出妥協,是确保軟件項目開發的(de)有(yǒu)效方法,這個方法并不如(rú)“銀彈”一(yī)般完美,但确實是不得已而為(wèi)之的(de)可(kě)行(xíng)方法。
成長(cháng)力的(de)獨特解決之道(dào)
成長(cháng)力軟件的(de)工程師們(men)很多都有(yǒu)着20年(nián)以上的(de)管理(lǐ)軟件開發的(de)經驗,對管理(lǐ)軟件開發效率低(dī)下的(de)問題也是深惡痛絕,因此從2003年(nián)起就啓動開發一(yī)套适合管理(lǐ)軟件領域使用的(de)元模型平台,經過長(cháng)時間的(de)摸索實踐,甚至數次的(de)推倒從來,最終做(zuò)出了這樣一(yī)套适合管理(lǐ)信息化系統的(de)元模型軟件平台。成長(cháng)力軟件的(de)所有(yǒu)産品,都是基于這個平台,通過零代碼的(de)方式配置的(de)。
根據我(wǒ)們(men)自(zì)己的(de)實際使用經驗數據,使用元模型軟件平台,開發新功能的(de)速度是傳統代碼開發的(de)5倍,而調整已有(yǒu)功能的(de)速度,是傳統代碼開發的(de)7倍以上。為(wèi)什麽使用元模型軟件平台可(kě)以提高(gāo)如(rú)此多的(de)開發效率?下面我(wǒ)們(men)從理(lǐ)論及實踐的(de)角度,來進行(xíng)說明:
一(yī)、降維
降維這個詞最近很流行(xíng),也有(yǒu)很多不同的(de)解釋,從元模型軟件平台的(de)角度來解釋降維,就是把複雜的(de)代碼編程轉變為(wèi)更易于理(lǐ)解的(de)業務模型。
傳統的(de)代碼編程開發中需要考慮很多維度的(de)問題,具體到某個變量如(rú)何賦值、數據如(rú)何在界面和(hé)數據庫之間傳遞等等,細節繁多、涉及面廣,即使是有(yǒu)專業知識的(de)人,也容易疏漏出錯。總結起來,就是要考慮的(de)各種因素太多,維度太高(gāo),不容易把控,導緻開發效率低(dī)下。
而元模型軟件平台,則屏蔽了編程細節,采用零代碼方式的(de)建模方式,通過各種模型來組合出各種功能,複雜度方面大大降低(dī),因此開發效率高(gāo)。
通過降維獲得的(de)高(gāo)效是有(yǒu)代價的(de),降維過程中不可(kě)避免地(dì)需要忽略一(yī)些維度(因素),從而導緻某些細節被删減。簡單來說,模型能夠實現的(de)功能是傳統代碼編程能夠實現功能的(de)子(zǐ)集。因此元模型軟件平台聚焦于管理(lǐ)軟件開發領域,而不是所有(yǒu)軟件領域,這樣就可(kě)以通過元模型來涵蓋大多數的(de)管理(lǐ)需求。
二、擴展
由于降維的(de)代價,即使元模型軟件平台僅聚焦于管理(lǐ)軟件開發領域,也無法涵蓋全部管理(lǐ)需求。因此必須提供另外的(de)方式,去(qù)彌補因為(wèi)降維導緻的(de)損失。
在成長(cháng)力元模型平台中提供的(de)插件機(jī)制,可(kě)以有(yǒu)效解決降維導緻的(de)功能細節損失。整個平台采取微內(nèi)核的(de)插件方式,針對不同的(de)需求,擴展專門的(de)插件來滿足特定需求。插件采取按需加載的(de)機(jī)制,僅加載需要使用的(de)插件,因此擴展插件既可(kě)以包羅萬象,滿足各種需求,同時又不會使得系統臃腫。
三、直觀
直觀和(hé)降維有(yǒu)一(yī)點聯系,但含義并不相同。降維可(kě)以把複雜度降低(dī),但并不一(yī)定能變得直觀,因為(wèi)直觀是從人的(de)認知角度而言的(de),對人來說,易于理(lǐ)解就是直觀。舉個例子(zǐ),身份證号僅由數字加字母X組成,算得上是非常簡單,但并不直觀;而姓名加照片的(de)方式,涉及到複雜的(de)漢字以及圖像,并不簡單,但更容易理(lǐ)解和(hé)記憶,從人的(de)認知角度而言,比一(yī)串數字加字母X的(de)身份證号要直觀得多。
業界也有(yǒu)一(yī)些平台産品采用模型方式去(qù)屏蔽編程細節,但用的(de)模型還是脫不開傳統編程的(de)概念,甚至有(yǒu)些平台隻用一(yī)種高(gāo)度抽象的(de)模型,這些做(zuò)法雖然降低(dī)了維度,降維後的(de)模型并不易于理(lǐ)解,開發效率也無法得到有(yǒu)效提高(gāo)。
要讓平台産品直觀易用,就是要跳出軟件開發的(de)思維,讓非技術人員來使用平台産品,隻有(yǒu)他們(men)覺得易用,這個平台産品才算是真正的(de)直觀易用的(de)。這一(yī)點,是成長(cháng)力的(de)元模型軟件平台一(yī)直堅持的(de)設計原則。
軟件定制選成長(cháng)力
正是基于元模型平台的(de)優勢,使得全管軟件定制項目成功率遠超同行(xíng)業水平;并且因為(wèi)開發效率高(gāo),也使得開發費用大幅降低(dī)!如(rú)果您有(yǒu)軟件定制方面的(de)需求,請與我(wǒ)們(men)的(de)咨詢顧問聯系。