ユースケース:ドキュメント作成

ドキュメント作成とは、詳細設計書の作成作業のことです。

例えば、何年にも渡ってメンテナンスされたレガシーなコードや、自身が担当していないコードを後任の担当者に引き継ぐとき、また実装中のコードの仕様書を残す場合に、仕様書の作成や修正がおろそかになり、コードだけが修正されてしまうケースがあります。
ここでは、Understandを用いて、手作業を省いた、実践的なドキュメント作成を行う方法をご紹介します。

ドキュメント作成の関連資料はこちら>>

課題

  • ドキュメントがない
  • ドキュメントが更新されておらず、ソースコードの実体と乖離している

原因

ドキュメントの修正ルールがない
例:ソースコードの修正時に、ドキュメントを修正する運用が定着していない

前任の担当者が不在
例:前任の担当者がドキュメントを更新せず異動してしまい作成に工数がかかる

解決策

Understandは、C/C++、Java、VB.NET、C#、Python、JavaScript、TypeScriptなどで開発されたプログラムを高速解析することができます。

Understandは、ビルド環境がなく、コンパイルできないソースコードであっても、ある程度の解析結果を得ることができます。
また、C/C++においては関数ポインターによる関数の呼び出しやポインター変数のアドレス操作の解析も行うことができます。
以下にUnderstandを使った、ドキュメント作成の手順の一部をご紹介いたします。

  1. Understandでソースコードを解析する
  2. Understand APIを利用する
  3. サンプルスクリプトを用いてドキュメントを作成する

1.Understandでソースコードを解析する

ポイント
  • 定期的にドキュメント作成をするためにコマンドラインで解析を行う準備をする

Understandの機能

はじめに、ソースコードをインプットに新規プロジェクトを作成します。
新規プロジェクト作成は、UnderstandのGUIや、コマンドライン(und コマンド)からも実施可能です。プロジェクト作成には、Visual Studioのソリューションファイルをインポートする方法や、gccのビルド結果を元に作成する手段もあります。

2.Understand APIを利用する

ポイント
  • 今回は、Understand APIの中で、Python APIを利用する
  • Understand APIが利用できるライセンス(フローティング with API)を使用する

Understandの機能

ドキュメントの自動作成を実施するためには、(Understand API)というUnderstandが解析したデータベース(UDBファイル)から、任意の情報を抽出するための仕組みを利用します。
ソースコード上に特別な記述をせずとも、以下の情報を抽出することが可能です。

  • 各要素のクロスリファレンス情報
  • 各要素のグラフィカルビュー
  • 各要素のメトリクス情報
  • 各要素のコード内のコメント

Understand APIは、サンプルのスクリプトが用意されており、その仕様やサンプルについては、以下で確認することができます。

%Understandインストールフォルダ%¥scripts


API機能の詳細については、こちらをご参照ください。

3.サンプルスクリプトを用いてドキュメントを作成する

ポイント
  • テクマトリックスが用意したサンプルスクリプトを利用する

Understandの機能

サンプルスクリプトを用いて、ドキュメント作成を行うことができます。
サンプルスクリプトではControl Flow グラフを表示しておりますが、Understandではさまざまな図を表示することが可能です。

関連資料のご案内

過去に開催したソフトウェア品質向上セミナーの講演資料をご案内します。資料は、セミナーにご登壇いただいた企業様の品質向上に関する取り組みをご紹介しています。
資料をご希望の方は、申込フォームよりお申し込みください。

パナソニック アドバンストテクノロジー株式会社様

パナソニック アドバンストテクノロジー株式会社が実践するUnderstandを用いた構造的リスクの効果的な抽出手法とは?

他社開発や受託開発における構造的リスクを抽出するため、Understandを用いた構造解析結果を元にしたメトリクス分析の自動化、リバースエンジニアリングツールの整備し、啓発活動などもおこないながら解析の効率化を図った取り組みについてご紹介いたします。

ソースコード解析ツール Understandに
関するお問い合わせ

  • テクマトリックス株式会社
    東京本社

    ソフトウェアエンジニアリング事業部

    03-4405-7853

メールでのお問い合わせ
scitools-info@techmatrix.co.jp

お問い合わせ

製品についてやテクマトリックスについてなど、
こちらよりお気軽にお問い合わせいただけます。