JP2000298600A - ソフトウェア結合検査装置 - Google Patents

ソフトウェア結合検査装置

Info

Publication number
JP2000298600A
JP2000298600A JP11106727A JP10672799A JP2000298600A JP 2000298600 A JP2000298600 A JP 2000298600A JP 11106727 A JP11106727 A JP 11106727A JP 10672799 A JP10672799 A JP 10672799A JP 2000298600 A JP2000298600 A JP 2000298600A
Authority
JP
Japan
Prior art keywords
design document
information
software
msc
design
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
JP11106727A
Other languages
English (en)
Inventor
Junichi Fukuda
淳一 福田
Kenji Suganuma
賢治 菅沼
Kenji Shibata
健志 柴田
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.)
Denso Corp
Original Assignee
Denso 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 Denso Corp filed Critical Denso Corp
Priority to JP11106727A priority Critical patent/JP2000298600A/ja
Publication of JP2000298600A publication Critical patent/JP2000298600A/ja
Pending legal-status Critical Current

Links

Abstract

(57)【要約】 【課題】複数のソフトウェア部品を結合して構成される
ソフトウェアの結合検査を効率良く行うことが可能なソ
フトウェア結合検査装置を提供する。 【解決手段】画像表示データ格納サーバ14に格納され
ているメッセージ・シーケンス・チャート(MSC)が
読み出され、コンピュータ4にて設計書情報に変換され
る。また、画像表示データ格納サーバ14に格納されて
いるMSCを基にシステム設計者が作成したソースプロ
グラムSがECU18のICE18aにより実際に実行
されてロギングデータが抽出され、ロギングデータ格納
サーバ16に格納される。そして、コンピュータ4によ
り、設計書情報と、その設計書情報のMSCに対応する
ロギングデータとが互いに比較されることにより、設計
書情報とロギングデータとの一致・不一致が検出され、
その検出結果と不一致箇所のデータとから成る比較処理
結果が表示装置10に表示される。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明はソフトウェア結合検
査装置に係り、詳しくは、複数のソフトウェア部品を結
合することにより構成されるソフトウェアの結合検査を
行うためのソフトウェア結合検査装置に関するものであ
る。
【0002】
【従来の技術】従来より、例えばオブジェクト指向のシ
ステム設計におけるソフトウェア開発では、複数のソフ
トウェア部品(ソフトウェアモジュール)を結合するこ
とにより、所望の機能を有する新たなソフトウェアを開
発することが行われている。尚、オブジェクト指向と
は、人間が行動するときのように操作対象に注目して仕
事を進めるという考え方を、コンピュータシステムにモ
デル化したものであり、このオブジェクト指向のプログ
ラミングでは、プログラムの処理を、前記ソフトウェア
部品に相当する「オブジェクト」という単位で考える。
つまり、オブジェクト指向におけるオブジェクトとは、
当該オブジェクト固有のデータとそのデータを扱う処理
とを、ひとまとめにしたソフトウェア部品である。
【0003】オブジェクトの結合は、あるオブジェクト
から別のオブジェクトに対し、特定の処理を実行して欲
しい旨の「処理依頼(メッセージ)」が出力されること
によって図られ、メッセージを受けたオブジェクトで
は、そのメッセージにより特定される処理が行われる。
従って、オブジェクトの結合により作成すべき新たなソ
フトウェアにて所望の機能を実現するためには、各オブ
ジェクトからのメッセージの出力先や出力順序などを設
計することが必要となる。この設計は、メッセージ・シ
ーケンスの設計と呼ばれ、通常、メッセージ・シーケン
ス・チャート(以下、「MSC」と記載する)と呼ばれ
るプログラム設計書が使用される。
【0004】システム設計者は、まず、MSCに規定さ
れた結合を実現することを目標として、MSCを基にオ
ブジェクトを作成してソースプログラムの記述を行う。
次に、オブジェクト間の結合が設計通りに行われ、ソフ
トウェア全体として設計通りの機能が満足されるかどう
か(つまり、MSCを基に記述したソースプログラムが
MSCの通りに仕上がっているかどうか)を検査する。
【0005】この検査は結合検査と呼ばれ、従来は、ソ
ースプログラムとMSCとを設計者自身が目視により比
較する方法で実施されていた。すなわち、MSCに記述
された順番通りにメッセージ出力が行われているかどう
かを、ソースプログラムとつき合わせて追っていく作業
が行われていた。
【0006】
【発明が解決しようとする課題】しかしながら、従来の
結合検査方法では、ソースプログラムが大量にある場
合、その大量のソースプログラムとMSCとを目視によ
り比較するため、検査時間が長くかかる上に、ヒューマ
ンエラーが生じやすいことから正確な検査が難しく検査
の信頼性が低いという問題があった。
【0007】尚、こうした問題は、オブジェクト指向の
システム設計におけるソフトウェア開発に限られるもの
ではなく、複数のソフトウェア部品の結合により新たな
ソフトウェアを作成する場合であれば、同様に起こり得
るものである。本発明は上記問題点を解決するためにな
されたものであって、その目的は、複数のソフトウェア
部品を結合して構成されるソフトウェアの結合検査を効
率良く行うことが可能なソフトウェア結合検査装置を提
供することにある。
【0008】
【課題を解決するための手段】かかる目的を達成するた
めになされた請求項1に記載の発明は、複数のソフトウ
ェア部品の結合により構成され、該複数のソフトウェア
間の処理依頼の授受により機能するソフトウェアを検査
するためのソフトウェア結合検査装置であって、設計書
データ格納手段、設計書情報読取手段、実行結果格納手
段、実行履歴情報読取手段、比較判定手段、出力手段を
備えるものである。そして、設計書データ格納手段は、
ソフトウエア部品間における処理依頼が時系列的に規定
された設計書のデータを格納し、設計書情報読取手段
は、該設計書データ格納手段に記憶された設計書データ
から、ソフトウェア部品間における処理依頼を設計書情
報として読み取る。また、実行結果格納手段は、前記設
計書に基づいて作成された前記ソフトウェアの実行結果
を格納し、実行履歴情報読取手段は、該実行結果格納手
段に格納された実行結果から、ソフトウェア部品間にお
ける処理依頼の履歴を実行履歴情報として時系列順に読
み取る。そして、比較判定手段は、該実行履歴情報読取
手段にて読み取られた実行履歴情報を、前記設計書情報
読取手段にて読み取られた設計書情報と比較し、該両情
報の一致・不一致を判定する。その比較判定による判定
結果は、出力手段により当該ソフトウェア結合検査装置
外部に出力される。
【0009】従って、請求項1に記載の発明によれば、
ソフトウェア部品間の結合が設計通りに行われ、前記設
計書に基づいて作成された前記ソフトウェアが前記設計
書の通りに仕上がっているがどうかを、容易かつ確実に
判断することができる。そして、前記ソフトウェアが大
量にある場合でも、その大量のソフトウェアの結合検査
はソフトウェア結合検査装置により自動的に行われるた
め、従来のようにシステム設計者が目視により行う場合
に比べて、検査時間が短くなる上に、ヒューマンエラー
が生じることがなく正確な検査が可能になることから検
査の信頼性を高めることができる、その結果、複数のソ
フトウェア部品を結合して構成されるソフトウェアの結
合検査の効率を向上させることができる。尚、前記設計
書情報と前記実行履歴情報とが「一致している」とは、
前記設計書情報の内容(処理依頼)に実行履歴情報の内
容(処理依頼履歴)が矛盾していないことである。
【0010】次に、請求項2に記載の発明は、請求項1
に記載のソフトウェア結合検査装置において、前記設計
書は階層構造をとり、上位階層の設計書の中に下位階層
の設計書が含まれ、上位階層の設計書中のどこに下位階
層の設計書が含まれるかを示すための第1の階層識別情
報が上位階層の設計書中に規定されている。そして、前
記設計書情報読取手段は、前記第1の階層識別情報を含
む設計書情報を読み取る。また、前記設計書に基づいて
作成された前記ソフトウェアの実行結果には、上位階層
の設計書中のどこに下位階層の設計書が含まれるかを示
すための第2の階層識別情報が規定されている。そし
て、前記実行履歴情報読取手段は、前記第2の階層識別
情報を含む実行履歴情報を読み取る。さらに、前記比較
判定手段は、前記第1および第2の階層識別情報に基づ
き、前記上位階層の設計書と前記下位階層の設計書とか
ら選択された少なくとも1つの設計書について、前記実
行履歴情報と前記設計書情報との一致・不一致を判定す
る。
【0011】従って、請求項2に記載の発明によれば、
前記設計書が階層構造をとる場合でも、結合検査を確実
に行うことが可能になり、結合検査の効率を向上させる
ことができる。そして、結合検査に際しては、上位階層
の設計書と下位階層の設計書との両方について結合検査
を行うようにしてもよく、上位階層の設計書の結合検査
のみ、または、下位階層の設計書の結合検査のみを行う
ようにしてもよく、どの結合検査を行うかはシステム設
計者が自由に選択することができる。そのため、上位階
層または下位階層のいずれか一方の設計書のみを設計変
更した場合には、その設計変更した設計書の結合検査の
みを行い、設計変更しなかった設計書については結合検
査を行わないようにすることで、両方の設計書の結合検
査を行う場合に比べて検査時間を短縮することができ
る。その結果、システム設計者が必要とする階層の設計
書だけを選択して結合検査を行うことが可能になるた
め、結合検査の自由度が増してさらなる効率化を図るこ
とができる。
【0012】次に、請求項3に記載の発明は、請求項1
または請求項2に記載のソフトウェア結合検査装置にお
いて、前記設計書を構成するソフトウェア部品のうち任
意のものがグループ化され、そのグループの定義内容を
示すグループ定義情報が前記設計書中に規定されてい
る。そして、前記設計書情報読取手段は、前記グループ
定義情報を含む設計書情報を読み取る。また、前記比較
判定手段は、前記グループ定義情報に基づき、前記実行
履歴情報読取手段にて読み取られた実行履歴情報のう
ち、前記グループ化されたソフトウェア部品に関する情
報を除いた実行履歴情報について、前記設計書情報読取
手段にて読み取られた設計書情報と比較し、該両情報の
一致・不一致を判定する。
【0013】従って、請求項3に記載の発明によれば、
前記設計書を構成するソフトウェア部品のうち任意のも
のがグループ化されている場合でも、結合検査を確実に
行うことが可能になり、結合検査の効率を向上させるこ
とができる。そして、結合検査に際して、複数のソフト
ウェア品を見かけ上1つのグループとして扱うことが可
能になるため、既にソフトウェアとしての動作が保証さ
れている部分をグループとして扱い、そのグループの結
合検査を省いて、その他の部分の結合検査のみを行うこ
とができる。従って、システム設計者が必要とする部分
だけを選択して結合検査を行うことが可能になるため、
設計書全体の結合検査を行う場合に比べて、検査時間を
短縮することができる上に、結合検査の自由度が増して
さらなる効率化を図ることができる。
【0014】ところで、請求項4に記載の発明のよう
に、請求項1〜3のいずれか1項に記載のソフトウェア
結合検査装置において、前記出力手段は、前記比較判定
手段が前記実行履歴情報と前記設計書情報とが不一致で
あると判定すると、該実行履歴情報と前記設計書情報と
の不一致の箇所を出力するようにしてもよい。
【0015】従って、請求項4に記載の発明によれば、
前記実行履歴情報と前記設計書情報との不一致の箇所が
判明するため、その修正すべき不一致箇所を確実に特定
することが可能になり、プログラミングのミスを素早く
修正できることからソフトウェア開発期間を短縮でき
る。
【0016】また、請求項5に記載の発明のように、請
求項1〜4のいずれか1項に記載のソフトウェア結合検
査装置において、前記設計書データ格納手段は、前記処
理依頼が文字および図形により時系列的に規定された設
計書の画像表示データを格納し、前記設計書情報読取手
段は、前記設計書データ格納手段に記憶された設計書の
画像表示データから、前記設計書上の文字および図形の
位置を検出し、該検出結果に基づいて、ソフトウェア部
品間における処理依頼を設計書情報として読み取るよう
にしてもよい。
【0017】従って、請求項5に記載の発明によれば、
前記処理依頼が文字および図形により時系列的に規定さ
れた書式の設計書を用いることにより、設計書の作成が
容易になるため、請求項1〜4に記載の発明の効果を得
やすくなる。そして、請求項6に記載の発明のように、
請求項5に記載のソフトウェア結合検査装置において、
前記設計書の画像表示データには、個々の設計書を識別
するためのシナリオ名と、前記ソフトウェア部品の名称
および生存線と、前記処理依頼の名称と、該処理依頼の
内容を表すために前記生存線間に引かれた矢印とが記載
されるようにしてもよい。
【0018】また、請求項7に記載の発明のように、請
求項6に記載のソフトウェア結合検査装置において、前
記設計書情報読取手段は、前記設計書の画像表示データ
からシナリオ名を検出する第1の処理と、前記設計書の
画像表示データから前記ソフトウェア部品の名称および
該名称の記載位置を検出する第2の処理と、前記設計書
の画像表示データから前記ソフトウェア部品の生存線お
よび該生存線の記載位置を検出する第3の処理と、前記
設計書の画像表示データから、前記生存線の記載位置に
基づいて該生存線間に引かれた前記処理依頼の内容を表
す矢印を検出する第4の処理と、前記設計書の画像表示
データから前記処理依頼の名称を検出する第5の処理
と、前記第1〜第5の処理にて検出されたデータを時系
列順にソートして整理する第6の処理とを備えるように
してもよい、従って、請求項7に記載の発明によれば、
前記設計書の画像表示データから、前記設計書上の文字
および図形の位置を検出し、該検出結果に基づいて、ソ
フトウェア部品間における処理依頼を設計書情報として
読み取ることを容易かつ確実に行うことができる。
【0019】尚、以下に述べる発明の実施の形態におい
て、特許請求の範囲または課題を解決するための手段に
記載の「設計書データ格納手段」は画像表示データ格納
サーバ14に該当し、同じく「設計書情報読取手段」は
コンピュータ4におけるステップ100およびステップ
102〜118の各処理に該当し、同じく「実行結果格
納手段」はロギングデータ格納サーバ16に該当し、同
じく「実行履歴情報読取手段」はコンピュータ4におけ
るステップ200の処理に該当し、同じく「比較判定手
段」はコンピュータ4におけるステップ400の処理に
該当し、同じく「出力手段」は表示装置10およびコン
ピュータ4におけるステップ500の処理に該当し、同
じく「第1の処理」はコンピュータ4におけるステップ
102の処理に該当し、同じく「第2の処理」はコンピ
ュータ4におけるステップ104,106の各処理に該
当し、同じく「第3の処理」はコンピュータ4における
ステップ104,108の各処理に該当し、同じく「第
4の処理」はコンピュータ4におけるステップ112の
処理に該当し、同じく「第5の処理」はコンピュータ4
におけるステップ114の処理に該当し、同じく「第6
の処理」はコンピュータ4におけるステップ118の処
理に該当し、同じく「第1の階層識別情報」は図6
(a)に示す枠およびその中に記載された「シナリオ
2」の文字に該当し、同じく「第2の階層識別情報」は
ロギングデータに挿入された各ブロックB1,B2に対
応するブロックに該当し、同じく「グループ定義情報」
は図10(b)に示すグループ定義の内容を示す文字
(「Grp:obj2,obj3」)に該当する。
【0020】
【発明の実施の形態】以下、本発明を具体化した各実施
形態を図面と共に説明する。尚、各実施形態において、
同じ構成部材については符号を等しくしてその詳細な説
明を省略する。
【0021】(第1実施形態)図1は、本第1実施形態
のソフトウェア結合検査装置2の全体構成を表すブロッ
ク図である。ソフトウェア結合検査装置2は、コンピュ
ータ4、キーボード6、マウス8、表示装置10、画像
表示データ格納サーバ14、ロギングデータ格納サーバ
16、電子制御装置(以下、「ECU」と記載する)1
8、インサーキットエミュレー夕(以下、「ICE」と
記載する)18aから構成されている。
【0022】本第1実施形態における開発ターゲットは
車載電子制御装置に搭載するソフトウェアであり、ソフ
トウェア結合検査装置2は当該車載電子制御装置に搭載
するソフトウェアの結合検査に使用される。そのため、
ECU18には、当該車載電子制御装置と同一構成のも
のが備えられている。
【0023】コンピュータ4は、CPU,ROM,RA
M,I/O回路を有する周知の構成をとる。コンピュー
タ4には、キーボード6やマウス8といった各種入力装
置と、画面表示可能な表示装置10とが接続され、一般
的なコンピュータシステムが構成されている。
【0024】また、コンピュータ4には、画像表示デー
タ格納サーバ14およびロギングデータ格納サーバ16
がそれぞれ通信線を介して接続されている。画像表示デ
ータ格納サーバ14には、開発ターゲット(本第1実施
形態では車載電子制御装置)に要求される仕様を記述し
た多数のプログラム設計書(MSC)の画像表示データ
が格納されている。
【0025】前述のように、システム設計者は、MSC
に規定された結合を実現することを目標として、画像表
示データ格納サーバ14に格納されたMSCを基にオブ
ジェクトを作成してソースプログラムSの記述を行う。
ECU18には、ECU18のマイクロプロセッサによ
り本来行われるべき動作を模擬的に実現するICE18
aが接続されている。ICE18aは、システム設計者
が記述したソースプログラムSを実際に実行した結果を
途中経過を含めて抽出する。そのICE18aの抽出し
たソースプログラムSの途中経過を含む実行結果(実行
履歴)のデータはロギングデータ(実行履歴情報)と呼
ばれ、そのロギングデータはロギングデータ格納サーバ
16に格納される。
【0026】つまり、ロギングデータ格納サーバ16に
は、ソースプログラムSを実行可能なロードモジュール
としてECU18のICE18aに実行させた実行履歴
であるロギングデータが格納されている。図2(a)
は、画像表示データ格納サーバ14に格納されているM
SCの一例を示す模式図である。
【0027】MSCは文字データおよび図形データから
構成されている。MSCの左上端部には原点(基準点)
が設定され、その原点に対して、横方向にx軸が延出さ
れると共に、縦方向にy軸が延出されており、そのxy
軸より成るxy座標平面上に表示された文字および図形
によりプログラム設計が表されている。
【0028】MSCの所定位置(図2(a)の例では左
上部の原点近傍)には、個々のMSCを識別するための
シナリオ名(またはシナリオ番号。図2(a)の例では
「ZZZZ」)が記載されている。図2(a)に例示す
るMSCは、4つのオブジェクトobj1,obj2,
obj3,obj4の結合を示したものである。
【0029】各オブジェクトは、シナリオ名よりも下方
に配置された「オブジェクト名」を示す文字(obj1
〜obj4)と、その文字の下方からy軸に平行に配置
された縦線から成る「生存線」として記載されている。
また、任意のオブジェクトから他のオブジェクトへの処
理依頼(メッセージ)は、生存線の間に引かれた矢印
と、その矢印の上方に配置された「メッセージ名」を示
す文字(MSG1〜MSG5)として記載されている。
【0030】ここで、y軸方向は時間の経過に対応して
おり、上方に表示されたメッセージから順に出力が行わ
れることを示している。また、メッセージの矢印は、メ
ッセージが出力される方向を示している。尚、オブジェ
クト名およびメッセージ名を示す文字は、x軸に平行に
横書きで記載されている。
【0031】すなわち、図2(a)に例示するMSCに
おいては、まず最初に、オブジェクトobj1からob
j2へメッセージMSG1が出力され、次に、オブジェ
クトobj2からobj3へメッセージMSG2が出力
され、続いて、オブジェクトobj3からobj4へメ
ッセージMSG3が出力され、次に、オブジェクトob
j4からobj3へメッセージMSG4が出力され、最
後に、オブジェクトobj3からobj1へメッセージ
MSG5が出力されることが示されている。
【0032】そして、各オブジェクトは、メッセージを
受けるとそれに対応した処理を行い、必要に応じて他の
オブジェクトに対しメッセージを出力する。例えば、オ
ブジェクトobj2は、obj1からメッセージMSG
1を受け取ると、そのメッセージMSG1に対応した処
理を行ってメッセージMSG2を生成し、そのメッセー
ジMSG2をオブジェクトobj3に対して出力する。
【0033】次に、本第1実施形態のソフトウェア結合
検査装置2による結合検査処理について、図3に示すフ
ローチャートに従って説明する。結合検査処理は、ソフ
トウェア結合検査装置2のコンピュータ4に対して、予
め定められた命令が各種入力装置(キーボード6、マウ
ス8)を用いて入力されることにより起動される。コン
ピュータ4が起動すると、内蔵されているROMに記録
されている結合検査処理プログラムに従い、コンピュー
タによる各種演算処理によって、以下の各ステップの処
理を実行する。尚、結合検査プログラムをコンピュータ
で読み取り可能な各種記録媒体(半導体メモリ,ハード
ディスク,フロッピーディスク,データカード(ICカ
ード,磁気カードなど),光ディスク(CD−ROM,
DVDなど),光磁気ディスク(MDなど),相変化デ
ィスク,磁気テープなど)に記録しておき、当該結合検
査プログラムを必要に応じてコンピュータ4のCPUに
ロードして起動することにより用いるようにしてもよ
い。
【0034】結合検査処理が起動されると、まず、図3
のステップ(以下、「S」と記載する)100において
設計書情報取込処理が行われる。すなわち、コンピュー
タ4により、画像表示データ格納サーバ14に格納され
ているMSCが読み出され、そのMSCに記載されてい
るデータが読み込まれる。
【0035】図4は、S100の設計書情報取込処理の
詳細を示すフローチャートである。まず、図4のS10
2において、シナリオ名が検出される。前述のように、
シナリオ名(「ZZZZ」)はMSCの所定位置(例え
ば、左上部の原点近傍)に記載されているため、その所
定位置に記載された文字(=ZZZZ)を読み取ること
により、シナリオ名を検出することができる。
【0036】次に、S104において、オブジェクトが
検出される。前述のように、各オブジェクトは、シナリ
オ名よりも下方に横書きで配置された「オブジェクト
名」を示す文字(obj1〜obj4)と、その文字の
下方からy軸に沿って配置された縦線から成る生存線と
して記載されている。そのため、シナリオ名よりも下方
であり、y軸方向の予め設定された所定範囲をスキャン
することによって、その所定範囲内にある文字を認識
し、その文字の座標を検出することにより、オブジェク
トを検出することができる。
【0037】次に、S106において、検出されたオブ
ジェクトのオブジェクト名を示す文字(obj1〜ob
j4)を読み取ることにより、オブジェクト名が検出さ
れる。次に、S108において、オブジェクト名の存在
するx軸方向の範囲で、オブジェクト名の下方に配置さ
れた縦線を検出することにより生存線が検出されると共
に、その生存線のx座標が検出される。
【0038】次に、S110において、前記したy軸方
向の予め設定された所定範囲に、その他にもオブジェク
ト名を示す文字がないかどうかが判断され、他にもある
場合(S110:NO)にはS104へ戻り、S104
〜S108の処理が再び行われる。このように、S10
4〜S108の処理の繰り返しにより、MSCに記述さ
れている全てのオブジェクトobj1〜obj4につい
て、そのオブジェクト名と生存線の位置(x座標)とが
検出される。そして、前記したy軸方向の予め設定され
た所定範囲には、その他にオブジェクト名を示す文字が
ないと判断された場合(S110:YES)にはS11
2へ移行する。
【0039】S112において、矢印データが検出され
る。前述のように、メッセージは、生存線の間に引かれ
た矢印と、その矢印の上方に配置された「メッセージ
名」を示す文字(MSG1〜MSG5)として記載され
ている。また、y軸方向は時間の経過に対応しており、
上方に表示されたメッセージから順に出力が行われるこ
とを示している。そのため、S108にて検出された生
存線のx座標を基準にして、そのx座標を始点とした矢
印がないかどうかが検出され、検出されたならば当該矢
印の始点および終点のy座標(矢印データ)が検出され
る。この矢印データは、オブジェクト間におけるメッセ
ージ出力の順序を示すものである。
【0040】次に、S114において、矢印の上方に記
載されているメッセージ名が検出される。次に、S11
6において、生存線のx座標を始点とした矢印がその他
にないかどうかが判断され、他にもある場合(S11
6:NO)にはS112へ戻り、S112,S114の
処理が再び行われる。このように、S112,S114
の処理の繰り返しにより、MSCに記述されている全て
のメッセージMSG1〜MSG5について、その矢印デ
ータ(矢印の始点および終点のy座標)とメッセージ名
とが検出される。そして、全てのオブジェクトobj1
〜obj4の生存線について、当該生存線のx座標を始
点とした矢印がその他にないと判断された場合(S11
6:YES)にはS118へ移行する。
【0041】そして、S118において、以上の一連の
処理にて検出されたデータ(オブジェクト名、矢印デー
タ、メッセージ名、等)を、検出されたメッセージのy
座標に基づいて時系列順にソートして整理することによ
り設計書情報が作成される。そして、作成された設計書
情報を、コンピュータ4に内蔵されたRAMに格納する
ことにより、設計書情報取込処理が終了される。
【0042】図2(b)は、S118の処理で作成され
た設計書情報を示す模式図である。以上のようにして、
図3のS100における設計書情報取込処理により、画
像データ格納サーバ14に格納されている図2(a)に
示すMSCが読み出され、コンピュータ4にて図2
(b)に示す設計書情報に変換されてRAMに格納され
る。その後、図3に戻り、S200以降の処理が順次行
われる。
【0043】まず、図3のS200において、ロギング
データの取り込みが行われる。すなわち、コンピュータ
4により、ロギングデータ格納サーバ16に格納されて
いるロギングデータが読み出され、S100の設計書情
報取込処理により作成された設計書情報と比較し易い形
式のロギングデータに変換される。
【0044】図5は、ロギングデータ格納サーバ16に
格納されているロギングデータの一例を示す模式図であ
る。尚、図5において、図5(a)に示すものが実際の
ロギングデータであるが、16進で書かれたデータの羅
列でありそのままでは分かり難いため、説明がし易いよ
うに表記を変更したものを図5(b)に示す。
【0045】図5(b)に示すように、ロギングデータ
は、ソースプログラムSの実行履歴(メッセージ出力)
が時系列的に格納された、多数のブロック(8バイト)
から構成されている。各ブロックには、そのブロックが
どういったデータを格納しているかを示すデータ種別
(2バイト)が付されており、例えば、データ種別が
「0100」のブロックには、発行元のオブジェクトI
D、送り先のオブジェクトIDおよびメッセージIDと
いったメッセージ出力に関するデータが格納されてい
る。
【0046】さて、ECU18のICE18aでは、多
数のMSCに基づいて作成されたソースプログラムSが
連続して実行される。また、ロギングデータは、当該ソ
ースプログラムSの一連の実行履歴が記録されたもので
ある。そのため、ロギングデータの各ブロックがそれぞ
れ、どのMSCに対応する実行履歴であるかが示される
必要がある。従って、同一のMSCに対応する一連のブ
ロック群について、その前には先頭(スタート(000
0))を示すデータ種別が付されたブロックが挿入さ
れ、その後には最後尾(エンド(FF00))を示すデ
ータ種別が付されたブロックが挿入されている。データ
種別が「0000」である先頭のブロックには、対応す
るMSCのシナリオ名が格納されている。
【0047】以上のように、図3のS200にてロギン
グデータが取り込まれた後に、S300へ移行する。そ
して、S300において、コンピュータ4により、S1
00にて作成された設計書情報のシナリオ名(図2
(b)の「ZZZZ」)に基づいて、ロギングデータ内
の検査対象が指定される。
【0048】次に、S400において比較処理が行われ
る。すなわち、コンピュータ4により、図2(b)に示
す設計書情報と図5に示すロギングデータとが、先頭の
ブロックから順番に1ブロック分ずつ時系列順に読み出
され、互いに比較されることにより、設計書情報とロギ
ングデータとの一致または不一致が検出され、不一致の
箇所があれば、当該不一致箇所のロギングデータが検出
される。
【0049】次に、S500において、S400の比較
処理結果が表示装置10に画面表示され、結合検査処理
が終了される。すなわち、表示装置10の画面上には、
設計書情報に基づいてMSCが描画表示され、S400
の比較処理結果が全て一致する場合には“比較OK”と
表示され、不一致箇所がある場合には“比較NG”とい
う表示が行われると共に、当該不一致箇所が具体的に表
示される。尚、設計書情報およびロギングデータに基づ
いてMSCが描画表示される際には、オブジェクトID
とオブジェクト名との対応関係やメッセージIDとメッ
セージ名との対応関係が規定されたテーブル(図示略)
が参照される。
【0050】以上詳述したように、本第1実施形態のソ
フトウェア結合検査装置2によれば、以下の作用・効果
を得ることができる。 (1−1)設計書情報取込処理(図3のS100、図4
のS102〜S118)により、画像表示データ格納サ
ーバ14に格納されている図2(a)に示すMSCが読
み出され、コンピュータ4にて図2(b)に示す設計書
情報に変換される。
【0051】また、システム設計者は、画像表示データ
格納サーバ14に格納されたMSCを基にソースプログ
ラムSを作成しておく。そのソースプログラムSはEC
U18のICE18aにより実際に実行されてロギング
データが抽出され、そのロギングデータはロギングデー
タ格納サーバ16に格納される。そこで、ロギングデー
タ格納サーバ16に格納されている図5に示すロギング
データが読み出され、コンピュータ4により設計書情報
と比較し易い形式に変換される。
【0052】そして、コンピュータ4により、設計書情
報と、その設計書情報のMSCと対応するロギングデー
タとが互いに比較されることにより、設計書情報とロギ
ングデータとの一致または不一致が検出され、その検出
結果と不一致箇所のデータとから成る比較処理結果が表
示装置10に表示される(図3のS300〜S40
0)。
【0053】つまり、MSCから設計書情報を作成する
と共に、ソースプログラムSからロギングデータを作成
し、設計書情報とロギングデータとを比較することによ
り、MSCとソースプログラムSとの結合検査を行って
いる。従って、オブジェクト間の結合が設計通りに行わ
れ、MSCを基に作成したソースプログラムSがMSC
の通りに仕上がっているがどうかを、容易かつ確実に判
断することができる。そして、ソースプログラムSが大
量にある場合でも、その大量のソースプログラムSの結
合検査はソフトウェア結合検査装置2により自動的に行
われるため、従来のようにシステム設計者が目視により
行う場合に比べて、検査時間が短くなる上に、ヒューマ
ンエラーが生じることがなく正確な検査が可能になるこ
とから検査の信頼性を高めることができる、その結果、
複数のソフトウェア部品を結合して構成されるソフトウ
ェアの結合検査の効率を向上させることができる。
【0054】(1−2)前記比較処理結果が表示装置1
0に表示される際に、設計書情報とロギングデータとの
不一致箇所が表示されるため、修正すべき箇所を確実に
特定することが可能になり、プログラミングのミスを素
早く修正できることからソフトウェア開発期間を短縮で
きる。
【0055】(第2実施形態)本第2実施形態は、MS
Cおよびロギングデータを階層構造にしたものである。
尚、本第2実施形態におけるソフトウェア結合検査装置
2の全体構成は、図1に示す第1実施形態のものと同じ
である。
【0056】図6(a)は、本第2実施形態において画
像表示データ格納サーバ14に格納されているMSCの
一例を示す模式図である。図6(a)に示すMSCにお
いて、図2(a)に示す第1実施形態のMSCと異なる
のは以下の点である。
【0057】(1)MSCの所定位置(図6(a)の例で
は左上部の原点近傍)に記載されている個々のMSCを
識別するためのシナリオ名に「シナリオ1」と記載され
ている。 (2)各メッセージMSG2,MSG3の矢印の間には、
各オブジェクトobj2〜obj4の生存線に重なるよ
うに枠が配置され、第1の階層識別情報として、その枠
の中に「シナリオ2」と記載されている。
【0058】図6(b)は、図6(a)に示すMSCに
対して第1実施形態の設計書情報読込処理(図3のS1
00、図4のS102〜S118)と同様の処理を行う
ことにより作成された設計書情報を示す模式図である。
図7(a)は、図6(a)に示すMSCに対応して、画
像表示データ格納サーバ14に格納されているMSCの
一例を示す模式図である。
【0059】図7(a)に示すMSCでは、MSCの所
定位置(図7(a)の例では左上部の原点近傍)に記載
されている個々のMSCを識別するためのシナリオ名に
「シナリオ2」と記載されている。また、図7(a)に
示すMSCは、3つのオブジェクトobj2,obj
3,obj4の結合を示したものであり、その各オブジ
ェクトobj2〜obj4は、図6(a)に示すMSC
の各オブジェクトobj2〜obj4と同じものであ
る。そして、図7(a)に示すMSCにおいては、まず
最初に、オブジェクトobj2からobj3へメッセー
ジMSG6が出力され、次に、オブジェクトobj3か
らobj4へメッセージMSG7が出力され、最後に、
オブジェクトobj4からobj3へメッセージMSG
8が出力されることが示されている。
【0060】図7(b)は、図7(a)に示すMSCに
対して第1実施形態の設計書情報読込処理と同様の処理
を行うことにより作成された設計書情報を示す模式図で
ある。次に、本第2実施形態における結合検査処理につ
いて、図3に示すフローチャートに従って説明する。
尚、本第2実施形態において、第1実施形態と同じ処理
については詳細な説明を省略する。
【0061】まず、図3のS100において設計書情報
読込処理が行われる。ここで、本第2実施形態では、図
6(a)に示すMSC(以下、「シナリオ1のMSC」
と記載する)と、図7(a)に示すMSC(以下、「シ
ナリオ2のMSC」と記載する)とについて、それぞれ
第1実施形態の設計書情報読込処理(図4のS102〜
S108)と同様の処理を行うことにより、図6(b)
および図7(b)に示す2つの設計書情報が作成され
る。そして、図6(b)および図7(b)に示す2つの
設計書情報をまとめることにより、図8に示す設計書情
報が作成される。この設計書情報を、コンピュータ4に
内蔵されたRAMに格納することにより、設計書情報取
込処理が終了される。
【0062】図6〜図8に示すように、シナリオ1のM
SCとシナリオ2のMSCとは階層構造をとり、上位階
層(親階層)のシナリオ1のMSCの中に、下位階層
(子階層)のシナリオ2のMSCが含まれている。すな
わち、図6(a)に示すシナリオ1のMSCにおいて
は、まず最初に、オブジェクトobj1からobj2へ
メッセージMSG1が出力され、次に、オブジェクトo
bj2からobj3へメッセージMSG2が出力され、
続いて、前記した図7(a)に示すシナリオ2のMSC
の処理が行われ、その後、オブジェクトobj3からo
bj4へメッセージMSG3が出力され、次に、オブジ
ェクトobj4からobj3へメッセージMSG4が出
力され、最後に、オブジェクトobj3からobj1へ
メッセージMSG5が出力されることが示されている。
【0063】それに対応して、図8に示す設計書情報に
おいては、メッセージMSG2に対応するブロックとメ
ッセージMSG3に対応するブロックとの間に、図7
(b)に示すシナリオ2の設計書情報が挿入されてお
り、そのシナリオ2の設計書情報の前にはシナリオ2の
先頭(「スタート」)を示すブロックB1が挿入され、
シナリオ2の設計書情報の後にはシナリオ2の最後尾
(「エンド」)を示すブロックB2が挿入されている。
【0064】それに対して、図9(a)に示すように、
図6(a)に示すシナリオ1のMSCと図7(a)に示
すシナリオ2のMSCとを階層構造を用いることなく1
つのMSCによって記載した場合、その設計書情報は図
9(b)に示すようになる。図9(b)に示す設計書情
報には、図8に示す各ブロックB1,B2が設けられて
いない。
【0065】次に、図3のS200においてロギングデ
ータの取り込みが行われる。ここで、本第2実施形態で
は、ロギングデータ格納サーバ16に格納されているロ
ギングデータにも、図8に示す各ブロックB1,B2に
対応するブロックが挿入されている。つまり、システム
設計者は、画像表示データ格納サーバ14に格納された
MSCを基にソースプログラムSを作成する際に、MS
Cの階層構造に留意してソースプログラムSを作成して
おき、ECU18のICE18aによりソースプログラ
ムSが実際に実行されて抽出されたロギングデータに
も、図8に示す各ブロックB1,B2に対応するブロッ
ク(第2の階層識別情報)が挿入されるようにしてお
く。
【0066】次に、図3のS300において、第1実施
形態と同様にしてロギングデータ内の検査対象が指定さ
れる。次に、S400において比較処理が行われる。こ
こで、本第2実施形態では、図8に示す設計書情報と図
5に示すロギングデータとが、先頭のブロックから順番
に1ブロックずつ時系列順に読み出されて互いに比較さ
れ、設計書情報とロギングデータとの一致または不一致
が検出され、不一致の箇所があれば、当該不一致箇所の
ロギングデータが検出される。
【0067】このとき、図8に示すブロックB1に相当
するシナリオ2の先頭(「スタート」)を示すデータが
検出されると、ブロックB2に相当するシナリオ2の最
後尾(「エンド」)を示すデータまで比較動作が停止さ
れ、メッセージMSG3に対応するブロックまで飛ん
で、そのブロックから比較動作が再開される。そして、
図6(b)に示す設計書情報とロギングデータとの比較
処理が終了すると、先ほど比較動作を飛ばしたブロック
B1に戻り、ブロックB1からブロックB2まで順次比
較動作を行うことにより、図7(b)に示す設計書情報
とロギングデータとの比較処理が行われる。
【0068】次に、図3のS500において、第1実施
形態と同様にしてS400の比較処理結果が表示装置1
0に画面表示され、結合検査処理が終了される。以上詳
述したように、本第2実施形態によれば、第1実施形態
と同様の作用・効果に加えて、以下の作用・効果を得る
ことができる。
【0069】(2−1)シナリオ1のMSCとシナリオ
2のMSCとが階層構造をとり、上位階層(親階層)の
シナリオ1のMSCの中に、下位階層(子階層)のシナ
リオ2のMSCが含まれる場合には、図6(a)に示す
ようにシナリオ1のMSCを所定の書式で記載すると共
に、図7(a)に示すようにシナリオ2のMSCを記載
しておく。そして、設計書情報読込処理によりシナリオ
1の設計書情報を作成する際には、図8に示すように、
シナリオ1の設計書情報の中にシナリオ2の設計書情報
を挿入すると共に、シナリオ2の先頭を示すブロックB
1と最後尾を示すブロックB2とを挿入しておく。
【0070】一方、ロギングデータ格納サーバ16に格
納されているロギングデータにも、図8に示す各ブロッ
クB1,B2に対応するブロックを挿入しておく。そし
て、コンピュータ4により、設計書情報と、その設計書
情報のMSCと対応するロギングデータとを互いに比較
する際には、シナリオ1の設計書情報についての比較動
作を行っている途中で、シナリオ2の先頭を示すデータ
(ブロックB1)が検出されると、シナリオ2の最後尾
を示すデータ(ブロックB2)まで比較動作を停止し、
シナリオ1の残りのデータまで飛んでそのデータ(メッ
セージMSG3に対応するブロック)から比較動作を再
開する。その後、シナリオ1の設計書情報についての比
較動作が終了したら、先ほど比較動作を飛ばしたシナリ
オ2の先頭を示すデータまで戻り、シナリオ2の最後尾
を示すデータまで順次比較動作を行う。
【0071】従って、MSCが階層構造をとる場合で
も、MSCとソースプログラムSとの結合検査を確実に
行うことが可能になり、結合検査の効率を向上させるこ
とができる。 (2−2)結合検査に際しては、上記のように上位階層
(親階層)のシナリオ1のMSCと下位階層(子階層)
のシナリオ2のMSCとの両方について結合検査を行う
ようにしてもよく、親階層のシナリオ1のMSCの結合
検査のみ、または、子階層のシナリオ2のMSCの結合
検査のみを行うようにしてもよく、どの結合検査を行う
かはシステム設計者が自由に選択することができる。
【0072】つまり、親階層のシナリオ1のMSCの結
合検査のみを行う場合は、上記(2−1)と同様にして
シナリオ1の設計書情報についての比較動作が終了した
ら比較処理を終了すればよい。また、子階層のシナリオ
2のMSCの結合検査のみを行う場合は、親階層のシナ
リオ1のMSCの結合検査を行わず、第1実施形態と同
様にしてシナリオ2のMSCの結合検査のみを行えばよ
い。
【0073】従って、シナリオ1またはシナリオ2のい
ずれか一方のMSCのみを設計変更した場合には、その
設計変更したシナリオのMSCの結合検査のみを行い、
設計変更しなかったシナリオについては結合検査を行わ
ないようにすることで、シナリオ1とシナリオ2の両方
のMSCの結合検査を行う場合に比べて、検査時間を短
縮することができる。その結果、システム設計者が必要
とする階層のシナリオのMSCだけを選択して結合検査
を行うことが可能になるため、結合検査の自由度が増し
てさらなる効率化を図ることができる。
【0074】それに対して、図9に示すように、シナリ
オ1のMSCとシナリオ2のMSCとを階層構造を用い
ることなく1つのMSCによって記載した場合には、上
記のような選択的な結合検査を行うことができないた
め、検査時間が長くなってしまい結合検査の効率が低下
することになる。
【0075】(第3実施形態)本第3実施形態は、MS
Cの一部をグループ化したものである。尚、本第3実施
形態におけるソフトウェア結合検査装置2の全体構成
は、図1に示す第1実施形態のものと同じである。
【0076】図10(a)は、第1実施形態において画
像表示データ格納サーバ14に格納されているMSCの
一例を示す模式図である。図10(a)に示すMSC
は、4つのオブジェクトobj1,obj2,obj
3,obj4の結合を示したものであり、まず最初に、
オブジェクトobj1からobj2へメッセージMSG
1が出力され、次に、オブジェクトobj2からobj
3へメッセージMSG2が出力され、続いて、オブジェ
クトobj3からobj2へメッセージMSG3が出力
され、次に、オブジェクトobj2からobj4へメッ
セージMSG4が出力され、最後に、オブジェクトob
j3からobj1へメッセージMSG5が出力されるこ
とが示されている。
【0077】図10(c)は、図10(a)に示すMS
Cに対して第1実施形態の設計書情報読込処理(図3の
S100、図4のS102〜S118)と同様の処理を
行うことにより作成された設計書情報を示す模式図であ
る。図10(b)は、本第3実施形態において画像表示
データ格納サーバ14に格納されているMSCを示す模
式図であり、図10(a)に示すMSCを本第3実施形
態に合わせて書き直したものである。
【0078】図10(b)に示すMSCにおいて、図1
0(a)に示すMSCと異なるのは以下の点である。 [1]オブジェクトobj2とオブジェクトobj3のそ
れぞれの生存線が1本にまとめられ、その生存線の上方
には、グループのオブジェクト名として「Grp」と記
載されている。
【0079】[2]MSCの所定位置(図10(b)の例
では最下部の中央近傍)には、「<グループ定義>」と
いう文字が記載され、その下方には、グループ定義情報
としてグループ定義の内容を示す文字(「Grp:ob
j2,obj3」)が記載されている。
【0080】図10(b)に示すMSCでは、各オブジ
ェクトobj2,obj3が1つのグループにまとめら
れ、そのグループのオブジェクト名が「Grp」とされ
ている。ここで、グループ定義の内容を示す文字の記載
方法は、例えば、グループのオブジェクト名(=Gr
p)の次に、所定の符号(図10(b)の例で
は「:」)を記載し、それに続いて、各オブジェクトの
オブジェクト名を所定の符号(図10(b)の例で
は「,」)で区切って併記するように規定されている。
【0081】このように、グループのオブジェクト名と
グループ定義の内容とをMSC上に記載することによ
り、どのようなグループ化がなされているかが分かるよ
うになっている。次に、本第3実施形態における結合検
査処理について、図3に示すフローチャートに従って説
明する。尚、本第3実施形態において、第1実施形態と
同じ処理については詳細な説明を省略する。
【0082】まず、図3のS100において、第1実施
形態と同様にして設計書情報読込処理が行われる。図1
0(d)は、図10(b)に示すMSCに対して第1実
施形態の設計書情報読込処理(図4のS102〜S11
8)と同様の処理を行うことにより作成された設計書情
報を示す模式図である。
【0083】ここで、本第3実施形態では、図10
(d)に示す設計書情報に、図10(b)に示すグルー
プ定義の内容(「Grp:obj2,obj3」)のデ
ータが付加される。尚、グループ定義の内容を示す文字
はMSCの所定位置(例えば、最下部の中央近傍)に記
載されているため、図4のS102におけるシナリオ名
の検出と同様にして、当該所定位置に記載された文字を
読み取ることにより、グループ定義の内容を検出するこ
とができる。
【0084】次に、図3のS200において、第1実施
形態と同様にしてロギングデータの取り込みが行われ
る。ここで、本第2実施形態において、ロギングデータ
格納サーバ16に格納されているロギングデータには、
グループ化に関係なく、図10(c)に示すメッセージ
MSG2およびメッセージMSG3に対応するブロック
を含めて、全てのメッセージMSG1〜MSG5に対応
するブロックが格納されている。そして、当該ロギング
データには、グループ化に関するデータは付加されてい
ない。
【0085】次に、図3のS300において、第1実施
形態と同様にしてロギングデータ内の検査対象が指定さ
れる。次に、S400において比較処理が行われる。こ
こで、本第3実施形態では、図10(d)に示す設計書
情報と図5に示すロギングデータとが、先頭のブロック
から順番に1ブロックずつ時系列順に読み出されて互い
に比較され、設計書情報とロギングデータとの一致また
は不一致が検出され、不一致の箇所があれば、当該不一
致箇所のロギングデータが検出される。
【0086】このとき、図10(d)に示す設計書情報
には、図10(b)に示すグループ定義の内容(「Gr
p:obj2,obj3」)のデータが付加されてい
る。そのため、当該グループ定義の内容のデータが参照
されて、図10(c)に示すメッセージMSG2および
メッセージMSG3に対応するブロックは読み飛ばされ
て比較動作が行われず、メッセージMSG1に対応する
ブロックの比較動作に続いて、メッセージMSG4に対
応するブロックの比較動作が行われ、最後にメッセージ
MSG5に対応するブロックの比較動作が行われて、比
較処理が終了される。
【0087】次に、図3のS500において、第1実施
形態と同様にしてS400の比較処理結果が表示装置1
0に画面表示され、結合検査処理が終了される。以上詳
述したように、本第3実施形態によれば、第1実施形態
と同様の作用・効果に加えて、以下の作用・効果を得る
ことができる。
【0088】(3−1)各オブジェクトobj1〜ob
j4を含むMSCにおいて、各オブジェクトobj2,
obj3がグループ化されている場合には、図10
(b)に示すように、そのグループのオブジェクト名
(「Grp」)とグループ定義の内容(「Grp:ob
j2,obj3」)とを所定の書式で記載しておく。そ
して、設計書情報読込処理によりシナリオ1の設計書情
報を作成する際には、図10(d)に示す設計書情報に
対して、グループ定義の内容のデータを付加しておく。
【0089】一方、ロギングデータ格納サーバ16に格
納されているロギングデータには、グループ化に関係な
く全てのメッセージに対応するブロックを格納してお
く。そして、コンピュータ4により、設計書情報と、そ
の設計書情報のMSCに対応するロギングデータとを互
いに比較する際には、グループ定義の内容のデータを参
照して、グループ化された各オブジェクトobj2,o
bj3の各メッセージMSG2,MSG3に対応するブ
ロックを読み飛ばすようにする。
【0090】従って、MSCの一部がグループ化されて
いる場合でも、MSCとソースプログラムSとの結合検
査を確実に行うことが可能になり、結合検査の効率を向
上させることができる。 (3−2)結合検査に際して、複数のオブジェクトを見
かけ上1つのグループとして扱うことが可能になるた
め、既にソフトウェアとしての動作が保証されている部
分をグループとして扱い、そのグループの結合検査を省
いて、その他の部分の結合検査のみを行うことができ
る。
【0091】従って、システム設計者が必要とする部分
のMSCだけを選択して結合検査を行うことが可能にな
るため、MSC全体の結合検査を行う場合に比べて、検
査時間を短縮することができる上に、結合検査の自由度
が増してさらなる効率化を図ることができる。
【0092】尚、本発明は上記各実施形態に限定される
ものではなく、以下のように変更してもよく、その場合
でも、上記実施形態と同等もしくはそれ以上の作用・効
果を得ることができる。 (1)上記各実施形態では、ECU18のICE18a
によりソースプログラムSを実行させてロギングデータ
を作成しているが、これに限られるものではなく、ソー
スプログラムSをコンピュータ4におけるシミュレーシ
ョンにより実行させてロギングデータを作成してもよ
い。
【0093】(2)上記各実施形態では、S400の比
較処理結果を表示装置10に表示する際に、MSCを描
画表示したが、これに限られるものでなく、MSC以外
の形式による表示方法(例えば、各オブジェクトからの
メッセージの出力先や出力順序などが箇条書きに記述さ
れたリスト形式による表示方法)を用いてもよい。
【0094】また、S400の比較処理結果を表示装置
10に描画表示するのではなく、例えばプリンタにより
文書として印字出力してもよい。 (3)上記各実施形態では、MSCから設計書情報を作
成したが、これに限られるものではなく、MSCの形式
以外の形式によるプログラム設計書(例えば、各オブジ
ェクトからのメッセージの出力先や出力順序などが箇条
書きに記述されたリスト形式のプログラム設計書)から
設計書情報を作成し、その設計書情報とロギングデータ
とを比較してもよい。
【0095】(4)上記各実施形態では、S102にお
いてシナリオ名を検出する際に、MSCの所定位置にシ
ナリオ名を記載しておき、その所定位置に記載された文
字をシナリオ名として読み取るようにしたが、これに限
られるものではなく、図2(a)に示すように、シナリ
オ名の前または後ろの少なくともいずれか一方に所定
【0096】の符号(「
【」「】」)を記載しておき、MSC全体をスキャンし
て当該符号を認識することにより、その符号の前後に記
載された文字をシナリオ名として読み取るようにしても
よい。 (5)第3実施形態では、グループ定義の内容を示す文
字をMSCの所定位置に記載しておき、その所定位置に
記載された文字をグループ定義の内容として読み取るよ
うにしたが、これに限られるものではなく、グループ定
義の内容を示す文字の前または後ろの少なくともいずれ
か一方に所定の符号を記載しておき、MSC全体をスキ
ャンして当該符号を認識することにより、その符号の前
後に記載された文字をグループ定義の内容として読み取
るようにしてもよい。
【0097】(6)第2実施形態と第3実施形態とを併
用してもよく、その場合は両実施形態の相乗作用によ
り、本発明の効果をさらに高めることができる。 (7)本発明は、オブジェクト指向のシステム設計にお
けるソフトウェア開発に限られるものではなく、複数の
ソフトウェア部品の結合により新たなソフトウェアを作
成する場合であれば、どのような場合に適用してもよ
い。
【図面の簡単な説明】
【図1】本発明を具体化した各実施形態のソフトウェア
結合検査装置の全体構成を表すブロック図。
【図2】第1実施形態におけるMSCおよび設計書情報
の一例を示す模式図。
【図3】第1実施形態の結合検査処理を示すフローチャ
ート。
【図4】図3のS100の処理の詳細を示すフローチャ
ート。
【図5】ロギングデータの一例を示す模式図。
【図6】第2実施形態におけるMSCおよび設計書情報
の一例を示す模式図。
【図7】第2実施形態におけるMSCおよび設計書情報
の一例を示す模式図。
【図8】第2実施形態における設計書情報の一例を示す
模式図。
【図9】第2実施形態を説明するための模式図。
【図10】第3実施形態におけるMSCおよび設計書情
報の一例を示す模式図。
【符号の説明】
2…ソフトウェア結合検査装置 4…コンピュータ
10…表示装置 14…画像表示データ格納サーバ 16…ロギングデ
ータ格納サーバ S…ソースプログラム
───────────────────────────────────────────────────── フロントページの続き (72)発明者 柴田 健志 愛知県刈谷市昭和町1丁目1番地 株式会 社デンソー内 Fターム(参考) 5B042 GA08 GA13 GC08 HH03 HH14 HH30 MA08 MC09 5B076 DD05 EC04

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数のソフトウェア部品の結合により構
    成され、該複数のソフトウェア間の処理依頼の授受によ
    り機能するソフトウェアを検査するためのソフトウェア
    結合検査装置であって、 ソフトウエア部品間における処理依頼が時系列的に規定
    された設計書のデータを格納する設計書データ格納手段
    と、 該設計書データ格納手段に記憶された設計書データか
    ら、ソフトウェア部品間における処理依頼を設計書情報
    として読み取る設計書情報読取手段と、 前記設計書に基づいて作成された前記ソフトウェアの実
    行結果を格納する実行結果格納手段と、 該実行結果格納手段に格納された実行結果から、ソフト
    ウェア部品間における処理依頼の履歴を実行履歴情報と
    して時系列順に読み取る実行履歴情報読取手段と、 該実行履歴情報読取手段にて読み取られた実行履歴情報
    を、前記設計書情報読取手段にて読み取られた設計書情
    報と比較し、該両情報の一致・不一致を判定する比較判
    定手段と、 該比較判定による判定結果を、当該ソフトウェア結合検
    査装置外部に出力する出力手段とを備えたことを特徴と
    するソフトウェア結合検査装置。
  2. 【請求項2】 請求項1に記載のソフトウェア結合検査
    装置において、 前記設計書は階層構造をとり、上位階層の設計書の中に
    下位階層の設計書が含まれ、上位階層の設計書中のどこ
    に下位階層の設計書が含まれるかを示すための第1の階
    層識別情報が上位階層の設計書中に規定されており、 前記設計書情報読取手段は、前記第1の階層識別情報を
    含む設計書情報を読み取り、 前記設計書に基づいて作成された前記ソフトウェアの実
    行結果には、上位階層の設計書中のどこに下位階層の設
    計書が含まれるかを示すための第2の階層識別情報が規
    定されており、 前記実行履歴情報読取手段は、前記第2の階層識別情報
    を含む実行履歴情報を読み取り、 前記比較判定手段は、前記第1および第2の階層識別情
    報に基づき、前記上位階層の設計書と前記下位階層の設
    計書とから選択された少なくとも1つの設計書につい
    て、前記実行履歴情報と前記設計書情報との一致・不一
    致を判定することを特徴とするソフトウェア結合検査装
    置。
  3. 【請求項3】 請求項1または請求項2に記載のソフト
    ウェア結合検査装置において、 前記設計書を構成するソフトウェア部品のうち任意のも
    のがグループ化され、そのグループの定義内容を示すグ
    ループ定義情報が前記設計書中に規定されており、 前記設計書情報読取手段は、前記グループ定義情報を含
    む設計書情報を読み取り、 前記比較判定手段は、前記グループ定義情報に基づき、
    前記実行履歴情報読取手段にて読み取られた実行履歴情
    報のうち、前記グループ化されたソフトウェア部品に関
    する情報を除いた実行履歴情報について、前記設計書情
    報読取手段にて読み取られた設計書情報と比較し、該両
    情報の一致・不一致を判定することを特徴とするソフト
    ウェア結合検査装置。
  4. 【請求項4】 請求項1〜3のいずれか1項に記載のソ
    フトウェア結合検査装置において、 前記出力手段は、前記比較判定手段が前記実行履歴情報
    と前記設計書情報とが不一致であると判定すると、該実
    行履歴情報と前記設計書情報との不一致の箇所を出力す
    ることを特徴とするソフトウェア結合検査装置。
  5. 【請求項5】 請求項1〜4のいずれか1項に記載のソ
    フトウェア結合検査装置において、 前記設計書データ格納手段は、前記処理依頼が文字およ
    び図形により時系列的に規定された設計書の画像表示デ
    ータを格納し、 前記設計書情報読取手段は、前記設計書データ格納手段
    に記憶された設計書の画像表示データから、前記設計書
    上の文字および図形の位置を検出し、該検出結果に基づ
    いて、ソフトウェア部品間における処理依頼を設計書情
    報として読み取ることを特徴とするソフトウェア結合検
    査装置。
  6. 【請求項6】 請求項5に記載のソフトウェア結合検査
    装置において、 前記設計書の画像表示データには、個々の設計書を識別
    するためのシナリオ名と、前記ソフトウェア部品の名称
    および生存線と、前記処理依頼の名称と、該処理依頼の
    内容を表すために前記生存線間に引かれた矢印とが記載
    されていることを特徴とするソフトウェア結合検査装
    置。
  7. 【請求項7】 請求項6に記載のソフトウェア結合検査
    装置において、 前記設計書情報読取手段は、 前記設計書の画像表示データからシナリオ名を検出する
    第1の処理と、 前記設計書の画像表示データから前記ソフトウェア部品
    の名称および該名称の記載位置を検出する第2の処理
    と、 前記設計書の画像表示データから前記ソフトウェア部品
    の生存線および該生存線の記載位置を検出する第3の処
    理と、 前記設計書の画像表示データから、前記生存線の記載位
    置に基づいて該生存線間に引かれた前記処理依頼の内容
    を表す矢印を検出する第4の処理と、 前記設計書の画像表示データから前記処理依頼の名称を
    検出する第5の処理と、 前記第1〜第5の処理にて検出されたデータを時系列順
    にソートして整理する第6の処理とを備えたことを特徴
    とするソフトウェア結合検査装置。
JP11106727A 1999-04-14 1999-04-14 ソフトウェア結合検査装置 Pending JP2000298600A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP11106727A JP2000298600A (ja) 1999-04-14 1999-04-14 ソフトウェア結合検査装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP11106727A JP2000298600A (ja) 1999-04-14 1999-04-14 ソフトウェア結合検査装置

Publications (1)

Publication Number Publication Date
JP2000298600A true JP2000298600A (ja) 2000-10-24

Family

ID=14440981

Family Applications (1)

Application Number Title Priority Date Filing Date
JP11106727A Pending JP2000298600A (ja) 1999-04-14 1999-04-14 ソフトウェア結合検査装置

Country Status (1)

Country Link
JP (1) JP2000298600A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006112852A (ja) * 2004-10-13 2006-04-27 Yokogawa Electric Corp テストシナリオ作成方法、テストシナリオ作成装置およびテストシナリオ作成のためのプログラム
US7062751B2 (en) 2000-12-08 2006-06-13 Fujitsu Limited Sequence analysis method and apparatus

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7062751B2 (en) 2000-12-08 2006-06-13 Fujitsu Limited Sequence analysis method and apparatus
JP2006112852A (ja) * 2004-10-13 2006-04-27 Yokogawa Electric Corp テストシナリオ作成方法、テストシナリオ作成装置およびテストシナリオ作成のためのプログラム
JP4591030B2 (ja) * 2004-10-13 2010-12-01 横河電機株式会社 テストシナリオ作成方法、テストシナリオ作成装置およびテストシナリオ作成のためのプログラム

Similar Documents

Publication Publication Date Title
US9846634B2 (en) Visual graphical user interface verification
US7293204B2 (en) Computer peripheral connecting interface system configuration debugging method and system
US20210096942A1 (en) Exception Stack Information Acquisition Method and Device and Computer-Readable Storage Medium
CN109947637B (zh) 网页兼容性自动化测试方法、装置、设备及介质
US20140019929A1 (en) Partial Instruction-by-instruction checking on acceleration platforms
CN105446874A (zh) 一种资源配置文件的检测方法和装置
US20170220338A1 (en) Identifying a defect density
CN113448862B (zh) 软件版本测试方法、装置及计算机设备
US8589734B2 (en) Verifying correctness of processor transactions
US20080288902A1 (en) Circuit design verification method and apparatus and computer readable medium
CN112347735A (zh) 标准单元的检测方法和生成方法、介质、及设备
JP2007094506A (ja) 回路検証システムと方法、及びプログラム
CN112257382A (zh) 用于芯片设计的物理验证方法、系统、设备以及存储介质
JP2000298600A (ja) ソフトウェア結合検査装置
CN112015634A (zh) 页面结构信息生成方法、装置和电子设备
CN113434938B (zh) Bim模型的检查方法、装置、计算机设备及存储介质
CN109815083A (zh) 一种应用崩溃的监控方法、装置、电子设备及介质
WO2018211546A1 (ja) 画面試験装置および画面試験プログラム
CN114896161A (zh) 基于人工智能的文件构造方法、装置、计算机设备及介质
CN113051171A (zh) 接口测试方法、装置、设备及存储介质
CN112613257A (zh) 验证方法、装置、电子设备和计算机可读存储介质
CN111639173A (zh) 疫情数据处理方法、装置、设备和存储介质
JP2002049505A (ja) ソフトウェア結合検査装置
US11397662B2 (en) Method for debugging computer program, device employing method, and storage medium
US20020101424A1 (en) Method of testing graphic accelerator in DOS mode

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20050721

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080111

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081118

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20090310