「ソフトウェアレビューの価値を再考する」セミナーに参加した

昨日はS-openミニセッション「ソフトウェアレビューの価値を再考する〜なぜ形骸化するのか?」に参加してきた。講師は奈良先端科学技術大学院大学の森崎先生。ソフトウェア開発の現場でレビューに困る人は多いらしく(私もその1人だ)、会場には50人近い人たちが集まっていた。

講演では森崎先生の軽妙な語り口で、レビューの場で起こりがちな問題の例やその対策案、学会での研究動向、海外での事例、研究での苦労話などが紹介され大いに盛り上がるセミナーとなった。レビューというプロセスそのものが極端に重視されているせいか、膨大なチェックリストを使ってレビューすることを余儀なくされている現場の例など、開発者の悲鳴が聞こえてきそうな話もあった。

限られた時間やリソースの中でレビューの効果を上げようと思ったら、それなりの視点や方法論が必要になってくるはずだ。講演の中では、どのような観点でレビューを行うか?という優先順位付けを行う重要性など、具体的な改善策が説明されていた。例えば、仕様書の誤字脱字を指摘するとレビューする方は「気分がスカッとする」ものの、レビューとしての実質的な効果は実はほとんど無きに等しい。どのような指摘なら「後工程で起こりえた問題を未然に防ぐ」ことが出来るのか、レビューとしての存在意義に気がつく必要があるようだ。

以下、講演内容より抜粋。

  • ソフトウェア開発では、他での成功事例を流用して同じように成功するとは限らない。だから自分たちに合った方法を取り入れることが必要。
  • レビューが形骸化してしまう原因の例
    • 事前合意の不備:何が指摘されるのか分からない、レビューは儀式という認識
    • コミュニケーションの問題:日頃の恨みを晴らす攻撃手段、余計なことは言わない文化
    • リソースの問題:対象が多すぎる、指摘されても手遅れ
  • テスト工程で発見されたら修正コストが高い問題を、レビューの場で指摘すると効果が大きい。
  • レビューする人よりも、レビューの方向性をチェックするモデレータの存在の方が実は大切。
  • リスクが高い仕様に対して優先的にレビューすると効果的になるようだ。(リスクベースドリーディング)

なお、スウェーデンやドイツでは、ソフトウェア工学の研究者と実際の開発現場との相互互助の関係が出来つつあると言う。残念ながら日本国内では「研究者に聞けば何かわかる」状況になっていないので、今後は開発現場に関わりつつ現場に即した方法を模索していきたいという森崎先生のコメントも有った。日々の業務に忙しい開発者も、自分の抱えている問題や蓄積したデータを持って行けば、何か適切な助言をもらえるような状況になって欲しいものだと思う。

本来はレビューを行うことで効率的に欠陥を取り除けるはずですよね。なぜそのような本来の効果が発揮されないのでしょうか?そのような疑問を解消すべく、ソフトウェアレビューの第一人者である森崎先生をお招きしてソフトウェアレビューの本来のあり方についてご講演頂きます。

9月3日 S-open主催「ソフトウェアレビューの価値を再考する」(大阪府)



関連