UML ソフトウェア モデリング ツール

Altova UModel は、高度なソフトウェア開発の出発点となるツールです。

Altova UModel は、はあらゆるプロジェクトにて使用することのできる視覚的なソフトウェアデザインを実現する UML ツールです。アプリケーションモデルを UML により視覚的にデザインし、Java、C++、C#、または Visual Basic .NET コードやプロジェクト ドキュメンテーションを生成することができるほか、既存のプログラムを UML 2 ダイアグラムへリバース エンジニアリングし、デザインの強化を行った後で再度コードを生成することも可能になります。

UModel UML モデリング

Altova UModel は、高度なソフトウェア開発の出発点となるツールです。

Altova UModel は、はあらゆるプロジェクトにて使用することのできる視覚的なソフトウェアデザインを実現する UML ツールです。アプリケーションモデルを UML により視覚的にデザインし、Java、C++、C#、または Visual Basic .NET コードやプロジェクト ドキュメンテーションを生成することができるほか、既存のプログラムを UML 2 ダイアグラムへリバース エンジニアリングし、デザインの強化を行った後で再度コードを生成することも可能になります。

UModel が他の UML ソフトウェア モデリングツールよりも優れている理由?

UModel は、ソースコードエンジニア、 XMI モデルインターチェンジ、ビジネスプロセスモデリングへのサポートなどの高度な機能を視覚的インターフェイスをと結合した、プロジェクトへのチャレンジのためのお手頃価格、かつ強力な UML ツールです。

&customerssay;

“「UModel には非常に満足しています。手頃な価格の UML モデリングツールで、やりたいことをすべて行うことができます!」”

ジャシュアン チテッシュ, ゲーム開発者

“UModel により UML に大当たりの要素がもたらされました!”

ダグ オランド, Precision Objects

全ての UML ダイアグラムのための直感的、かつ視覚的なモデリング

お気に入りのダイアグラムビューと UML ツールを保存して、簡単に効率性と生産性を向上することができます。UModel で作成する UML ダイアグラムはあらゆるカスタマイズを行うことができ、大きさ、位置、色、書体、特徴、線のスタイルといった、UML ダイアグラムにあるすべてがカスタマイズの対象となります。

Altova UModel の直感的な UML モデリング

14あるすべての UML ダイアグラムをサポート

UModel は、14 UML 2.5 ソフトウェア アーキテクチャ ダイアグラムの型と、人気のある SQL データベース内の XML スキーマとテーブルのための UML スタイル ダイアグラムをサポートします。

プロジェクトの要件:

ユースケース図はプロジェクト要件を記述するために、そして開発中アプリケーションのスコープを定義するために使用されるため、しばしばその他のソフトウェア アーキテクチャ図とは切り離されて考えられます。

UML 構造図:

UML 振る舞い図:

プロジェクト内で UML ダイアグラムの型を全て使用するシナリオは少ないですが、優先するソフトウェアモデリング、異なるダイアグラムの型を必要とすると多種のタスクに柔軟性を与えます。作成するダイアグラムに関係なく、 UModel は、UML モデリングを簡単かつ楽しくする視覚的なインターフェイスと便利な機能をお届けします。

視覚的なモデリングのハイライト:

  • 各種ダイアグラムに対応したツールバー
  • 直感的なカラーコーディングとアイコン
  • 入力ヘルパーとスピード編集ボタン
  • 色、フォント、ラインの幅などのためのカスケードスタイル
  • カスタマイズ可能な配置グリッド
  • 要素の大きさや配置などを行うためのレイアウトツールバー
  • 要素をダイアグラムレイヤーへ配置して、個別に表示、または隠す
  • 使用できる数に制限の無い元に戻す/やり直しによりアイデアを気軽に記述

UModel のスタイルウィンドウからすべての表示オプションへ簡単にアクセスすることができ、個々の要素、選択されたグループ、またはカテゴリー全体などの修正を行うことができます。プルダウンメニューにあるパレットから色を選択したり、カスタムカラーを個々の要素や、グループ、ファミリー、またはプロジェクト全体に対して割り当てることができます。

UModel の柔軟なレイアウト オプションにより、非常に分かりやすく論理的なモデルの管理を行うことができるようになります。背景として表示される配置グリッドによりダイアグラム要素の配置を行うことができます。新たに要素を作成するか、既にあるものをメイン描画ペインにて移動すると、補助線が表示され、既に表示されている他の要素と同じ軸に配置することが可能になります。

各ダイアグラムの種類には独自のツールバーが割り当てられており、画面には必要なアイコンだけが表示されます。ツールバー テキスト ラベルの表示を切り替えたり、ツールバーの表示/非表示を選択することもできます。

UModel には、新しいアイデアを模索するための制限のない元に戻す、および、やり直し機能も含まれています!

UModel ヘルパー ウィンドウ

メインダイアグラムの左側にあるヘルパー ウィンドウにより、モデルの構築と確認を行うことができます。モデルツリー、ダイアグラムツリー、またはお気に入りを選択することで、プロジェクトで使用されるパースペクティブを選択することができます。

その他のウィンドウによりプロパティ、スタイル、階層、または概要へ素早くアクセスし、巨大なダイアグラムにおけるナビゲーションとして使用することができます。

UModel ではすべての UML ダイアグラムにあるすべての要素に対してハイパーリンクを追加することができます外部ファイル、Web URL、またはプロジェクト内部にあるその他のダイアグラムに対してハイパーリンクを作成することができます。入力されたテキストはハイパーリンクのポップアップ テキストとして表示されます。

ダイアグラムレイヤー

UModel ではダイアグラムレイヤーがサポートされます。各要素を特定のレイヤーに割り当て、各レイヤーをロックすることにより、変更が適用されないようにすることができます。

概要ヘルパー ウィンドウ

概要ヘルパーウィンドウは、メインのダイアグラムペイン内の大きなダイアグラムの一部であるダイアグラムの縮小されたビューを表示し、表示するには、大きすぎる、複雑なダイアグラムのために素早く移動する手段を提供します。ウィンドウの内部をクリックすることで、目的のパーツが表示されます。

UML モデルからソース コードを生成

に搭載されているコード生成機能により、UML モデル内にあるクラスダイアグラム、シーケンスダイアグラム、およびマシンの状態ダイアグラムをベースにした Java、C#、または Visual Basic .NET のコードを生成し、低レベルのインフラコードを記述する手間を省き、ビジネス ロジックや、プロジェクト全体のアーキテクチャに集中することができるようになります。

UModel は、UML モデルからソース コードを生成

UModel により生成されたソース コードの利用することで、プロジェクトの実装スピードを加速させ、手動で書かれたコードに混入する予期しないエラーや、デバッグを回避することができます。

複数の言語をサポートしたコードの生成

UModel のコード生成機能は、XMLSpy と MapForce で使用されているテクノロジーをベースにしています。Java プロファイルにより、Eclipse、Borland® JBuilder®、その他広く使用されている Java 開発環境にて使用することのできる、業界標準の コードが生成されます。C++ のためのプロファイルは Visual Studio、 Microsoft のために生成された C# コードのためのプロファイル、® Visual C# .NET®、 Borland® C#Builder®、または他の C# 開発環境と互換性があります。Visual Basic .NET のためのプロファイルは VB コード生成をサポートします。

UModel では強力な型のチェックやランタイムによる統合を備えた C# のジェネリックスがサポートされており、C# 3.0 や VB 9.0 にて新たに導入された XML を直接サポートする言語コンストラクタをサポートしています。更に UModel は、名前付き引数、動的プログラミング、C# 4.0 により導入されたラウンドトリップエンジニアリングにおける共変姓と反変姓、バイナリのインポートや、シーケンス図生成などをサポートします。

UModel では Java のジェネリックスが UML のテンプレートとしてサポートされるだけでなく、Java の列挙もサポートされており、要素の型すべてが同一である様な状況で定義を簡単に行ない、コンパイル時にこれら集合における型エラーを発見することができます。

コードの品質を保証するため、UModel にはモデル構文チェッカーが搭載されており、ダイアグラムのエラーや矛盾などを、コード内で複製される前に発見することができます。

クラス図からソース コード内にクラスを生成

UModel は、UML モデル内にあるクラスをベースにした Java、C#、または Visual Basic .NET のコードを生成し、低レベルのインフラコードを記述する手間を省き、ビジネス ロジックや、プロジェクト全体のアーキテクチャに集中することができるようになります。

UModel により生成されたソース コードの利用することで、プロジェクトの実装スピードを加速させ、手動で書かれたコードに混入する予期しないエラーや、デバッグを回避することができます。

シーケンス図からソース コードを生成

UModel では、シーケンス図からクラスの動作が記述されるメソッドのコードを生成することができます。開発者は、コードボディ全体をシーケンスダイアグラムを挿入し、さらなる手書きのコードを必要することとなく、実行可能なアプリケーションを作成することができます。

シーケンス図から新たなデザインをフォワードエンジニアリングするだけではなく、リバース エンジニアリングされた UML シーケンス図の修正と既存コードの更新や、ラウンドトリップエンジニアリングにより、ソース コードまたは UML モデル内にあるシーケンス図になされた変更の同期を行うことが可能になります。

UModel では、Java、C#、C++、Visual Basic 言語にてシーケンス図からコードを生成することができます。

参照されたクラス内でオペレーションを作成

クラスを表す生命線に新たなメッセージを追加すると、メッセージ名を割り当てることができるほか、ターゲットクラスにある既存のオペレーションをプロパティウィンドウから選択することができます。

シーケンス図ツールバーにてオペレーションの自動作成を有効にすると、シーケンス図にて新規メッセージの名前を入力する際に新たなオペレーションを暮らすにて作成することができるようになります。

状態マシン図からコードを生成

UModel では状態マシン図から実行可能なコードを生成することができ、状態マシン図にて記述されたロジックの試験を直ちに開始することが可能になります。

コードはプロジェクトメニュー以下の選択を介して通常のプロジェクトコードの一部として生成することができるほか、状態マシン図のコンテキストメニューから直接生成を行うことができます。

UModel コンテキストメニューでは状態マシン図の構文をチェックするオプションも用意されており、妥当でないコードの生成を回避することができます。

状態マシンコードの生成ダイアログボックスでは、コードの生成設定や、状態マシンコードがプロジェクトのコード生成を行う際に自動的に再生成されるかを指定することができます。

クラス内の変化やオペレーション

クラスまたはインターフェイスの内部にある状態マシン図に新たな遷移を追加すると、メッセージ名を割り当てたり、プロパティウィンドウのオペレーションプルダウンリストを使ってターゲットクラスから既存のオペレーションを割り当てることができます。

状態マシン図ツールバーのオペレーションの自動作成のオプションにより、状態マシンにて新たなオペレーションの名前入力を行うと同時に新たなオペレーションを作成することができるようになります。

状態マシンのサンプルを実行

UModel に同封されているサンプルプロジェクトには C# や Visual Basic に対応した Visual Studio ソリューションファイルや、状態マシンコードの実行をデモする Java テストアプリケーションが含まれており、独自の状態マシン図に対して簡単に適合させることができます。

既存のコードから UML モデルへのリバース エンジニアリング

UModel には Java、C#、C++ と Visual Basic ソースコードおよびバイナリファイルを読み込み UML モデルをテキストベースのプログラムコードに比べ簡単に分析することのできる視覚的な表示にして生成するパワフルなリバースエンジニアリングの機能が搭載されています。

既存のアプリケーションにリバース エンジニアリングを適用したり、従業員、顧客、ベンダーといった既に開発されているクラスライブラリをインポートすることで、プロジェクトをスタートすることもできます。

ソース コードをリバース エンジニアリング

UModel では JBuilder、Eclipse、および NetBeans プロジェクト C++ プロジェクトの Java ソース コード、Microsoft Visual Studio や Borland C# の C# ソース コード、そして Visual Basic .NET プロジェクトファイルをインポートすることができます。

単一のディレクトリ、ディレクトリツリー、またはプロジェクト全体をインポートしたり、インポートしたコードを既存の UModel プロジェクトにマージ、または新たなプロジェクトを作成することができます。

JavaDocs を伴なう Java ソース コードをインポートする際には、各 UML ダイアグラムに対して UModel ドキュメンテーションウィンドウを開くこともできます。同様に、C# や Visual Basic .NET DocComments もドキュメンテーションとしてモデルプロジェクトへインポートすることができます。

Visual Basic .NET コードの UModel リバース エンジニアリングは行ごとに解析され、大文字・小文字の区別を行わず (従って Class1、CLASS1、class1、ClAsS1 はすべて同一のものとして扱われます)、Visual Basic .NET の緩い命名規約と一貫性を持っています。

バイナリファイルをリバース エンジニアリング

UModel では Java、C#、C++、Visual Basic .NET バイナリファイルをインポートすることができます。Java の場合、Java 仮想マシンの仕様に従ったすべてのクラスアーカイブに対して型のインポートがサポートされています。

C# の場合 .NET Framework、.NET Core、および .NET Compact Framework for PocketPC、Smartphone と WindowsCE をターゲットにしたアセンブリに対して型がサポートされています。Visual Basic .NET の場合、ファイル システムから得られる DLL や EXE、グローバルキャッシュ (GAC) から得られるアセンブリ、または MSVS.NET 参照をインポートすることができます。

選択されたバイナリの種類によっては、更にバイナリインポートオプションが利用可能になります。バイナリファイルのインポートの詳細については UModel に内蔵されているヘルプシステムを参照ください。

Reverse Engineer Existing Code with UModel

リバース エンジニアリング後に UML シーケンス図を生成

UModel は UML クラスにリバース エンジニアリングされたソース コード ファイルからシーケンス図を生成することもで、複雑なやり取りの分析に大きく貢献します。

巨大なシーケンス図を自動的に分割し、ハイパーリンクを使ったナビゲーションを行うこともできます。

ラウンドトリップエンジニアリング

プロジェクトが進行するにつれ、使い慣れた IDE を使って、生成された Java、C#、 C++、Visual Basic .NET ソース コードを修正、追加することになります。UModel ラウンドトリップエンジニアリング機能を使えば、修正されたコードを読み取り、対応する UML ダイアグラムを自動的に更新することができます。この同期機能により、コードの修正に対しても関連するモデルを正確に更新することができます。

UModel にてラウンドトリップを行うにあたり、ソースコードや特別なコマンドを必要ありません。これにより、直接編集を行う際に問題となる余計なファイルを含まないコードが完成します。

UModel ラウンドトリップエンジニアリングはスパイラルモデルの開発プロセスをサポートします。更新されたコードによりモデルの同期を行った後でも、コードに更なる変更を加えるか、モデルを修正するかといった選択を自由に行うことができます。同期はいつでも、どちらの方向に対しても、何度でも行うことができます。

他の UModel 機能と同様に、ラウンドトリップエンジニアリングでも回数に制限のない元に戻す/やり直し機能がサポートされます。クリック1つで元に戻すことができるので、ダイアログにあるチェックボックスオプションを自由に試すことができます。

モデルとコードを自動的に同期

UModel の統合機能により、ラウンドトリップエンジニアリングが次のレベルへと昇華されます。UModel Enterprise Edition を Microsof® Visual Studio® や Eclipse 統合開発環境 (IDE) 内部にて使用することで、UModel のプロジェクトをウィンドウで開き、関連するアプリケーション コードをソース コードエディターで開くといった操作を行うことができます。

Round Trip Engineering with UModel

自動同期は一方方向または両方向に対してセットすることができ、UML モデルまたはソース コードに変更が加えられた際に、もう一方の同期を簡単に行うことができます。この機能により、モデル内部で実装またはソース コードにて直接実装されたかに関らず、アプリケーションの変更が与える影響を素早く確認することができます。

UML 内の XML スキーマ

UModel には XML スキーマをサポートする特殊種類のダイアグラムやコード生成機能が搭載されています(要素、単純型、複合型などの) XML スキーマグローバル要素をスキーマ要素属性を持つ属性コンパートメント内のクラスとして表示する、UModel XML スキーマダイアグラムは、 XML スキーマを UML クラスダイアグラムに類似したフォーマットで表示します。

Altova UModel 内の XML スキーマのためのUML スタイルのダイアグラム

UModel では UML の注釈によりスキーマの詳細が表示されますインポートされた XML スキーマは、UModel プロジェクトに対してリバース エンジニアリングされたアプリケーション ソース コードとして扱われます。プロジェクト ファイルと、その内部に含まれるダイアグラムは XML スキーマのモデルであり、スキーマそのものでは無いことに注意してください。

UModel プロジェクトならびに XML スキーマは互いに独立したファイルであるため、スキーマの UML モデルによりスキーマ デザインと実際の XSD ファイル間に新たな抽象化レベルが追加され、チームで開発を行なっているデベロッパーも UML モデルを青写真として使用することで、スキーマの開発を共同で行うことが可能になります。モデル内の XML スキーマ デザインに対して行われた変更は、コードの生成またはプロジェクトの同期を行う際に、XML スキーマ ファイル (*.xsd) へ書き込まれることになります。

UModel では XML スキーマファイルに対してもラウンドトリップエンジニアリングがサポートされています。スキーマが UModel の外部で 修正された場合、UModel プロジェクトメニューコマンドを使って、変更を UModel プロジェクトや XML ダイアグラムへ同期することができます。

XML スキーマ開発

プロジェクトにて新たな XML スキーマをデザインする必要がある場合、XML に対応した業界標準の開発環境である Altova XMLSpy のスキーマ編集ならびに検証機能をご覧ください。

開発チーム内の人間が XMLSpy を使った XML スキーマの開発を行う一方で、他の開発者は XSD ファイルをラウンドトリップエンジニアリングすることによるモデルの同期を行うことができます。プロジェクトにて新たな XML スキーマをデザインする必要がある場合、XML に対応した業界標準の開発環境である Altova XMLSpy のスキーマ編集ならびに検証機能をご覧ください。

UML データベース図

ソフトウェア アプリケーションによりやり取りされるデータの量が増えることで、データベース デザインとその構造がプロジェクトの成否に対して重要な意味を持つようになります。UModel では、リレーショナル データベースにて作成されたテーブルをインポートすることで、UML データベース図を作成することができます。生成された SQL 変更スクリプトによりデータベースの同期することができるほか、新たなデータベース テーブルやリレーションシップを 1 から作成し、SQL CREATE 文を生成することができます。

Altova UModel における UML データベース図

リレーショナル データベース全体を 1 ステップで簡単にインポートすることができるほか、プロジェクトに関連するデータベース内のテーブルだけを選択して、ソフトウェアアプリケーションで使用されるデータ構造のモデリングを行うことができます。

UModel のデータベース図機能では複数のデータベースがサポートされており、SQL の方言やデータ型、その他のデータベースの種類に起因する特殊な機能が自動的に調整されます。UModel ではデータベース要素や、データベース スキーマ、テーブル、ビュー、CHECK 制約、主キー / 外部キー / 一意キー、インデックス、ストアド プロシージャ、関数、トリガー、データベースリレーションシップのアソシエーション、属性を伴うデータベースリレーションシップがサポートされます。

UModel プロジェクト ドキュメンテーション

ドキュメントはソフトウェア開発の重要な一部です。UModel では、HTML、Microsoft Word、またはリッチテキストフォーマット (RTF) 形式によりプロジェクトドキュメンテーションを自動生成することで、この必要なステップを速く処理します。

UModel 内蔵のプロジェクト ドキュメンテーションデザインにより高度な管理や柔軟性、カスタマイズが実現することになります。出力フォーマットとイメージ処理オプションを選択することで、ニーズに沿ったプロジェクト ドキュメンテーションのカスタマイズを行うことができます。クラス間のリレーションシップを伝えるための階層図といった各要素を選択し含めることにより、ドキュメンテーションの詳細度を選択することができます。

カスタマイズされた UML プロジェクトドキュメントを Altova UModel 内で生成

選択された出力フォーマットに関わりなく、ナビゲーションを容易に行うためにドキュメント内にハイパーリンクが UModel により追加されます。生成されたソース コード ファイルへのリンクも含まれます。UModel の内蔵ドキュメンテーションデザインでは各テキストボックスのテキストスタイルや大きさを指定することにより、プロジェクト ドキュメンテーションの外観を変更することもできます。

カスタム化および自動化されたプロジェクトドキュメント

ドキュメンテーションのニーズによりカスタマイズが必要となる場合、SPS スタイルシートを使用することで、Altova StyleVision にて完全にカスタマイズされたドキュメンテーションを作成することができます。

UModel にはサンプル スタイルシートも含まれており、StyleVision の柔軟な機能を使ったカスタマイズを行うことができます。スタイルシートによりイメージやヘッダー、フッター、ブロックや一般的に使用されるテキストなどを UML プロジェクトドキュメンテーションに加えることができます。スタイルシートをベースにしたドキュメンテーションでは PDF 出力もサポートされます。

UModel のドキュメンテーション生成ダイアグラムにてスタイルシートを選択し、StyleVision を使用したカスタムドキュメントの作成を行うことにより、完全に自動化されたワークフローが実現されます。

SysML モデリング

UModel は、組み込み系システムや、複雑なデバイスのモデリングに便利な SysML™ をサポートします。

組込みシステムは入力を受け取り、出力を返しますが、その内部動作は分かりにくいものです。このような背景により、組込みシステムにおけるソフトウェアの開発、テスト、デバッグが困難なものになります。Altova UModel と SysML を使ったソフトウェア モデリングによりトレース可能な青写真が作成され、 開発中のシステムのプラニング、デザイン、ドキュメント化を行う際に非常に役に立ちます。

Altova UModel における SysML モデリング

SysML の図は、システムの要件や物理的な制約を記述する図に、システムの構造を記述するための図、そしてシステムの振る舞いを記述する図と、3 つの種類に分類できます。UModel ではすべての SysML ダイアグラムならびに拡張がサポートされます。

  • SysML 要件図
  • SysML ユースケース図
  • SysML ブロック定義図
  • SysML 内部ブロック図
  • SysML パラメトリック図
  • SysML パッケージ図
  • SysML アクティビティ図
  • SysML シーケンス図
  • SysML 状態マシン図

ビジネス プロセス モデリング表記法 (BPMN)

様々なビジネスの活動をサポートするコミュニケーションが加速する中、ビジネス組織の内部にいるユーザーが読め、簡単に理解することができ、更に複数の関係者や組織が関わる複雑なプロセスを表現することのできる標準モデルシステムが今までに無いほど重要になります。

ビジネスプロセスモデリング表記法はフローチャートに似たダイアグラムを作成するためのグラフィカルな標準仕様で、ビジネスアナリスト、テクニカルデベロッパー、そしてビジネスマネージャーといったすべてのビジネスステークホルダーが、容易に理解することのできるものです。BPMN 標準は UML の管理を行っている組織である Object Management Group (OMG) により運営されています。

Altova UModel における BPMN  モデリング

UModel では BPMN 1.0 ならびに BPMN 2.0 がサポートされ、古いダイアグラムを新たな要素や機能が盛り込まれた BPMN 2.0 標準へアップデートするための方法も提供されます。UModel は当初 UML モデルとして開発された XMI 仕様を通して、他の BPMN ツールとの BPMN モデル交換もサポートしています。

UModel BPMN の機能:

  • BPMN 1.0 と BPMN 2.0 のサポート
  • BPMN 1.0 図を BPMN 2.0 表記法へ更新
  • クリック 1 つでスイムレーンの垂直方向と水平方向を切り替え
  • 要素をダイアグラムレイヤーへ配置して、個別に表示、または隠す
  • 使用できる数に制限の無い元に戻す/やり直しによりアイデアを気軽に記述
  • UML モデリングに BPMN 図を統合することで、ソフトウェアプロジェクトの要件をカバー
  • BPMN 図と要素をプロジェクトのドキュメンテーションに追加

BPMN ビジネスプロセス図

ビジネスプロセス図の要素とルールは UML のアクティビティ図に非常に似ており、UModel の高度な描画ツールを使用することで、UML からビジネスプロセスモデリング表記法への自然な移行を簡単に行うことができます。UModel では内部プロセスの詳細を理解するのに便利な自由形式のダイアグラムを作成することができます。

BPMN 振り付け図

振り付け図では、ビジネスの関係者間におけるやり取りが指定されます。コレオフラフィ図は、関係者の間で情報 (メッセージ) がやり取りされる際に使用されるビジネス書類と考えることもできます。

UModel のコレオフラフィ図ツールバーでは、タスクやイベント、ゲートウェイといったすべての BPMN 2.0 振り付け要素へ素早くアクセスするためのドロップダウンが用意されています。

BPMN コラボレーション図

コラボレーション図では、2 つ以上のプロセス間におけるインタラクションが指定されます。通常、BPMN コラボレーションには、コラボレーションの参加者を表すプールが 2 つ以上表示されます。参加者間のメッセージ交換は、2 つのプールや、プール内のオブジェクトを結んだメッセージフローにより表されます。UModel コラボレーション図ツールバーにより、全てのコラボレーション図の要素に素早くアクセスすることができます。