【今回の登場人物】
- 大塚先輩:
- 入社10年目。5年前に柏田マネジャーと一緒にソフトウェアテスト事業を立ち上げた。
- 中山君:
- 入社5年目。本連載の主人公。入社以来ソフトウェアテスト一筋。
いよいよテスト分析工程に取り掛かった中山君。でき上がったもの
- 大塚先輩:
- 時間が掛かりそうだから、
会議室に移動しようか。 - 中山君:
- 第3会議室が空いているみたいです。予約しておきます。
急いで自席に戻り会議室を予約してから第3会議室に向かうと、
- 大塚先輩:
- さて、
早速だが指摘をしていこう。たくさんあるので覚悟すること。 - 中山君:
- はい……。
Webを簡単に信じるな
- 大塚先輩:
- まず一番根本的な質問をしよう。そもそもテスト分析という行為をどのように理解している?
- 中山君:
- インターネットで調べると、
『仕様書を入手し、 テスト設計を行うために仕様を理解すること。このとき、 テスト分析結果を文書としてまとめる。』 という解説でした。 - 大塚先輩:
- それはウチでいうところのテスト分析かい?
- 中山君:
- えっ?
…… それは… わかりません…。
中山君は調子よく
- 大塚先輩:
- この前のテスト計画のときにも言ったが、
ウチではどうなのか確認しないとダメだ。 - 大塚先輩:
- Webに落ちている情報は必ずしも正しいものではない。簡単にWebから情報を引っ張ってくる癖は、
今のうちに直しておくほうがいい。 - 中山君:
- すみません…。
- 大塚先輩:
- それから、
できることできないこと、 経験があることないことはちゃんと言うことも必要だ。肝に銘じておきなさい。
社内の決まり事
わからないことがあったときに、
Webが発達したことで、
大切なのは、
中山君は知らないことを調べたところまでは良かったのですが、
できること、できないこと
人間功名心から、
まだメンバとして振る舞っている場合には、
今回の場合、
最新のドキュメントを入手しよう
- 大塚先輩:
- 気を取り直して、
このQ&Aシートを見ていこうか。幸いなことに、 ウチの職場ではテスト分析の結果をQ&Aシートにまとめるということは合っている。
- ※ 大塚先輩たちの職場では、
テスト分析工程のアウトプットとしてQ&Aシートを作成するということになっています。
- 大塚先輩:
- まず、
基本的なところから指摘しよう。この分析に使用したドキュメントのリストがないね。 - 中山君:
- えっ、
仕様書はひとつなんですからリストは作る必要ないんじゃないですか? - 大塚先輩:
- いや、
それは大きな間違いだ。仕様書は必須だ。でも分析のためにはその仕様書に関連する文書なども必要だよ。 - 大塚先輩:
- それからこのテスト分析で使った仕様書はいつのものだい?
- 中山君:
- たしか2週間前にもらったものだったと記憶しています。
- 大塚先輩:
- ドキュメントのバージョンはちゃんと確認したのかい?
- 中山君:
- いえ、
それが最新の物だと思ってました。 - 大塚先輩:
- いいかい、
最初から完璧なドキュメントで作成後に変更がないならそれでもいい。だけど実際はドキュメントの変更は頻繁に起こるんだ。 - 中山君:
- そうか、
古いバージョンのドキュメントで分析を行ったとしても、 それは最新の状況を反映したものではないということですね。
仕様書以外の重要な文書(設計関連)
テスト分析でよく使う、
答えは
設計仕様書にすべてが記載されていればよいのですが、
最新の文書
テスト分析の結果は、
特に設計者とテスト担当者の距離が離れている場合、
できれば要件定義書も入手しよう
- 大塚先輩:
- ところで、
中山君はV字モデルを知っているかな? - 中山君:
- 知っています。
- 大塚先輩:
- システムテストは、
どの工程と対応していただろう? - 中山君:
- 要件定義です。
- 大塚先輩:
- 正解。そこまで言えばわかるだろう、
次に俺が何を言おうとしていると思う? - 中山君:
- え~と、
要件定義書を見ろということでしょうか? - 大塚先輩:
- そういうこと。
仕様書以外の重要な文書(要求関連)
今回、
単に設計仕様書からテストを考えるだけではなく、
システムテストで要件のテストするかどうかは、
一度、
ドキュメントを使う人を考えてみよう
- 大塚先輩:
- このQ&Aシートは誰が使うのかな?
- 中山君:
- 僕らテストチームです。あとは開発者ですね。
- 大塚先輩:
- この表紙でそれがわかるかい? 「SEPIAシステム」
としか書いていないだろう。どこの部署が書いた方がいいと思うな。 - 中山君:
- よくわからないのですが…。
- 大塚先輩:
- SAKIGAKEプロジェクトは開発もテストも当社が請け負っているだろう。だから、
テスト部門が書いたドキュメントなのか、 開発部門が書いたドキュメントなのか、 わかったほうがいいだろうな。 - 中山君:
- なるほど。言われてみればそうですね。
- 大塚先輩:
- それから押印欄があるけれども、
Q&Aシートで使うの? - 中山君:
- いえ、
フォーマットがこのようになっていたので、 そのままにしています。 - 大塚先輩:
- ということは、
中山君はこの押印欄は使うつもりは無いのかな? - 中山君:
- ごめんなさい。深く考えていませんでした。
誰のためのドキュメントなのか確認する
標準化が進んでいる組織では、
読者・
表紙をおろそかにしない
大塚先輩は中山君の今までの言動と表紙から、
もしお客様が
テスト設計の大方針について
- 大塚先輩:
- では、
中身を見てみよう。まずはじめに 『一般的』 ってあるね。一般的って何? - 中山君:
- 普通のテストです。
- 大塚先輩:
- 普通のテストというのは、
どんなテストなんだい。 - 中山君:
- …………。
- 大塚先輩:
- 中山君が答えられなければ、
これを読んだ人も困ってしまうよ。 - 大塚先輩:
- 次にいこうか。構成テストが必要だと書いてあるけれども、
根拠はあるのかい? - 中山君:
- BtoCのサイトなんで、
さまざまな環境のテストが必要だと思ったのですが。 - 大塚先輩:
- このプロジェクトは、
リニューアル案件だろう。今のサイトに来ている人の環境は調べている? - 中山君:
- いえ、
調べていません。 - 大塚先輩:
- 開発の前提はどうなっている?
- 中山君:
- ………すみません。聞いていません。
- 大塚先輩:
- これだけはわかって欲しいんだけど、
中山君が書いた構成テストが必要だというのは間違いじゃない。必要なテストだ。でも、 根拠が必要なんだ。わかるかい? - 中山君:
- はい。
抽象度の高い言葉は注意して使う
組織の中でよく行われるテストというのはありますが、
「一般的なテスト」
方針の根拠を明らかにする
過去のテスト経験に基づいて方針を決めることは多いと思います。リーダに期待されていることのひとつでもあります。しかし、
重視するテストについて
- 大塚先輩:
- 画面ベースのテスト観点を重視するって方針に書いてあるけれども、
重視するテストの中に画面のテストが書いてないね。画面のテストではなくて、 非機能のテストが中心になっているよね。 - 中山君:
- システムテストなので、
非機能を重視しました。 - 大塚先輩:
- それは間違っちゃいないよ。負荷テストやセキュリティテストは重要だ。これらのテストは実施する。気になるのは、
方針と違う内容が書かれていることだ。どうするつもりだい。 - 中山君:
- 画面のテストはやります。
- 大塚先輩:
- だったら重視するテストに入れなくちゃいけないな。でも、
画面のテストは統合テストでもやっているだろう。同じテストをやるのかい? - 中山君:
- いえ、
同じテストじゃありません。業務シナリオにあわせて画面のテストをやります。 - 大塚先輩:
- その内容を反映させてね。
- 大塚先輩:
- 次に、
ネットワーク復旧テストってあるけれども、 何でネットワーク限定なの? - 中山君:
- ネットワークが止まったら大変だからです。
- 大塚先輩:
- サーバ止まってもいいの?
- 中山君:
- いえ、
よくありません。 - 大塚先輩:
- 障害復旧テストの中にサーバ復旧やネットワーク復旧があるんだろう。だったら障害復旧テストでいいんじゃないのかな。
- 中山君:
- そうですね。
方針とのつながりを大切にする
テストの方針と実際に実施するテストの種類が異なってはいけません。方針は方針、
もし、
今回のケースでは、
他のものより具体的である場合には理由が必要
負荷テスト・
復旧テストではなく、
理由が無いのであれば、
分析結果をフィードバックしよう
- 大塚先輩:
- ずいぶんと疑問が多いね。
- 中山君:
- はい、
中には間違いなんじゃないかってものも多くて疑問にしたんです。 - 大塚先輩:
- よし、
それはいいね。仕様バグの恐れがあるものをリストすることは必要だ。それにしてもこの量はすごいね。 - 中山君:
- 頑張ったつもりです!
- 大塚先輩:
- うん、
これだけ見つけられたらいいね。それで、 仕様書の見直しは依頼したかい? - 中山君:
- 見直し依頼… ですか?
- 大塚先輩:
- 高品質な仕様書であればあるほど、
分析結果も高品質になる。逆はどうだ? - 中山君:
- 低品質な仕様書であればあるほど、
分析結果も低品質になります! - 大塚先輩:
- そういうことだ。だからテストリーダとしてしっかりと見直し依頼をする必要がある。
- 中山君:
- 調整とか大変そうですね…。
- 大塚先輩:
- そう、
大変だね。だけど、 それをやらないといいテストはできない。調整を行うのもリーダの大切な仕事なんだ。
疑問点は必ず担当者に確認する
分析作業を進めていく中で、
ですが、
- 中山君:
- そうすると、
見直しの結果、 仕様書が新しくなったらまた分析する必要がありませんか? - 大塚先輩:
- そのとおり。最初に中山君が、
分析作業は複数回行うことを考えて5日と言ったとき、 これは単なる作業遅延のリスクしか考えてないなと思って心配したよ。 - 中山君:
- すみません…。 えぇと、
Q&Aシートそのものも履歴管理しないといけないのかな? - 大塚先輩:
- そのとおり。分析結果自体もバージョンが存在する事を意識する必要があるんだよ。
分析作業は1回で終わらない
多くの場合、
視点を変えると、
また、
分析サマリについて
- 大塚先輩:
- 質問の一番目がわかりづらいな。ネットワークの記述の多さと負荷テストとの間にどんな関係があるんだ。
- 中山君:
- 関係があると思って書いたんですが、
そうではないんですか? - 大塚先輩:
- 負荷テストでどんなテストをやるのかわかっている?
- 中山君:
- 負荷テストツール使って、
負荷をかければいいんですよね。 - 大塚先輩:
- ツールを使って負荷をかけて、
どんな種類のテストをやるんだい。 - 中山君:
- ………
- 大塚先輩:
- そもそも一番目の質問は、
六番目の疑問 『ネットワーク図がない』 と矛盾していないかい?
……
大塚先輩の指摘はまだまだ続きそうです。
これから先の指摘内容は、
おわりに
さて、
今回は、
なお、
大切なことはテスト分析という作業をちゃんと理解しているかどうかです。組織がどのように定義しているかを確認し、
さて、