第33年度 ソフトウェア品質管理研究会 「成果発表会」
研究コース６「要求と仕様のエンジニアリング」

テストケースの自動生成を見据えた基本設計フォーマット作成アプローチの提案
発表者：TRYチーム
奥村 慎（アイエックス・ナレッジ株式会社）酒井 雄太（wells system design）
中川 穂（株式会社インテック）
松平 智晶（日本電気航空宇宙システム株式会社）

はじめにチームのメンバは テストに関わるエンジニア
悩みは テストへのインプット
想いは より生産的なテスト
日々挑戦し続けるエンジニアたちに 希望の光を・・・研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

2

AGENDA

１．本研究に至った経緯
２．本研究のゴール

３．アプローチ
４．アプローチ結果

５．考察
６．課題と展望７．まとめ
研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

3

１．本研究に至った経緯
基本設計書の問題問題に伴う影響• 情報の不足• 曖昧な表現• 記述量の過多• 記述の実装偏重• 仕様の理解不足と認識齟齬

• テストの抜け漏れQCD• 調査やQ&Aの増加

PJの成否• 作業中断や手戻り
基本設計書
テスト設計者

設計者
Q&A

基本設計書は、後工程のための重要なインプット！
関係者にとって有益な基本設計書を提供したい！
研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

4

２．本研究のゴール

基本設計書のフォーマットの提案• 正確性 （過不足なく、不統一なく、曖昧さなく）• 利便性 （現場で使いやすく、後工程で活用しやすく）• 汎用性 （厳密さと自由さを奪わず、案件特性の影響を受けにくく）

テスト設計の自動化の提案• 正確性 （抜け漏れなく、誤りなく）• 生産性 （テストケースを機械的に生成できる）• 容易性 （導入のハードルを低く、経験やスキルの影響を受けにくく）

5

３．アプローチ①フォーマットの定義
基本設計書のフォーマットを定義/改良④フィードバック②基本設計書の記述

実験の結果から、基本設計書のフォーマットの改良点をフィードバック

フォーマットを用いて基本設計書を記述）③テストケースの自動生成
基本設計書からテストケースを自動生成研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

6

４．アプローチ結果① 基本設計書のフォーマット

１画面につき１シートを記述

プルダウンを想定

UI部品の種類に応じて、不要な項目はグレーアウト

研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

7

４．アプローチ結果② 実証実験（基本設計書の記述）
実験の目的
1.

定義した「基本設計書フォーマット」の有効性を確認する→読み書きしやすいか？
→開発経験による影響をどれだけ受けるか？

2.

被験者から実用後の意見をもらい，フィードバック内容から、アプローチのサイクルを回すことができるかを確認する→改善点を見いだせるか

実験の内容• 方法：基本設計書フォーマットと記述ガイドラインに基づき、題材システムの基本設計書を作成してもらう• 被験者：4名（基本設計書の作成経験者／未経験者）• 対象画面：各被験者 2画面ずつ研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

8

４．アプローチ結果② 題材システムの概要
題材システム仮想の複合機のメンテナンス作業支援ツール（業務系／WEB／モバイル端末）

画面イメージ

研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

9４．アプローチ結果② 基本設計書の記述結果

研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

10

４．アプローチ結果③ テストケースの自動生成の要領
自動生成の取組み方法
１．テスト観点に基づき定義されるテストケースを自動生成する対象としたテスト観点(1)ＵＩ部品の状態(2)テキストフィールドの入力制限(3)ＵＩイベント（ボタン・リンクによる状態遷移など）

２．自動生成を行う際、基本設計書の不足項目はフィードバックする

自動化による利点• 設計書に最低限の情報が入っている• 設計書の厳密性が担保される

厳密性が担保された上で、記述の自由度を模索できる研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

11

４．アプローチ結果④ 実験結果とフィードバック
実験の結果
 定義した「基本設計書フォーマット」の有効性・項目として記述方法を縛った部分 → 差違なし
・自然言語で記入する部分→ 一部に差違あり
・被験者の経験による影響→ 経験に起因する大きな差違なし

 フィードバックを得てアプローチの改善サイクルを回せるか（得られたフィードバック）
・記入量は多くない →項目増加、自動化の範囲拡張の余地
・フォーマットを理解できれば、時間はかからない →人の手で記述可能・記述ガイドラインやサンプルの影響を強く受ける →記述の量質を制御可能

・人の手によって記述できることを確認できた・フォーマットの改善点を得られており、自動化への拡張余地があることが判明した研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

12

５．考察 フォーマットについて縛る利点
1. 自動化によるテストケース導出
2. ブレがなくなる（縛った部分に関しては）
3. 何を書いて良いかわかりやすい（経験を問わない）

縛らない利点1. 自然言語のため読みやすい
2. 表現の幅が広い
3. 形式手法のように学習コストはかからない

縛ることによりテストケースの自動導出ができ、また、縛らずに自由記述できる箇所も残した。
結果、柔軟性のあるフォーマットができた研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

13

５．考察 アプローチについて
本研究での提案は…
固定化されたフォーマット

OR

フォーマットの作成アプローチ

わかったことフォーマットの厳密さと自由さのバランス調節を検討していくことができる
現場や対象システムによって変動するバランスは，最適なものを検討していくことができる
継続的にフォーマットを育てていくことができる有効なアプローチであった研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

14

６．課題と展望やったこと出来たこと

課題・展望

基本設計書フォー • 記述ができテストケース自動生成が • より書きやすく読みやすいフォーマットの検討できるフォーマットの作成（Excelマクロの実装など）
マットの作成基本設計書からテストケースの自動生成• 疑似コードによる自動化の確認• 実際に自動化ツールを作成• テストケース一覧については必要最低限のものを出力• テスト仕様として妥当なテストケースの導出• １アクション１機能となるパターンのテストケースを生成• １アクションに複数機能となる複雑なテストケースに対応

基本設計書フォー • 自由記述欄で予想通りの記述のぶ • 提案アプローチのサイクルを回し改善点をフ
れを確認ォーマットに取り込む
マットの妥当性の確認実験• ガイドラインとなるサンプルが一部書き方の誘導を図ることができる• 実験から得たフィードバックにより改善につなげられる• フォーマットと共にガイドライの検討も必要• 被験者の経験値などを調整し、読み手を含む複数人による実験を実施

研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

15

７．まとめ研究課題• テストケース作成の自動化を見据えた基本設計書フォーマットの作成
アプローチの提案

成果物• 本アプローチにより今回はライトウェイトだが，テストケース一覧生成の自動化ができる基本設計書フォーマット

考察• 本アプローチを使用することで，それぞれの現場やシステムにあわせた厳密さと自由さのバランスの取れた基本設計書フォーマットの作成ができる

展望• 実験で得られた改善点を踏まえ，基本設計書フォーマットをさらに拡張していき，システム開発における本アプローチの追求を目指す
研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

16

ご静聴ありがとうございました

研究コース６ 「要求と仕様のエンジニアリング」 TRYチーム

17