999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

模型驅(qū)動方法論在業(yè)務(wù)中臺中的實踐研究(二)

2020-02-22 03:09:35李忠民何鑫
現(xiàn)代信息科技 2020年18期

李忠民 何鑫

摘? 要:模型驅(qū)動架構(gòu)是一個抽象的理論框架,要使其真正落地實踐,必須結(jié)合項目實際構(gòu)建一個可行的模型序列,并給出一套模型轉(zhuǎn)換規(guī)則。在某大型央企的業(yè)務(wù)中臺項目對該模型序列進行了研究,并總結(jié)出一套模型轉(zhuǎn)換規(guī)則,即業(yè)務(wù)過程模型(業(yè)務(wù)流程模型、業(yè)務(wù)用例模型)、業(yè)務(wù)對象模型、領(lǐng)域模型、組件模型、數(shù)據(jù)模型(概念模型、邏輯模型、物理模型)的組成的模型序列。

關(guān)鍵詞:模型驅(qū)動架構(gòu);業(yè)務(wù)過程建模;用例模型;領(lǐng)域模型;組件模型;模型轉(zhuǎn)換

中圖分類號:TP311.52? ? ? ?文獻標(biāo)識碼:A 文章編號:2096-4706(2020)18-0104-04

Abstract:Model driven architecture is an abstract theoretical framework. To make it truly practical,it is necessary to construct a feasible model sequence based on the actual project and give a set of model conversion rules. This paper studies the model sequence in the financial middle office project of a large central enterprise,and summarizes a set of model transformation rules,that is,the business process model(business process model,business use case model),business object model,domain model,component model and data model(conceptual model,logical model,physical model).

Keywords:model driven architecture;business process modeling;use case model;domain model;component model;model transformation

0? 引? 言

模型驅(qū)動架構(gòu)(MDA)方法論對系統(tǒng)分析和設(shè)計領(lǐng)域進行了概括和抽象,該方法論實現(xiàn)了業(yè)務(wù)需求的結(jié)構(gòu)化描述;它可以確保設(shè)計反映業(yè)務(wù),確保設(shè)計意圖貫徹到實現(xiàn)中去,做到分析設(shè)計過程中業(yè)務(wù)信息和設(shè)計信息全繼承、可追溯、不失真,從而讓客戶更有可能獲得他們真正需要的系統(tǒng)。作為該大型央企業(yè)務(wù)中臺的承建單位,公司認識到模型驅(qū)動架構(gòu)的優(yōu)勢,決心結(jié)合業(yè)務(wù)中臺的建設(shè)任務(wù)展開MDA方法論的深入研究,并利用MDA指導(dǎo)業(yè)務(wù)中臺的建設(shè)實施。在此背景下,作者結(jié)合業(yè)務(wù)中臺設(shè)計開發(fā)工作實踐,提出一個可行的模型序列,并給出了模型轉(zhuǎn)換規(guī)則,本文承接《模型驅(qū)動架構(gòu)方法論在業(yè)務(wù)中臺中的落地實踐研究(一)》繼續(xù)就模型序列進行討論。

1? 上篇回顧

從業(yè)務(wù)空間到系統(tǒng)實現(xiàn)要經(jīng)過四個視角的轉(zhuǎn)換,我們稱之為域,即業(yè)務(wù)域、應(yīng)用域、數(shù)據(jù)域、技術(shù)域。每個域通過對一個或多個模型的建模,從不同視角描述同一個事物——公司業(yè)務(wù)條線和業(yè)務(wù)有關(guān)專業(yè)條線的業(yè)務(wù)。通過依次構(gòu)建序列上的每個模型,描述模型中容納的概念,在模型序列的引導(dǎo)下,由業(yè)務(wù)逐漸逼近系統(tǒng)實現(xiàn)。

上篇文章中討論了業(yè)務(wù)域和應(yīng)用域的幾個模型的建模實踐經(jīng)驗,下面接上文繼續(xù)討論數(shù)據(jù)域和技術(shù)域的幾個模型的建模方法。

在數(shù)據(jù)域,我們從數(shù)據(jù)角度描述業(yè)務(wù),用數(shù)據(jù)的語言描述“做什么、怎么做”,數(shù)據(jù)域我們定義三個模型:概念模型、邏輯模型、物理模型。

2? 概念模型

個人理解概念模型、邏輯模型、物理模型是從純粹數(shù)據(jù)建模的角度建立的一個方法論,是和領(lǐng)域驅(qū)動并行發(fā)展的兩個方法論。領(lǐng)域模型包含數(shù)據(jù)和行為,而概念模型只包含數(shù)據(jù),二者都是業(yè)務(wù)分析的結(jié)果,定位和作用重疊。當(dāng)我們采用MDA方法,且模型序列中存在領(lǐng)域模型時,概念模型已經(jīng)沒有存在的必要。為了確保數(shù)據(jù)模型建模思想的完整性,避免對數(shù)據(jù)模型建模工作做出顛覆性變動,項目中約定:從領(lǐng)域模型中抽取的聚合根及聚合根之間的關(guān)系,刪除聚合根的行為(方法),就構(gòu)成了概念模型。

故概念模型可以利用工具從領(lǐng)域模型自動轉(zhuǎn)換過來,偽代碼如圖1所示。

3? 邏輯模型

邏輯模型是一種平臺無關(guān)模型,只與業(yè)務(wù)相關(guān),反映業(yè)務(wù)事實顯示,符合關(guān)系數(shù)據(jù)模型三范式。項目中約定邏輯模型采用關(guān)系數(shù)據(jù)模型,并規(guī)定業(yè)務(wù)中臺的邏輯模型只有一個。

3.1? 領(lǐng)域模型到邏輯模型的轉(zhuǎn)換

3.1.1? 實體的轉(zhuǎn)換

邏輯模型繼承于領(lǐng)域模型,本項目約定領(lǐng)域模型中的領(lǐng)域?qū)ο笕サ舴椒礊檫壿嬆P偷膶嶓w原型,部分轉(zhuǎn)換過程可以利用工具自動完成。

由于領(lǐng)域模型存在抽象實體,邏輯模型則都是具體化的實體,故由領(lǐng)域模型到邏輯模型的實體的轉(zhuǎn)換并不是一對一的自動映射,需要根據(jù)具體情況進行分析,這是MDA的模型轉(zhuǎn)化過程中人工干預(yù)點之一,轉(zhuǎn)換規(guī)則為:

(1)領(lǐng)域模型中與其他類沒有泛化關(guān)系的實體轉(zhuǎn)換為一個表,實體的屬性就是表的字段,實體的標(biāo)識碼就是表的關(guān)鍵字。

(2)存在泛化關(guān)系的實體有三種轉(zhuǎn)換方式:一是父類實體合并到子類中,如果存在一個繼承鏈則遞歸合并,合并后的類作為邏輯模型實體,此時父類的關(guān)鍵字轉(zhuǎn)化為子類的唯一索引;父類的屬性集合與子類的屬性集合合并,如果合并后存在重復(fù)定義的情況則去重處理,如果存在重載情況(父子類屬性同名但語義不同),則父類屬性改名為父類名+原屬性名。二是父類、子類分別轉(zhuǎn)化為邏輯模型實體,此時父類的主關(guān)鍵字加入子類作為唯一索引,同時作為連接父類和子類兩個實體的外鍵。三是父類轉(zhuǎn)化為實體,子類退化為一個枚舉值屬性(如種類)作為父類的一個屬性。制定了領(lǐng)域模型向邏輯模型的實體轉(zhuǎn)換規(guī)則以后,可以利用工具完成實體的自動遷移。

3.1.2? 屬性的轉(zhuǎn)換

領(lǐng)域?qū)ο蟮膶傩杂成錇檫壿嬆P蛯?yīng)實體的屬性,屬性語義和值域(Domain)完全對拷遷移,不進行變化,此過程可以利用工具完成。

3.1.3? 關(guān)系的轉(zhuǎn)換

領(lǐng)域模型中的一對一、一對多、多對一關(guān)聯(lián)關(guān)系轉(zhuǎn)化為邏輯模型中的實體間關(guān)系,這個過程可以利用工具自動完成;多對多關(guān)聯(lián)關(guān)系則轉(zhuǎn)化為實體,需要建立新的實體,與該關(guān)系兩端的實體分別建立一對多或一對一關(guān)聯(lián)關(guān)系。

領(lǐng)域模型中的泛化經(jīng)過父子類的合并處理,在邏輯模型中已經(jīng)不存在,不必遷移。

3.2? 邏輯模型的重構(gòu)

由領(lǐng)域模型轉(zhuǎn)換而來的邏輯模型還需要進行重構(gòu)才能成為規(guī)范的邏輯模型,需要按照關(guān)系數(shù)據(jù)模型三范式的原則,審視檢查遷移步驟獲得的邏輯模型,進行邏輯模型重構(gòu),主要包括識別和建立主鍵、識別和建立外鍵、識別和建立唯一索引、拆分復(fù)合屬性、領(lǐng)域模型中存在的多對多關(guān)系轉(zhuǎn)化為實體等工作。

4? 物理模型

物理模型是邏輯模型在特定平臺上的實現(xiàn),是平臺相關(guān)模型。業(yè)務(wù)中臺的物理模型有多個:基于阿里云的OLTP數(shù)據(jù)庫物理模型、基于阿里云的分析域數(shù)據(jù)集市物理模型,基于華為云的OLTP數(shù)據(jù)庫物理模型、基于華為云的分析域數(shù)據(jù)集市物理模型,他們都繼承于同一個邏輯模型。物理模型全面繼承了邏輯模型的實體、關(guān)系、主外鍵等元素,同時根據(jù)具體平臺的實現(xiàn),調(diào)整了屬性的數(shù)據(jù)類型、長度、精度,并出于性能、存儲等考慮進行了一些冗余設(shè)計,增加普通索引、分庫分表設(shè)計等平臺相關(guān)設(shè)計。

(1)邏輯模型到物理模型的遷移,遷移過程包括表的轉(zhuǎn)換:邏輯模型實體轉(zhuǎn)化為物理模型的表;字段的轉(zhuǎn)換:邏輯模型的屬性轉(zhuǎn)換為物理模型的字段;表間關(guān)系的轉(zhuǎn)換:邏輯模型的實體間關(guān)系對轉(zhuǎn)為物理模型相應(yīng)表之間的關(guān)系;主鍵的轉(zhuǎn)換:邏輯模型的主鍵轉(zhuǎn)換為物理模型相應(yīng)表的唯一索引等四方面的工作,這些過程可以在工具輔助下自動完成。

(2)物理模型的重構(gòu):從邏輯模型對轉(zhuǎn)過來的物理模型并不是最終可用的物理模型,其只包含了業(yè)務(wù)知識,還沒有反映技術(shù)實現(xiàn),故還需要根據(jù)具體的技術(shù)實現(xiàn)平臺相關(guān)的一些轉(zhuǎn)換,包括但不限于以下內(nèi)容:1)數(shù)據(jù)類型的轉(zhuǎn)換:邏輯模型的數(shù)據(jù)類型還是抽象數(shù)據(jù)類型,需要轉(zhuǎn)換為具體技術(shù)實現(xiàn)支持的數(shù)據(jù)類型,如在Oracle中的字符型轉(zhuǎn)換為varchar2或char,在MySQL中則轉(zhuǎn)換為varchar或者char;2)冗余設(shè)計:出于性能考慮,需要做一些違反范式標(biāo)準(zhǔn)但必要的冗余設(shè)計;3)存儲空間規(guī)劃:為表分配初始存儲空間大小、存儲空間位置等等;4)分庫、分區(qū)、分表:出于性能、穩(wěn)定性等考慮,規(guī)劃分庫、分區(qū)、分表方案;5)普通索引的建立;6)視圖的建立;7)歷史表、中間表、臨時表的建立。

5? 模型驅(qū)動架構(gòu)的概念模型

分析MDA的過程,可以看到模型的建模過程就是如下過程的不斷重復(fù):

(1)遷移:繼承前一個模型的數(shù)據(jù)。

(2)建模:定義新的概念,并識別這些概念的關(guān)系。

(3)重構(gòu):合并、去重、加工、調(diào)整。

(4)輸出:輸出加工后的數(shù)據(jù)供下一個模型使用。

模型能夠揭示事物的本質(zhì),描述一件事物最簡潔的方法是給出其模型,作為一個總結(jié),我們拾取上面介紹的各種概念,建立MDA的概念模型,如圖2所示。

6? 結(jié)? 論

MDA方法論的核心思想是通過對模型序列中的模型逐個建模,引領(lǐng)我們逐步由業(yè)務(wù)逼近系統(tǒng)實現(xiàn),每一個模型都繼承前一個模型的全量設(shè)計成果,在此基礎(chǔ)上再進行重構(gòu)、提升,然后再作為下一個模型的輸入,直至系統(tǒng)實現(xiàn)。MDA方法論不但給出了系統(tǒng)分析設(shè)計的全局性的、協(xié)調(diào)一致的全景視圖,而且實踐證明該方法論是完全可以落地的,MDA 能夠確保每一項設(shè)計都有依據(jù),每一個結(jié)論都可追溯,能夠確保設(shè)計成果反映業(yè)務(wù),確保設(shè)計成果貫徹落實到實現(xiàn)中去,是一種非常有價值的系統(tǒng)分析和設(shè)計方法。

參考文獻:

[1] 張鵬,李忠民.企業(yè)級數(shù)據(jù)模型全域一致性的一種解決方案 [J].智庫時代,2018(35):135-136+139.

[2] FRANKEL D S.應(yīng)用MDA [M].鮑志云,譯.北京:人民郵電出版社,2003.

[3] KLEPPE A,WARMER J,BAST W.解析MDA [M].鮑志云,譯.北京:人民郵電出版社,2004.

作者簡介:李忠民(1967—),男,漢族,山東聊城人,技術(shù)專家,中級職稱,本科,研究方向:銀行應(yīng)用系統(tǒng)設(shè)計開發(fā)、大型互聯(lián)網(wǎng)平臺架構(gòu)設(shè)計、大數(shù)據(jù)應(yīng)用系統(tǒng)設(shè)計;何鑫(1988—),男,漢族,內(nèi)蒙古烏蘭察布人,助理工程師,本科,研究方向:國網(wǎng)公司統(tǒng)一數(shù)據(jù)模型(SG-CIM)設(shè)計。

主站蜘蛛池模板: 亚洲一区二区无码视频| 午夜精品久久久久久久2023| 永久天堂网Av| 91成人精品视频| 久久a级片| 美女无遮挡拍拍拍免费视频| 尤物视频一区| 91久久偷偷做嫩草影院电| 一本色道久久88综合日韩精品| 亚洲国产91人成在线| 久久久久亚洲精品成人网| 免费三A级毛片视频| 日本高清免费不卡视频| 欧美福利在线观看| 国产精品思思热在线| 呦视频在线一区二区三区| 亚洲av色吊丝无码| 五月六月伊人狠狠丁香网| 久热这里只有精品6| 欧美精品高清| 中日韩一区二区三区中文免费视频| 97超爽成人免费视频在线播放| 九色综合视频网| 高清色本在线www| 久久这里只有精品国产99| 国产福利拍拍拍| 成人久久精品一区二区三区| 青草视频久久| 日本91在线| 国产一级无码不卡视频| 黄色a一级视频| 久久99热66这里只有精品一| 久久久久亚洲精品无码网站| 暴力调教一区二区三区| 国产精品99久久久久久董美香| 亚洲第一成年网| 亚洲区视频在线观看| 91精品免费久久久| 久久久久青草线综合超碰| 亚洲精品国产自在现线最新| 亚洲成人黄色网址| 国产无码在线调教| 欧美a级完整在线观看| 精品自拍视频在线观看| 蜜芽国产尤物av尤物在线看| 最新亚洲人成无码网站欣赏网 | 在线欧美一区| 超碰aⅴ人人做人人爽欧美 | 天天色综合4| 国产精品亚洲а∨天堂免下载| 国产伦精品一区二区三区视频优播 | 成人午夜免费视频| 精品乱码久久久久久久| 中文字幕 欧美日韩| 国产成人久久777777| 丁香亚洲综合五月天婷婷| 亚洲精品无码专区在线观看| 国产黄网站在线观看| 精品一區二區久久久久久久網站| 国产激爽大片高清在线观看| 中文字幕在线日本| 天天综合网色| 亚洲精品国产综合99| 毛片在线播放a| 亚洲a级在线观看| 国产黑丝视频在线观看| 亚洲综合18p| 日本三级黄在线观看| 亚洲AⅤ无码日韩AV无码网站| 免费一极毛片| 欧美性精品| 亚洲无线国产观看| 精品自窥自偷在线看| 国产极品粉嫩小泬免费看| 亚洲毛片一级带毛片基地 | 亚洲欧美精品一中文字幕| 欧美一级在线| 国产欧美日韩另类精彩视频| 美女被操91视频| 欧美视频免费一区二区三区| 人与鲁专区| 55夜色66夜色国产精品视频|