UMLモデルのXMIによる交換

UModelは、業界標準のXMI形式でモデルのインポートとエクスポートをサポートしており、UMLとの互換性を最大限に高めています。UModelは、最新のXMIバージョンであるXMI 2.4に対応しており、他のアプリケーションで作成されたUMLモデルを記述したXMIファイルをインポートしたり、UModelプロジェクトをエクスポートしたりすることができます。

業界標準のXMIインポート/エクスポート機能をサポートすることで、UModelは大規模な開発チームにおいてもUMLの利点を最大限に活用できる機会を提供します。高価で扱いにくい従来のUMLツールに代わる、または補完する形で、UModelを導入することができます。また、チームメンバーは、モデル実行やデバッグツールなど、プロジェクト全体で必要とされない特殊なUMLアドオンとUModelプロジェクトを共有するために、XMIエクスポートを利用できます。

XMI 2.4は、最新のUML 2.4規格に対応しており、さらにUML 2.0、UML 2.1、UML 2.2、およびUML 2.3との互換性も備えています。UModelは、あらゆるUML 2バージョンで記述されたモデルを含むXMIファイルをインポートできます。

XMIファイルの使用方法

UModelにXMIファイルを正常にインポートすると、新しいUMLプロジェクトが作成されます。このプロジェクトでは、各要素が完全に編集可能であり、まるでUModelで最初から作成されたプロジェクトであるかのように扱えます。図を開いて、内容や関連性を確認することができます。

Altova UModelを使用したXMIモデルの相互変換。

また、新しい機能を追加したり、既存の機能を修正したりすることも可能です。その後、コードを生成したり、更新されたプロジェクトを再度XMI形式でエクスポートしたりすることができます。

バージョン管理システム対応。

UModelは、ソースコード管理システムを完全にサポートしています。なぜなら、ソースコード管理システムは、ソフトウェア開発プロジェクトの品質を維持するために不可欠なツールだからです。

Altova UModelにおけるソースコード管理機能について。

UModelで作成または変更されたプロジェクトファイルやソースコードファイルは、UModelのファイルインターフェースやコード生成インターフェースを通じて、直接チェックアウトおよびチェックインが可能です。その後のコード生成時には、実際に変更されたソースコードファイルのみがチェックアウトされます。

UModelのソースコード管理メニューからは、ソースコード管理機能にアクセスでき、最新版の取得、ファイルのチェックアウト/チェックイン、およびソースコード管理の変更履歴の確認などが可能です。

UModelおよびその他のAltova製品でサポートされているソースコード管理システムの一覧は、こちらをクリックしてご確認ください。

EclipseおよびMicrosoftとの連携機能。® Visual Studio®

UModelは、EclipseやVisual Studioとの連携機能を備えており、ソフトウェアプロジェクトを開発する際に、UMLによるソフトウェアモデルとソースコード編集画面を同じ開発環境内で表示し、スムーズに切り替えることができます。

どちらの開発環境においても、UModelプロジェクトとソースコード間の自動的なリアルタイム同期機能により、UMLソフトウェアモデルまたはソースコードエディターのいずれを使用しても、常に最新のプロジェクト状況を確認しながら作業できます。いずれかのウィンドウで行った変更は、すぐに別のウィンドウにも反映されます。

さらに、UModel Enterprise Editionは、EclipseやVisual Studioと連携することで、それぞれのIDEに組み込まれているバージョン管理機能を利用し、バージョン管理システムをサポートします。

UModelは、Eclipseのバージョン4.3、4.4、4.5、および4.6、ならびにVisual Studio 2017、Visual Studio 2015、Visual Studio 2013、Visual Studio 2010、Visual Studio 2008、またはVisual Studio 2005との連携に対応しています。UModelのEclipseおよびVisual Studio連携モジュールは、UModel Enterprise EditionとUModel Professional Editionの両方で、UModelのダウンロードページから無料で利用できます。

UModel スクリプトエディタ

UModelには、統合されたスクリプト環境とフォームエディターが搭載されており、これらを利用することで、UModelをチームの開発スタイルに合わせてカスタマイズすることができます。スクリプト環境は、UModelの機能をカスタマイズしたり、繰り返し行う作業を自動化したりすることで、生産性の向上に貢献します。

Altova UModelをカスタムスクリプトで自動化する。

UModelのスクリプト環境を活用して、一連の操作を自動化したり、マクロを作成・保存したり、カスタムメニューやポップアップフォームを作成したり、アプリケーションのイベントに対する独自の応答を定義するイベントハンドラを作成したりすることができます。

スクリプト環境とフォームエディターは、Microsoftの技術を使用しています。® .NET Frameworkに対応しており、バージョン2.0から4.0までサポートしています。多数の.NETアセンブリが標準で含まれており、必要に応じて追加することも可能です。スクリプトエディタはJScriptとVBScriptにも対応しており、インタラクティブなフォームエディタ、およびマクロのテストとデバッグ機能も備えています。

UModelアプリケーションプログラミングインターフェース(API)

UModelには、高度な自動化インターフェースと、アプリケーションの機能やUMLデータ構造に直接アクセスできる低レベルAPIが搭載されています。

UModelのアプリケーションプログラミングインターフェース(API)は、プログラマーがUModelの機能をリモートで利用し、UModelプロジェクトを操作するための完全なサポートを提供します。UModelのCOMベースのAPIとJavaベースのAPIは、どちらもUModelの完全な自動制御と、UMLのデータ構造、クラス、インターフェース、および図の操作を可能にします。例えば、外部アプリケーションがUModelを起動し、UModelプロジェクトを開き、UML図内の要素を強調表示することで、対象アプリケーションの実行をシミュレートするような、視覚的な追跡システムを提供することができます。

自動化APIを使用することで、UModelを外部から操作し、UMLモデルを更新したり、コードを再生成したり、既存のコードをリバースエンジニアリングしたりすることが、外部イベントに応じて可能になります。このAPIを使用すると、ユーザーは特別な機能を追加するUModelプラグインを開発できます。これらのプラグインは、カスタムウィンドウやダイアログボックスを備えており、「カスタマイズ」メニューを通じてUModelにインストールできます。また、このAPIを使用すると、外部スクリプトを通じてUModelを操作することも可能です。例えば、特定の時間にUModelを起動し、ソースコードライブラリをリバースエンジニアリングした後、プロジェクトのHTMLドキュメントを作成することができます。

モデル駆動型アーキテクチャ

UModelは、プラットフォームに依存しないモデルと、プロジェクトメニューにある「モデル変換」機能を通じて、Model Driven Architecture (MDA)をサポートします。この機能を使用すると、C#、Visual Basic、Java、データベース、およびXSDに関連するすべてのコード要素を、これらの形式間で相互に変換できます。

Altova UModelにおけるモデル駆動型アーキテクチャ。

モデル駆動型アーキテクチャ(MDA)は、Object Management Groupが管理するUML(統一モデリング言語)を適用するための規格と手法の集合です。MDAでは、ソフトウェアプロジェクトのUMLモデルは、特定のプログラミング言語の詳細を考慮することなく、完全に記述できるプラットフォームに依存しないモデル(PIM)として扱われます。この開発戦略により、ソフトウェアアーキテクとその他の開発者は、特定のプログラミング言語の特性ではなく、対象となる分野で必要とされるロジックに集中することができます。

モデル駆動型アーキテクチャ(MDA)は、プラットフォームに依存しないモデルを用いたソフトウェア開発手法であり、主に以下の2つの利点があります。設計段階において、開発者はソフトウェア言語の詳細やその差異を考慮する必要がなくなり、また、既存のUModelプロジェクトを、あるソースコード言語から別の言語に変換することができます。例えば、C#アプリケーションのUMLモデルを、JavaまたはVisual Basicのプロジェクトに変換することが可能です。

モデル変換は、既存のソースコードから逆コンパイルされたプロジェクトにも適用できます。例えば、既存のJavaアプリケーションをUModelで逆コンパイルし、その後、Visual Basicのクラスを生成するように変換することができます。他にも、さまざまな応用が可能です。

モデル変換の際、UModelは、ソースとターゲットの間でデータ型を対応付け、言語間の差異に対応します。タイプマッピングダイアログを使用すると、タイプマッピングの設定を確認したり、必要に応じて編集したりすることができます。また、UModelは、変換されたプロジェクトに、ターゲット言語のプロファイルを自動的に追加します。

継続的な変換パラメータ。

この変換パラダイムは、既存の変換を更新し、その更新内容を特定のターゲットモデルに統合することにも適用されます。変換パラメータは、モデル内の「モデル変換プロファイル」に格納されます。この変換プロファイルは、コード生成(フォワードエンジニアリング)の前に、またはリバースエンジニアリングの後に、自動的に変換を実行するように設定できます。これにより、あるターゲット言語の要素を、別の言語のモデル要素の変更に基づいて更新することができます。

この機能により、UModelは、クロスプラットフォームでモデルが進化するにつれて、複数のソースコード言語のメンテナンス作業の多くを自動化することができます。

チームワーク支援

UModelには、チームが協力して大規模なプロジェクトを成功させるための機能が備わっています。UMLソフトウェアモデリングの視覚的な利点は、より多くの開発者がプロジェクトに取り組むほど増大します。なぜなら、サブプロジェクトの視覚的な表現が、開発チーム全体のコミュニケーションを促進するからです。

UModelは、大規模なプロジェクトに取り組むチームをサポートするため、プロジェクトを複数のサブプロジェクトに分割することができます。個々の開発者は、単一のモデルの異なる部分を同時に編集でき、各サブプロジェクトを個別にソース管理システムに追加できます。最上位のプロジェクトは、サブプロジェクトが組織化されているプロジェクトであり、メインプロジェクトと呼ばれます。サブプロジェクトは、個別のUModelプロジェクトファイルとして保存されたUMLパッケージであり、ファイル拡張子は*.umpです。

既存のプロジェクトは、規模が拡大し、より多くの開発者が参加するにつれて、サブプロジェクトに分割することができます。あるいは、独立したチームが新しいUModelプロジェクトファイルを作成し、それらを後で新しいメインプロジェクトのサブプロジェクトとして統合することも可能です。

UModelを使用すると、特定の開発スタイルに縛られることなく、サブプロジェクトを整理できます。お客様のチームの好みに合わせて、以下のいずれかの方法でサブプロジェクトを構成できます。 * サブプロジェクトを階層構造を持たずに、並列に配置する。 * サブプロジェクトを階層的に構成する。この場合、サブプロジェクトの中にさらにサブプロジェクトを配置することができます。 * メインプロジェクト内で、各サブプロジェクトを編集可能にする。 * メインプロジェクト内で、各サブプロジェクトを読み取り専用にする。

コード生成時、またはコードからモデルを更新する際に、すべてのサブプロジェクトが処理されます。単一のプロジェクトファイルであっても、複数の編集可能なサブプロジェクトで構成されていても、処理方法に違いはありません。

3方向プロジェクト統合。

もし、チームメンバーが同じプロジェクトファイルのコピーに対して個別に変更を加える場合、または複数のプロジェクトファイルを統合する場合、UModelのプロジェクト統合機能を使用することで、それらの変更をまとめて一つの結果としてまとめることができます。

Altova UModelにおけるチーム連携機能。

サブプロジェクトのドキュメント

UModelの「ドキュメント生成」機能を使用すると、ユーザーは必要に応じて、生成されるドキュメントにサブプロジェクトを含めることができます。これにより、個々の開発者は自分の担当するサブプロジェクトのドキュメントを個別に作成でき、プロジェクトマネージャーは、アプリケーション全体のドキュメントを自動的に生成することができます。