• 検索結果がありません。

Microsoft PowerPoint - B3-3_差替版.ppt [互換モード]

N/A
N/A
Protected

Academic year: 2021

シェア "Microsoft PowerPoint - B3-3_差替版.ppt [互換モード]"

Copied!
13
0
0

読み込み中.... (全文を見る)

全文

(1)

SQiP2011 B3-3

状態遷移および機能連携に着⽬した

状態遷移および機能連携に着⽬した

業務シナリオテストの新⼿法

2011年9⽉9⽇

株式会社NTTデータ

技術開発本部 プロアクティブ・テスティングCOE

岩⽥ 真治

⾃⼰紹介

所属

株式会社NTTデータ

• 技術開発本部 プロアクティブ・テスティングCOE – 昨年12/1に設⽴ – 先進的な検証・テストサービスの提供とそれを実現するための 研究開発に取り組む専⾨組織

主な業務

社内のソフトウェア開発標準プロセス(TERASOLUNA開発⼿ 順)の開発

Copyright © 2011 NTT DATA CORPORATION 2

順)の開発

• テスト技法やプロセスの研究開発を⾏い、各種ガイドライン やテンプレートなどを整備

ISO/IEC JTC1 SC7 WG26委員として、ソフトウェアテストプ ロセスの国際標準「ISO/IEC 29119」の策定に従事

(2)

⽬次

1 業務シナリオテストにおける課題

1. 業務シナリオテストにおける課題

2. SFマトリクスの提案

3. まとめと今後の課題

Copyright © 2011 NTT DATA CORPORATION 3

1. 業務シナリオテストにおける課題

テストケース作成の流れ

4

業務フロー図を利⽤した結合テスト作成の問題点

(3)

1.1 テストケース作成の流れ

システムテスト

結合テスト

外部設計

要件定義

要件定義書 システムテストケース表

結合テスト

単体テスト

内部設計

外部設計

外部設計書 結合テストケース表 内部設計書 単体テストケース表

Copyright © 2011 NTT DATA CORPORATION 5

コーディング

上流の設計書をもとに

テストケースを作成する

品質の⾼いテストケースを作成

するには、テストに必要な情報が

設計書に記述されていることが重要

1.1 テストケース作成の流れ

システムテスト

結合テスト

外部設計

要件定義

要件定義書 システムテストケース表

結合テスト

外部設計

結合テスト

単体テスト

内部設計

外部設計

外部設計書 結合テストケース表 内部設計書 単体テストケース表

結合テスト

外部設計

外部設計書 結合テストケース表

結合テストレベルの例

業務フロ 図 結合テスト 本発表のターゲット

Copyright © 2011 NTT DATA CORPORATION 6

コーディング

業務フロー図 (業務の仕様) 機能定義書 (単機能の仕様書) 結合テスト ケース表 (機能間連携) 結合テスト ケース表 (単機能)

(4)

【参考】

本発表における「業務」と「機能」の定義

物件登録機能 登録フォーム画⾯ 物件名: 価格 確認画⾯ 物件名:マンションA 価格 完了画⾯ 登録が完

価格: 円 価格: 5000万円 登録しますか? 登録が完了しました。 承認機能 登録 登録 戻る 画像登録

登録

・掲載

メニュー メニュー

Copyright © 2011 NTT DATA CORPORATION 7

承認機能 承認確認画⾯ 承認完了画⾯ Web掲載機能 物件選択画⾯ 掲載完了画⾯

1.2.1 業務フロー図を利⽤した

結合テストケース作成の問題点(1)

登録機能 登録する 結合テスト後半では、設計時に作成した業務フロー図もとにテストケースを作成する(業務シナリオテスト) 承認機能 Web掲載機能 画像登録機能 登録する 登録する 画像登録する ⾮承認 承認する 結合テスト ケース表 (機能間連携) 結合テスト ケース表 (機能間連携) 結合テスト ケース表 (機能間連携) ユースケース テスト技法など 8 Web掲載機能 ただし、上流で業務フロー図を作成する⽬的は 「お客様の業務を分析し、要件を確定させること」

業務フロー図が全ての機能間連携パターンを

網羅しているわけではない

(5)

1.2.2 業務フロー図を利⽤した

結合テストケース作成の問題点(2)

登録機能 登録機能 (追記・修正)登録する ⼀般的な業務フロー図 機能連携パターンテストすべき 承認機能 画像登録機能 登録する 登録する 画像登録する ⾮承認 承認する 承認機能 画像登録機能 画像登録する (追加・修正) ⾮承認 画像登録する (追加・修正)

Copyright © 2011 NTT DATA CORPORATION 9

Web掲載機能 承認する Web掲載機能 業務フロー図では 記述されづらい フロー

⼀般的な業務フロー図をもとにテストケースを作成した場合、

結合テスト(機能間連携)としては

網羅性が⾜りない

課題

⼀般的な業務フロー図をもとにテストケースを作成した場合、

結合テスト(機能間連携)としては

網羅性が⾜りない

課題 1.3 結合テスト(機能間連携)の新⼿法について

業務フロー図

業務フロー図

業務フロー図

結合テストケース表結合テストケース表結合テストケース表網羅性の低い網羅性の低い網羅性の低い

業務フロ 図

業務フロ 図

業務フロ 図

結合テストケ ス表 (機能間連携) 結合テストケ ス表 (機能間連携) 結合テストケ ス表 (機能間連携)

(6)

業務フロー図

業務フロー図

業務フロー図

1.3 結合テスト(機能間連携)の新⼿法について 網羅性の⾼い 結合テストケース表網羅性の⾼い 結合テストケース表網羅性の⾼い 結合テストケース表

業務フロ 図

業務フロ 図

業務フロ 図

結合テストケ ス表 (機能間連携) 結合テストケ ス表 (機能間連携) 結合テストケ ス表 (機能間連携)

新⼿法

SFマトリクス

Copyright © 2011 NTT DATA CORPORATION 11

網羅性の⾼い結合テストケース表(機能間連携)を

作成するための新⼿法「

SFマトリクス

」を提案する

2. SFマトリクスの提案

新⼿法「SFマトリクス」とは

12

SFマトリクスの特徴

SFマトリクスの効果検証

(7)

2.1 機能間連携で重要なポイント

W b掲載 機能間連携の結合テストでは、データの更新に着⽬することが重要 ⇒ある機能がテーブル(またはセッション、ファイルなど)内のデー タを更新することにより、その後に実⾏する機能(連携する機能) の振る舞いが変わる 登録機能 承認機能 Web掲載機能 作成 参照 更新 承認待ち 承認済み 掲載済み 更新 参照 画像登録 機能 承認待ち 更新 参照 物件情報テーブル

Copyright © 2011 NTT DATA CORPORATION 13

データの

状態遷移

に着⽬し、

機能間連携

網羅できる⼿法を開発する

⾮承認

2.2.1 新⼿法「SFマトリクス」(1)

■SFマトリクス(State-based Feature Matrix)

機能実⾏後の「状態」に着⽬し、業務内の2機能連携を網羅する状態遷移表から容易に作成することが可能 2番⽬に実⾏する機能 後機能 前機能・アクション/ 遷移後状態 登録 画像登録 承認 Web掲載 (完了) (開始) 状態なし ○ - - - -登録 登録する 承認待ち ○ ○ ○ - -画像 登録 画像登録する 承認待ち ○ ○ ○ - -登録 する 承認 承認しない承認する 承認済み⾮承認 --- - -Web 掲載 掲載する 掲載済み - - - - ○ 1番⽬に実⾏する 機能・アクション アクション実⾏後の状態遷移 14 連続実⾏の可否 ○:連続して実⾏可 - :連続して実⾏不可

(8)

2.2.2 新⼿法「SFマトリクス」(2)

後機能 登録機能 連続して実⾏可

各セルを確認することで、

連続して実⾏可能な機能

あるかどうかを判断することが可能

後機能 前機能・アクション/ 遷移後状態 登録 画像登録 承認 Web掲載 (完了) (開始) 状態なし ○ - - - -登録 -登録する 承認待ち ○ ○ ○ - -画像 登録 画像登録する 承認待ち ○ ○ ○ - -登録機能 承認機能 登録する 連続して実⾏不可

Copyright © 2011 NTT DATA CORPORATION 15

登録 する 承認 承認する 承認済み ○承認 ○ - ○ -しない ⾮承認 ○ ○ - - -Web 掲載 掲載する 掲載済み - - - - ○ 承認機能 Web掲載 承認しない

×

2.3.1 SFマトリクスの特徴(1)

後機能

SFマトリクスを作成することにより、結合テストで

実施すべき

2機能連携のパターンを全て表現できる

テストすべき 機能連携パターン 後機能 前機能・アクション/ 遷移後状態 登録 画像登録 承認Web掲載 (完了) (開始) 状態なし 1 - - - -登録 -登録する 承認待ち ② 3 4 - -画像 -画像登録 承認 7 登録機能 画像登録 機能 8,11 ⑤ ⑨,⑫ 3 4 1 機能連携パタ ン ⑥ ② 16 登録 する 待ち ⑤ ⑥ 7 - -承認 承認する 承認済み 8 ⑨ - 10 -承認 しない ⾮承認 ⑪ 12 - - -Web 掲載 掲載する 掲載済み - - - - 13 承認機能 Web 掲載機能 7 10 13 業務フロー図では記述されづらい フロー

(9)

2.3.2 SFマトリクスの特徴(2)

それぞれの単機能に閉じた状態遷移を明確化するだけで、

全ての2機能連携が洗い出せる

• 「連続して実⾏できる機能」のパターンを全て洗い出せる 全ての2機能連携を表現できるため 網羅性の⾼い結合テストケ • 全ての2機能連携を表現できるため、網羅性の⾼い結合テストケー ス(機能間網羅)が作成できる • SFマトリクスからフロー図に変換することにより、3機能以上の機 能連携テストも実施できる

表形式のため記述が容易である

• 業務フロー図や状態遷移図のような「図の記述」に⽐べ、作成やレ ビューが容易である

本来連携するべきでない機能を把握できる

• 禁則の仕様通りかをテストできる 17

Copyright © 2011 NTT DATA CORPORATION

2.4 SFマトリクスと状態遷移表との違い

機能 アクション 遷移前状態 登録 画像登録 承認 登録する 画像登録する 承認する しない承認 状態なし 承認待ち - - -後機能 前機能・アクション/ 遷移後状態 登録 画像登録 承認 Web掲載 登録 登録する 承認待ち ○ ○ ○ -画像 画像登録  SFマトリクス状態遷移表(0スイッチ) 機能A 機能D 状態なし 承認待ち 承認待ち 承認待ち 承認待ち 承認 ⾮承認 承認済み 承認待ち 承認待ち - -⾮承認 承認待ち 承認待ち - -画像 登録 画像登録する 承認待ち ○ ○ ○ -承認 承認する 承認済み ○ ○ - ○ 承認 しない ⾮承認 ○ ○ - -SFマトリクスで表現できる範囲

Copyright © 2011 NTT DATA CORPORATION 18

機能 機能B 機能C 機能 機能E 機能F 状態A 状態B 状態遷移表(0スイッチ)で表現できる範囲

(10)

後機能

2.5 上流でのSFマトリクスの活⽤

SFマトリクスを作成することにより、「連携すべき機能」「連携すべきで ない機能」を表形式で整理することができる ⇒ お客様と要件を決定するときのコミュニケーションツールとなる 後機能 前機能・アクション/ 遷移後状態 登録 画像登録 承認 Web掲載 (完了) (開始) 状態なし ○ - - - -登録 -登録する 承認待ち ○ ○ ○ - -画像 登録 画像登録する 承認待ち ○ ○ ○ - -例) 「承認しなかった」後、 再度「承認する」ことは できなくてよいのか? 登録 する 承認 承認する 承認済み ○承認 ○ - ○ -しない ⾮承認 ○ ○ - - -Web 掲載 掲載する 掲載済み - - - - ○ 19

Copyright © 2011 NTT DATA CORPORATION

2.6.1 SFマトリクスの効果検証⽅法

■対象システム:社内システム (購買管理) ■検証⽅法:SFマトリクスを利⽤しない場合の結合テストケースと、 SFマトリクスを利⽤した場合の結合テストケースの 網羅性を⽐較する SFマトリクス を利⽤しない SFマトリクスを利⽤する SFマトリクス 業務フロ 図 SFマトリクス 業務フロー図

網羅性を

⽐較する

結合テスト ケース表 結合テストケース表 機能間連携の洗い出し 機能間連携の洗い出し 20

(11)

業務フロー図をベースにして

洗い出した機能連携パターン SFマトリクスをベースにして洗い出した機能連携パターン

2.6.2 SFマトリクスの効果検証結果

Copyright © 2011 NTT DATA CORPORATION 21

業務フロー図をベースにして 洗い出した機能連携パターン SFマトリクスをベースにして洗い出した機能連携パターン

2.6.2 SFマトリクスの効果検証結果

⾒落としがちな、繰り 返しなどの代替フロー、 途中終了などの例外フ

Copyright © 2011 NTT DATA CORPORATION 22

網羅性の⾼い機能連携パターンを抽出できる

SFマトリクスを利⽤した場合、業務フロー図よりも

ことを確認できた

網羅性の⾼い機能連携パターンを抽出できる

ことを確認できた

ローも抽出できた

(上記の機能連携パターンをもとにした結合テストケースの網羅率、およびソフトウェア 品質への影響は今後検証予定)

(12)

3. まとめと今後の課題

Copyright © 2011 NTT DATA CORPORATION 23

3. まとめと今後の課題

SFマトリクス

状態遷移

に着⽬し、全ての

2機能連携パターンを表現でき

マトリクス

「連携 機能 「連携 機能 全 洗 • 「連携できる機能」、「連携できない機能」を全て洗い出せる

SFマトリクスを利⽤することにより、

網羅性の⾼い結合テ

ストケース

を作成することが可能

今後の課題

SFマトリクスのブラッシュアップ

複雑な状態遷移を含む場合の表現⽅法 • 複雑な状態遷移を含む場合の表現⽅法 • アクターの情報を記述する⽅法

SFマトリクスからのテストケース作成⽅法

• SFマトリクスから結合テストケースを作成する際の詳細な⼿順 (3機能連携など)、および適切なカバレッジの基準 24

(13)

参照

関連したドキュメント

モニター建屋 1回/年 機能確認 シンチレーションサーベイメータ 2台 発電所本館 1回/年 機能確認 電離箱サーベイメータ 19台 免震重要棟他

(アセタミプリド液剤) さくら 50倍 発生初期 5回以内 食入孔に注入 幼虫.

担 当 箇 所 原案提出・調整 承認手続 計 画 表 配 布. 総

据付確認 ※1 装置の据付位置を確認する。 実施計画のとおりである こと。. 性能 性能校正

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .

性能  機能確認  容量確認  容量及び所定の動作について確 認する。 .