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

模型驅(qū)動開發(fā)(MDD)介紹

系統(tǒng) 2934 0

模型驅(qū)動開發(fā)(MDD)介紹   模型驅(qū)動開發(fā)Model Driven Development (MDD) 是一種以模型作為主要工件的高級別抽象的開發(fā)方法,模型在工具的支持下,被作為核心資產(chǎn)被轉(zhuǎn)換成代碼或者可運行配置。現(xiàn)在軟件業(yè)存在多種MDD開發(fā)方法,本篇將對MDD進行概要介紹。

定義 

  在過去多年,軟件開發(fā)面臨了多個挑戰(zhàn),新的需求和存在系統(tǒng)不斷增長,系統(tǒng)也變得越來越復雜,以至于我們很難及時的構(gòu)建它們。為了解決這些問題, 就出現(xiàn)了很多新的方法,其中最突出的一個就是模型驅(qū)動開發(fā)。 MDD代表了一套理論和工業(yè)化軟件開發(fā)的方法框架,在軟件開發(fā)全生命周期中系統(tǒng)的的使用模型作為主要工件,它主要為了解決 軟件的兩個根本危機:復雜性和變更能力

  使用模型作為文檔和規(guī)范是有價值的,但是它需要嚴格的管理方式來確保模型是持續(xù)更新的。在實際工作中,我們迫于時間壓力經(jīng)常會出現(xiàn)于實現(xiàn)不一致的模型,這對開發(fā)和項目其實是不利的。而 MDD的基本思想是讓開發(fā)中心從編程轉(zhuǎn)移到高級別抽象中去,通過 模型 轉(zhuǎn)成代碼或其他工件來 驅(qū)動 部分或全部的 自動化開發(fā)

模型是一種抽象的語言

模型驅(qū)動開發(fā)(MDD)介紹

多種模型

模型驅(qū)動開發(fā)(MDD)介紹 模型驅(qū)動開發(fā)(MDD)介紹

 模型是一種建模語言,它需要我們自己根據(jù)業(yè)務和技術(shù)需要去設計它,在架構(gòu)、分析、設計、實現(xiàn)等不同階段都會存在多種模型, 如企業(yè)架構(gòu)模型、技術(shù)架構(gòu)模型、領域模型、UI模型、數(shù)據(jù)庫建模、業(yè)務規(guī)則模型、系統(tǒng)部署模型、測試模型等。

  模型驅(qū)動開發(fā)方法中,模型作為first class除了生成代碼之外,還可以生成很多其他非代碼工件,以下為一些從模型生成工件的通用例子:
模型驅(qū)動開發(fā)(MDD)介紹

三個階段

  1. 建立模型

    模型驅(qū)動開發(fā)(MDD)介紹
  2. 建模

    模型驅(qū)動開發(fā)(MDD)介紹

  3. 模型轉(zhuǎn)換
    模型驅(qū)動開發(fā)(MDD)介紹 模型驅(qū)動開發(fā)(MDD)介紹

  模型和建模這兩部分內(nèi)容已經(jīng)存在很多方法,它們在現(xiàn)在軟件開發(fā)過程中已經(jīng)處于重要位置,但是在需要哪些表達模型以及如何使用這些模型存在著差 異。傳統(tǒng)的模型只是一個設計藍圖,而MDD必須滿足額外的要求,這些模型必須是可讀的,也就是說必須存在第三個階段,也就是模型轉(zhuǎn)換:model to model (M2M) 和 model to code (M2C)

優(yōu)勢

  • 提高產(chǎn)能 :開發(fā)快、降低成本、提高質(zhì)量
  • 可維護性 :高級別模型與技術(shù)分類,技術(shù)架構(gòu)的改變意味著只是模型的一種新的轉(zhuǎn)換
  • 一致性 :手工編碼和架構(gòu)決策容易出錯,MDD可以確保生成的工件是一致的
  • 可重用性 :模型、轉(zhuǎn)換和架構(gòu)都是可以重用的,由于架構(gòu)和技術(shù)問題已經(jīng)被解決,所以開發(fā)新功能的風險也低
  • 改善涉眾溝通 :模型忽略系統(tǒng)邏輯行為的底層實現(xiàn),而直接展現(xiàn)問題域,這樣可以保證和涉眾使用同一種語言進行溝通
  • 改善設計溝通 :模型與系統(tǒng)是匹配及時更新的,所以可以通過模型來改善系統(tǒng)設計的討論和溝通
  • 捕獲領域知識 :可以加強領域?qū)<覍ο到y(tǒng)的直接影響,通過模型還可以幫助組織進行知識管理
  • Business-IT對齊 :關注問題域,關聯(lián)技術(shù)域,一種業(yè)務和IT對齊的方法
  • 模型作為一種長期的核心資產(chǎn) :高級別的模型作為核心資產(chǎn)管理起來,只有在業(yè)務需求變更時才會進行更改
  • 推遲技術(shù)決策 :應用開發(fā)在早期關注業(yè)務邏輯問題,對于技術(shù)選擇可以推遲到后期
  • 提供及時的文檔 :通過模型可以生成很多同步的文檔,利于與不同涉眾進行交流

經(jīng)濟模型

模型驅(qū)動開發(fā)(MDD)介紹

模型驅(qū)動開發(fā)(MDD)介紹

MDD方法相關

模型驅(qū)動開發(fā)(MDD)介紹

模型驅(qū)動開發(fā)(MDD)的一些參考資料

MDE - Model Driven Engineering - reference guide

參考: Model Driven Development – Future or Failure of Software Development

模型驅(qū)動開發(fā)(MDD)介紹


更多文章、技術(shù)交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

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

【本文對您有幫助就好】

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

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 昌吉市| 新龙县| 苍梧县| 罗平县| 桦川县| 白朗县| 丽水市| 宁远县| 贡山| 昌图县| 衡山县| 广水市| 大新县| 壤塘县| 获嘉县| 东乡| 芦山县| 延川县| 会宁县| 本溪市| 四会市| 三江| 渭源县| 肥乡县| 廉江市| 万荣县| 岚皋县| 昭苏县| 巴林左旗| 淅川县| 温宿县| 扬州市| 丰都县| 邛崃市| 南阳市| 云林县| 徐汇区| 云和县| 苗栗市| 淄博市| 个旧市|