業務フロー図ライブラリ Q Business Process Management

出典: Q-BPM

MDAとは、アプリケーションの機能を図で表し、そのモデル情報によってソフトウェア等を開発する手法。Model Driven Architecture、モデル駆動型アーキテクチャ。

目次

MDAの概要

プラットフォームとは

アプリケーションソフトを作動させる際、基盤となるOSの種類、環境、設定など(例:Windows、UNIX、Mac OS)。

MDAとは、ソースコードではなくモデルを中心にしてソフトウェア等の開発を進めていく手法である。 MDAでは、業務の分析、設計段階でプラットフォームに依存しないモデルを作成する。モデルは特定のプラットフォームに依存しないので、一度作成すれば複数のソフトウェアや個別のプラットフォームに合わせたソフトウェア等を開発する際にも、それぞれに合わせて業務プロセスを分析しモデルを作成する必要はない。モデルが定義されれば、自動的に特定言語や製品へマッピングすることやシステム管理やシステム統合などもモデルを中心として行うことができる。

MDAの大きなメリットは、OSや言語などに依存せず業務をモデル化することで、業務とシステムを別々に変更することが可能になった点である。業務プロセスの実行を支援させるソフトウェア等の機能をコンポーネント化することで、個々の機能をそれぞれ開発・変更できる。
コンポーネント化とは
特定の機能をひとまとまりにし他と組み合わすことで機能を実現できるように、プログラムを構成要素にまとめること。

MDAは、2001年に標準化団体のOMG(Object Management Group)が中心となって提唱したものである。

MDAの手順

通常、ソフトウェア等の開発は業務分析、設計、開発、保守といったサイクルで実行される。MDAでは、

  • CIM・・・ソフトウェア等で自動化する機能をモデル化。計算処理非依存モデル(Computation-Independent Model)。
  • PIM・・・OSや言語に依存しないビジネスモデル。分析段階で作成。プラットフォーム非依存モデル(Platform-Independent Model)。

のモデルを作成し、ソフトウェア等を開発する。

また、PIMを作成した後に、

PSM・・・特定のOSや言語などのプラットフォームに特化したモデル。詳細設計の段階で作成する。プラットフォーム特化モデル(Platform-Specific Model)。

を作成することもある。PIMからPSMへの変換やPSMからソースコードの作成はツールを利用すれば自動で行える。

開発手順は、
QVTとは
ある規格に準拠したモデルから別の規格に準拠するモデルを作成するためにOMGが作成したモデル変換の標準規格。
  1. ユーザの要求や業務分析の結果から、CIMを作成する。
  2. CIMを受けて、ソフトウェア等の機能を利用したビジネスプロセスとしてPIMを作成する。
  3. PIMをベースに個別のプラットフォーム技術に特化したPSMを作成する。
  4. PIMもしくはPSMの情報から、ツールを使って実際のソースコードに変換して実装作業を進めていく。変換に関しては、標準規格のQVTがある。

MDAでは、開発の各工程におけるモデルを独立して規定することで、それぞれのモデルの再利用性を高めている。

MDAを提唱するツールは、大きく二つに分けることができる。

  • データモデリングを中心とした骨格作成を目的としたのもの
  • ビヘイビアモデリングを中心としたコードの自動生成を目的としたもの

MDAで利用される技術

UML

UML(Unified Modeling Language)は、システム開発で用いられるさまざまなモデルの表記法を統一し、標準化した言語。PIMPSMを表現するために利用される。また、特定の用途向けのモデルを交換するためのUMLプロファイルというものもある。

MOF

MOF(Meta Object Facility)は、モデル作成をするためのモデルであり、プログラミング言語で必須となる概念を定義する。

XMI

XMI(XML Metadata Interchange)は、MOFを基盤にしたモデル情報をXML形式に変換する。そして、開発における各ステップで使用するツール間でモデルを交換可能にするための技術仕様。

CWM

CWM(Common Warehose MetaModel)は、データベース(データウェアハウス)用にモデルを定義する技術仕様。

MDAに関する懸案

MDAについて、OMGが提唱している内容と一般に理解されている内容にずれがある。OMGMDAの特徴は、 「視覚的なモデリングツールによって、他の設計ツールやアプリケーション、データベースと情報のやり取りができる」点である。しかし、一方で、一般に理解されている内容は、「モデリングツールによって自動的にコードが作成できソフトウェアなどの開発が行える」というものである。両者の内容には若干の誤差があり、MDAという概念の定義は未だ完全には整備されていない。

この他にも、次のような懸念材料もある。

  • 本来環境に依存しない手法のMDAのツールを提供するベンダーが、各ツールを抱き合わせ顧客の囲い込みを行っている。
  • MDAに関する標準化が遅れている。
  • MDAに基づいた開発には特別のスキルが必要になり、MDAのモデル作成にも大きな労力が必要。
  • 実際にソフトウェア等の開発のためのモデルを作成すると非常に複雑になってしまう。

BPM・BPMNとMDAの関係

MDAに基づいて個々のソフトウェア等が開発されていることにより、BPMによる継続的なプロセス改善はいっそう効果的になる。プロセス内で利用される個々のソフトウェア等がコンポーネント化されていることで、ビジネスプロセスの部分的な変更や新しいソフトウェア等の導入が可能になる。また、プロセス志向でソフトウェア等を開発・導入することも可能になる。

また、UMLとは異なるモデリング記法として、BPMNがある。UMLもBPMNも、どちらもOMGによって提供されているが、BPMNはワークフローとしてビジネスプロセスをモデル化するための表記法の標準とされている。今後、MDAの段階におけるモデルもBPMNに従って作成され、そのモデルをやり取りするようになることが期待される。

関連記事

ツールボックス
リンク元
リンク先の更新状況
アップロード
特別ページ
印刷用バージョン
この版への固定リンク


カテゴリ
一般名詞 | 固有名詞 | 汎用業務プロセス | 基幹系業務プロセス | 支援管理系業務プロセス
Q-BPM Q-BPMでは企業内の業務フローについて、そのサンプルプロセスを幅広く例示し、業務フロー図の作成を支援します。 (※ 業務フロー図: 業務の流れ図/ビジネスダイアグラム/業務プロセス図) 当サイトは世界中の協力者を募るクラウドソース型情報発信サイトであり、サイトコンテンツは原則として「特定条件を満たせば転載可能」な「CC-By SA」と呼ばれるライセンスのもとに公開されます。 株式会社クエステトラ このサイトはBPMに興味があるが多数の書籍や文献、難しい用語の調査に膨大な時間を費やしている世界中のビジネスマンの為に株式会社クエステトラによって始められました。株式会社クエステトラはBPMに興味があるが多くの関連用語を調べたり文献を探したりする手間を減らして、BPMを理解したり、BPMを実際に活用したりする時間を世界中のビジネスマンに貢献したいと思っています。

Powered by MediaWiki CreativeCommons By SA