本記事では、プロジェクトチームで輪読会を実施して得た学びと成果物を紹介します。
対象書籍 : 「この1冊でよくわかるソフトウェアテストの教科書 [増補改訂 第2版]」
ソフトウェアテストにおける基本的な考え方、テストケースの作り方、テスト技法などが、初心者にもわかりやすくまとめられた書籍です。
目次
- 輪読会の目的
- 輪読会の進め方
- 学び
- アウトプット
- 今後の方針
- まとめ
1. 輪読会の目的
今回の輪読会の目的は、現行業務における品質の向上です。
私たちは、一つのシステムを数年単位で保守運用しているため、積み重ねてきたデバッグの実施方法や観点があります。
しかし、新しいメンバーが参画した際に、改めてデバッグに関する説明をしようとした際に、体系的にまとめて伝えることができず、感覚的な視点でデバッグをしていたのではないかという問題にぶつかりました。
これをきっかけに、品質に対して見落としがあるのではないかという懸念も生まれ、メンバー全員で改めて知識のインプットを図ることにしました。
輪読会という方法をとることによって、メンバーの参画時期問わず、全員が品質について体系的に学び、改めて知識の整理ができるようになることを目指しました。そして、その学びをアウトプットして業務に反映することで、システムの品質向上を図ります。
2. 輪読会の進め方
(1) 事前に指定された範囲を読む
(2) 各メンバーが共通ページに以下を記載する
- 気になった文章のピックアップ
- 疑問点
- 自分で調べて解消した疑問点も含む
- 感想
- 業務で活かせそうなこと
- 気がついたこと
- 新しく知ったこと
(3) 週一回の輪読会(20~40分程度)で内容を共有する
(4) 共有した内容を各回の担当者がまとめる
(5) 書籍から得た知識をアウトプットする
3. 学び
- システムリリース当初は「魅力的品質」だった機能も、時間が経つと「当たり前品質」になってきて要望も増えてくる
- ユーザーからの要望/意見を取り入れることで、「魅力的品質」に近づくことができるかもしれない
- 内部構造を踏まえた上で、各機能のテスト時に何を確認するべきか意識することが大切である
- 自動テストの追加時に、機能確認テスト・制御フローテスト・データフローテストに分類してテストを抽出することで、目的によって実施すべき試験を明確にすることができ、テストの質が向上すると考えられる
- 作業者によって精度にばらつきが出てしまうことを防ぐためには、テストドキュメントを充実させる必要がある
- 具体的に必要な資料としては以下をピックアップした
- 機能一覧表:機能の把握・影響範囲の検討という点で、作成するメリットが大きい
- テスト観点一覧表:テスト抽出の漏れが軽減される
- 具体的に必要な資料としては以下をピックアップした
- デバッグ開始前に、あらかじめ重点的に確認すべき項目を整理しておくことが重要である
4. アウトプット
学びを成果物としてアウトプットするにあたり、以下の方針を定めました。
- 業務効率を向上させるものを作成する
- お客様にとってもメリットあるものを作成する
- 叩き台でも良いのでまずは作成し、必要に応じてブラッシュアップを重ねる
これらの方針に則って、書籍で挙げられたドキュメントの中から以下を実際に作成することとしました。
- 機能一覧表
- 機能の把握、影響範囲の検討に有用と判断
- テスト観点一覧表
- 単体テストや結合テストでの観点漏れを防止するほか、デバッグ前の各テスト項目における重要度の判断時に役立つ
- バグ検出タイミングを整理した資料
- バグ検出のタイミングに対する課題を可視化し、改善を図る
- 本資料はこれまでにも作成していたが、改めて重要性を認識
5. 今後の方針
(1)輪読会の継続
(2)アウトプットを増やす
(3)資料をブラッシュアップする
(4)成果物を実際に活用して品質担保し、サービスの質の向上に繋げる
6. まとめ
輪読会では、書籍の内容を自分たちの業務に当てはめながら、現状における改善点や取り入れるべきことは何かを意識して読み進めました。
その結果、現在の運用や品質担保の状況を客観的に振り返り、開発者向けの資料、特に機能一覧やテスト観点の一覧といった、テスト漏れを防止するための資料に改善の余地があるという課題を見つけることができました。
また、バグ検出タイミングを整理した資料のような、これまでにも作成していたドキュメントの重要性を改めて認識する機会となりました。
今後は成果物の作成を通じて先述した課題を解消し、より高い品質でのサービス提供を目指していきます。