幫助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)

          隨筆分類

          值得一看的博客

          積分與排名

          最新評論

          閱讀排行榜

          主站蜘蛛池模板: 昭通市| 铁力市| 小金县| 虞城县| 赣州市| 同心县| 呼伦贝尔市| 原阳县| 武隆县| 东港市| 孟州市| 禹州市| 安阳县| 衢州市| 富裕县| 苏尼特右旗| 南岸区| 济宁市| 丽水市| 墨江| 台湾省| 楚雄市| 桐柏县| 兰溪市| 台安县| 永登县| 巩义市| 乌鲁木齐市| 磐石市| 华坪县| 顺昌县| 威信县| 玉田县| 信宜市| 阿合奇县| 肥城市| 凤山县| 德格县| 财经| 集贤县| 天镇县|