商業(yè)軟件自從運行在大型機上的大型COBOL程序開始,開發(fā)工具和技術已經經歷了根本的變化。PC的出現帶來了極大的進步,Internet已經徹底改變了軟件開發(fā)生命周期。
商業(yè)世界通常既是技術變革的發(fā)起者又是技術變革的消費者,目睹了它自己的商業(yè)操作的演變。組織不得不更快速地重新設計他們的商業(yè)流程來應對很多壓力,比如說成本、競爭和創(chuàng)新。這使得組織要快速地適應商業(yè)環(huán)境的變化,允許重新調整其產品和服務從而在競爭中處于地位。因此快速采用新思想、流程或者方法已經變成了商業(yè)頌歌也一點也不奇怪了。
設計和部署可以跟上時代的系統已經變成幾乎不可能的任務。在很多開發(fā)項目中,技術改變已經超過了開發(fā)努力。例如,在項目開始階段看起來合適并且成本比較劃算的解決方案到項目完成的時候證明情況已經不同了。
應用開發(fā)經理在這種環(huán)境下能夠做的一個比較好的可能的方法是評估近兩年來關鍵軟件設計創(chuàng)新。然后通過一個明智的挑選過程,你可以應用它們帶來時間和成本上大的效益。
傳統的商業(yè)軟件系統完成接受信息輸入、執(zhí)行邏輯過程和產生輸出的功能。面向對象的設計規(guī)則改變了這種模式,它將軟件的層分離成可交換重用的組件。這種方法的一個里程碑把商業(yè)邏輯從數據的捕獲或表現中分離出來。
我們從追求電子商務應用中已經學到了過多的東西,其中效率是由通信協議和信息結構的標準化所得到的;赬ML的標準和一些服務(比如說SOAP、eBXML、UDDI、WDSL和XSLT)的引入使得組織能夠快速地在異構系統間傳輸信息,不管是在組織內部還是與商業(yè)伙伴之間。
商業(yè)流程管理(BPM)應用通過實現連接信心系統功能的中間件擴展了這種能力。它們還包括允許組織價值鏈的快速建模的健壯商業(yè)規(guī)則引擎。商業(yè)規(guī)則引擎的標準化隨著Java規(guī)則引擎API(JSR)已經開始有了顯著發(fā)展。
通過概念上將信息標準及協議(例如XML)的原則和商業(yè)邏輯(例如JSR)的表現標準相結合,我們可以想象到出現一個新的模式:商業(yè)規(guī)則可以相互交換,因此使得商業(yè)邏輯可動。
例如,某些用于產生特定類型的消費者發(fā)票的商業(yè)規(guī)則的編碼可以與其它需要執(zhí)行同樣的規(guī)則的系統進行交易。這會導致軟件開發(fā)的新方法的產生,其中規(guī)則引擎共享它們的邏輯或者從通用知識庫中取出它們的規(guī)則——會再一次導致應用開發(fā)的速度的增加。
即使這些概念聽起來比較牽強,但是事實上卻不是這樣;它們實際上已經在實施。上面的模式是初的商業(yè)規(guī)則標記語言(Business Rules Markup Language,BRML)和規(guī)則標記語言(Rule Markup Language,RuleML)的核心,這兩種標記語言在學術界和業(yè)界都有積極的參與者。例如,IBM的alphaWorks提供的CommonRules是一個BRML相關的工作。
作為一個應用開發(fā)經理,為了修訂你的組織(尤其是你的團隊)的業(yè)務方式而挑選出和跟上新的設計方案是你的事了。即使你不這樣做,也可以肯定地說你的競爭者會這樣做。