<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    迷途書童

    敏感、勤學(xué)、多思
    隨筆 - 77, 文章 - 4, 評論 - 86, 引用 - 0
    數(shù)據(jù)加載中……

    面向領(lǐng)域的業(yè)務(wù)平臺設(shè)計(jì)(二)

    如何解決上文提到的鑒定標(biāo)準(zhǔn)中的問題呢?我認(rèn)為答案就是MDD。

    用一個(gè)實(shí)際的例子來表述一下思路:

    在CRM系統(tǒng)有個(gè)訂單處理模塊,其提供了訂單管理、訂單流程執(zhí)行、工單管理等功能,營業(yè)員通過界面提交一個(gè)訂單請求,如果訂單請求通過業(yè)務(wù)規(guī)則的校驗(yàn),則會(huì)創(chuàng)建一個(gè)訂單對象,訂單對象的創(chuàng)建會(huì)觸發(fā)訂單流程的創(chuàng)建,訂單流程流轉(zhuǎn)的過程中,會(huì)在各個(gè)節(jié)點(diǎn)創(chuàng)建工單,也會(huì)調(diào)用其它子系統(tǒng)開通服務(wù),比如調(diào)用物流發(fā)貨。訂單流程完成后,訂單對象的狀態(tài)也完成。實(shí)際的系統(tǒng)比這個(gè)要復(fù)雜,這里僅僅為了闡述思路,做適當(dāng)?shù)暮喕?/p>

    從上面的例子,我們可以識別出幾個(gè)模型:訂單、工單、訂單流程,訂單、工單、訂單流程都是stateful的、其state的變更會(huì)導(dǎo)致其它對象的狀態(tài)變更或者服務(wù)的執(zhí)行。

    在展現(xiàn)層,展現(xiàn)各個(gè)模型是有章法的,比如創(chuàng)建訂單的界面總是一樣的,處理工單的界面也總是一樣的,展現(xiàn)訂單的界面也總是一樣的。因此,我們可針對指定的對象的某種需要展現(xiàn)的狀態(tài),提供合適的展示構(gòu)件(WEB TAG)來展示它。

    在持久層,因?yàn)閷ο罂偸浅志没揭粡埍懋?dāng)中的,因此,可用一些ORM的框架來持久化對象,而不是開發(fā)人員針對每個(gè)場景去寫SQL,復(fù)雜的關(guān)聯(lián)查詢可以使用類HQL。

    各對象之間的關(guān)聯(lián)操作通過事件驅(qū)動(dòng)。

    舉一個(gè)訂單創(chuàng)建的例子:

    1、開發(fā)做的工作:

        1)使用元數(shù)據(jù)定義訂單的數(shù)據(jù)結(jié)構(gòu),包含持久化元數(shù)據(jù)、基本屬性元數(shù)據(jù)、字典元數(shù)據(jù);

        2)定義訂單狀態(tài)機(jī),以及狀態(tài)變遷的規(guī)則;

        3)建模訂單處理流程;

        4)定義訂單請求處理規(guī)則流,并發(fā)布為一個(gè)受理訂單請求的服務(wù);

        5)開發(fā)訂單創(chuàng)建界面,使用訂單WEB構(gòu)件來展示訂單對象;

        6)定義事件,以及事件的監(jiān)聽服務(wù);

    2、系統(tǒng)執(zhí)行流程:

        1)營業(yè)員打開訂單創(chuàng)建界面,系統(tǒng)獲取訂單對象的元數(shù)據(jù),生成訂單創(chuàng)建頁面;

        2)營業(yè)員點(diǎn)擊訂單創(chuàng)建界面的提交按鈕,調(diào)用受理訂單請求的服務(wù);規(guī)則流執(zhí)行,如果規(guī)則校驗(yàn)錯(cuò)誤,則返回錯(cuò)誤,如果成功,則創(chuàng)建訂單,返回成功;

        3)因創(chuàng)建訂單,導(dǎo)致訂單的狀態(tài)變?yōu)閯?chuàng)建狀態(tài),觸發(fā)訂單創(chuàng)建事件;

        4)訂單創(chuàng)建的監(jiān)聽服務(wù)流程服務(wù)接收到事件,觸發(fā)訂單處理流程的創(chuàng)建;

        5)流程執(zhí)行的過程中編排第三方系統(tǒng)服務(wù);流程執(zhí)行結(jié)束后,觸發(fā)訂單流程結(jié)束事件,流程結(jié)束事件的監(jiān)聽服務(wù)訂單管理接收到事件,觸發(fā)狀態(tài)機(jī)變遷,訂單狀態(tài)變?yōu)橥瓿伞?/p>

    上述開發(fā)做的工作全部可通過配置完成。后續(xù)如果增刪字段,修改元數(shù)據(jù)即可,要增刪改業(yè)務(wù)規(guī)則,調(diào)整業(yè)務(wù)規(guī)則即可,要調(diào)整實(shí)體狀態(tài),修改實(shí)體狀態(tài)機(jī)即可。

    業(yè)務(wù)平臺要致力于對狀態(tài)機(jī)、業(yè)務(wù)流程、SEP、元數(shù)據(jù)、領(lǐng)域化的WEB構(gòu)件的實(shí)現(xiàn),并將其有機(jī)整合。

     

    寫的比較亂,過幾天再整理一下。。。

    posted on 2012-02-26 17:12 迷途書童 閱讀(1487) 評論(2)  編輯  收藏 所屬分類: 隨感系統(tǒng)設(shè)計(jì)java應(yīng)用SOA

    評論

    # re: 面向領(lǐng)域的業(yè)務(wù)平臺設(shè)計(jì)(二)  回復(fù)  更多評論   

    Siebel Architecture (Basic Concepts)
    2012-02-27 16:11 | tt

    # re: 面向領(lǐng)域的業(yè)務(wù)平臺設(shè)計(jì)(二)  回復(fù)  更多評論   

    寫得不錯(cuò),實(shí)用!
    2012-03-04 15:17 | 發(fā)表論文
    主站蜘蛛池模板: 亚洲成a人片毛片在线| 亚洲精品无码久久一线| 亚洲av无码片在线观看| 四虎影视精品永久免费| 亚洲色偷偷综合亚洲AV伊人蜜桃 | 处破女第一次亚洲18分钟| 在线观看AV片永久免费| 亚洲人成人网毛片在线播放| 91成年人免费视频| 亚洲男女性高爱潮网站| 在线永久看片免费的视频| 亚洲a∨无码男人的天堂| 久久久久国产精品免费免费搜索 | 大学生一级毛片免费看| 亚洲综合丁香婷婷六月香| 最近中文字幕无免费视频| 99亚偷拍自图区亚洲| 女人18毛片特级一级免费视频| 亚洲精品无码成人片久久不卡 | 亚洲欧洲中文日韩久久AV乱码| 乱淫片免费影院观看| 亚洲精品无码永久在线观看你懂的 | 亚洲无人区一区二区三区| 免费无码黄网站在线看| 久久亚洲精品无码aⅴ大香| 在线观看特色大片免费视频 | 亚洲午夜在线播放| 四虎影视在线永久免费观看| 一级做a爱过程免费视频高清| 亚洲第一AAAAA片| 青青青国产在线观看免费网站| 亚洲乱妇老熟女爽到高潮的片 | 五月天婷婷免费视频| 久久精品国产亚洲AV电影| 毛片高清视频在线看免费观看| 狼色精品人妻在线视频免费| 亚洲国产精品无码专区影院| 美女视频黄是免费的网址| 免费看内射乌克兰女| 亚洲午夜未满十八勿入| 午夜小视频免费观看|