ソフトウェアの品質を学びまくる2.0

ソフトウェアの品質、テストなどについて学んだことを記録するブログです。旧ブログからゆっくり移行中です。http://blog.livedoor.jp/prjmng/

Wordを使い込んで魔法使いを目指す - ロギング編

 前回は、Microsoft Wordでのドキュメント作成を並行して行う場合の機能、「グループ文書」を紹介しました。

www.kzsuzuki.com 今回のエントリではまた、Wordの標準機能の紹介をします。

ロギングの面倒を減らす

 インスペクションでは、レビューの前に「ロギング」を行うことになっていますね。各レビュアーがレビュー前に、レビュー対象のドキュメントに対する指摘事項を記録しておく作業です。
 ふつうは、指摘事項を記入するシートがExcelで配られて、レビュアーはそこに記入してくるんじゃないでしょうか。
 このExcelシート式がいやなのは、ドキュメントのどこに対する指摘かというのを、ページ番号なり章番号なり、あるいは該当の記述内容なりを転記しなくてはいけない点。ページ番号も章番号も移ろいゆくものだし、ドキュメントの記述を写すのも、何やら虚しいですよね。
 そこでわたしが好きなのは、Wordのメジャー機能・「コメント」です。
 WordとExcelをいちいち行ったり来たりしながら記入するのではなく、指摘事項をそのまま、コメントとして書く。Excelに転記するより100倍速いし、見た目もキレイ。
 元の文書と、それにAさんがコメントを入れたイメージが以下です。
 

01_b382e392

02_47d33276

 コメントのデフォルトのスタイルは、フォントも行間も大きいので、小さく狭く設定しなおしています。指摘事項がたくさんあるなら、これは必須です。
 ちなみに、クイックアクセスツールバーにはもちろん、「コメントの追加」「コメントの削除」のショートカットをおいています。

インスペクションの前に統合する

 さて、このままではWordファイルが各人のもとで枝分かれしていますね。下の絵は、Bさんのロギング結果です。

03_0d3d2e5c

 Wordでは、1つの文書から派生した文書を、元の文書に統合することができます。原型を留めていないくらい文章が変わっているなら統合する意味がありませんが、今回やりたいことは、コメントの統合。本文自体は変わっていないというところがミソです。
 詳しい操作方法はMicrosoftの公式ページに掲載されています。「校閲」リボンの「比較」-「組込み」で、コメントの差分をすべて、元文書に組み込むことができます。結果は以下。

04_545f82ae

 AさんとBさんのコメントが、すべてまとまっていることがわかります。二人が同じ範囲にコメントしていたとしても、別々のコメントとして扱ってくれていますね。
 まあ正直言うと、この統合作業は1ファイル1ファイル行う必要はあるので、レビュアーが多いとちょっと面倒かも知れない。

インスペクションに臨む

 さて、これですべてのレビュアーの指摘事項が組み込まれた、1つのWordドキュメントができました。
 誤字脱字も指摘に含まれているのであれば、レビュイーはそれを事前に修正しておき、インスペクションの場には、本質的な指摘だけを残しておくとよいでしょうね。
 レビュアーはみんなドキュメントに目を通しているはずなので、レビューの場ではドキュメントを紙に印刷せず、プロジェクターに映して進めても問題ないかも知れません。指摘に対する対応を全員で確認しながら進めることができます。
 指摘に対する回答・対応は、このコメントにそのまま書いてしまってもいいでしょう。その場合、指摘事項と回答を分離するための、明示的なセパレターを決めておくと、後から少し楽かも。たとえば「|||」とか。指摘の中で偶然出現することがなさそうな文字列がいいです。

指摘事項を管理する

 さて、Wordの機能を使うことで、Excel記入の手間を省いたわけですが、「レビュー指摘事項は一覧にして管理せよ」がルールになっている組織もあるでしょう。インスペクションでは、指摘事項が正しく対策されているかのフォローも必要です。
 そんなとき、やっぱりExcelシートへの転記は必要になる可能性はあります。Wordのコメントを1つ1つ拾ってExcelに転記していく作業はやりたくない。Wordからコメントを抽出する方法はあるのでしょうか。
 そうサワヤカではないかも知れませんが、少なくともひとつは方法があります。
 まず、Word2007はOpen XML形式とやらで、実態がXMLです。ドキュメントの「*.docx」を「*.zip」に書き換えて、それを通常の圧縮ファイルのように展開してみてください。
 Open XML形式に詳しいわけではないのでボロを出さないようなザックリ説明に終止しますが、展開したフォルダのサブフォルダ「word」の中を見ると、複数のXMLファイルがあることがわかります。
 本文は、「document.xml」に入っています。で、コメントは「comments.xml」に入っているのです。
 ここまで来ればもうわかるね。
 このファイルに、コメントをした人間の名前も、日付時刻も、内容も全部記述されている。XMLからこれらをぶっこ抜くツールを作ってExcelに貼りつけよう!ついでに、コメントで使ったセパレータを利用して、指摘と回答も別の項目として分離しよう!そして、そのツールはわたしに譲ってください

ということで

 ともあれ、「記録が残っている」ことが大事だとしても、「記録する作業」自体が大事なわけじゃないでしょう。ロギングするにしても、気のついたことを気のついた箇所にぱっと書けるコメント機能と、文書統合機能を使って、レビュー作業をもう少し軽くすることができるのでは?という提案でした。