チーム名:あまがさきてすとくらぶ - jasst.jp ·...

8
テスト設計コンテスト ~コンセプトシート チーム名: あまがさきてすとくらぶ 関西、あまがさきからやってきました! 設計を7割、テストを3割程度考える業務を行っている、 某電機メーカのソフトウェア設計担当課メンバーになります。 昨年からソフトウェアテストについての勉強会を行っております。 JaSST2012東京のテスト設計コンテストを参考に勉強を進めて おりましたので、今回の参加により学びを深めたいです。 テストに対する興味を洗い出し設計とテストを考える! 検討を設計文書にフィードバックしてテストに役立てる! 開発担当者がメンバーに多いので、テストの考え方で開発にも 役立つ手法や考え方を仕様へ展開しようと考えました! 1.「品質目標」を定め、テストの「興味」を集める ⇒ 「Ⅱ」に記載 仕様から「品質目標」をチームで考え、 その内容から「テストに対する興味」を 思いつく限り考えました。 2.設計として必要な情報を整理し仕様へ反映 ⇒ 「Ⅳ」に記載 テストの「興味」毎に、設計にも存在していると良い情報を整理し、 仕様へ反映し、インプット資料を強化しました。 3.設計書からテストまでのトレーサビリティを確保 ⇒ 「Ⅰ」に記載 2.に記載の仕様構成の修正を行うことで、仕様上のIDから、 テスト設計で抽出される試験項目IDを通してのトレーサビリティ、 及び仕様改修時のテスト保守性を確保をする方法を考えました。 東海代表としてがんばります!! JaSST’11 東海への出場も含めた今までのチームで勉強した 歩みを以下にまとめておきます。 今回行うようなテストプロセスを業務では完全には適用出来て いないですが、今回得られた知見をもとに課題や利点などを 明確に把握することで、実際の業務への適用を出来るように したいと考えております。 また、文献に書かれているような手法や技法を実際にいろいろ 試してみたいと考えております! チーム紹介 学習の過程と意気込み テスト設計にあたって テスト技法勉強会 by ソフトウェア テスト技法ドリル 話題沸騰ポット 3色ボールペン ゆもつよメソッド勉強 by ソフトウェア・ テストプレスvol10 JaSST’12 東京 テスト設計 コンテスト出場! 設計思想、アピールポイント ~JaSST’12 東京 テスト設計コンテスト~ JaSST’11 東海 テスト設計 コンテスト出場! 今回のポット仕様書を、システム開発会社が受け付けたという ロールプレイを行います。 開発会社は、「開発部」と「テスト部」に分かれており、要求に応じ た機能仕様の検討を終えたところという想定です。 今回のロールプレイ 胡麻印 要求 USDMを用 いた仕様書 を作成 今回のロールプレイW字モデルで、要求仕様にテスト視 点の検討が反映できるタイミング 開発部 テスト部 付箋を 用いて ブレスト

Upload: others

Post on 11-Jan-2020

2 views

Category:

Documents


0 download

TRANSCRIPT

テスト設計コンテスト ~コンセプトシートチーム名: あまがさきてすとくらぶ

関西、あまがさきからやってきました!設計を7割、テストを3割程度考える業務を行っている、

某電機メーカのソフトウェア設計担当課メンバーになります。昨年からソフトウェアテストについての勉強会を行っております。JaSST2012東京のテスト設計コンテストを参考に勉強を進めて

おりましたので、今回の参加により学びを深めたいです。

テストに対する興味を洗い出し設計とテストを考える!検討を設計文書にフィードバックしてテストに役立てる!

開発担当者がメンバーに多いので、テストの考え方で開発にも役立つ手法や考え方を仕様へ展開しようと考えました!

1.「品質目標」を定め、テストの「興味」を集める ⇒ 「Ⅱ」に記載

仕様から「品質目標」をチームで考え、その内容から「テストに対する興味」を思いつく限り考えました。

2.設計として必要な情報を整理し仕様へ反映 ⇒ 「Ⅳ」に記載

テストの「興味」毎に、設計にも存在していると良い情報を整理し、仕様へ反映し、インプット資料を強化しました。

3.設計書からテストまでのトレーサビリティを確保 ⇒ 「Ⅰ」に記載2.に記載の仕様構成の修正を行うことで、仕様上のIDから、テスト設計で抽出される試験項目IDを通してのトレーサビリティ、

及び仕様改修時のテスト保守性を確保をする方法を考えました。

東海代表としてがんばります!!JaSST’11 東海への出場も含めた今までのチームで勉強した

歩みを以下にまとめておきます。

今回行うようなテストプロセスを業務では完全には適用出来ていないですが、今回得られた知見をもとに課題や利点などを明確に把握することで、実際の業務への適用を出来るようにしたいと考えております。また、文献に書かれているような手法や技法を実際にいろいろ試してみたいと考えております!

チーム紹介

学習の過程と意気込み

テスト設計にあたって

テスト技法勉強会by ソフトウェアテスト技法ドリル

話題沸騰ポット3色ボールペン

ゆもつよメソッド勉強by ソフトウェア・テストプレスvol10

JaSST’12 東京テスト設計

コンテスト出場!

設計思想、アピールポイント

~JaSST’12 東京 テスト設計コンテスト~

JaSST’11 東海テスト設計

コンテスト出場!

今回のポット仕様書を、システム開発会社が受け付けたというロールプレイを行います。開発会社は、「開発部」と「テスト部」に分かれており、要求に応じた機能仕様の検討を終えたところという想定です。

今回のロールプレイ

胡麻印 要求

USDMを用

いた仕様書を作成

今回のロールプレイ:W字モデルで、要求仕様にテスト視点の検討が反映できるタイミング

開発部 テスト部

付箋を用いてブレスト

<要求仕様書01>話題沸騰ポット要求

仕様書“第7版”

<要求仕様書01>話題沸騰ポット要求

仕様書“第7版”仕様書分析仕様書分析

3色ボールペン法

品質目標の定義

品質目標の定義

指摘表指摘表

3色ボールペンマインドマップ

3色ボールペンマインドマップ

品質目標品質目標

見た方が良いもの、テストの興味検討

見た方が良いもの、テストの興味検討

見た方が良いもの見た方が良いもの

テストの興味全てを考える、

分類する

テストの興味全てを考える、

分類する

テストの興味事項すべて(テスト対象、テストカテゴリ

分類込み)

テストの興味事項すべて(テスト対象、テストカテゴリ

分類込み)

仕様に不足している情報で

追加すべきもの

仕様に不足している情報で

追加すべきもの

仕様書を改訂する

仕様書を改訂する

ロジックと状態遷移、競合を検討

ロジックと状態遷移、競合を検討

シナリオ定義書を作成する

シナリオ定義書を作成する

話題沸騰ポットシナリオ定義書

話題沸騰ポットシナリオ定義書

*<要求仕様書01>話題沸騰ポット要求

仕様書“第7版”

*<要求仕様書01>話題沸騰ポット要求

仕様書“第7版”

テスト対象、テストカテゴリ

組合せ表

テスト対象、テストカテゴリ

組合せ表

テスト方針表・マトリクス試験・状態遷移試験

・競合試験・・・

テスト方針表・マトリクス試験・状態遷移試験

・競合試験・・・

テスト方針を検討する

テスト方針を検討する

CEGTest分析結果状態遷移表

競合表

CEGTest分析結果状態遷移表

競合表

<要求仕様書02>話題沸騰ポット

要求仕様書“第8版”

<要求仕様書02>話題沸騰ポット

要求仕様書“第8版”

テスト詳細分析

を実施する

テスト詳細分析

を実施する

テスト分析マトリクス

・仕様・要求

・シナリオ

テスト分析マトリクス

・仕様・要求

・シナリオ

テスト詳細方針表

・状態遷移試験・競合確認試験

・・・

テスト詳細方針表

・状態遷移試験・競合確認試験

・・・

テスト集約とテスト技法による検討を実施する

テスト集約とテスト技法による検討を実施する

テスト集約表テスト集約表

テスト技法検討結果

・デシジョンテーブル・Nスイッチマトリクス

テスト技法検討結果

・デシジョンテーブル・Nスイッチマトリクス

テスト設計書を作成する

テスト設計書を作成する

テスト設計書(最終アウトプット)

テスト設計書(最終アウトプット)

Ⅰ.サマリ:全体プロセス

「テストの興味」 を抽出して、「テスト方針」と「仕様の修正項目」を明確化した!そこから、トレーサビリティ・保守性を確保したテスト詳細設計へ

1/7テストの興味から

全体を考える< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

全体プロセスPFD (Process Flow Diagram)

メリット(今回のプロセスの利点)

Ⅰ.サマリ : 全体プロセスⅡ.テスト要求分析

~アーキテクチャ設計Ⅲ.テスト方針

Ⅳ.仕様の修正、追加検討

Ⅴ.テスト計画 Ⅵ.テスト詳細設計Ⅶ.テスト技法の検討、

特殊試験

②テストアーキテクチャ

③仕様修正追加検討

④テスト詳細設計

①テスト要求分析

①テスト要求分析⇒詳細は「Ⅱ」に記載

②テストアーキテクチャ設計~方針決定⇒詳細は「Ⅱ」と「Ⅲ」に記載

③仕様の修正、追加検討⇒詳細は「Ⅳ」に記載

④テスト詳細設計、テスト技法検討⇒詳細は、「Ⅵ」と「Ⅶ」に記載

プロセスは4つの構成

①テスト要求分析 :テストにおける必要事項を全て洗い出す

②テストアーキテクチャ設計 :組合せによって、テスト方針を確定

③仕様修正、追加検討:テスト視点で仕様書の不足項目を追加検討

④テスト詳細設計 :分析結果をテスト項目へ整理する

・テスト全体を「品質目標」から辿って考えることが出来る

・インプットとなる仕様に対して不足点を明確にして、フィードバック出来る

・仕様に対しての試験トレーサビリティ、試験設計の保守性が確保できる※A:仕様記載のIDから、テストIDが決まる。B:仕様の差分をそのままテスト側へ反映できる

★ポイント★:「品質目標」を設定しテスト方針へ繋げる※付箋を用いて検討

仕様ID 仕様

Pot‐220‐11 XX

Pot‐220‐Ex1(追加) XX

試験ID 項目名

Pot‐220‐11‐Test01 XX

Pot‐220‐Ex1‐Test01 XX

要求仕様書 テスト設計書

※「Ⅱ」、「Ⅲ」の数値は、説明スライドのページNoと対応

※IDによる仕様-テストのトレーサビリティ、保守性

各ページにプロセス詳細を記載

★ポイント★: 「テストの興味」 を洗い出す

★ポイント★: 仕様へのフィードバック

対象

レスポンス

環境

恒温槽を用いた加速劣化試験

仕様適合

H/W

負荷時性能

ポットとしてのシステム

水質

ロジック

連続

競合

H/W性能

タイミング変化

シナリオ(シーン)

振舞い、出力に対するもの

負荷時仕様適合

入力に対するもの

仕様/機能

水温変化の規定

要求

分かりやすさ

状態遷移

電圧、温度、振動・衝撃

テスト

カテゴリ

個別検証

要求仕様に

書かれるもの

外観

特性/精度H/W基本的機能

蓋/貯水部保温性

センサ、ボタン

ヒータ、ポンプ

表示パネル、LED

ガワ(機構部)

給湯開始/供給/停止

範囲内(規格)に収まること

表示部明るさ

H/W依存の可能性を考慮

消費電力

正常系/準正常系

テストの興味全体

対象、カテゴリ整理

テストに対する興味事項 分類ポットとしてのシステム全体要求仕様/機能H/WレスポンスH/W性能ロジック状態遷移競合

シナリオ(シーン)テスト対象(新規作成)

仕様適合連続タイミング変化意地悪特性/精度環境負荷時仕様適合負荷時性能分かりやすさ

外観

恒温槽を用いた加速劣化試験

水質水温変化の規定

テストカテゴリ

個別検証

テスト対象(元仕様から抜粋可能)

テスト対象(仕様に追加)

仕様適合 連続タイミング変化

特性/精度 環境負荷時仕様適合

負荷時性能 分かりやすさ 外観

要求仕様に記載されるもの

要求 マトリクス試験(要求)

- - - - -マトリクス試験

(要求)- -

  仕様/機能 マトリクス試験(仕様)

-マトリクス試験

(仕様)- -

マトリクス試験(仕様)

- - -

H/W マトリクス試験(仕様)

- -マトリクス試験

(シナリオ)基本機能試験

- - - - -

レスポンス マトリクス試験(仕様)

- - - - - - - -

H/W性能 マトリクス試験(仕様)

- -マトリクス試験

(シナリオ)基本機能試験

- - - - -

ロジック マトリクス試験(仕様)

- - - - - - - -

状態遷移 状態遷移試験 - 状態遷移試験 - - - - - -

競合 競合確認試験 - 競合確認試験 - - - - - -

要求仕様に記載されないもの

シナリオ(シーン) マトリクス試験(シナリオ)

マトリクス試験(シナリオ)連続試験

マトリクス試験(シナリオ)

-マトリクス試験

(シナリオ)マトリクス試験

(シナリオ)マトリクス試験

(シナリオ)- -

ポットとしてのシステム全体

- - -基本機能確認試験

恒温槽を用いた加速劣化試験

- -ユーザビリティ

テスト検査基準:外観検査

Ⅱ.テスト要求分析~アーキテクチャ設計

品質目標から 「テストに対する興味事項」 全体を明らかにする。テスト対象とテストカテゴリに整理することで、テスト全体の方針が決まる!

2/7品質目標からテスト方針へ< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

検討の流れ (テストに対する興味事項~方針)

Ⅰ.サマリ : 全体プロセスⅡ.テスト要求分析

~アーキテクチャ設計Ⅲ.テスト方針

Ⅳ.仕様の修正、追加検討

Ⅴ.テスト計画 Ⅵ.テスト詳細設計Ⅶ.テスト技法の検討、

特殊試験

要求仕様書要求仕様書 3色ボールペンマインドマップ

3色ボールペンマインドマップ

品質目標 見た方が良いもの テストに対する興味事項

安全性怪我をしないことやけどをしないこと…

競合タイミング変化環境(電圧、温度、振動・衝撃)…

使用性レスポンスH/W性能…

レスポンスH/W性能…

耐久性 … …… … …

品質目標安全性ユーザにとっての使用性長期使用可能な耐久性量産における品質安定性仕様適合(当たり前品質)

A) 「品質目標」を

明確にした

B) 見た方が良いものを考え、各品質目標に対する「テストに対する興味事項」を洗い出す

C) テストに対する興味事項全体について、

「テスト対象」と「テストカテゴリ」に分類

※興味事項の分類結果

D) マトリクスにて「テスト対象」と「テストカテゴリ」

の組合せを考え、テスト方針を決定した!

テスト対象

テストカテゴリ

テストの方針、タスクが決定!⇒ 「Ⅲ.テスト方針」に決定事項を記載

仕様の不足、改修方針を明確化要求仕様書を改訂、追記する箇所を決定⇒ 「Ⅳ.仕様の修正、追加検討」に記載

「シナリオ定義書」追加作成決定⇒ 「Ⅳ.仕様の修正、追加検討」に記載

テストカテゴリは、ISO9126と

比較して不足項目の確認を実施⇒ 「Ⅲ.テスト方針」に記載

個別の試験項目を抽出※組合せ検討をしない試験を別途管理⇒ 「Ⅶ.テスト技法の検討、特殊試験」に記載

※検討方法 : 品質目標から興味事項へ (例:安全性)

1.「見た方が良いもの」を考える⇒ 怪我や火傷をするリスクを最小限にする、から連想。

2.発生する要因を考える⇒ H/W故障によるもの、人為的なものを階層的に抽出

3.それぞれに対して、テストでの対策を考える⇒ 故障対策のロジック確認、タイミング変化を確認など

4.「テストに対する興味事項」として、整理する

※テストに対する興味事項から、方針決定!

セル交点で必要なテスト方針を抽出し、整理した

⇒「Ⅲ.テスト方針」に詳細を記載

Ⅲ.テスト方針

テストアーキテクチャ設計で決定した組合せを具体化検討して「方針」を決める対象とカテゴリの組合せでまとめ方を検討した結果、12の試験の詳細方針を導き出した

3/7テスト方針で

具体的に見える化< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

Ⅱ.テスト要求分析~アーキテクチャ設計

Ⅲ.テスト方針Ⅳ.仕様の修正、

追加検討Ⅴ.テスト計画 Ⅵ.テスト詳細設計

Ⅶ.テスト技法の検討、特殊試験

Ⅰ.サマリ : 全体プロセス

テストカテゴリのベリファイ

ISO9126:品質特性に基づき

検討抜けが無いか確認

「対象(詳細)」 VS 「カテゴリ」のマトリクス試験を検討

⇒■テスト分析マトリクス ※■はテスト内容のまとめ方

②状態/競合試験

③回帰/基本機能試験

対象とカテゴリの組合せ検討⇒テスト方針決定

テスト対象

テストカテゴリ

④個別試験

・仕様として追加した状態/競合

・タイミングずれを考慮した試験の実施⇒■状態遷移表(Nスイッチ含む)、競合表量産を想定して試験毎に

個別/全数試験を検討

量産を想定した検討

自動試験/全数試験を想定した項目抜粋

⇒■自動試験化を想定 (Ⅷで詳細記載)

検討過程で個別に試験を行った方が良い内容を具体化⇒■ユーザビリティ、加速劣化、水質、水温制御、外観

ホシとり表で観点抜けをチェック

2つのまとめ方針、4分類、12試験

テスト分析マトリクスとそれ以外のまとめ方を組合せで抽出

組合せから大きくマトリクス含め4分類、 12の試験項目を導出

仕様、要求、シナリオの3つの対象

毎にカテゴリの組合せを絞り込んで3種の「テスト分析マトリクス」作成

以下は、テスト分析マトリクス以外がまとめやすいと考え、個別に検討⇒「テスト詳細方針表」としてまとめた!

①テスト分析マトリクス(詳細マトリクス試験)

テスト詳細方針

No. ユースケース アクター 正常シナリオ 準正常シナリオ

U01 沸かす ユーザー

【N-1】【前提条件】保温中かつ給湯中でないこと1.ユーザーは沸騰ボタンを押す。2.ユーザーはランプ(沸騰)を確認する。 →ランプ(沸騰)が点灯する。

【SN-1】【前提条件】適切な水量かつ蓋が開いていること1.ユーザーは蓋を閉じる。2.ユーザーはランプ(沸騰)を確認する。 →ランプ(沸騰)が点灯する。

仕様修正・追加項目(大項目のみ)① H/W性能 (給湯の水量等)

② レスポンス (ボタンの反応等)

③ ロジック ⇒ 「CEGTest」でドメイン分析を実施 (「Ⅶ」に記載)

④ 状態遷移 ⇒ UMLの状態遷移図と表で整理 (「Ⅶ」に記載)

⑤ 競合 ⇒ 競合表を用いて定義を実施 (下記に説明記載)

⑥ 曖昧さのフィードバック ⇒ 3色ボールペン法仕様分析にて

発生した指摘に、要求元をロールプレイした回答検討を行いフィードバック

別途検討資料を追加したもの⑦ シナリオ(シーン) ⇒ 「シナリオ定義書」(下記に説明)を作成

Ⅳ.仕様の修正、追加検討

テスト視点で得られた設計不足点を仕様書へフィードバック⇒改訂第8版を作成あわせて、「シナリオ定義書」でユーザの使用シナリオを定義した。

4/7テスト視点の

仕様検討< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

検討の流れ (仕様修正)

シナリオ定義書

Ⅱ.テスト要求分析~アーキテクチャ設計

Ⅲ.テスト方針Ⅳ.仕様の修正、

追加検討Ⅴ.テスト計画 Ⅵ.テスト詳細設計

Ⅶ.テスト技法の検討、特殊試験

テスト興味事項一覧から検討された仕様修正項目(「Ⅱ」参考)

テスト興味事項一覧から検討された仕様修正項目(「Ⅱ」参考)

3色ボールペン法分析結果(マインドマップで整理)

指摘表※回答入力済み

指摘表※回答入力済み

競合表

「第7版」の仕様を元に検討

検討結果をフィードバックして

「第8版」完成

テスト視点を取り入れた「第8版」を一部の試験では“そのままテスト対象”とする

仕様修正の元となるネタ

Ⅰ.サマリ : 全体プロセス

3.温度制御行為4.温度制御方式

沸騰行為をやめる3条件

4章での記載が不足

パネル表示の桁数?三桁だよね?

4章参照かな?

3.1 沸騰行為

保温行為をやめる4条件

パネル表示の桁数?三桁だよね?

制御方式共通

テーブルの固定値妥当性は?

なぜ表示しない?

沸騰後の3分(カルキ抜き)の根拠は?

四捨五入で整数

3.2 保温行為

制御周期の分解能は?

保温ランプ点灯→沸騰ランプ消灯

沸騰行為を止めたあとの繊維先が不明確。どこいくねん!

操作量は、周期時間中のヒータON時間の割合を%で示す

沸騰までの時間、保温までの時間(性能要求が必要)

目標温度に達しない場合、永遠に制御し続ける?

蓋を閉じて温度測定が必要、制御実施状態を確認が必要

サーミスタ100℃ → さらに3分加熱

どれくらいの時間でモード移行するか?

治具などが必要

この方式を確認する方法を確立しなければいけない?

PID制御方式

3分間の根拠は?

操作量0㌫

温度測定が困難

保温行為を止めたあとの繊維先が不明確。どこいくねん!

温度の精度を記載してあるほうがよい

保温モード変更時に対象のモード温度に変更するか?

カルキ抜き完了→沸騰行為終了、保温

保温ボタンがない

PIDの制御量を予めテーブル化して使用

温度のムラはないか?サーミスタの場所、方法は適切化?

容量の記載がない

特にミルクモードへの遷移が致命的

どのケースでどの制御方式を適用する?

PID制御方式

四捨五入で整数

各係数をきちんと定義(可変の場合は条件も)

水位センサについては不要か?

目標温度ON/OFF方式

終的に加熱をやめたことの確認は?どうする?

蓋ON⇒沸騰状態(温度表示)⇒水位センサ全てOFF⇒アイドルへの遷移(温度表示せず)を繰り返す状態が発生する。

3分間加熱中の過熱停止条件

アイドルになるまでの性能要求

周期時間?

一度沸騰しないとこのモードに遷移しない

すべての水位センサOFF条件は、1つの水位センサがONになった場合に満足されない。危険!!

表示窓にはサーミスタ温度

テーブル方式は未使用?

上限は?100℃以上もありうる?

必要なスペックの記載がないため、要求仕様書へ反映が必要!!!!!

表示窓にはサーミスタの温度

試験方法

すべての水位センサOFF条件は、

1つの水位センサがONになった場合に満足されない。危険!!

沸騰ランプ点灯→保温ランプ消灯

沸騰行為はON/OFF制御、保温行為はPID制御 温度のムラはないか?サーミスタの場所、方法は適切化?

制御式で、その周期の制御量⊿M(%)を算出して使用

コンセントを繋いですぐ・・・

沸点が100℃でない場所では永遠と加熱が終わらない?

(温度制御テーブル方式)

H/Wレベルの個体差をパラメータで吸収

上限は?100℃以上もありうる?

水量、外気温などによってテーブル入れ替えは不要?

この方式を確認する方法を確立しなければいけない?

アイドル中止判断

温度表示が点滅するが?

温度が低ければ100%、高ければ0%

さらに蓋を閉じている状態だと思うのではじめの状態を明確に

他状態へ遷移する条件が蓋センサonだけだが他には?

3.3 アイドル

エラー状態からの復帰はどのようにするのか?

目標温度ON/OFF方式

表示窓

100%と0%のみ使用

沸騰状態になってもすぐ中止するのか?

温度の振れ幅に規格はある?

話題沸騰ポット

3~4章

1.H/W構成

境界は含むのか?

満水センサ

エッジでとるのか?状態でとるのか?

S/Wで検知するのか?

ヒーター

on/of fの2値

起動時、蓋がしまっているといつまでも沸騰しないのでは?

操作パネル

of fにする条件の記載がない

単位?

ヒータ異常

ポンプ

内部構成

色表示?

満水センサがonで、第n位センサoffの場合、どう扱うのか?

デフォルトonで、どのタイミングでoffにするのか?

デフォルト表示?

温度表示 整数値?

異常の判定は?

蓋センサ

S/W

音は固定?

分解能

低水位は?

温度の単位は?

おそらく含む

on/offの2値

第n位水位センサ

外観

ステップ値は?

水温

電動制御?

デフォルト値 (H /W)の記載がある!

p.12

H /W故障検知はどうするのか記載がない

お湯が空になったときにアラーム?音? 安全設計あるのか?

状態でとる?

-10~150℃

on/of fの2値

操作パネル部

上下限値は?

片手で操作できること

どのくらいの量を出す?

○○kHzブザー音2.操作要求仕様

使用の環境条件が記載ない

連続押し

セット方法

0:00

給湯中の定義が不明

それ以外?

0~60分

上下さかさまだとどうなるのか?

セット完了後、1秒後

試験方法はどうする?

2.5解除ボタン

60分設定のために、100ms ec押す×N回

沸かすためのタイマではない。

異常時以外(正常時)

2.2蓋

給湯中に蓋をあけることができる?

音量は?

試験で必要になる

初期のパネル表示は大丈夫か?

セット時の音

リセットボタンがないと困るのでは?

瞬断はどうなる?

全部押しはどうなる?

ボタン

H/Wとのすみわけは?

残念なことにならないか!?

2. 6よりボタンを押している間

以上?未満?

押下間隔

タイマボタンの有効無効の条件

繋いだ直後をどうやって知るのか?

満水時の表示

タイムアップ

初はロックのほうが安全では?

0~60分

押しっぱなし

ブザー音

S/ W仕様として大丈夫か?

ボタンを押して解除/ロック

ONのとき有効

タイマ停止

違和感

コンセントのデフォルト値は?

ユーザーがわからない? ボタンにブザーがない

ロック/ロック解除機能

節約の定義が曖昧。S/Wは何をすれば節約を保証できるのか?

2.1コンセント

3秒経過で判定

ボタン有効条件

総合試験では必要になる

設定値の表示

気圧高いところは?

水位センサー

初期値

設定範囲

センサの数との対応???

長押しで、10分単位で飛ばしながら設定できないの?

タイマボタンを100msec押す

同時押しはどうなる?

水位表示

10分くらいなら我慢できるかも

無効になる条件はこれだけなのか?

3s ec

温度の分解能

水量が適正・異常とは何?

コンセント接続直後

1sec以下の開閉はどうなる?

誤ってお湯が出ないようにする

保温行為はだれが実施する?

無効になっていることがわかるのか?無反応?

タイマ起動

タイマ表示

センサの数は変更される

斜め設置はどうなるのか?

給湯していないとき有効

デフォルト値

2. 8 水位メータ

分単位切りあげ

機能としてあるものもある

沸騰中でも無視して給湯するのでは?

3sec経過後にも、水面が波打っていた場合は考慮されていない

ボタンを押すことで給湯

2.4保温設定ボタン

蓋センサ1s ec以上off

どう試験する?

3秒以上

作動できない条件≠ポンプ停止条件

2.7タイマボタン

定義がない

ヒータ電源ON、温度エラー検知無し、保温行為中

蓋を開けたときは全ボタン無効?

保温中のみ給湯

ほかは音を鳴らした後に、処理起動されるが、ここはタイマセットの後にブザー

2.3沸騰ボタン

0分?

沸騰し続けるか?

カップラーメンを作るときの時間測定を想定

ブザー音

音の種類が必要

2.6給湯ボタン

蓋センサoff

繋いだ直後とは?どれぐらい直後?

4:01でセットすると、6:00になる

ロック解除以外にお湯が出ない条件がある

時間100msec

保温設定ボタン

残り時間の表示でもない

異常って何?

給湯状態

蓋センサー

他の機能と競合しても、1秒後なのか?

3sec同時イベント発生時は?

給湯有効の条件

100℃

温度が低下する際の制御は?何もしない?

空の表示

空の表示と区別しにくい

ユーザがわからず故障扱いにならないか

ボタン有効の条件

【ユーザ観点】

空の表示は 下位インジケータのみ点滅のほうが良い

水量異常、ヒータ電源 OFF、温度エラー検知

蓋センサ

コンセント

悪、あけたまま沸騰してしまう?

温度の制御は誰がやってるの?

インジケータ 4段階

点滅速度早くない?

一旦沸騰してから保温温度に調整するのはどうなのか?(ユーザの待ち時間の観点)

ボタンを押している間のみポンプを作動

このポットは手で注ぐことはできないのか?

ロックとは?

表示上はある

気圧低いところは?

リセット

自動販売機は同時押しは左押し

競合

両方押せる

1分ずつ加算

目的

ロック解除

1s ec

開閉間隔3秒未満では?

途中でポンプ停止

ずっとながおし

ロック解除、水量適正(異常ではない)、蓋センサON

S/Wが温度を見張りながらやる?

どうやって試験する?

話題沸騰ポット

1~2章

3色ボールペン法 とは? ⇒ 仕様書に以下の方針でメモを取りながら読み込む方法

・赤・・・客観的に見て,最も重要な箇所・青・・・客観的に見て,まあ重要な箇所・緑・・・主観的に見て,おもしろい/おかしいと感じた箇所

試験が可能となるように、

対象の仕様項目に定義追加

※引用:ソフトウェアテストPRESS Vol.2(技術評論社)

ユーザーと関連したユースケースの抽出

ユースケースを組合せ、シナリオ(シーン)を構築

U01 U02 U03 U04 U05

シナリオ定義書列見出し:

状態とタイミングを階層化記載行見出し:

・「ユーザの操作」・「システム内部のイベント」・「外乱」

で分類※特にユーザのボタン操作は、

ボタン押下⇒「押す/離す」に

分解して記載

仕様上の「タイミング境界」をもとにして、遷移の「途中状態」を1状態として抽出

ユースケースを抽出し、組合せることで想定される運用シナリオ(シーン)を作成

77

Ⅴ.テスト計画

テスト要求分析~テストアーキテクチャ設計における検討結果を文書化IEEE829 テストプランテンプレートに対応させて記載

5/7IEEE829基準の計画書へ整理< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

Ⅱ.テスト要求分析~アーキテクチャ設計

Ⅲ.テスト方針Ⅳ.仕様の修正、

追加検討Ⅴ.テスト計画 Ⅵ.テスト詳細設計

Ⅶ.テスト技法の検討、特殊試験

Ⅰ.サマリ : 全体プロセス

1.概要2.参考文献3.用語集4.テストアイテム5.テスト分析

(テストする機能、 しない機能)

6.アプローチ7.テスト項目の合否

及び中止判断基準8.テスト成果物9.テストタスク10.環境条件11.スケジュール12.リスクと対策13.承認

試験フェーズ試験ドキュメント量

[頁/KL]

試験項目数

[項目/KL]

検出誤り率

[件/KL]カバレッジ

コンポーネントテスト 5.5 80 2.5 C0/C1カバレッジ 100%

統合テスト 6.0 30 1.0 S0/S1カバレッジ 100%

システムテスト 4.5 20 0.5 ―

「コンポーネントテスト」「統合テスト」「システムテスト」

各テストフェーズでの実施内容を定義

品質目標(Ⅱ参照)と各レベルにおける誤り数目安を記載

製品の機能/性能/不具合に対するリスク:人の怪我、火傷にかかわるような機能=リスク大主要機能/性能項目=リスク中補助機能/保守用機能項目=リスク小

プロセス管理上のリスク:指標値以上の不具合検出率、必須機能/性能の未達、etc.=リスク大開発工程遅れ、テスト工数/コストの圧迫、etc.=リスク中試験用機能の不足、部品単位での品質不足、etc.=リスク小

IEEE829ベースの章立て

テストは要求仕様書、シナリオ定義書(Ⅳ参照)を対象とする

「Ⅱ.テスト要求分析~アーキテクチャ設計」、および 「 Ⅲ.テスト方針」を文書化したもの

H/W:温度計/気圧計等の測定治具

S/W:自動測定/制御ツール等

「Ⅶ.テスト技法の検討、特殊試験」回帰試験の自動化が可能な環境を考慮して記載

テスト詳細設計へ向けた検討結果を記載• テスト分析マトリクス(Ⅲ/Ⅵ参照)• 競合試験/状態遷移試験• その他

「Ⅰ.サマリ:全体プロセス」→ポイント④に記載の部分

Ⅵ.テスト詳細設計

詳細マトリクス分析を活用し、テスト全体を漏れなく検討抽出、発散された項目は、集約管理表を利用してテスト項目へ集約させる

6/7テスト全体と集約を考える< > Amagasaki Test Clubあまがさきてすとくらぶ

~JaSST’12 東京 テスト設計コンテスト~

Ⅱ.テスト要求分析~アーキテクチャ設計

Ⅲ.テスト方針Ⅳ.仕様の修正、

追加検討Ⅴ.テスト計画 Ⅵ.テスト詳細設計

Ⅶ.テスト技法の検討、特殊試験

Ⅰ.サマリ : 全体プロセス

試験項目名 試験概要 合否判定基準 テスト構成/テスト環境 参考手順 使用技法 ース:入力/出 備考2.8 水位メータ

pot280 全体pot280-Test01 正常 水位メータ

状態遷移テスト

水位メータのインジケータ表示の各状態遷移を確認する。状態を遷移させるために、注水・給湯を実施する。

満水、空、故障、n水位の各インジケータ表示が、状態遷移表に従って状態遷移すること。

実機構成を使用する。

各状態に遷移するよう、注水・給湯を実施する。

状態遷移表 テストケース仕様書XXを

参考

前提条件:XXの試験が完了していること

pot280-11 水量異常の判断の詳細は、8.3 水位判定を参照とすること。

pot-280-21 水量が異常でなければ、onになっている第nセンサに対応したインジケータセルのランプを点灯して、水位を表示する。pot-280-21-Test01 正常 正常水位表

示確認満水状態でなく、また、空状態でない場合に、水位が正常と判断し、正常な水位をセルランプに表示できることを確認する。確認は、第1,2,3,4水位で行う。

正常水位(第n水位)が、インジケータセルランプに表示することを確認する。

実機構成を使用する。

第1,2,3,4水位を表示するよう、注水・給湯を実施する。

ドメイン分析境界値分析

試験対象機能/試験ID

<IEEE 829ベース/設計書とテストケース仕様書を統合したテンプレート>

仕様/仕様ID 使用技法 テスト設計書ID

5.2 エラー検知

pot‐520‐11

項目Apot‐520‐11‐Test01

項目B

pot‐280‐22

仕様 仕様ID 仕様適合 特性/精度

5.2 エラー検

知pot‐520‐11 項目A 項目B

集約管理表

テスト設計書

「集約管理表」を用いた検討を行うことで、検討しやすく、トレーサビリティを確保する。

②テスト設計書へ反映する

詳細マトリクス分析で発散させたテスト検討を、テスト設計書では集約させる。

テスト分析マトリクス検討結果

◎意地悪/準正常

◎連続

◎環境

◎負荷時性能

仕様

負荷時仕様適合

特性/精度

タイミング変化

仕様適合

◎◎

シナリオ要求

マトリクス分析でのカテゴリ対応表・・・適応カテゴリに◎

①試験手順ベースで集約可能な複数の試験項目をまとめる

テストカテゴリ分析マトリクス

exit / ヒータをOFFにする

entry / 保温ランプを点灯し、沸騰ランプを消灯する。サーミスタの温度を表示する

保温行為

ミルクモード:保温節約モード:保温

給湯中

高温モード:保温

保温行為停止条件の発生    

※【条件2】、沸騰ボタン押下

もしくは【5章:エラー検知】

参照

※給湯の状態遷移参照

保温ボタン押下 保温ボタン押下

保温ボタン押下

[ミルクモード][高温モード]

[節約モード]

Ⅶ.テスト技法の検討、特殊試験

テスト技法による検討を仕様修正時の追加検討と、テストケース作成時に実施また、回帰試験の自動化やH/Wを含めた特殊試験を考える

7/7効率よく

試験を実施< >

~JaSST’12 東京 テスト設計コンテスト~

Ⅱ.テスト要求分析~アーキテクチャ設計

Ⅲ.テスト方針Ⅳ.仕様の修正、

追加検討Ⅴ.テスト計画 Ⅵ.テスト詳細設計

Ⅶ.テスト技法の検討、特殊試験

Ⅰ.サマリ : 全体プロセス

Amagasaki Test Clubあまがさきてすとくらぶ

自動化方法:①リモート制御用

ケーブルを経由しポット内部の状態を取得/変更

②GP-IB等で測定器を制御

③測定器にて温度、電気特性計測④テストスクリプト記述による

自動制御、OK/NG判定、

試験結果集計

回帰試験の自動化

自動化対象試験項目:・シナリオテスト

→ ユーザーが多用する基本機能を中心としたテストの繰り返し。本内容は、アップデート時のリグレッション試験にも使用する。

・競合テスト→ タイミングのズレをランダム変更しつつ競合表を網羅する

基本機能確認、タイミングを網羅した試験を自動実行

100 V

③測定

①内部状態取得

②制御/測定

④スクリプトによる試験手順記述(例):CtrlPower("ON", 100); //電源ONMeasCur(iVal); //電流測定ChkVal(iVal,iMin,iMax); //規格判定

ドメイン分析:CEGTest(原因結果グラフ)

状態遷移( Nスイッチ / 状態遷移図・表)

①システムの入出力を組み合わせの論理回路として表現

②作成した原因結果グラフからデシジョンテーブルを作成

【Nスイッチ】①遷移前/遷移後状態を、行/列に配置した表を作成②行/列の交点に、遷移するためのイベントを記載③①を一つの行列として、行列積(N-1回)を計算

仕様に追記、ロジックを明確化

状態から状態への遷移経路を複数試験可能

× =

【状態遷移図】①UML状態遷移図を作成し仕様の明確化 ⇒

②①をもとに状態遷移表の作成

その他試験(H/Wを含めた確認など)

試験項目 試験目的 試験方法

加速劣化試験 ポットの保障期間内のH/W寿命を検証する 電圧/温度サイクル変化を定周期で実施

ユーザビリティテスト ユーザにとっての「理解/操作性」を確認する マニュアル無しで使ってもらい、アンケート

水質検査 カルキ抜き処理後の水質を確認する カルキミル(残留塩素測定試薬)による検証

水質検査は、カルキミルやヒヤシンスの成長等で確認

ポット特有の要素確認、ユーザの分かりやすさなどの確認を別途実施