幫助IT團隊快速構建符合jt808協議部標的基于java技術的GPS和視頻平臺(2379423771@qq.com)

          為什么要使用JBoss Drools


          我在項目中一直使用JBoss Drools 這個開源的規則驅動引擎, 為什么要用它? 我要想出個一二三來說服別人。

          對于business rule, 一般的情況是, 好的BA,可能更善于發現、抽取business rule ,并用結構化的方式描述、記錄下來, 普通的BA可能更是一種流水賬式的、吃那拉那的描述方式。
          不管怎樣,BA在寫文檔,use case的時候,那些business rule被分布在文檔中不同的部分,然后這些rule,在分工時,有被理所當然的分給不同的開發人員來開發。

          好的開發人員會刻意的使用各種手段剝分離、封裝、結構化他們,并積極的重構他們,以防止規則的變化,沖擊到設計或代碼的結構。

          而普通的開發人員則極有可能硬編碼寫死在代碼當中,完成coding 任務,草草了事。

          可以看出,這種方式,隨意性太大,不可控的風險也隨之增大。后果是,開發人員總是抱怨需求的變更,殊不知,合理的設計手段,在一定程度上,可以緩沖需求的變化。

          JBoss Drools, 它在一定程度上解決了上面的問題:


          1)規則首先應當是可管理的
          ?? 規則是相對靈活、復雜的,我們要控制、管理它們,而不是直接暴露給開發人員,愿意怎么搞,就怎么搞,一個人一種style。

          ?? Drools使用script,將rule集中寫在規則庫文件當中, 使得設計人員更容易管理。同時可以設計復雜的業務規則,并在沒有編寫任何代碼的情況下自動綁定企業數據。提供帶有菜單提示和下拉列表的向導來幫助用戶完成設計過程。

          2)我們則設計是,總要遵循一些原則:
          ?? 將易變的和不變的分離出來
          ?? 封裝可變的規則, 避免硬編碼編程
          ?? 將多源的規則,合并、整理成單源的規則,一進一出,降低復雜度。

          ?? Drools將規則寫在配置文件當中,以集中強制的方式剝離了規則,而不是寫死在代碼當中。在規則變化而修改腳本文件時,不用重新部署系統。

          3)規則應當使用一種清晰、易懂的方式記錄下來,并明確下來,無論是漢語還是英文句子,都不是表達規則的好的方式。大段大段的文字,往往讓人發暈。

          ?? 偽代碼、script語言反而時表達規則的一種極好的方式, 結構化的表達方式,讓開發人員覺得非常親切,更加平易近人。

          ?? Drools 引入了更為強大且的業務行為腳本語言(MVFlex表達式語言)。用戶會發現腳本語言的引入使得代碼變得更為簡明且可讀性更好。

          posted on 2008-08-07 14:22 Speed 閱讀(3406) 評論(1)  編輯  收藏 所屬分類: 框架設計J2EE

          評論

          # re: 為什么要使用JBoss Drools 2009-02-08 10:05 zhongmindong

          我們找SEAM開發人員,請聯系我.GZQYDM@139.COM  回復  更多評論   

          導航

          留言簿(15)

          隨筆分類

          值得一看的博客

          積分與排名

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 龙口市| 平山县| 栖霞市| 安仁县| 惠水县| 常熟市| 新巴尔虎右旗| 长武县| 霍州市| 阿拉善右旗| 山西省| 建湖县| 滁州市| 溧水县| 锡林浩特市| 鹿邑县| 厦门市| 锡林郭勒盟| 滁州市| 丰原市| 苗栗市| 江永县| 涿州市| 思南县| 丰镇市| 岑巩县| 临泉县| 望江县| 昭平县| 河北区| 得荣县| 湘西| 惠安县| 屏山县| 宣武区| 左云县| 长春市| 浮梁县| 秭归县| 郓城县| 仁化县|