JP2003108405A - 試験仕様の作成支援装置及びプログラム - Google Patents

試験仕様の作成支援装置及びプログラム

Info

Publication number
JP2003108405A
JP2003108405A JP2001298638A JP2001298638A JP2003108405A JP 2003108405 A JP2003108405 A JP 2003108405A JP 2001298638 A JP2001298638 A JP 2001298638A JP 2001298638 A JP2001298638 A JP 2001298638A JP 2003108405 A JP2003108405 A JP 2003108405A
Authority
JP
Japan
Prior art keywords
operation pattern
system behavior
test specification
behavior
user
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2001298638A
Other languages
English (en)
Inventor
Takeshi Araimoto
武士 新井本
Wataru Okamoto
渉 岡本
Masayuki Hirayama
雅之 平山
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2001298638A priority Critical patent/JP2003108405A/ja
Publication of JP2003108405A publication Critical patent/JP2003108405A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 テストケース作成者に与える作業負荷が低
く、網羅性の高い試験仕様書のテストケース群を迅速か
つ容易に作成できるよう支援を行う装置及びプログラム
を提供する。 【解決手段】対象とするシステムの試験仕様の作成を支
援するために、ユーザがシステムを操作する際の代表的
な操作パターンを表すユーザ操作パターン情報、およ
び、操作パターンを基準とする詳細度で分析したシステ
ムの挙動を表すシステム挙動分析情報を入力する入力手
段と、これらユーザ操作パターン情報とシステム挙動分
析情報とを分析し、両者を階層的に組み合わせたシステ
ム挙動階層表を作表するシステム挙動階層分析手段と、
システム挙動階層表から操作項目を網羅的に抽出するた
めの操作項目抽出手段と、抽出された操作項目につい
て、所定の観点及び基準に沿った試験仕様項目を作成す
るための試験仕様項目作成手段と、を具備する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、ソフトウェアの開
発において、その信頼性を向上させるための試験(テス
ト)技術に関し、ソフトウェア試験において使用される
テストケースの作成を機能操作仕様の観点から支援する
試験仕様の作成支援装置及びプログラムに関する。
【0002】
【従来の技術】現代社会においては、日常利用される家
電製品から、情報通信機器、発電所、交通機関といった
社会基盤に至るまで、様々な機器が存在している。これ
らの機器は、我々が生活していく上で必要不可欠なもの
であり、その誤作動が社会におよぼす影響は非常に大き
なものとなりうる。そのため、機器の制御/管理等のた
めに組み込まれるソフトウェアの信頼性に対する要求が
ますます大きくなってきている。
【0003】一般に、開発されたソフトウェアの信頼性
を評価し保証するためには、試験工程が重要である。当
該ソフトウェアが満足すべき機能仕様および性能仕様等
のすべての項目について実際に動作確認を実施し、不具
合があれば修正することによって、当該ソフトウェアが
いかなる状況においても正しく動作することを保証しな
ければならない。
【0004】特に、人命に関わるようなシステムや、不
具合の発生が社会に大きな影響をおよぼすようなシステ
ムにおいては、全ての可能な振る舞いやそれらの組み合
わせを網羅的に試験する必要があるが、近年のソフトウ
ェアシステムの高度化・複雑化に伴い、そのような網羅
的なテストケースの作成が極めて困難になってきてい
る。
【0005】通常、試験作業においては、その製品の満
足すべき機能および性能を一覧表にしたチェックリスト
がテストケースとして用いられ、試験の十分性は、チェ
ックリストに記述されたテストケースの出来、および網
羅度によって決定される。
【0006】しかし、従来、テストケースの作成は製品
の仕様書等を参考にして人手によって行わなければなら
ないので、非常に手間がかかっている。また、現在の自
然言語を用いた仕様書では、その曖昧さゆえに、網羅性
の高い、十分に信頼できるテストケースを作成するのは
困難であり、当該ソフトウェアに精通した技術者の製品
知識や経験に大きく依存することになる。
【0007】上記のような問題を解決するために、対象
ソフトウェアの動作仕様を状態遷移図などの形式的な仕
様記述表現を用いて記述し、それらの情報から機械的に
テストケースを生成する技術、あるいはこれらの形式的
仕様記述上で論理動作の検証を試みるといった技術が提
案されている(例えば、特開平5-119987号公報、特開平
6-110734公報などを参照)。
【0008】しかし、これら従来技術においては、ソフ
トウェアの全ての仕様を状態遷移図等の定められた書式
を用いて厳密かつ形式的な仕様書として記述しなければ
ならず、このために多大な労力を必要とする。
【0009】また、当然のことながら、仕様書を自然言
語で記述した通常のソフトウェアには適用することがで
きないし、この場合、仕様書を形式的記述に書き直すた
めの負担も非常に大きなものである。
【0010】
【発明が解決しようとする課題】上記のような状況であ
るから、近年、複雑化・肥大化の一途を辿るソフトウェ
アシステムを対象に、網羅性の高いテストケース群を迅
速かつ容易に設計することは、極めて困難であり、多大
な時間的・経済的コストが必要になる。
【0011】一方で、急速なソフトウェア技術の進歩に
伴い、ソフトウェアシステムのライフサイクルおよび開
発に与えられる期間はますます短くなってきている。こ
のため、実際の開発においては試験工程に割り当てられ
る制限された時間内で要求される信頼性を確保できるよ
うな、簡便で効率の良い試験手法が求められている。
【0012】本発明は、かかる事情を考慮してなされた
ものであり、対象ソフトウェアへの試験仕様を構成する
網羅性の高いテストケース(試験仕様項目)群を、作成
者が迅速かつ容易に作成できるよう支援する装置及びプ
ログラムを提供することを目的とする。
【0013】
【課題を解決するための手段】上記課題を解決し目的を
達成するために本発明は次のように構成されている。
【0014】本発明に係る試験仕様作成支援装置は、対
象とするシステムの試験仕様の作成を支援する試験仕様
作成支援装置において、ユーザが前記システムを操作す
る際の代表的な操作パターンを表すユーザ操作パターン
情報、および、前記操作パターンを基準とする詳細度で
分析した前記システムの挙動を表すシステム挙動分析情
報を入力する入力手段と、前記ユーザ操作パターン情報
と前記システム挙動分析情報とを分析し、両者を階層的
に組み合わせたシステム挙動階層表を作表するシステム
挙動階層分析手段と、前記システム挙動階層表から操作
項目を網羅的に抽出するための操作項目抽出手段と、抽
出された前記操作項目について、所定の観点及び基準に
沿った試験仕様項目を作成するための試験仕様項目作成
手段と、を具備することを特徴とする。
【0015】
【発明の実施の形態】本発明の実施形態は、対象ソフト
ウェアへの試験仕様を構成するテストケース(試験仕様
項目)群を作成者が作成する作業を支援する試験仕様作
成支援装置に関する。該装置は汎用のコンピュータを用
いて構成され、本発明に係る試験仕様の作成支援は、例
えばソフトウェア・プログラムにより実現される。
【0016】本発明に係る試験仕様の作成支援では、自
然言語によって記述されたソフトウェア仕様書をもと
に、ソフトウェアの外部的な振る舞いを2つの観点、す
なわち「ユーザ操作パターン」と、その内容を表現する
「システム挙動」とによって分析する。その分析結果を
表形式表現あるいは図形式表現を利用して階層的に記述
し、これを利用して当該ソフトウェアにおいて可能な操
作を抽出する。さらに、抽出した操作の各々に対して所
定の観点・基準からの情報を付帯させることにより試験
項目を導出する。
【0017】<全体構成>図1は、本発明の一実施形態
に係る試験仕様作成支援装置の概略構成を示すブロック
図である。この試験仕様作成支援装置は、製品仕様書1
3をもとに試験仕様書10を作成する作業を支援する装
置であって、(a)自然言語で記述された製品仕様書13
から、当該ソフトウェアのユーザからの利用の仕方の代
表的なパターン(ユーザ操作パターン)、システムを利
用するユーザ、およびそれらの関係の3つを評価するた
めのユーザ操作パターン評価部1と、(b)製品仕様書1
3およびユーザ操作パターン一覧2の記述をもとに、ユ
ーザが当該ソフトウェアを利用する手順やそれに沿った
システムの振る舞いを図で表現するためのシステム挙動
分析部3と、(c)ユーザ操作パターン一覧2およびシス
テム挙動分析図4が成す階層構造を抽出し、あるいはそ
れらと同等の情報をもつ図や表を基に、それらの情報に
階層構造を定義し、これを表形式で表現するシステム挙
動階層表6に変換するためのシステム挙動階層分析部5
と、(d)システム挙動階層表6を分析し、当該ソフトウ
ェアにおいて可能な操作を抽出するための操作抽出部7
と、(e)抽出した各操作について定められた観点・基準か
ら、前提条件/期待される結果を、製品仕様書13の情
報を基に網羅するための試験仕様項目(テストケース)
作成部と、(f)それらの間で利用する用語を整理し、用
語辞書12を作成、管理する用語辞書管理部11とを備
えている。
【0018】自然言語によって記述された製品仕様書1
3から、ユーザ操作パターン一覧2、システム挙動分析
図4、およびシステム挙動階層表6という形式的ではあ
るが比較的制限の緩い記述を段階的に作成していくこと
で、試験項目として挙げるべき操作を高い網羅度で抽出
し、試験仕様書10を作成する。
【0019】本実施形態の試験仕様作成支援装置の動作
手順を説明する。
【0020】まず、テスト対象となるソフトウェアシス
テムの製品仕様書13を入力として、ユーザ操作パター
ン評価部1を利用することによりユーザ操作パターン一
覧2を作成する。
【0021】次に、作成したユーザ操作パターン一覧
2、および製品仕様書13をもとにシステム挙動分析部
3を利用して、ユーザは、ソフトウェアを利用するシナ
リオとそれに沿ったソフトウェアシステムの振る舞いを
システム挙動分析図4として作成する。その際、ユーザ
操作パターン評価部1、およびシステム挙動分析部3
は、これらの図/表で登場するユーザ操作パターン/シス
テム挙動要素の名前をその階層構造における位置付けと
共に用語辞書管理部11を利用して用語辞書12に登録
し、管理する。これにより、異なるユーザ操作パターン
やシステム挙動要素で利用される同一のユーザ操作パタ
ーンやシステム挙動要素を検出することができる上、そ
れらを参照することによって、できるだけ重複を避けた
効率的かつ体系的なユーザ操作パターン一覧およびシス
テム挙動分析図を作成することが可能となる。
【0022】次に、作成したユーザ操作パターン一覧2
およびシステム挙動分析図4を入力としてシステム挙動
階層分析部5に与えることによって、ユーザ操作パター
ン一覧2とシステム挙動分析図4が成す階層構造をシス
テム挙動階層表6に変換して視覚化する。
【0023】次に、システム挙動階層表6、およびソフ
トウェアシステムの製品仕様書13をもとに、操作抽出
部7を利用してソフトウェアの操作を網羅的に抽出し、
操作項目一覧表8を作成する。
【0024】そして最後に、作成した操作項目一覧表8
および製品仕様書13をもとに、試験仕様項目作成部9
を利用して、所定の基準/観点からの分析を行い、各操
作に対して前提条件および期待される結果(試験合否基
準)の列挙を行う。これにより前工程で抽出された操作
がテストケース群に展開され、それらの集合である試験
仕様書10が得られる。
【0025】以下、図1に示す試験仕様作成支援装置の
各構成要素を個別に説明する。
【0026】<ユーザ操作パターン評価部1>本発明に
おける「ユーザ操作パターン」とは、対象とするシステ
ムに対して、「どのような立場や役割のユーザが居
て」、「それらのユーザがどのように対象システムを利
用するか」を分析したものであるとする。例えばコピー
機を例にとると、ユーザの内訳として「一般のオフィス
ユーザ」、「販売店の保守員」等が考えられる。また、
システムの利用の仕方としては「複写する(一般のオフ
ィスユーザ)」、「定期点検を行う(販売店の保守
員)」等のようにユーザの立場毎で異なる利用シナリオ
が考えられる。
【0027】対象とするソフトウェアシステムが大規模
かつ複雑なものである場合、当該ソフトウェアシステム
が提供する機能のバリエーションも豊富かつ複雑であ
る。これに伴ってユーザがシステムを利用する仕方の代
表的なパターンを表す「ユーザ操作パターン」にも多く
のバリエーションが存在する。また、これらバリエーシ
ョンの間には複雑な依存関係等が存在する。
【0028】そこで、ユーザ操作パターン評価部1では
「対象システムのユーザ」および「それらのユーザがシ
ステムを利用する際に考えられるユーザ操作パターン」
を当該システムの機能操作仕様書から抽出することによ
って網羅する。それらの関係がユーザ操作パターン一覧
2として、図または表形式で出力されることにより当該
システムの概要の記述がなされる。
【0029】ユーザ操作パターン一覧2およびシステム
挙動分析図4の、それぞれの図/表および要素が階層的
に結び付けられることによって、当該ソフトウェアシス
テムにおける可能な操作の抽出が実現される。ユーザ操
作パターン一覧2の要素となるユーザ操作パターンがさ
らに複数の詳細なユーザ操作パターンから成り立ってい
る場合や、ユーザ操作パターンの具体的なシナリオをシ
ステム挙動分析図4として表現する場合、それらユーザ
操作パターンの詳細を記述する表/図と、詳細化される
ユーザ操作パターンとの関係を保持する必要がある。
【0030】ユーザ操作パターン一覧2は、上記のよう
な図/表/要素間の階層的な関係を情報として保持できる
ことを前提に、UML(Unified Modeling Language)
で定義されるユースケース図などを利用して実現しても
よい。
【0031】・ユーザ操作パターンの例 図2は、病院情報管理システムに関するユーザ操作パタ
ーンのディスプレイ上への表示例を示す。この例では、
システムのユーザ(利用者)として医師を想定してお
り、図中では顔型のアイコン(シンボル)によって表現
されている。ユーザである医師が直接的に起動可能なユ
ーザ操作パターンとして、「1.治療を実施し、実施結
果を登録する」、「2.治療オーダを削除する」...
など、中央に縦に並んでいる一連のユーザ操作パターン
群があるが、これらの各々はユーザのアイコンと直線で
結ばれており、医師から直接的に起動されることが明示
されている。また、「6.治療オーダを検索す
る」...「オーダ情報を変更する」など、他のユーザ
操作パターンから矢印で指されているユーザ操作パター
ンは、矢印の始点に接続されているユーザ操作パターン
から参照されており、当該参照元のユーザ操作パターン
内で使用されることを示している。
【0032】このように、複数のユーザ操作パターンに
含まれるユーザ操作のまとまりや、ひとまとまりで意味
を成すような一連のユーザ操作を1つのユーザ操作パタ
ーンとして独立させることで、システムの概要が把握し
やすくなると共に、記述の重複を避けることが可能とな
る。
【0033】<システム挙動分析部3>システム挙動分
析部3は、当該ソフトウェアシステムの機能操作仕様書
13および前述のユーザ操作パターン評価部1で作成さ
れたユーザ操作パターン一覧2を入力とし、これらに記
述されている個々のユーザ操作パターンをユーザの一連
の操作に伴うシステムの挙動の視点から詳細に分析する
ことで、システム挙動分析図4を作成するための手段に
相当する。
【0034】通常、ユーザがソフトウェアシステムを利
用する際は、複数の操作を連続的に行うことによって所
望の処理や出力を実現する。これら一連のユーザ操作を
一つの単位として纏め、これによりシステムの概要を表
現したものが前述のユーザ操作パターン一覧2である。
ここでは、ユーザ操作パターン一覧2に記述された個々
のユーザ操作パターンを構成するユーザ操作、およびそ
れに伴うシステム挙動の流れをシステム挙動分析図4と
してユーザが作成する。
【0035】システム挙動分析図4は、ソフトウェアを
利用する際のシナリオを、ユーザが起こした一連のアク
ションおよびそれらに対するシステムの反応をある大き
さで一つにまとめて成るシステム挙動要素を構成単位と
し、それらの間の遷移とあわせて記述することによっ
て、システムの挙動を表現する。
【0036】システム挙動要素の上記のような性質か
ら、システム挙動分析図4におけるそれぞれの要素は、
さらに別のシステム挙動分析図4によってそのフローを
表現することができる。したがって、システム挙動分析
図4を前述のユーザ操作パターン一覧2と組み合わせて
システムの振る舞いを階層的に表現することができる。
なお、一つ一つの図が過度に詳細にならないようにユー
ザが記述の抽象度を調整することにより、システムの振
る舞いに関する記述は容易になるとともに、出来上がっ
たシステム挙動分析図4は理解しやすいものになる。
【0037】システム挙動分析部3は、上記のようなシ
ステム挙動分析図4の書式を満足すると共に、ユーザ操
作パターン一覧2と組み合わせたユーザ操作に伴うシス
テムの振る舞いの階層構造を、ユーザ操作パターン一覧
2、システム挙動分析図4およびそれらの要素と、これ
ら図/表/要素間の参照/依存等の関係とを記述するた
めのグラフィックエディタ(図形編集手段)を含む。こ
のようなグラフィックエディタは、ユーザが製品仕様書
13を読解してシステム挙動分析図4を記述すること、
および階層構造を表現することを可能にする。
【0038】本実施形態では、システム挙動分析図4が
持つ全てのシステム挙動要素がそれ以上分割できないア
クションとして記述されるまで、詳細化・階層化を繰り
返す。これによって、全てのシステム挙動要素がシステ
ムに対する単一の原始的な操作で実現できる詳細度とな
り、以後の操作による漏れ・抜けのない操作項目の抽
出、および試験仕様項目の導出が可能となる。
【0039】また、システム挙動分析図4において、入
力したシステム挙動要素名と同一あるいは類似のシステ
ム挙動要素名が過去に入力されている場合、用語辞書管
理部11はこれを指摘する。これにより、システム挙動
分析図4における重複を含む冗長な表現を抑制すること
が可能となる。
【0040】・システム挙動分析図4の作成例 図3は図2と同じシステムにおいて「2.治療オーダを
削除する」ユーザ操作パターンのシステム挙動分析図4
を示したものである。このシステム挙動分析図4では、
治療オーダの削除に関係する「2−1.治療オーダを検
索する」等といったシステム挙動要素が削除処理の手順
に沿って並べられ、その遷移が矢印によって表されてお
り、治療オーダの削除というユーザ操作パターンが具体
的にどのようなシステム挙動を辿って実行されるかが明
示されている。
【0041】ここで、既に述べたように「システム挙動
要素」とは、システムに対する「ユーザの一連の操作」
とそれに対する「システムの振る舞い」をある大きさで
一つにまとめたものである。例えば、図3の例における
「2−3.オーダを削除する」というシステム挙動要素
は、オーダ削除を指示するユーザの操作と、それに従っ
てオーダ削除処理を実行するシステムの振る舞いを一つ
にまとめて表現したものである。
【0042】また、図2に示したようなユーザ操作パタ
ーンは、システムの利用の仕方に着目して記述したもの
であるが、その操作パターンによって実現される処理ま
でをも含めて考えることによって、これをシステム挙動
要素として解釈することも可能である。この場合、図3
のシステム挙動分析図4における要素「2−1」、「2
−2」のように、システム挙動分析図4の中でユーザ操
作パターンを参照することが可能となる。
【0043】<システム挙動階層分析部5>ソフトウェ
アシステムを実際に試験する際には、「ボタンを押
す」、「メニュー項目を選択する」、「文字列を入力す
る」といった原始的なレベルの各々の操作について、シ
ステムがどのような挙動を示すのかが明示的に試験仕様
として記述されている必要がある。しかし、本発明が対
象とするような大規模・複雑なソフトウェアシステムに
おいては、原始的レベルの操作の数が莫大であること
や、多数の操作から一つの機能が実現されること等の理
由から、ソフトウェアシステムの持つ意味構造と個々の
操作の関係やそれぞれの操作間の依存関係等を理解する
ことが困難となってしまう。したがって、このような原
始的な操作のレベルで直接的にシステムの挙動を表現す
るのは操作の漏れ/抜けを生じる可能性が高く、現実的
ではない。
【0044】そこで、前述したユーザ操作パターン評価
部1、およびそこで抽出されたそれぞれのユーザ操作パ
ターンにおけるシステムの挙動を分析するシステム挙動
分析部3によって記述された対象システム全体の振る舞
いを、システム挙動階層分析部5によって分析し、例え
ばユーザ操作パターンを起点とする大まかなレベルか
ら、詳細なレベルに至るまでの階層的な表(システム挙
動階層分析表)を作成する。これによって対象システム
の挙動を理解するのが容易になる。そしてこのシステム
挙動階層分析表を基に操作項目の抽出を行うことで、操
作の漏れや抜けを抑制することができる。
【0045】システム挙動階層分析部5は、図あるいは
表形式で記述されたユーザ操作パターン一覧2と、それ
ぞれのユーザ操作パターンに対応するシステム挙動分析
図4について、用語辞書管理部11を用いて重複や類似
の記述を抽出しながら、両者の依存関係や階層構造をチ
ェックし、必要であれば改めて定義(再構成)を行った
上でその階層構造を分析し、システム挙動階層表6とし
て表形式に書き出す。
【0046】図4は、システム挙動階層分析部5におい
てシステム挙動階層表6を作成する処理及びデータの流
れを示す図である。システム挙動階層分析部5では、ま
ずシステム挙動分析図4それ自体、あるいはこれに相当
する記述を用語辞書管理部11を利用して分析し、シス
テム挙動の流れにおいて重複あるいは類似する部分を抽
出してユーザに提示する。ユーザは、システム挙動階層
分析部5によって提示されたこれらの重複あるいは類似
部分について、これらがシステム挙動の流れとして同一
のものであるかどうかを判断し、その判断結果を入力す
る。システム挙動階層分析部5は該ユーザからの入力を
受けて重複/類似部分をまとめ、ユーザ操作パターンと
して独立させ、他のユーザ操作パターンとの依存関係お
よびシステム挙動分析図4からの参照を定義する。
【0047】また、記述されたシステム挙動の流れが理
解を妨げるほど長いあるいは分岐が多い場合にはこれら
をユーザに提示・指摘し、修正を促す。ここで、ユーザ
は、ひとまとまりで一つの意味を持つことが出来るよう
なシステム挙動要素の集合を指定しそれらに名前を与え
ることによって、複数の小さな単位のシステム挙動要素
からなる一つのシステム挙動要素を定義することができ
る。またその詳細については、サブ図として小さな単位
のシステム挙動要素からなる記述を用意し、新しくまと
めたシステム挙動要素から参照することによって階層構
造を形成する。
【0048】上記操作を繰り返すことによってユーザ操
作パターン一覧2とシステム挙動分析図4を階層的に、
かつ重複無く記述することができる。図5は最終的に出
来上がったダイアグラム群が成す階層関係を示したもの
である。
【0049】次に、システム挙動階層分析部5では、ユ
ーザ操作パターン一覧2およびシステム挙動分析図4の
持つ階層構造を表形式に変換し、書き出す。
【0050】これによって原始的な操作で実現可能なシ
ステム挙動を一覧することができ、以下で説明する操作
抽出部7を利用した操作の抽出が容易になる。
【0051】・システム挙動階層表6の作成例 図6は病院情報管理システムにおけるシステム挙動階層
表6の一例(抜粋)を示している。最も左の列が階層構
造の最上位に位置するユーザ操作パターンを表してお
り、右側はそれぞれ対応する左側の要素のサブ図の要素
であるユーザ操作パターン/システム挙動となってい
る。この例では、「2.治療オーダを削除する」という
ユーザ操作パターンに対してはそれを実現するシステム
挙動のシーケンス「2−1.治療オーダを検索する」、
「2−2.オーダ情報を確認する」「2−3.オーダを
削除する」がその右側に並び、「2−3.オーダを削除
する」についてはさらにそのサブ図の要素であるシステ
ム挙動要素のシーケンスが右側に列挙されている。
【0052】図7はシステム挙動階層分析表作成の流れ
を表したものである。この例では、システム挙動階層分
析部5は、まず表の最左列に最上位のユーザ操作パター
ンである「2.検査オーダを削除する」を記述する。次
に、その階層構造のリンクを辿って対応するサブ図を見
つけ、その要素であるシステム挙動を順に右の列に記述
する。ここでは、「2−1.治療オーダを検索する」
等、2列目に記述される要素がこれに相当する。このと
き、システム挙動がさらにサブ図を参照している場合に
はそのリンクを辿り、ユーザ操作パターンに対してサブ
図のシステム挙動を記述したのと同様に、システム挙動
の要素をさらに右の列に記述していく。また、途中にお
いてユーザ操作パターンやシステム挙動が別のユーザ操
作パターンを参照している場合には、最右列にその参照
先のユーザ操作パターンを記録しておく。システム挙動
階層分析部5は、これらの操作を自動的に繰り返し、図
6のような表を作成する部分である。
【0053】システム挙動階層表6におけるこれらの要
素は最左列に列挙されたユーザ操作パターンをルートと
するツリー(木)構造を成しており、その葉に当たる要
素(ある行において自分自身の右側に要素が存在しない
もの)が単一の原始的操作によって実現できるシステム
挙動要素となっている。操作抽出部7では、後述する
が、これらツリー構造の葉要素の各々について、それら
を実現する操作を抽出する。
【0054】また、上記の機能はユーザ操作パターン一
覧2/システム挙動分析図4の情報を、XMLのような
構造化されたテキストベースの汎用データフォーマット
に変換することによっても実現可能である。この場合、
システム挙動階層分析部5は、ユーザ操作パターン一覧
2/システム挙動分析図4を一旦、中間的な表現形式と
して構造化されたデータフォーマットに変換し、それを
さらに表形式に書き出すという操作を行うことになる。
このような形式を採用することによって、ユースケース
図/操作フロー図によって記述された機能仕様データの
管理及び加工等が容易になるとともに、他の用途におけ
るそれらデータの利用も促される。
【0055】<操作抽出部7>操作抽出部7は、作成し
たシステム挙動階層表6と当該ソフトウェアの製品仕様
書13を基に、操作抽出部7を用いて単一の操作で実現
可能なシステム挙動要素を抽出し、その要素を実現する
ための操作項目のリストを作成する。
【0056】通常、ソフトウェアシステムにおいては、
等価なシステム挙動を実現するユーザ操作が複数存在す
る。例えば、一般的なワードプロセッサの印刷機能を例
に取ると、「メニューから「印刷」を選択する」、「ツ
ールバーにおいて「印刷」ボタンをクリックする」、
「ショートカットキーを利用する」等のユーザ操作が、
“印刷”という等価なシステムの挙動を実現する。ソフ
トウェアのシステム試験においては、このような、ある
システム挙動要素を実現する原始的な操作のレベルでソ
フトウェアが仕様通りに正しく動作することを保証しな
ければならない。
【0057】既に述べたように、従来では、大規模・複
雑なシステムにおいて、ここで抽出しようとしているよ
うな原始的なレベルの操作を抽出するのは非常に困難で
あり、そのため試験項目の漏れ・抜けが生じやすくなっ
ており、これを防ぐことが喫緊の課題となっている。
【0058】本実施形態では、前述のシステム挙動階層
分析部5において作成したシステム挙動階層表6を利用
するので、抽出した単一の原始的操作で実現可能なシス
テム挙動要素のシステムの機能構造における位置付けを
把握することが容易である。したがって、操作項目抽出
時に必要なシステム挙動要素の漏れ・抜けを容易に発見
することも可能になり、信頼性が高くかつ網羅性の高い
操作項目リストを作成することができる。
【0059】操作抽出部7は、前述のシステム挙動階層
表6から原始的な操作で実現可能なシステム挙動要素を
抽出し、そのリストをシステム挙動階層表6と合わせて
表示する。これにより、リストされたシステム挙動要素
の、システム全体の機能構造における位置付けを利用者
が容易に理解できるようになる。したがって、システム
挙動要素の抜け・漏れを抑制でき、これらに起因する試
験仕様項目の抜け・漏れについても抑制できる。また、
機能操作仕様書において同じシステム挙動要素を実現す
る操作が複数箇所に分散して記述されているような場合
でも、システム機能構造が把握しやすいことから、それ
らの操作が実現するシステム挙動要素を特定する作業は
容易に行える。
【0060】次に、機能操作仕様書13の情報を基に、
これらのシステム挙動要素リストを個々の操作に展開、
記述していく。入力した操作について過去に同一あるい
は類似の操作を入力している場合、用語辞書管理部11
はこれを指摘する。指摘を受けた利用者はそれらの操作
が全く別のものであるのか、同一あるいは類似のものな
のかを判断し、用語辞書12に入力した上で、操作項目
リストに追加する。同一であると入力した場合には、以
下で説明する試験仕様項目作成部9において同一操作項
目の試験項目を再利用することが可能になる。
【0061】操作抽出部7は、上記手順を実現するため
にシステム挙動階層表6を表示し、そこから原始的な操
作で実現可能なシステム挙動要素を抽出し、それら要素
のリストを個々の原始的操作に展開・記述することを可
能にするとともに、追加する操作項目の用語管理を担
う。
【0062】・操作項目リストの作成例 図8は、図6のシステム挙動階層表を利用して作成し
た、操作項目リストの一例(抜粋)を示す。操作抽出部
7は、先ず図8に示される表中の列1〜3のように、シ
ステム挙動階層表6を表示する。次に、そこから自分自
身の右側が空欄になっているシステム挙動要素、つまり
ツリー構造の葉となる要素を抽出し、表の最右列(列
4)に列挙する。抽出されたシステム挙動要素には、他
のユーザ操作パターンを参照しているものも存在する。
その場合は参照先のユーザ操作パターンをさらにその右
の列に記述する。
【0063】次に、機能操作仕様書を基に、列5に示し
たように各システム挙動を実現する操作を記入してい
く。ここで、同一あるいは類似する操作項目を入力した
場合には用語辞書管理部11による指摘がなされるの
で、その操作が以前入力したものと同一あるいは類似の
ものか、あるいは全く別のものかを判断し、用語辞書1
2に入力する。以上の操作抽出部7による処理の流れを
図9に示す。
【0064】<試験仕様項目作成部9>本実施形態で
は、最終段階として、試験仕様項目作成部9を利用して
操作項目リスト(一覧表)の各操作項目を分析し、テス
トケース(試験仕様項目)を作成する。操作項目の分析
においては、「(1)システムについて取得可能な状
態」および「(2)操作が使用/定義を行うデータの値
・状態」を中心として、テストケース導出観点、および
その基準を設定する。観点/基準の一例を図10に示
す。このように、対象となるソフトウェアシステムの機
能操作仕様書をもとに画面構成や扱うデータの構造に従
って上記(1)、(2)を具体化(図10では例として
幾つかの基準を挙げている)し、それに従って、操作抽
出部7で抽出した各操作項目に対して前提条件および期
待される結果を網羅していく。
【0065】図11は、図10に示した操作項目分析の
観点/基準を用いて操作項目を分析して作成したテスト
ケースの例を示している。たとえば「メニューから「オ
ーダ−オーダ削除」を選択する」という操作について考
えると、先ず、[ウィンドウ]の観点から、この操作がな
されるウィンドウとして「治療業務メイン画面」という
ウィンドウ名を明示する。また[画面状態]の観点から、
操作の結果に影響を及ぼすものとして「一覧表示モー
ド」、「オーダ情報表示モード」といった条件が導き出
される。試験仕様項目作成部9では、このように前提条
件網羅のガイドとなる上記の観点/基準を、各操作項目
に対して照らし合わせることによって、テストケースの
導出およびそれらの記述を支援する。
【0066】以上説明した本実施形態の試験仕様作成支
援装置によれば、以下の作用効果が得られる。
【0067】先ず、本実施形態の試験仕様作成支援装置
では、ソフトウェアの仕様を、階層構造をもつ図表群に
よって簡潔に記述することとしている。このため、対象
とするソフトウェアの規模や複雑さに依存せず、各階層
毎に理解しやすい抽象度の記述が一様に行われることに
なる。したがって、ユーザの操作パターンに沿ったシス
テムの振る舞いの記述を容易化することができ、理解し
やすくなる。本実施形態では従来の形式的仕様記述と比
較して記述方法やフォーマットの制約が非常に緩くなっ
ており、図表群の作成時における作業負担は比較的少な
いものとなる。
【0068】そして、試験対象のソフトウェアの振る舞
いを、木構造を成すユーザ操作パターン一覧2及びシス
テム挙動分析図4に基づいて自動解析することができ、
これにより当該ソフトウェアにおいて実現可能な単一の
操作によって実行され得るシステム挙動要素を網羅的に
抽出することができる。したがって、その後の操作項目
の検出、試験仕様項目の作成作業を、人手による作業と
比較して格段に迅速化、容易化することができ、抜けの
少ない、網羅性の高い試験仕様書の作成が可能になる。
尚、本発明は上述した実施形態に限定されず種々変形し
て実施可能である。
【0069】
【発明の効果】以上説明した本発明によれば、対象ソフ
トウェアへの試験仕様を構成する網羅性の高いテストケ
ース(試験仕様項目)群を作成者が迅速かつ容易に作成
できる。また、対象ソフトウェアの仕様変更に伴う要求
に対しても柔軟に対応できる。
【図面の簡単な説明】
【図1】本発明の一実施形態に係る試験仕様作成支援装
置の概略構成を示すブロック図。
【図2】ユーザ操作パターン一覧(図形式)の一例を示
す図。
【図3】システム挙動分析図の一例を示す図。
【図4】システム挙動階層分析図における処理の流れを
示すブロック図。
【図5】ユーザ操作パターン一覧及びシステム挙動分析
図から構成されるシステム仕様の階層構造を概念的に示
す図。
【図6】システム挙動階層分析表の一例を示す図。
【図7】システム挙動分析図を用いたシステム挙動階層
分析図の作成過程を示すブロック図。
【図8】操作項目一覧表の一例を示す図。
【図9】操作項目一覧表をシステム挙動階層分析表を用
いて作成する過程を示すブロック図。
【図10】試験仕様項目の抽出観点およびその基準の一
例を示す図。
【図11】試験仕様書(試験仕様項目リスト)の一例を
示す図。
【符号の説明】
1…ユーザ操作パターン評価部 2…ユーザ操作パターン一覧 3…システム挙動分析部 4…システム挙動分析図 5…システム挙動階層分析図 6…システム挙動階層表 7…操作抽出部 8…操作項目一覧表 9…試験仕様項目作成部 10…試験仕様書 11…用語辞書管理部 12…用語辞書 13…製品仕様書
───────────────────────────────────────────────────── フロントページの続き (72)発明者 平山 雅之 神奈川県川崎市幸区小向東芝町1番地 株 式会社東芝研究開発センター内 Fターム(参考) 5B042 HH19

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 対象とするシステムの試験仕様の作成を
    支援する試験仕様作成支援装置において、 ユーザが前記システムを操作する際の代表的な操作パタ
    ーンを表すユーザ操作パターン情報、および、前記操作
    パターンを基準とする詳細度で分析した前記システムの
    挙動を表すシステム挙動分析情報を入力する入力手段
    と、 前記ユーザ操作パターン情報と前記システム挙動分析情
    報とを分析し、両者を階層的に組み合わせたシステム挙
    動階層表を作表するシステム挙動階層分析手段と、 前記システム挙動階層表から操作項目を網羅的に抽出す
    るための操作項目抽出手段と、 抽出された前記操作項目について、所定の観点及び基準
    に沿った試験仕様項目を作成するための試験仕様項目作
    成手段と、 を具備することを特徴とする試験仕様作成支援装置。
  2. 【請求項2】 前記ユーザ操作パターン又は前記システ
    ムの挙動を識別する用語からなる用語辞書をさらに具備
    し、 前記システム挙動階層分析手段は、前記用語辞書を参照
    して前記ユーザ操作パターン情報および前記システム挙
    動分析情報内の要素間の依存関係を分析することを特徴
    とする請求項1に記載の試験仕様作成支援装置。
  3. 【請求項3】 前記システム挙動階層分析手段は、前記
    ユーザからの指定に応じて前記システム挙動階層表の階
    層構造を変更し、再構成する手段を具備することを特徴
    とする請求項1又は2に記載の試験仕様作成支援装置。
  4. 【請求項4】 前記試験仕様項目は、前記ユーザから当
    該操作が与えられる際の前提条件及びその操作結果から
    なることを特徴とする請求項1乃至3のいずれかに記載
    の試験仕様作成支援装置。
  5. 【請求項5】 対象とするシステムの試験仕様の作成を
    支援する試験仕様作成支援装置において、 ユーザが前記システムを操作する際の代表的な操作パタ
    ーンを表すユーザ操作パターン情報から、該操作パター
    ンを識別する用語を抽出し、用語辞書に登録するユーザ
    操作パターン評価手段と、 前記操作パターンを基準とする詳細度で分析した前記シ
    ステムの挙動を表すシステム挙動分析情報から、該シス
    テムの挙動を識別する用語を抽出し、前記用語辞書に登
    録するシステム挙動分析手段と、 前記ユーザ操作パターン情報と前記システム挙動分析情
    報のそれぞれの構成要素間の依存関係を前記用語辞書を
    参照して分析し、両者を階層的に組み合わせたシステム
    挙動階層表を作表するシステム挙動階層分析手段と、 前記システム挙動階層表から操作項目を網羅的に抽出す
    るための操作項目抽出手段と、 抽出された前記操作項目について、所定の観点及び基準
    に沿った試験仕様項目を作成するための試験仕様項目作
    成手段と、 を具備することを特徴とする試験仕様作成支援装置。
  6. 【請求項6】 対象とするシステムの試験仕様の作成を
    支援する試験仕様作成支援プログラムであって、 ユーザが前記システムを操作する際の代表的な操作パタ
    ーンを表すユーザ操作パターン情報、および、前記操作
    パターンを基準とする詳細度で分析した前記システムの
    挙動を表すシステム挙動分析情報を記憶手段に記憶する
    機能、 前記ユーザ操作パターン情報と前記システム挙動分析情
    報とを分析し、両者を階層的に組み合わせたシステム挙
    動階層表を作表するシステム挙動階層分析機能、 前記システム挙動階層表から操作項目を網羅的に抽出す
    るための操作項目抽出機能、 抽出された前記操作項目について、所定の観点及び基準
    に沿った試験仕様項目を作成するための試験仕様項目作
    成機能、 をコンピュータに実現させるための試験仕様作成支援プ
    ログラム。
  7. 【請求項7】 対象とするシステムの試験仕様の作成を
    支援する試験仕様作成支援プログラムにおいて、 ユーザが前記システムを操作する際の代表的な操作パタ
    ーンを表すユーザ操作パターン情報から、該操作パター
    ンを識別する用語を抽出し、用語辞書に登録するユーザ
    操作パターン評価機能、 前記操作パターンを基準とする詳細度で分析した前記シ
    ステムの挙動を表すシステム挙動分析情報から、該シス
    テムの挙動を識別する用語を抽出し、前記用語辞書に登
    録するシステム挙動分析機能、 前記ユーザ操作パターン情報と前記システム挙動分析情
    報のそれぞれの構成要素間の依存関係を前記用語辞書を
    参照して分析し、両者を階層的に組み合わせたシステム
    挙動階層表を作表するシステム挙動階層分析機能、 前記システム挙動階層表から操作項目を網羅的に抽出す
    るための操作項目抽出機能、 抽出された前記操作項目について、所定の観点及び基準
    に沿った試験仕様項目を作成するための試験仕様項目作
    成機能、 をコンピュータに実現させるための試験仕様作成支援プ
    ログラム。
JP2001298638A 2001-09-27 2001-09-27 試験仕様の作成支援装置及びプログラム Pending JP2003108405A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001298638A JP2003108405A (ja) 2001-09-27 2001-09-27 試験仕様の作成支援装置及びプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001298638A JP2003108405A (ja) 2001-09-27 2001-09-27 試験仕様の作成支援装置及びプログラム

Publications (1)

Publication Number Publication Date
JP2003108405A true JP2003108405A (ja) 2003-04-11

Family

ID=19119510

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001298638A Pending JP2003108405A (ja) 2001-09-27 2001-09-27 試験仕様の作成支援装置及びプログラム

Country Status (1)

Country Link
JP (1) JP2003108405A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099737A (ja) * 2004-09-29 2006-04-13 Microsoft Corp テスト自動化のスタック階層化
JP2008003767A (ja) * 2006-06-21 2008-01-10 Fuji Electric Holdings Co Ltd テスト仕様書作成支援システムおよび方法
JP2013097640A (ja) * 2011-11-02 2013-05-20 Mitsubishi Electric Corp 監視操作画面試験支援装置
DE112017006969T5 (de) 2017-01-31 2019-10-10 Mitsubishi Electric Corporation Anforderungs-analysegerät, anforderungs-analyseverfahren und anforderungsanalyseprogramm

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006099737A (ja) * 2004-09-29 2006-04-13 Microsoft Corp テスト自動化のスタック階層化
JP2008003767A (ja) * 2006-06-21 2008-01-10 Fuji Electric Holdings Co Ltd テスト仕様書作成支援システムおよび方法
JP2013097640A (ja) * 2011-11-02 2013-05-20 Mitsubishi Electric Corp 監視操作画面試験支援装置
DE112017006969T5 (de) 2017-01-31 2019-10-10 Mitsubishi Electric Corporation Anforderungs-analysegerät, anforderungs-analyseverfahren und anforderungsanalyseprogramm
US11176178B2 (en) 2017-01-31 2021-11-16 Mitsubishi Electric Corporation Requirement analysis apparatus, requirement analysis method, and computer readable medium

Similar Documents

Publication Publication Date Title
Leopold et al. Supporting process model validation through natural language generation
CN118176508A (zh) 复制粘贴更新编辑自动化
JP2017041171A (ja) テストシナリオ生成支援装置およびテストシナリオ生成支援方法
JP2012221380A (ja) 自動プログラム生成装置、方法及びコンピュータプログラム
Tateosian Python For ArcGIS
JP4395761B2 (ja) プログラムテスト支援装置およびその方法
US8996357B2 (en) Method for generating diagrams, and information processing apparatus for same
Bonfanti et al. AsmetaA: animator for abstract state machines
CN112699642B (zh) 复杂医疗文书的索引提取方法及装置、介质及电子设备
CN106775914A (zh) 一种自动生成键值的代码国际化方法及装置
CN112597011B (zh) 一种基于多语言的算子测试用例生成和优化方法
JP6827610B1 (ja) 開発支援装置、プログラム及び開発支援方法
JP2003108405A (ja) 試験仕様の作成支援装置及びプログラム
CN101776993A (zh) 软件交互界面自动生成系统及方法
JP2009230420A (ja) ソースコード品質管理装置
JP2001100999A (ja) ルールベースシステム
Swearngin et al. Easing the generation of predictive human performance models from legacy systems
De Ruvo et al. An eclipse-based editor to support lotos newcomers
CN117215552A (zh) 交互组件的生成方法、装置、存储介质及计算机设备
JP2023159595A (ja) ソースコード判定モデル作成装置、ソースコード判定装置、ソースコード判定モデル作成方法、ソースコード判定方法、及びソースコード判定システム
US9128807B2 (en) Module structural analysis supporting device and program
JP5504212B2 (ja) テストケース自動生成システム、テストケース自動生成方法、およびテストケース自動生成プログラム
JP4663526B2 (ja) 帳票作成支援装置、帳票作成支援方法、および帳票作成支援プログラム
JP2006277127A (ja) 修正プログラムの比較方法
JP6062735B2 (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法、ソフトウェア開発支援プログラム