ユースケース:リファクタリング
リファクタリングとは、ソフトウェアの外部の振る舞いを保ちつつ、内部の構造を改善していく作業のことです。
リファクタリングを実施することで、コードの可読性が良くなるだけではなく、修正が簡単になり、バグを見つけやすくなり、開発工数の削減に繋がります。
ここでは、Lattixのアーキテクチャを可視化する仕組みを用いたリファクタリングの方法についてご紹介します。
リファクタリングの関連資料はこちら>>
リファクタリングを実施することで、コードの可読性が良くなるだけではなく、修正が簡単になり、バグを見つけやすくなり、開発工数の削減に繋がります。
ここでは、Lattixのアーキテクチャを可視化する仕組みを用いたリファクタリングの方法についてご紹介します。
リファクタリングの関連資料はこちら>>
課題
- リファクタリングすべき箇所が特定できない
- 周囲にリファクタリングの効果を説明できない
原因
アーキテクチャ設計が適切になされていない例:設計者以外がアーキテクチャを理解できていないため、どこからリファクタリングをすべきか分からない
リファクタリングの効果を定量的に表現するのが難しい
例:ソースコードの修正はコストがかかるため、修正前にリファクタリングの効果を確認したい
解決策
Lattixは、Java、.NET、C/C++アプリケーションのアーキテクチャや、UML、SysMLのモデルを解析し、ソフトウェアの構造と依存関係を可視化する、アーキテクチャ分析ツールです。 リファクタリングすべき箇所が特定できない課題に対して、コードの構造を可視化し、構造上の問題点を把握、リファクタリングのシミュレーションを行います。Lattixを使った、リファクタリングの手順の一部をご紹介いたします。
1.構造上の問題箇所を洗い出しリファクタリング対象を選定する
ポイント
- 設計意図に反する逆依存や循環依存など、構造上の問題点を検出
- 優先的にリファクタリングする対象を選定
2.構造上の問題箇所に対して改修シミュレーションを行う
ポイント
- 構造修正の方法をLattix上でシミュレーション
- シミュレーションの履歴を元にリファクタリングを実施
Lattixの利用
Lattixでは、DSM上でディレクトリ構造やモジュール化改善のシミュレーションを行うことができます。ソースコードを実際に変更する前にLattix上で仮想的にリファクタリングを行い、構造的な問題が期待通りに解消・改善できるかを確認します。
3.リファクタリングの効果を確認する
ポイント
- Lattix上での修正のシミュレーションやリファクタリングの効果を、LattixのDSMやメトリクスから確認する
Lattixの利用
シミュレーションの前後で、「1.構造上の問題箇所を洗い出しリファクタリング対象を選定する」と同様に、DSMから逆依存や循環依存といった構造上の問題点を可視化できます。また、アーキテクチャメトリクスの値からリファクタリングの効果を確認し、リファクタリングの計画に役立てることができます。
関連資料のご案内
富士ゼロックス株式会社様
1000万行のコードと向き合う3つのステップ——富士ゼロックスはリファクタリングにどう取り組んでいるのか
ソフトウェアの大規模化の中で保守性を担保するために、ファイル分割などの大規模リファクタリングに取り組まれております。事例ではLattixのDSMを使った分析とリファクタリングの計画の進め方についてご紹介をいただきました。
-
@ITで記事にしていただきました。
1000万行のコードと向き合う3つのステップ——富士ゼロックスはリファクタリングにどう取り組んでいるのか※外部サイト(@IT)へ移動します。
イベント・セミナー
ニュース・キャンペーン
アーキテクチャ分析ツール Lattixに
関するお問い合わせ
テクマトリックス株式会社
東京本社ソフトウェアエンジニアリング事業部
03-4405-7853
- メールでのお問い合わせ
- lattix-info@techmatrix.co.jp