---
title: "第5部：Altova UModelを用いたレガシーアプリケーションの分析"
date: "2009-06-15"
tags: 
  - "altova"
  - "c"
  - "java"
  - "missionkit"
  - "software-modeling"
  - "software-tools"
  - "uml"
  - "uml-tool"
  - "umodel"
  - "visual-basic"
description: Altova UModelを使用して、既存のアプリケーションを分析する方法について学びましょう。具体的には、UML図やドキュメントを生成し、ソフトウェアモデリングの効率を向上させる方法を解説します。
---
Status: #blog

Tags:  #altova #c #java #missionkit #software-modeling #software-tools #uml #uml-tool #umodel #visual-basic

Categories: [Altova](/blog/ja/category/altova.md) 
# 第5部：Altova UModelを用いたレガシーアプリケーションの分析

このシリーズの[第1部](https://www.altova.com/blog/2009/04/analyzing-legacy-application-with.html)、[第2部](https://www.altova.com/blog/2009/04/part-2-analyzing-legacy-application.html)、[第3部](https://www.altova.com/blog/2009/05/part-3-analyzing-legacy-application.html)、および[第4部](https://www.altova.com/blog/2009/05/part-4-analyzing-legacy-application.html)では、Altova UModelの[リバースエンジニアリング](https://www.altova.com/ja/features_reverse_engineer.html)機能を活用し、ATM銀行シミュレーションアプリケーションのUML図を作成しました。既存のアーキテクチャを分析した後、新しい機能である「手数料」を計画し、実装しました。今回、サイズを縮小したものの、更新された[シーケンス図](https://www.altova.com/ja/features_sequence_diagram.html)は、引き出し処理のシーケンスを視覚的に表現しており、ソースコードの複雑な論理構造を明確に示しています。 

[![UMLシーケンス図（縮小表示）](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image1_thumb.gif "UML sequence diagram (reduced size)")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image1.gif) 

今朝、コーヒーマシンのところでたまたま、ATM製品の担当者の方にお会いしました。「あなたはもう1ヶ月以上、そのATMのコードに取り組んでいるのですね」と彼は言いました。「私があなたが達成した成果をいつ見ることができるのでしょうか？」

この要望に応えるために、UModelの[ドキュメント生成](https://www.altova.com/ja/features_umodel_documentation.html)機能を活用できます。UModelは、当社のプロジェクトに合わせて、HTML、Microsoft Word、またはRTF形式で、自動的にカスタマイズされたドキュメントを作成します。

「ドキュメント生成」ダイアログボックスの「含める」タブを使用すると、どの種類の図を含めるかを選択でき、また、各図の要素タイプを詳細に展開することで、レポートの記述レベルを指定できます。 

[![Altova UModel ドキュメント生成ダイアログボックス](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image2_thumb.gif "Altova UModel Generate Documentation dialog box")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image2.gif) 

概要レポートを作成する場合、すべての種類の図を選択できます。また、要素リストから「クラス」を選択することで、アプリケーション内のクラスに関する詳細情報を表示できます。UModelは、さらに「クラスから派生した要素も追加しますか？」と尋ねてくれます。 

[![Altova UModel ドキュメント生成アシスタント](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image3_thumb.gif "Altova UModel Generate Documentation helper")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image3.gif) 

他のドキュメントのパラメータ、例えばフォントやサイズなどを選択または調整した後、UModelは数秒でレポートを生成します。レポートの最初のページの上部には、図表の索引と、要素の別の索引が記載されています。それぞれの索引項目は、ドキュメント内の特定の箇所（ブックマーク）へのハイパーリンクとして機能しています。 

[![Altova UModel プロジェクトのドキュメント（Word形式）](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image4_thumb.gif "Altova UModel project documentation in Word format")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image4.gif) 

どの形式を選択するにしても、生成されるレポートは完全に編集可能です。例えば、ページ番号やドキュメント作成日を記録したフッターを追加することができます。UModelが作成したフッターの情報を利用して、独自のフッターを作成することも可能です。

[![Altova UModel プロジェクトのドキュメントに関する説明文](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image5_thumb.gif "Altova UModel project documentation tag line")](https://www.altova.com/blog/images/Part5AnalyzingaLegacyApplicationwithAlto_C719/image5.gif) 

弊社の完成したレポートには、既存のATMアプリケーションを記述するすべてのUML図が含まれています。詳細なクラス図では、各クラスの属性とメソッドが示されています。さらに、各クラスの説明には、クラス間の関係を示す階層図と、すべてのクラス間の関連性をまとめたリストが付属しています。プロジェクトの進展に伴い、このレポートを簡単に更新することができます。また、UModelのコマンドライン機能やAPIを活用して、プロジェクトドキュメントの作成を自動化することも可能です。あるいは、レポートの.html版を開発チームのWikiに添付することもできます。しかし、現時点では、レポートをATM製品担当者にメールで送付するだけです。 

## 結論
Altova UModelを使ったレガシーアプリケーションの分析という演習にご参加いただき、。今回のシリーズはここで終了となりますが、実際のATMアプリケーションにおいては、まだまだ多くの作業が残されています。例えば、ユーザーが手数料を受け入れるか、引き出しをキャンセルするかを選択できる機能は、まだ実装されていません。また、ジェネリクス、アノテーション、列挙型など、より新しいJavaの機能を使って、既存のコードを更新することも可能です。 

UMLの経験がある方であれば、新しいテクニックをいくつかご紹介できたことを願っています。もし、UMLを試したことがない開発者の方であれば、ビジュアルなソフトウェアモデリングの魅力と利点をご理解いただけたことを願っています。いずれにしても、もしご自身のプロジェクトでさらに進みたいとお考えでしたら、[こちらをクリックして](https://www.altova.com/ja/download/umodel/uml_tool_enterprise.html)、フル機能の無料トライアル版である[Altova UModel](https://www.altova.com/ja/products/umodel/uml_tool.html)をダウンロードしてください。
