闇雲なドキュメント化は避けるべし
保守開発業務の「属人化」は、プロジェクトのコスト増加や品質低下など多くの問題を招きます。「脱・属人化」を実現するためには、保守担当者がもつ暗黙知の整理や、プログラムの解析などを通してシステムの要求や設計などの情報をドキュメント化(形式知化)し、他のメンバーと情報共有する必要があります。
だからといって、システムのすべての情報をドキュメント化するのはコストや効率を考えても現実的ではありません。よって、保守開発に効果が高い情報だけを優先してドキュメント化することがポイントです。
コストメリットが高いものとしては「CRUD表」「ジョブフロー」 や、保守引継ぎのキャッチアップ資料として前回紹介した成果物群があります。今回は、「CRUD表」の効用と作成方法について解説します。なお、「ジョブフロー」については、弊社(オージス総研)が運営するオンラインマガジン「オブジェクトの広場」にて解説する予定です。
影響調査のコスト、品質に貢献するCRUD表
様々なドキュメントの中でも、特にCRUD表が保守開発に有用なのはなぜでしょうか。端的に言えば、保守開発プロセスの中で最もコストがかかり、ミスが致命的な品質低下に直結する「影響調査」を進める上で、CRUD表は非常に役立つためです。
CRUD表とは、機能とテーブルの関係を表形式で表現したドキュメントです。一般的には、システムの各機能がテーブルに対してどのようにアクセスしているかをまとめます。生成(Create)、参照(Read)、更新(Update)、削除(Delete)の頭文字をとってCRUD表と読んでいます。(図1)。
ただし、影響調査ではここまで詳細なCRUD表は要りません。機能とテーブルのI/Oの関係を表現したり(図2)、単に両者の関係の有無だけを表現しているものでも十分です(図3)。