Rosarium

実践事例 / 公開物 / case

第2章 対象システムの変更を妨げる構造と知識の不足を整理する

対象となる約3万行のC#業務アプリケーションの状況を整理する。不要コード・連携責務・処理フロー・設計意図が分かりにくい問題から、仕様と知識を復元する必要性を示す。

公開:最終更新:

更新履歴

  1. 公開

ai / 設計 / リファクタリング / レガシー / rag

読む目的: 自然言語サービス・RAG・ナレッジ / AI × ソフトウェア開発 / 事例・実務

このBookの目次(全12章)
  1. 全体構成
  2. 第1章 仕様を答えられない状態から、復元すべき情報を決める
  3. 第2章 対象システムの変更を妨げる構造と知識の不足を整理する
  4. 第3章 調査の起点を作るため、ファイルとクラスの役割を整理する
  5. 第4章 コードから仕様と依存関係を復元する
  6. 第5章 処理の流れを復元し、変更影響を追えるようにする
  7. 第6章 人が読む仕様とAIが使うKnowledgeを分ける
  8. 第7章 UI操作と内部処理を結び付け、操作結果を追えるようにする
  9. 第8章 復元したKnowledgeを、根拠を確認できるQAへつなぐ
  10. 第9章 正しさ・出典・回答拒否から、QAの利用可否を評価する
  11. 第10章 評価結果をKnowledgeと回答範囲の改善へ戻す
  12. 第11章 仕様変更に追従できるKnowledge更新フローを作る
  13. 第12章 QAで暗号処理を調査し、人間の変更判断へつなぐ
目次
  1. 変更の前に、使われている処理と責務を把握する
  2. 不足していたのはコードではなく、対応関係だった

現在位置:第2章・全12章

変更の前に、使われている処理と責務を把握する

対象はWindows上で動く、約3万行のC#業務アプリケーションだった。単体で完結せず、他システムとも連携していた。長年の改修で、廃止機能のコード、呼び出されない関数、参照されない処理が残り、どこが現在も使われているか分かりにくかった。

処理フローや連携先との責任範囲も俯瞰できない。改修履歴は局所的な変更が中心で、影響範囲が分からないことが、大きな変更を進めにくくしていた。

不足していたのはコードではなく、対応関係だった

実装は存在しているが、どの機能を担い、どの条件で動き、他システムへ何を渡すかが共有されていなかった。設計意図や過去の判断理由も、現担当者が参照できる形には揃っていない。

そこで、ソースコードから構造・振る舞い・責任を抽出し、UI、実動作、既存資料、担当者の知識と照合する方針とした。資料が不足している部分を、AIの推測だけで埋めることはしない。

調査対象をこのように捉えると、古いコードを新しい技術へ置き換える前に、何を調べ、何を維持するかを説明できる。次章では、ファイルとクラスの位置から調査を始められるよう、プロジェクトの地図を作る。