システムの分析と調査

~システムを手探りで調べていませんか?~

システムの分析と調査

~手探り調査で今後も大丈夫?~

遠くに旅することを想像してみてください。旅の行程を確認するには「地図」を使用しますが、実際に自分が進んでいく方向を確認するには「コンパス」などの道具を使用します。

システム運用もこれと同じです。設計書はシステムを俯瞰するための「地図」となり、様々なツールは現状を知るための「コンパス」となります。「設計書だけ」でも「ツールだけ」でもなく、二つの要素を役割に応じて上手く使いこなすことが、隙のない安定したシステム運用には不可欠と言えます。

機能
フィールドネット
「フィールドネット」はDDSで定義されたフィールドがRPGソース内でどのように使用されているかを検索するための機能です。

「フィールドネット」は、例えばフィールドの桁数を変更する際の影響範囲を調べる場合などに力を発揮します。検索結果は一覧形式で表示されます。明細行を選択することで実際のコードを画面上で素早く確認できますので、修正がコードに影響を与えるかを手早く判断できます。また表示中のコードを日本語化することで、より具体的な処理内容を分かりやすくひも解くことができます。もちろん検索結果を印刷したり、CSVファイルなどにエクスポートする機能も用意されていますので、2次的な資料を作成する場合などにも活用することもできます。

機能
変数ネット
「変数ネット」はRPGソースについてフィールドの使用状況を検索する機能ためのです。

「変数ネット」を使用すると、RPGソース内で使用されているフィールドの定義元や使用状況を詳しく調べることができます。「フィールドネット」と同様に、画面上で実際にフィールドが使用されているコードを確認することもできます。検索結果はCSV 形式などにエクスポートできますので、簡単な操作で一覧形式の資料を作成したり、他の資料の元情報として活用することもできます。

機能
フィールド追跡
「フィールド追跡」はRPGソース内で使用された各種フィールドの使用状況を追跡するための機能です。

「フィールド追跡」を使用することで、特定のフィールドについて使用状況を追跡することができます。本機能を活用すると、特定のフィールドと演算関係にあるフィールドについて簡単な操作で調査を進めることができます。

選択されたフィールドの桁数や属性を表示する機能や、指定されたフィールドの参照個所や更新箇所だけを検索する機能、それらの検索結果を履歴として記録し、自由に行き来できる機能などが用意されています。

機能
CRUD図の作成
「CRUD図の作成」はRPGソースに対してCRUD図を作成する機能です。

「CRUD図」とは、ファイルがどのプログラムで「作成(Create)」、「参照(Read)」、「更新(Update)」、「削除(Delete)」されるかをマトリックス形式で表現したものです。それぞれの操作は頭文字を組み合わせてあらわされます。

「CRUD図の作成」を使用すると対象となるRPGソースとDDSファイルについてCRUD図を作成できます。CRUD図は画面で閲覧できるだけでなく、そこから関連する設計書やソースを表示することもできます。もちろんエクスポート機能もありますのでExcelブックなどに保管できます。

機能
RPGソース日本語化
「RPGソース日本語化」はRPGソースに字下げやコメント付加して見やすく表示する機能です。

RPGソースは位置固定で書かれることが多い為、IF文やループ文の開始/終了が分かりづらいという問題があります。またフィールド名の長さに制限があるため、 名前だけを見ても内容を把握しづらいという問題もあります。これらの問題を軽減してプログラムコードを読み解くのを手助けする機能が「RPGソース日本語化」です。

「RPGソース日本語化」では、ソースを日本語化する過程でIF文やループ文について字下げを行って構造を識別しやすくします。またフィールドについては日本語コメントを付加することで内容を把握しやすくします。外部の開発者が作成したプログラムの内容を解析したり、既に担当者のいないプログラムのメンテナンスなどを行う際に力を発揮します。

機能
ソース検索
「ソース検索」は転送済みのメンバーソースに対して文字列検索を行うための機能です。

単純な文字列検索と異なり、複数の条件を設定したり、比較方法を選択できます。また行に対して検索範囲の開始位置・終了位置を設定することができるため、 RPGやDDSなどの位置に意味づけのあるソースに対しても細やかな検索条件を設定することができます。良く使う検索条件については登録しておいて素早く呼び出すこともできます。 検索結果は一覧形式表示され、明細行を選択することで実際のコードを画面上で確認することができます。もちろん結果をエクスポートすることもできます。

機能
ソース比較
「ソース比較」は2つのメンバーソースを比較する機能です。

「ソース比較」を使用すると、2つのソースを比較して違いを視覚的に確認できます。比較に使用するソースはPCに保管されているものだけでなく、IBM iに保管されているものも指定できます。比較結果のサマリーを表示する機能も用意されていますので、全体でどの程度の差異があるかも簡単に確認できます。

「ソース比較」を使用することで、「どのような更新が行われたか?」や「不用意な変更が行われていないか?」などを確認することができます。

機能
辞書閲覧
「辞書閲覧」は言語翻訳で作成された「辞書」を閲覧するための機能です。

閲覧できる情報の多くは、管理資料などで確認することもできますが、管理資料はあくまで静的な資料なので情報の検索には向きません。「辞書閲覧」では条件に従って絞り込みや検索などを簡単に行うことができるので、必要な情報に手早くアクセスできます。もちろんエクスポート機能も用意されていますので、2次的な資料も簡単な操作で作成することができます。

閲覧にはSQLを拡張した定義文を使用します。よく使われる定義文については予め登録されていますが、目的に応じて自由に拡張することもできます。

機能
ファイル使用経路探索
「ファイル使用経路探索」はプログラム階層図と併せてファイルの使用状況を閲覧するための機能です。

例えば何か問題が発生した場合、該当ファイルがどこで更新されているか知りたい場合があります。文字列検索などを使って使用先プログラムを探し出すことはできますが、プログラム間の前後関係は分かりません。このような場合に「ファイル使用経路探索」を使うと、任意のファイルについて使用先プログラムや入出力状況が分かるだけでなく、上流プログラムからどのような経路でプログラムが実行されたかを画面上で確認できます。対象となるファイルは複数指定することができ、更にフィールドに関する検索条件も指定できます。もちろん検索結果はCSVファイルなどにエクスポートできます。

機能
更新履歴検索
「更新履歴検索」はコメントとして入力された更新履歴を検索するための機能です。

従来の開発ではメンバーソース毎の更新履歴をヘッダー部のブロックコメントなどに記述する事が多かったと思います。しかし、せっかく更新履歴を書き込んでも、メンバーソースの編集時に参照する程度で十分活用できていなかったのではないでしょうか。

Trinityでは更新履歴を「制御コメント」と呼ばれる専用形式のコメントとして記述することで、更新履歴をデータベース化して検索する機能が用意されています。これが「更新履歴検索」です。この機能を使用すると、データベース化された更新履歴に対して様々な条件に基づいて検索を行う事ができますので、メンバーソース毎に記述されていた更新履歴をひとつにまとめて有効活用できます。もちろん検索結果はCSVファイルにエクスポートすることもできます。