PRESS RELEASE (技術)
2012年2月29日
株式会社富士通研究所
世界初! アプリケーション資産活用のためのソフトウェア地図作成技術を開発
ソフトウェアの機能構造を自動的に地図化することで、業務アプリケーションの直観的な現状把握が可能に
株式会社富士通研究所(注1)は、複雑で大規模な業務アプリケーションから、業務のための機能や役割を実現している「機能コンポーネント」を自動発見するマイニング技術と、発見した機能コンポーネントにもとづいてアプリケーションの構造を可視化するソフトウェア地図の自動作成技術を開発しました。
本技術により、アプリケーション資産から機能コンポーネントを自動発見することが可能になり、その構造情報を直観的な理解が可能な市街地図のモデルとして表現し、さらに各種の統計情報とともに表示できます。
この地図を用いることで、業務アプリケーションの現状分析作業に要する時間を短縮し、ビジネスの変化に対してシステムをより迅速に対応させることが可能となります。たとえば、クラウドへの移行作業などに必要となる初期分析の期間も約半分に短縮でき、有効なIT施策の可能性を広げます。
開発の背景
企業で運用されている業務アプリケーションは、長年の開発保守により多機能化・複雑化している一方で、加速していくビジネス環境の変化に追随するためには、改善・強化・移行などに迅速な意思決定を要求されます。そのために必要なアプリケーションの分析と現状把握は、従来は人手による分析を多大な時間をかけて行ってきました。
機能間の関係を分析するにはプログラムとデータの依存関係を正確に追跡することが必要になりますが、業務アプリケーションの多くはプログラム数千本から数万本に及ぶ大規模なものであり、分析に多くの時間がかかるとともに、分析結果を集約する際に担当者へのヒアリングを行うなどの主観的・経験的な情報に頼る必要がありました。
課題
業務アプリケーションの開発当初は全体構造が整然として分類も正しく行われていますが、長年のビジネスの変化に合わせてアプリケーションに機能追加や変更を行っていくうちに、設計当初に想定した構造の範疇に収まらない機能追加や構造を越えた業務間の依存関係が作り込まれていきます。このため、単純に当初の構造に従った整理を行うだけでは現状把握には不十分です。また、アプリケーションへの投資を行うために有用な情報、たとえば、アプリケーション上で高い頻度で利用されている箇所はどこか、品質に課題を抱える個所はどこか、拡張性は十分担保されているか、などの情報は個々のプログラムを見るだけでは把握できません。アプリケーションの全体像と構造を、より抽象化された高レベルの視点から直観的に理解しやすい形で提示する必要があります。
開発した技術
今回、アプリケーション資産を分析することにより、業務のための機能や役割を実現している「機能コンポーネント」を自動発見するマイニング技術と、発見した機能コンポーネントにもとづいてアプリケーションの全体像を地図として可視化する技術を開発しました(図1)。
開発した技術の特長は以下の通りです。
- アプリケーション資産のみの分析により、従来は人手で行っていた機能単位の特定と切り出しを自動実行
機能を実現する上での重要度に応じてプログラム間とデータ間の依存関係をスコアリングし、ソフトウェア全体を対象にしてマイニングを行うことによりソフトウェアアーキテクチャを復元する技術を開発したことで、機能コンポーネントを自動的に発見し、アプリケーションを分割・整理することが可能になります。
- アプリケーションの構造を多次元分析情報と併せて、直観的な理解が可能な市街地モデルで地図化
発見した機能コンポーネントを二次元上に配置し、市街地をモデルにした地図の形式で表示します(図2)。さらに各街区(機能コンポーネント)、建物(プログラム)の粒度でプログラム複雑度や修正頻度、利用頻度情報などを三次元で可視化することで、直観的な理解や品質評価を容易にします(図3)。
図1 ソフトウェア地図の作成ステップ
図2 ソフトウェア地図の例
図3 ソフトウェア地図の利用例
効果
今回開発した技術を用いることで、これまで困難だったアプリケーションの現状把握を短期間で直観的に実現できます。たとえば、当社が提供している資産分析サービス(注2)では3ヶ月程度の詳細な分析を実施して現状把握に必要な情報を作成しますが、本技術を応用した場合、1.5ヶ月程度の簡易分析でも現状把握が可能になると見込んでいます。
また、ソフトウェア地図は経営者・開発者・運用者などさまざまなレベルのステークホルダーの意思疎通のツールとしても役立ちます。この地図の上で各プログラムや機能コンポーネントごとの複雑度や障害発生頻度、修正頻度などの品質評価情報、利用頻度情報などを可視化することで、問題箇所を機能単位で概観でき、開発者でなくても状況の理解や対策の立案ができるようになります。
さらに本技術を継続的に適用することで、経年変化に基づいて将来の品質予測や改善計画立案が可能になります。設計時の構造と現状とのギャップを分析して構造を適正化し保守性を維持する、有用な機能コンポーネントを抽出して再利用するなどの応用も容易になります。
今後
さまざまな業種・言語の業務システムの分析に適用し、実用化に向けた検証を行っていきます。
商標について
記載されている製品名などの固有名詞は、各社の商標または登録商標です。
以上
注釈
- 注1 株式会社富士通研究所:
- 代表取締役社長 富田達夫、本社 神奈川県川崎市。
- 注2 資産分析サービス:
- 現状保有しているアプリケーション資産の全体規模、稼働/未稼働状況、類似性を見える化するサービス。
本件に関するお問い合わせ
株式会社富士通研究所
ソフトウェアシステム研究所 ソフトウェアイノベーション研究部
044-754-2675(直通)
soft-crit@ml.labs.fujitsu.com
プレスリリースに記載された製品の価格、仕様、サービス内容、お問い合わせ先などは、発表日現在のものです。その後予告なしに変更されることがあります。あらかじめご了承ください。