SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

CodeZineニュース

マサチューセッツ工科大学仕込みのアーキテクチャ分析ツール「Lattix」リリース

  • このエントリーをはてなブックマークに追加

  • このエントリーをはてなブックマークに追加

テクマトリックスは米国Lattix社のアーキテクチャ分析ツール「Lattix」を販売すると発表した。

 テクマトリックスは米国Lattix社のアーキテクチャ分析ツール「Lattix」を販売すると発表した。

 Lattixのベーステクノロジである「DSM」(Dependency Structure Matrix)は、古くから製造業(ボーイング社やBMW社)などで活用されてきたアーキテクチャ分析手法。マサチューセッツ工科大学、ハーバード大学、イリノイ大学などで研究が進められている。「Lattix」はこの手法を世界で初めてソフトウェアに応用したツールである。

米Lattix社 副社長 Frank Waldman氏
米Lattix社 副社長 Frank Waldman氏

 現在、ソフトウェア開発は大規模化・複雑化することにより全体の構成要素(サブシステムやモジュール、関数など)の依存関係を可視化することが難しくなっている。また、多くの人間が開発にかかわることでコーディングルールなどの情報が行き届きにくくなり、モジュール間の相互依存が多発してしまう要因にもなっている。

 Lattixは、クラス図等では表しきれないほどの複雑なモジュール関係をマトリックス図にて表現し、依存関係を一気に見える化する。モジュールが適切な階層構造になっていれば、関係性を表す数字がきれいに対角線で並ぶ。逆に、不適切な階層構造になっていると数字があちこちに出現してしまう。

 例えば下図はAntを分析した例だが、対角線の右上に数字が点在しており、階層関係が適切でないと分析できる。また、3のモジュールは6と9に過度に依存しており、パッケージングし直すことも検討できる。「これをUMLのクラス図で表すといくつもの矢印が行き交い、とても全体を把握できない」とWaldman氏は言う。

Antを分析した例
Antを分析した例

 マトリックス図はJava、C++、.NETの既存ソースコードから生成することが可能。作成したマトリックスを分析したり、操作したりすることで、適切なアーキテクチャを生み出す事ができるようになっている。また、依存関係のルールを決めておくことができ、定期的にソースコードを分析することで規約違反のコーディングを確実に見つけ出すことができる。結果、ソースコードの品質や生産性の向上に役立てられるようになっている。

 Lattixは本日より英語版が出荷され、8月下旬には日本語版がリリースされる。また、テクマトリックスのWebサイトからは体験版をダウンロードすることもできる。

テクマトリックスと米国Lattix社がアーキテクチャ分析ツール「Lattix」の総販売代理店契約を締結

この記事は参考になりましたか?

  • このエントリーをはてなブックマークに追加
この記事の著者

CodeZine編集部(コードジンヘンシュウブ)

CodeZineは、株式会社翔泳社が運営するソフトウェア開発者向けのWebメディアです。「デベロッパーの成長と課題解決に貢献するメディア」をコンセプトに、現場で役立つ最新情報を日々お届けします。

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

この記事は参考になりましたか?

この記事をシェア

  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/1533 2007/07/12 15:20

おすすめ

アクセスランキング

アクセスランキング

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング