日韩久久久精品,亚洲精品久久久久久久久久久,亚洲欧美一区二区三区国产精品 ,一区二区福利

微內核流程引擎(IVR導航)的設計與實現(一)

系統 1730 0

此次開發在***會議項目之后進行的優化。主要內容:

1、 對在這次開發中發現的問題進行解決。

2、 對流程引擎進行重構。

3、 擴展部分流程引擎的功能。

4、 進行結構調整。

5、 單元測試。測試驅動。

調整總體結構

目前結構主要的問題在于,流程內核、應用服務器的服務,業務邏輯都一個動態庫中,代碼雜糅在一起,不利于后面的維護,重用,以及開發。

現在要做的事情是把它分成三層:

wps_clip_image-200

1、 Flow Engine Core 流程內核層

主要的功能是建立一個流程模型,包括:

1) 解析腳本,生成流程。

2) 實現流程的運轉。

3) 提供一個擴展機制,以便擴展出多種服務,多種對象。

把流程內核單獨剝離出來,形成一個動態鏈接庫。這樣,相當于建立了一個流程模型,不單IVR可以使用,其他的流程處理也可以使用。

這是第一層。

2、 AS Service 應用服務器服務層

應用服務器服務層通過流程內核層的服務擴展機制,建立應用服務器相關服務實體,比如:呼叫,拆線,放音,收號等。

還包括特定的對象,如用戶對象,會議對象。但是記錄用戶對象和會議對象的對應關系。這個對象關系在業務邏輯層進行記錄。

這一層可能對業務邏輯層封裝一些復合服務,比如追呼,強插,強拆等。

3、 Business Logic 業務邏輯層

業務邏輯層的主要功能是處理不同業務的邏輯。以電話會議業務為例:

這一層通過電話號碼和會議號和和應用服務器服務層進行交互,保存用戶和會議的對應關系,以及會議屬性(是否錄音,追呼,),記錄會場信息,和頁面進行交互等。

這里也可以擴展一些會議業務所特有的服務,比如,追呼,三個號碼,輪呼等。

node,執行環境,service三者的關系目前不是很好。這里也要調整。

擴展流程功能

擴展的功能包括:

1) 實現流程的“節外生枝”——即在主流程里調用一個子流程。

2) 同步分裂,與匯聚流程

image4

3) 同步分裂,或匯聚流程

image5

代碼重構

對代碼進行重構。有些接口設計比較差,這里進行一下優化。在優化之前,倒是可以學習一下《設計模式》以及《重構》,順便溫習一下《代碼大全》,借鑒一些好的思路。

測試驅動開發

嘗試測試驅動開發,為流程引擎代碼構建一個可靠的測試環境。這里使用Google Test單元測試框架。

解決這次開發中的技術債務

將這次開發中一些臨時的方案用新的方案來進行代替。

微內核流程引擎(IVR導航)的設計與實現(一)——在一次嘗試后的優化


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 靖西县| 白玉县| 清水河县| 兖州市| 师宗县| 保康县| 恩平市| 象州县| 桐城市| 绵阳市| 芦山县| 孟津县| 兴城市| 会宁县| 平乡县| 长乐市| 乌审旗| 青川县| 城固县| 全南县| 西藏| 长沙市| 汉阴县| 山东省| 库尔勒市| 蚌埠市| 远安县| 都兰县| 武乡县| 绥棱县| 景德镇市| 襄城县| 陈巴尔虎旗| 扎鲁特旗| 广南县| 佛学| 云龙县| 全南县| 岳池县| 新丰县| 连平县|