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

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

Info

Publication number
JP2002049505A
JP2002049505A JP2000232984A JP2000232984A JP2002049505A JP 2002049505 A JP2002049505 A JP 2002049505A JP 2000232984 A JP2000232984 A JP 2000232984A JP 2000232984 A JP2000232984 A JP 2000232984A JP 2002049505 A JP2002049505 A JP 2002049505A
Authority
JP
Japan
Prior art keywords
design document
software
time
execution
processing
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
JP2000232984A
Other languages
English (en)
Inventor
Junichi Fukuda
淳一 福田
Koji Ogawa
浩二 小川
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 JP2000232984A priority Critical patent/JP2002049505A/ja
Publication of JP2002049505A publication Critical patent/JP2002049505A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Debugging And Monitoring (AREA)
  • Test And Diagnosis Of Digital Computers (AREA)

Abstract

(57)【要約】 【課題】 複数のソフトウェア部品を結合して構成され
るソフトウェアの結合検査を効率良く行うことが可能な
ソフトウェア結合検査装置を提供する。 【解決手段】 ソフトウェア結合検査装置2において
は、画像表示データ格納サーバ14に画像表示データと
して格納された設計書情報と、ロギングデータ格納サー
バ16に格納されたロギングデータとを比較することに
より、ソフトウェア部品間の結合が設計通りに行われた
かどうかを調べ、更に、ソフトウェアのリアルタイム性
が設計通りに確保されているかを調べる。そのため、設
計書に基づいて作成されたソフトウェアが設計書の通り
に仕上がっているかどうかを、容易かつ確実に判断する
ことができる。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、複数のソフトウェ
ア部品を結合することにより構成されるソフトウェアの
結合検査を行うソフトウェア結合検査装置に関する。
【0002】
【従来の技術】従来より、例えばオブジェクト指向のシ
ステム設計におけるソフトウェア開発では、複数のソフ
トウェア部品(ソフトウェアモジュール)を結合するこ
とにより、所望の機能を有する新たなソフトウェアを開
発することが行われている。尚、オブジェクト指向と
は、人間が行動するときのように操作対象に注目して仕
事を進めるという考え方を、コンピュータシステムにモ
デル化したものであり、このオブジェクト指向のプログ
ラミングでは、プログラムの処理を、前記ソフトウェア
部品に相当する「オブジェクト」という単位で考える。
つまり、オブジェクト指向プログラミングにおけるオブ
ジェクトとは、当該オブジェクト固有のデータとそのデ
ータを扱う処理とを、ひとまとめにしたソフトウェア部
品である。
【0003】オブジェクトの結合は、あるオブジェクト
から別のオブジェクトに対し、特定の処理を実行して欲
しい旨の「処理依頼(メッセージ)」が送受されること
によって図られ、メッセージを受けたオブジェクトで
は、そのメッセージにより特定される処理が行われる。
従って、オブジェクトの結合により作成すべき新たなソ
フトウェアにおいて所望の機能を実現するためには、各
オブジェクトからのメッセージの出力先や出力順序など
を設計することが必要となる。この設計は、メッセージ
・シーケンスの設計と呼ばれ、通常、メッセージ・シー
ケンス・チャート(以下、「MSC」と記載する)と呼
ばれるプログラム設計書が使用される。
【0004】システム設計者は、まず、MSCに規定さ
れた結合を実現することを目的として、MSCを基にオ
ブジェクトを作成してソースプログラムの記述を行う。
次に、オブジェクト間の結合が設計通りに行われ、ソフ
トウェア全体として設計通りの機能が満足されるかどう
か(つまり、MSCを基に記述したソースプログラムが
MSCの通りに仕上がっているかどうか)を検査する。
【0005】この検査は結合検査と呼ばれ、従来は、ソ
ースプログラムとMSCとを設計者自身が目視により比
較する方法で実施されていた。すなわち、MSCに記述
された順番通りにメッセージ出力が行われているかどう
かを、ソースプログラムとつき合わせて追っていく作業
が行われていた。
【0006】
【発明が解決しようとする課題】しかしながら、従来の
結合検査方法では、ソースプログラムが大量にある場
合、その大量のソースプログラムとMSCとを目視によ
り比較するため、検査時間が長くかかる上に、ヒューマ
ンエラーが生じやすいことから正確な検査が難しく検査
の信頼性が低いという問題があった。
【0007】また、リアルタイム性が要求される場合に
おいては、メッセージを受けてから、そのメッセージに
対応する処理(対応処理)を終了するまでの所要時間を
高い精度(例えばエンジン制御用のソフトウェアでは、
1msのオーダーの精度)で設計する必要があるが、単
に処理の実行順序を追うだけでは、設計で規定した制約
時間内に対応処理が終了するかどうかを見極めることは
できない。
【0008】尚、こうした問題は、オブジェクト指向の
システム設計におけるソフトウェア開発に限られるもの
ではなく、複数のソフトウェア部品の結合により新たな
ソフトウェアを作成する場合であれば、同様に起こり得
るものである。本発明は、こうした問題点を背景として
なされたものであって、複数のソフトウェア部品を結合
して構成されるソフトウェアの結合検査を効率良く行う
ことが可能なソフトウェア結合検査装置を提供すること
を目的とする。
【0009】
【課題を解決するための手段および発明の効果】かかる
目的を達成するためになされた請求項1に記載の発明
は、複数のソフトウェア部品の結合により構成され、そ
れら複数のソフトウェア間の処理依頼の授受により機能
するソフトウェアを検査するためのソフトウェア結合検
査装置であって、設計書データ格納手段、設計書情報読
取手段、実行結果格納手段、実行履歴情報読取手段、比
較判定手段、出力手段を備えるものである。
【0010】設計書データ格納手段は、「ソフトウエア
部品間において送受されるべき処理依頼」および「処理
依頼に応じてソフトウェア部品が行う対応処理について
許容される制約時間」が時系列的に規定された設計書の
データを格納する。そして、設計書情報読取手段は、設
計書データ格納手段に記憶された設計書データから、処
理依頼および制約時間を設計書情報として読み取る。ま
た、実行結果格納手段は、設計書に基づいて作成された
ソフトウェアの実行結果を格納し、実行履歴情報読取手
段は、実行結果格納手段に格納された実行結果から、
「ソフトウェア部品間において授受された処理依頼の履
歴」および「対応処理の実行に要した所要時間」(以
下、「実行所要時間」という。)を、実行履歴情報とし
て読み取る。
【0011】そして、比較判定手段は、該実行履歴情報
読取手段にて読み取られた実行履歴情報を、設計書情報
読取手段にて読み取られた設計書情報と比較し、「処理
依頼の履歴」が「設計書に規定された処理依頼」と合致
しているかどうかを判定すると共に、「実行所要時間」
および「制約時間」の大きさを比較する。即ち、設計書
に規定された通りに処理依頼が送受されているかどうか
を判定し、更に、設計書に規定された制約時間と実際の
対応処理の実行所要時間とを比較するのである。そし
て、出力手段は、この判定結果および比較結果を、当該
ソフトウェア結合検査装置の外部に出力される。
【0012】つまり、本発明(請求項1記載)のソフト
ウェア結合検査装置においては、設計書とソフトウェア
の実行結果とを比較することにより、ソフトウェア部品
間の結合が設計通りに行われたかどうかを調べ、更に、
ソフトウェアのリアルタイム性が設計通りに確保されて
いるかを調べるのである。
【0013】そのため、設計書に基づいて作成されたソ
フトウェアが設計書の通りに仕上がっているかどうか
を、容易かつ確実に判断することができる。そして、ソ
フトウェアが大量にある場合でも、その大量のソフトウ
ェアの結合検査はソフトウェア結合検査装置により自動
的に行われるため、従来のようにシステム設計者が目視
により行う場合に比べて、検査時間が短くなる上に、ヒ
ューマンエラーが生じることがなく正確な検査が可能に
なることから検査の信頼性を高めることができる、その
結果、複数のソフトウェア部品を結合して構成されるソ
フトウェアの結合検査の効率を向上させることができ
る。
【0014】ここで、実行所要時間と制約時間との比較
は、単に、両者のうちどちらが大きいかを調べるもので
も良いが、実行所要時間と制約時間との比を算出すると
より好ましい。即ち請求項2記載の様に、実行所要時間
と制約時間との比を算出するよう、比較判定手段を構成
し、その比の算出結果を上記比較結果として出力するよ
う、出力手段を構成すると良い。この様に構成された請
求項2記載のソフトウェア結合検査装置によれば、ソフ
トウェアの実行結果を詳細に把握することができ、ソフ
トウェアの最適化を図る際に役立てることができる。
【0015】その比の算出結果を上記比較結果として出
力する態様としては様々考えられ、例えば、制約時間に
対する実行所要時間の割合自体を数字その他の記号によ
り表示することが考えられるが、請求項3記載の様に、
比較判定手段により制約時間と比較された実行所要時間
を上記比の算出結果に応じた形式で表示することによ
り、比較結果を出力するようにしてもよい。
【0016】この様に構成された請求項3記載のソフト
ウェア結合検査装置によれば、実際の実行所要時間が表
示されるので、ソフトウェアの実行結果をより詳しく知
ることができる共に、その表示が「比の算出結果に応じ
た形式」で行われるので、速やかに比較結果を把握する
ことができる。なお、請求項3記載のソフトウェア結合
検査装置においては、例えば、互いに比較された「実行
所要時間」と「制約時間」とを対比させて、上記算出結
果に応じた形式で表示する構成とすれば、実行結果や比
較結果をより把握し易くなるので好ましい。
【0017】さて、実行履歴情報読取手段は、実行結果
格納手段に格納されている実行結果から対応処理の実行
所要時間を読み取るが、この実行結果格納手段には、
「実行所要時間」がそのまま記録されていても良いし、
「実行所要時間」を算出可能な情報が記録されていても
良い。即ち、実行履歴情報読取手段が「実行所要時間」
を読み取るには、「実行所要時間を算出可能な情報」
(「実行所要時間」自体を含む)が記録されていれば良
い。
【0018】「実行所要時間を算出可能な情報」として
は、例えば、請求項4に記載の様な「処理依頼の送受が
行われた時刻」が考えられる。即ち、請求項4記載のソ
フトウェア結合検査装置においては、実行結果格納手段
には、処理依頼の送受が行われた時刻が、実行結果の一
部として格納されており、実行履歴情報読取手段は、そ
の時刻同士の差を算出することにより、実行所要時間を
取得する。
【0019】あるソフトウェア部品における対応処理の
実行所要時間は、そのソフトウェア部品が処理依頼を受
けた時刻と、そのソフトウェア部品が他のソフトウェア
部品に対して処理依頼を送信した時刻との差として捉え
ることができる。そこで、実行履歴情報読取手段は、処
理依頼の送受が行われた時刻を読み取り、それらの時刻
同士の差を算出することにより、そのソフトウェア部品
における対応処理の実行所要時間を取得するのである。
【0020】次に、請求項5に記載のようにソフトウェ
ア結合検査装置を構成してもよい。請求項5記載のソフ
トウェア結合検査装置においては、設計書データ格納手
段は、処理依頼および制約時間が文字および図形により
時系列的に規定された設計書の画像表示データを設計書
データとして格納し、設計書情報読取手段は、上記設計
書の画像表示データから、設計書上の文字および図形の
位置を検出し、その検出結果に基づいて、処理依頼およ
び制限間を設計書情報として読み取るよう構成されてい
る。
【0021】即ち、複数のソフトウェア部品の結合によ
る新たなソフトウェアの構成を設計する際には、文字だ
けでなく、複数のソフトウェア部品やそれらの間におけ
る処理依頼の送受を図形で表現する手法を採ると、その
設計書の作成が容易となるし、ソフトウェアの構成を把
握しやすくなる。そのため、そうした設計書の使用が、
この種のソフトウェア設計においては望ましい。
【0022】そこで請求項5記載のソフトウェア結合検
査装置においては、処理依頼および制約時間が文字およ
び図形により時系列的に規定された設計書の画像表示デ
ータから、実行履歴情報との比較対象としての設計書情
報を読み取るのである。従って、実際の設計において使
用した設計書を、検査用の情報としてそのまま使用する
ことができるため、ソフトウェアの結合検査をより簡便
に行うことができる。
【0023】そして、請求項6に記載の発明のように、
請求項5に記載のソフトウェア結合検査装置において、
前記設計書の画像表示データには、個々の設計書を識別
するためのシナリオ名と、前記ソフトウェア部品の名称
および生存線と、前記処理依頼の名称と、該処理依頼の
内容を表すために前記生存線間に引かれた矢印と、前記
制約時間と、が記載されるようにしてもよい。
【0024】また、請求項7に記載の発明のように、請
求項6に記載のソフトウェア結合検査装置において、前
記設計書情報読取手段は、前記設計書の画像表示データ
からシナリオ名を検出する第1の処理と、前記設計書の
画像表示データから前記ソフトウェア部品の名称および
該名称の記載位置を検出する第2の処理と、前記設計書
の画像表示データから前記ソフトウェア部品の生存線お
よび該生存線の記載位置を検出する第3の処理と、前記
設計書の画像表示データから、前記生存線の記載位置に
基づいて該生存線間に引かれた前記処理依頼の内容を表
す矢印を検出する第4の処理と、前記設計書の画像表示
データから前記処理依頼の名称を検出する第5の処理
と、前記設計書の画像表示データから前記制約時間を検
出する第6の処理と、前記第1〜第6の処理にて検出さ
れたデータを時系列順にソートして整理する第7の処理
と、を備えるようにしてもよい。
【0025】請求項7に記載の発明によれば、前記設計
書の画像表示データから、前記設計書上の文字および図
形の位置を検出し、該検出結果に基づいて、ソフトウェ
ア部品間における処理依頼を設計書情報として読み取る
ことを容易かつ確実に行うことができる。
【0026】
【発明の実施の形態】以下、本発明を具体化した実施例
を図面と共に説明する。図1は、本実施例のソフトウェ
ア結合検査装置2の全体構成を表すブロック図である。
【0027】ソフトウェア結合検査装置2は、コンピュ
ータ4、キーボード6、マウス8、表示装置10、画像
表示データ格納サーバ14、ロギングデータ格納サーバ
16、電子制御装置(以下、「ECU」と記載する)1
8、インサーキットエミュレー夕(以下、「ICE」と
記載する)18aから構成されている。
【0028】本実施例における開発ターゲットは車載電
子制御装置に搭載するソフトウェアであり、ソフトウェ
ア結合検査装置2は当該車載電子制御装置に搭載するソ
フトウェアの結合検査に使用される。そのため、ECU
18には、当該車載電子制御装置と同一構成のものが備
えられている。
【0029】コンピュータ4は、CPU,ROM,RA
M,I/O回路を有する周知の構成をとる。コンピュー
タ4には、キーボード6やマウス8といった各種入力装
置と、画面表示可能な表示装置10とが接続され、一般
的なコンピュータシステムが構成されている。
【0030】また、コンピュータ4には、画像表示デー
タ格納サーバ14およびロギングデータ格納サーバ16
がそれぞれ通信線を介して接続されている。画像表示デ
ータ格納サーバ14には、開発ターゲット(本実施例で
は車載電子制御装置)に要求される仕様を記述した多数
のプログラム設計書(MSC)の画像表示データが格納
されている。
【0031】前述のように、システム設計者は、MSC
に規定された結合を実現することを目的として、画像表
示データ格納サーバ14に格納されたMSCを基にオブ
ジェクトを作成してソースプログラムSの記述を行う。
ECU18には、ECU18のマイクロプロセッサによ
り本来行われるべき動作を模擬的に実現するICE18
aが接続されている。ICE18aは、システム設計者
が記述したソースプログラムSを実際に実行した結果を
途中経過を含めて抽出する。そのICE18aの抽出し
たソースプログラムSの途中経過を含む実行結果(実行
履歴)のデータはロギングデータ(実行履歴情報)と呼
ばれ、そのロギングデータはロギングデータ格納サーバ
16に格納される。
【0032】つまり、ロギングデータ格納サーバ16に
は、ソースプログラムSを実行可能なロードモジュール
としてECU18のICE18aに実行させた実行履歴
であるロギングデータが格納されている。図2(a)
は、画像表示データ格納サーバ14に格納されているM
SCの一例を示す模式図である。
【0033】MSCは文字データおよび図形データから
構成されている。MSCの左上端部には原点(基準点)
が設定され、その原点に対して、横方向にx軸が延出さ
れると共に、縦方向にy軸が延出されており、そのxy
軸より成るxy座標平面上に表示された文字および図形
によりプログラム設計が表されている。
【0034】MSCの所定位置(図2(a)の例では左
上部の原点近傍)には、個々のMSCを識別するための
シナリオ名(またはシナリオ番号。図2(a)の例では
「ZZZZ」)が記載されている。図2(a)に例示す
るMSCは、4つのオブジェクトobj1,obj2,
obj3,obj4の結合を示したものである。
【0035】各オブジェクトは、シナリオ名よりも下方
に配置された「オブジェクト名」を示す文字(obj1
〜obj4)と、その文字の下方からy軸に平行に配置
された縦線から成る「生存線」として記載されている。
また、任意のオブジェクトから他のオブジェクトへの処
理依頼(メッセージ)は、生存線の間に引かれた矢印
と、その矢印の上方に配置された「メッセージ名」を示
す文字(MSG1〜MSG5)として記載されている。
【0036】ここで、y軸方向は時間の経過に対応して
おり、上方に表示されたメッセージから順に出力が行わ
れることを示している。また、メッセージの矢印は、メ
ッセージが出力される方向を示している。尚、オブジェ
クト名およびメッセージ名を示す文字は、x軸に平行に
横書きで記載されている。
【0037】すなわち、図2(a)に例示するMSCに
おいては、まず最初に、オブジェクトobj1からob
j2へメッセージMSG1が出力され、次に、オブジェ
クトobj2からobj3へメッセージMSG2が出力
され、続いて、オブジェクトobj3からobj4へメ
ッセージMSG3が出力され、次に、オブジェクトob
j4からobj3へメッセージMSG4が出力され、最
後に、オブジェクトobj3からobj1へメッセージ
MSG5が出力されることが示されている。
【0038】そして、各オブジェクトは、メッセージを
受けるとそれに対応した処理(対応処理)を行い、必要
に応じて他のオブジェクトに対しメッセージを出力す
る。例えば、オブジェクトobj2は、obj1からメ
ッセージMSG1を受け取ると、そのメッセージMSG
1に対応した処理を行ってメッセージMSG2を生成
し、そのメッセージMSG2をオブジェクトobj3に
対して出力する。
【0039】次に、本実施例のソフトウェア結合検査装
置2による結合検査処理について、図3に示すフローチ
ャートに従って説明する。結合検査処理は、ソフトウェ
ア結合検査装置2のコンピュータ4に対して、予め定め
られた命令が各種入力装置(キーボード6、マウス8)
を用いて入力されることにより起動される。コンピュー
タ4が起動すると、内蔵されているROMに記録されて
いる結合検査処理プログラムに従い、コンピュータによ
る各種演算処理によって、以下の各ステップの処理を実
行する。尚、結合検査プログラムをコンピュータで読み
取り可能な各種記録媒体(半導体メモリ,ハードディス
ク,フロッピー(登録商標)ディスク,データカード
(ICカード,磁気カードなど),光ディスク(CD−
ROM,DVDなど),光磁気ディスク(MDなど),
相変化ディスク,磁気テープなど)に記録しておき、当
該結合検査プログラムを必要に応じてコンピュータ4の
CPUにロードして起動することにより用いるようにし
てもよい。
【0040】結合検査処理が起動されると、まず、図3
のステップ(以下、「S」と記載する)100において
設計書情報取込処理が行われる。すなわち、コンピュー
タ4により、画像表示データ格納サーバ14に格納され
ているMSCが読み出され、そのMSCに記載されてい
るデータが読み込まれる。
【0041】図4は、S100の設計書情報取込処理の
詳細を示すフローチャートである。まず、図4のS10
2において、シナリオ名が検出される。前述のように、
シナリオ名(「ZZZZ」)はMSCの所定位置(例え
ば、左上部の原点近傍)に記載されているため、その所
定位置に記載された文字(=ZZZZ)を読み取ること
により、シナリオ名を検出することができる。
【0042】次に、S104において、オブジェクトが
検出される。前述のように、各オブジェクトは、シナリ
オ名よりも下方に横書きで配置された「オブジェクト
名」を示す文字(obj1〜obj4)と、その文字の
下方からy軸に沿って配置された縦線から成る生存線と
して記載されている。そのため、シナリオ名よりも下方
であり、y軸方向の予め設定された所定範囲をスキャン
することによって、その所定範囲内にある文字を認識
し、その文字の座標を検出することにより、オブジェク
トを検出することができる。
【0043】次に、S106において、検出されたオブ
ジェクトのオブジェクト名を示す文字(obj1〜ob
j4)を読み取ることにより、オブジェクト名が検出さ
れる。次に、S108において、オブジェクト名の存在
するx軸方向の範囲で、オブジェクト名の下方に配置さ
れた縦線を検出することにより生存線が検出されると共
に、その生存線のx座標が検出される。
【0044】次に、S110において、前記したy軸方
向の予め設定された所定範囲に、その他にもオブジェク
ト名を示す文字がないかどうかが判断され、他にもある
場合(S110:NO)にはS104へ戻り、S104
〜S108の処理が再び行われる。このように、S10
4〜S108の処理の繰り返しにより、MSCに記述さ
れている全てのオブジェクトobj1〜obj4につい
て、そのオブジェクト名と生存線の位置(x座標)とが
検出される。そして、前記したy軸方向の予め設定され
た所定範囲には、その他にオブジェクト名を示す文字が
ないと判断された場合(S110:YES)にはS11
2へ移行する。
【0045】S112においては、矢印データが検出さ
れる。前述のように、メッセージは、生存線の間に引か
れた矢印と、その矢印の上方に配置された「メッセージ
名」を示す文字(MSG1〜MSG5)として記載され
ている。また、y軸方向は時間の経過に対応しており、
上方に表示されたメッセージから順に出力が行われるこ
とを示している。そのため、S108にて検出された生
存線のx座標を基準にして、そのx座標を始点とした矢
印がないかどうかが検出され、検出されたならば当該矢
印の始点および終点のy座標(矢印データ)が検出され
る。この矢印データは、オブジェクト間におけるメッセ
ージ出力の順序を示すものである。
【0046】次に、S114において、矢印の上方に記
載されているメッセージ名が検出される。また、S11
5においては、矢印の上方に記載されている制約時間
(制限時間)が検出される。即ち、この矢印で示される
メッセージは、オブジェクトにおける何らかの対応処理
を開始させるものとして送信されるところ、その対応処
理の制約時間が矢印の上に必要に応じて記載されている
のである(図2(a)の例では、MSG2により開始さ
れるobj3の対応処理の制約時間が、[TIME]と
いう記載により規定されている)。
【0047】次に、S116において、生存線のx座標
を始点とした矢印がその他にないかどうかが判断され、
他にもある場合(S116:NO)にはS112へ戻
り、S112,S114,S115の処理が再び行われ
る。このように、S112,S114、S115の処理
の繰り返しにより、MSCに記述されている全てのメッ
セージMSG1〜MSG5について、その矢印データ
(矢印の始点および終点のy座標)とメッセージ名とが
検出される。そして、全てのオブジェクトobj1〜o
bj4の生存線について、当該生存線のx座標を始点と
した矢印がその他にないと判断された場合(S116:
YES)にはS118へ移行する。
【0048】そして、S118において、以上の一連の
処理にて検出されたデータ(オブジェクト名、矢印デー
タ、メッセージ名、制約時間等)を、検出されたメッセ
ージのy座標に基づいて時系列順にソートして整理する
ことにより設計書情報が作成される。そして、作成され
た設計書情報を、コンピュータ4に内蔵されたRAMに
格納することにより、設計書情報取込処理が終了する。
なお、オブジェクト名や、メッセージ名などは、所定の
対応テーブルに基づいて夫々オブジェクトIDやメッセ
ージIDに変換された状態で格納される。
【0049】図2(b)は、S118の処理で作成され
た設計書情報を示す模式図である。以上のようにして、
図3のS100における設計書情報取込処理により、画
像表示データ格納サーバ14に格納されている図2
(a)に示すMSCが読み出され、コンピュータ4にて
図2(b)に示す設計書情報に変換されてRAMに格納
される。その後、図3に戻り、S200以降の処理が順
次行われる。
【0050】まず、図3のS200において、ロギング
データの取り込みが行われる。すなわち、コンピュータ
4により、ロギングデータ格納サーバ16に格納されて
いるロギングデータが読み出され、S100の設計書情
報取込処理により作成された設計書情報と比較し易い形
式のロギングデータに変換される。
【0051】ここで図5は、ロギングデータ格納サーバ
16に格納されているロギングデータの一例を示す模式
図である。尚、図5において、図5(a)に示すものが
実際のロギングデータであるが、16進で書かれたデー
タの羅列でありそのままでは分かり難いため、説明がし
易いように表記を変更したものを図5(b)に示す。
【0052】図5(b)に示すように、ロギングデータ
は、ソースプログラムSの実行履歴(メッセージ出力)
が時系列的に格納された、多数のブロック(本実施例で
は、12バイト)から構成されている。各ブロックに
は、そのブロックがどういったデータを格納しているか
を示すデータ種別(2バイト)が付されており、例え
ば、データ種別が「0100」のブロックには、発行元
のオブジェクトID、送り先のオブジェクトID、メッ
セージIDおよびメッセージ送信時刻といったメッセー
ジ出力に関するデータが格納されている。なお、このメ
ッセージ送信時刻は、請求項の「メッセージの送受が行
われた時刻」に相当する。
【0053】さて、ECU18のICE18aでは、多
数のMSCに基づいて作成されたソースプログラムSが
連続して実行される。また、ロギングデータは、当該ソ
ースプログラムSの一連の実行履歴が記録されたもので
ある。そのため、ロギングデータの各ブロックがそれぞ
れ、どのMSCに対応する実行履歴であるかが示される
必要がある。従って、同一のMSCに対応する一連のブ
ロック群について、その前には先頭(スタート(000
0))を示すデータ種別が付されたブロックが挿入さ
れ、その後には最後尾(エンド(FF00))を示すデ
ータ種別が付されたブロックが挿入されている。データ
種別が「0000」である先頭のブロックには、対応す
るMSCのシナリオ名が格納されている。
【0054】以上のように、図3のS200にてロギン
グデータが取り込まれた後に、S300へ移行する。そ
して、S300においては、コンピュータ4により、S
100にて作成された設計書情報のシナリオ名(図2
(b)の「ZZZZ」)に基づいて、ロギングデータ内
の検査対象が指定される。
【0055】次に、S400において比較処理が行われ
る。すなわち、コンピュータ4により、図2(b)に示
す設計書情報と図5に示すロギングデータとが、先頭の
ブロックから順番に1ブロック分ずつ時系列順に読み出
され、互いに比較されることにより、設計書情報に規定
されたメッセージとロギングデータとして記録されたメ
ッセージの履歴とが合致しているかどうかが検出され、
不一致の箇所があれば、当該不一致箇所のロギングデー
タが検出される。
【0056】また、S400の比較処理においては、オ
ブジェクトにおける対応処理の実行所要時間が次の様に
して求められ、そして、その求めた実行所要時間と制約
時間との比較が行われる。即ち、上述のように、ロギン
グデータには、各メッセージを送信した時刻(メッセー
ジ送信時刻)が記録されている。そして本実施例におい
ては、一のオブジェクトから送信されたメッセージは送
信先の(つまり受信側の)オブジェクトにより直ちに受
信され、受信されるとそのメッセージについての対応処
理が直ちに開始され、対応処理の結果として次のメッセ
ージが出力される。そのため、実行所要時間は、その対
応処理を開始させたメッセージの送信時刻と、その対応
処理の結果として送信された次のメッセージの送信時刻
との差を計算することにより求めることができる。
【0057】例えば、図2(b)に示すように、MSG
2の送信時刻は「time2」であり、MSG3の送信
時刻は「time3」であるから、MSG2により開始
されたobj3の対応処理の実行所要時間は、「tim
e3−time2」という計算により得られる。
【0058】S400の比較処理においては、以上の様
にして実行所要時間が求められ、その求めた実行処理時
間が制約時間に対して何%(どの程度の割合か)か、が
算出される。即ち、実行処理時間と制約時間との比の算
出が行われるのである。なお、この比較処理は、請求項
の「比較判定手段」として機能するものであるが、ロギ
ングデータを読み取ることにより対応処理の実行所要時
間を取得することも行っている。この点で、比較処理
は、請求項における「実行履歴情報読取手段」の一部と
して機能するものでもある。
【0059】次に、S500において、S400の比較
処理の結果が表示装置10に画面表示され、結合検査処
理が終了する。例えば、図6(a)、図7(a)、図8
(a)に示すような設計書の設計書情報とロギングデー
タとが比較されると、図6(b)、図7(b)、図8
(b)の様にその比較結果が表示される。具体的には、
設計書情報とロギングデータとが一致したメッセージに
ついては、その旨を示す色(例えばグレー)で表示され
る。
【0060】図6(b)、図7(b)、図8(b)にお
いては、全メッセージについて、設計書情報とロギング
データとが一致している場合を示している。なお、設計
書情報とロギングデータとの間でメッセージが異なる場
合は、設計書に規定されたメッセージを例えば緑色で表
示し、ロギングデータとして記録されているメッセージ
を例えば赤色で表示することにより、一目でエラー(不
一致)の発生を見つけることが可能となっている。
【0061】また、比較対象となった制約時間および実
行所要時間が、その制約時間に対する実行所要時間の割
合の算出結果に応じた色で、しかも対比できるように並
べて表示される。具体的には、その割合が80%以下で
あれば、安全な範囲内であるとして、図6(b)に示す
様に制約時間(図6(b)では2.0ms)および実行
所要時間(図6(b)では1.1ms)が安全色(例え
ばグレー)で表示される。
【0062】また、その割合が80%より大きく100
%以下であれば、危険な範囲内であるとして、図7
(b)に示す様に制約時間(図7(b)では2.0m
s)および実行所要時間(図7(b)では1.9ms)
が危険色(例えば黄)で表示される。 また、その割合
が100%より大きいときには、NGであるとして、図
8(b)に示す様に制約時間(図8(b)では2.0m
s)および実行所要時間(図8(b)では2.1ms)
がNG色(例えば赤)で表示される。
【0063】つまり、本実施例では、単に制約時間内に
実行所要時間が収まっているかどうかを識別できるよう
表示するのではなく、どの程度の余裕をもって実際の対
応処理が終了しているか、その余裕度をも表示するので
ある。尚、設計書情報およびロギングデータに基づいて
MSCが描画表示される際には、オブジェクトIDとオ
ブジェクト名との対応関係やメッセージIDとメッセー
ジ名との対応関係が規定された対応テーブル(図示略)
が参照される。その参照結果に基づいて、オブジェクト
名やメッセージ名が表示される。
【0064】以上詳述したように、本実施例のソフトウ
ェア結合検査装置2によれば、以下の様な効果を得るこ
とができる。即ち、本実施例のソフトウェア結合検査装
置2においては、画像表示データ格納サーバ14に画像
表示データとして格納された設計書と、ロギングデータ
格納サーバ16に格納されたロギングデータとを比較す
ることにより、ソフトウェア部品間の結合が設計通りに
行われたかどうかを調べ、更に、ソフトウェアのリアル
タイム性が設計通りに確保されているかを調べる。その
ため、設計書に基づいて作成されたソフトウェアが設計
書の通りに仕上がっているかどうかを、容易かつ確実に
判断することができる。
【0065】そして、ソフトウェアが大量にある場合で
も、その大量のソフトウェアの結合検査はソフトウェア
結合検査装置により自動的に行われるため、従来のよう
にシステム設計者が目視により行う場合に比べて、検査
時間が短くなる上に、ヒューマンエラーが生じることが
なく正確な検査が可能になることから検査の信頼性を高
めることができる、その結果、複数のソフトウェア部品
を結合して構成されるソフトウェアの結合検査の効率を
向上させることができる。
【0066】また、実行所要時間と制約時間との比を算
出し、その比較対象となった実行所要時間と制約時間と
を対比させて、上記比の算出結果に応じた色で表示す
る。そのため、ソフトウェアの実行結果をより詳しく、
しかも一見して把握することができる。そして、修正す
べき箇所を確実に特定することが可能になり、プログラ
ミングのミスを素早く修正できることからソフトウェア
開発期間を短縮できる。
【0067】また、メッセージおよび制約時間が文字お
よび図形により時系列的に規定された設計書の画像表示
データから、実行履歴情報との比較対象としての設計書
情報を読み取るようにしている。従って、実際の設計に
おいて使用した設計書を、検査用の情報としてそのまま
使用することができるため、ソフトウェアの結合検査を
より簡便に行うことができる。
【0068】尚、上記説明において述べたほか、本実施
例と特許請求の範囲との対応は以下の如くである。即
ち、画像表示データ格納サーバ14は、請求項の「設計
書データ格納手段」として機能し、ステップ102〜1
18の各処理は、請求項の「設計書情報読取手段」とし
て機能し、ロギングデータ格納サーバ16は請求項の
「実行結果格納手段」として機能し、S200の処理
は、請求項の「実行履歴情報読取手段」として機能し、
表示装置10は、請求項の「出力手段」として機能して
いる。また、S102の処理は請求項の「第1の処理」
として、S104,S106の処理は「第2の処理」と
して、S104,S108の処理は「第3の処理」とし
て、S112の処理は「第4の処理」として、S114
の処理は「第5の処理」として、S115の処理は「第
6の処理」として、S118の処理は「第7の処理」と
して、夫々機能している。
【0069】以上、本発明の一実施例について説明した
が、本発明は上記実施例に限定されるものではなく、種
々の態様をとることができる。例えば、上記実施例で
は、ECU18のICE18aによりソースプログラム
Sを実行させてロギングデータを作成するものとして説
明したが、これに限られるものではなく、ソースプログ
ラムSをコンピュータ4におけるシミュレーションによ
り実行させてロギングデータを作成してもよい。
【0070】また、上記実施例では、S400の比較処
理結果を表示装置10に表示する際に、MSCを描画表
示するものとして説明したが、これに限られるものでな
く、MSC以外の形式による表示方法(例えば、各オブ
ジェクトからのメッセージの出力先や出力順序などが箇
条書きに記述されたリスト形式による表示方法)を用い
てもよい。
【0071】また、S400の比較処理結果を表示装置
10に描画表示するのではなく、例えばプリンタにより
文書として印字出力してもよい。また表示形式を変更す
る例として、色を変更するものとして説明したが、それ
に限られるものではなく、文字の大きさや書体を切り替
えても良い。また文字による表示に限られるものでもな
く、例えば、文字形式による表示とグラフ形式による表
示とを、切り替えても良い。
【0072】また、上記実施例では、メッセージの送受
が行われた時刻としてメッセージ送信時刻を用い、メッ
セージ送信時刻同士の時間差から実行所要時間を算出す
るものとして説明したが、これに限られるものではな
い。例えば、メッセージの受信時刻を適宜使用しても良
い。
【0073】また、上記実施例では、MSCから設計書
情報を作成するものとして説明したが、これに限られる
ものではなく、MSCの形式以外の形式によるプログラ
ム設計書(例えば、各オブジェクトからのメッセージの
出力先や出力順序などが箇条書きに記述されたリスト形
式のプログラム設計書)から設計書情報を作成し、その
設計書情報とロギングデータとを比較してもよい。
【0074】また、上記実施例では、画面に表示するも
のとして説明したが、これに限られず、例えば紙上に表
示してもよい。また、上記実施例では、その制約時間に
対する実行所要時間の割合(即ち、余裕度)について
「80%以下」、「80%より大きく100%以下」、
「100%より大きい」という範囲に区分するものとし
て説明したが、これに限られるものではない。区分の範
囲は、ソフトウェアの適用対象(制御対象)の特性に応
じて、適宜設定すると良い。
【0075】また、本発明は、オブジェクト指向のシス
テム設計におけるソフトウェア開発に限られるものでは
なく、複数のソフトウェア部品の結合により新たなソフ
トウェアを作成する場合であれば、どのような場合に適
用してもよい。
【図面の簡単な説明】
【図1】 本発明を具体化した実施例のソフトウェア結
合検査装置の全体構成を表すブロック図である。
【図2】 MSCおよび設計書情報の一例を示す模式図
である。
【図3】 結合検査処理を示すフローチャートである。
【図4】 設計書情報取込処理を示すフローチャートで
ある。
【図5】 ロギングデータの一例を示す模式図である。
【図6】 ロギングデータと設計書情報との比較結果
(OK「安全」の場合)の出力例を示す図である。
【図7】 ロギングデータと設計書情報との比較結果
(OK「危険」の場合)の出力例を示す図である。
【図8】 ロギングデータと設計書情報との比較結果
(NGの場合)の出力例を示す図である。
【符号の説明】
2…ソフトウェア結合検査装置 4…コンピュータ
10…表示装置 14…画像表示データ格納サーバ 16…ロギングデ
ータ格納サーバ S…ソースプログラム

Claims (7)

    【特許請求の範囲】
  1. 【請求項1】 複数のソフトウェア部品の結合により構
    成され、該複数のソフトウェア間の処理依頼の送受によ
    り機能するソフトウェアを検査するためのソフトウェア
    結合検査装置であって、 ソフトウエア部品間における処理依頼、および処理依頼
    に応じた対応処理の制約時間が時系列的に規定された設
    計書のデータを格納する設計書データ格納手段と、 該設計書データ格納手段に記憶された設計書データか
    ら、前記処理依頼および前記制約時間を設計書情報とし
    て読み取る設計書情報読取手段と、 前記設計書に基づいて作成された前記ソフトウェアの実
    行結果を格納する実行結果格納手段と、 該実行結果格納手段に格納された実行結果を読み取るこ
    とにより、ソフトウェア部品間において送受された処理
    依頼の履歴および前記対応処理の実行に要した所要時間
    を、実行履歴情報として取得する実行履歴情報読取手段
    と、 該実行履歴情報読取手段にて取得された実行履歴情報
    を、前記設計書情報読取手段にて読み取られた設計書情
    報と比較することにより、前記処理依頼の履歴が前記設
    計書に規定された処理依頼と合致しているかどうかを判
    定すると共に、前記所要時間と前記制約時間とを比較す
    る比較判定手段と、 該比較判定手段による判定結果および比較結果を、当該
    ソフトウェア結合検査装置外部に出力する出力手段と、 を備えたことを特徴とするソフトウェア結合検査装置。
  2. 【請求項2】 請求項1に記載のソフトウェア結合検査
    装置において、 前記比較判定手段は、前記所要時間と前記制約時間との
    比を算出し、 前記出力手段は、前記比の算出結果を、前記比較結果と
    して出力することを特徴とするソフトウェア結合検査装
    置。
  3. 【請求項3】 請求項2に記載のソフトウェア結合検査
    装置において、 前記出力手段は、前記比較判定手段により前記制約時間
    と比較された前記所要時間を前記比の算出結果に応じた
    形式で表示することにより、前記比較結果を出力するこ
    とを特徴とするソフトウェア結合検査装置。
  4. 【請求項4】 請求項1〜3の何れか一項に記載のソフ
    トウェア結合検査装置において、 前記実行結果格納手段には、前記処理依頼の送受が行わ
    れた時刻が、前記実行結果の一部として格納されてお
    り、 前記実行履歴情報読取手段は、前記時刻同士の差を算出
    することにより、前記所要時間を取得することを特徴と
    するソフトウェア結合検査装置。
  5. 【請求項5】 請求項1〜4の何れか一項に記載のソフ
    トウェア結合検査装置において、 前記設計書データ格納手段は、前記処理依頼および前記
    制約時間が文字および図形により時系列的に規定された
    設計書の画像表示データを格納し、 前記設計書情報読取手段は、前記設計書データ格納手段
    に記憶された設計書の画像表示データから、前記設計書
    上の文字および図形の位置を検出し、該検出結果に基づ
    いて、前記処理依頼および前記制約時間を設計書情報と
    して読み取ることを特徴とするソフトウェア結合検査装
    置。
  6. 【請求項6】 請求項5に記載のソフトウェア結合検査
    装置において、 前記設計書の画像表示データには、個々の設計書を識別
    するためのシナリオ名と、前記ソフトウェア部品の名称
    および生存線と、前記処理依頼の名称と、該処理依頼を
    表すために前記生存線間に引かれた矢印と、前記制約時
    間と、が記載されていることを特徴とするソフトウェア
    結合検査装置。
  7. 【請求項7】 請求項6に記載のソフトウェア結合検査
    装置において、 前記設計書情報読取手段は、 前記設計書の画像表示データからシナリオ名を検出する
    第1の処理と、 前記設計書の画像表示データから前記ソフトウェア部品
    の名称および該名称の記載位置を検出する第2の処理
    と、 前記設計書の画像表示データから前記ソフトウェア部品
    の生存線および該生存線の記載位置を検出する第3の処
    理と、 前記設計書の画像表示データから、前記生存線の記載位
    置に基づいて該生存線間に引かれた前記処理依頼の内容
    を表す矢印を検出する第4の処理と、 前記設計書の画像表示データから前記処理依頼の名称を
    検出する第5の処理と、 前記設計書の画像表示データから前記制約時間を検出す
    る第6の処理と、 前記第1〜第6の処理にて検出されたデータを時系列順
    にソートして整理する第7の処理と、 を備えたことを特徴とするソフトウェア結合検査装置。
JP2000232984A 2000-08-01 2000-08-01 ソフトウェア結合検査装置 Pending JP2002049505A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000232984A JP2002049505A (ja) 2000-08-01 2000-08-01 ソフトウェア結合検査装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000232984A JP2002049505A (ja) 2000-08-01 2000-08-01 ソフトウェア結合検査装置

Publications (1)

Publication Number Publication Date
JP2002049505A true JP2002049505A (ja) 2002-02-15

Family

ID=18725578

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000232984A Pending JP2002049505A (ja) 2000-08-01 2000-08-01 ソフトウェア結合検査装置

Country Status (1)

Country Link
JP (1) JP2002049505A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217753A (ja) * 2008-03-12 2009-09-24 Fujitsu Ten Ltd マイクロコンピュータの模擬装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009217753A (ja) * 2008-03-12 2009-09-24 Fujitsu Ten Ltd マイクロコンピュータの模擬装置

Similar Documents

Publication Publication Date Title
JP2015001146A (ja) 鉄筋検査支援装置およびプログラム
CN107783898A (zh) 移动应用的测试方法及测试设备
JP2007200082A (ja) 組立性評価方法、そのシステム及びプログラム
US7584211B2 (en) Parts list system for managing parts used for unit and a method of preparing a parts list
CN116257926B (zh) 基于bim的物联数据绑定方法、装置、设备及存储介质
KR101792701B1 (ko) 도면 검사 장치 및 방법
JP2002049505A (ja) ソフトウェア結合検査装置
CN112801435A (zh) 变电站防火校验方法和装置、设备及存储介质
CN113468355B (zh) 显示母板数据管理方法及装置
JP5958160B2 (ja) 部品実装検査のための検査基準情報の設定方法および検査基準情報の作成システム
JP2003272074A (ja) 計測データ収集装置
JP2010225053A (ja) 数値解析結果レポート作成方法とシステムおよびプログラム
CN115170765A (zh) 一种模型处理系统、方法及装置
CN114896161A (zh) 基于人工智能的文件构造方法、装置、计算机设备及介质
WO2018211546A1 (ja) 画面試験装置および画面試験プログラム
JP2000298600A (ja) ソフトウェア結合検査装置
CN115062571A (zh) 应用于集成电路器件的数据区域动态选取方法、系统、设备和计算机可读存储介质
CN114036721A (zh) 微模块的三维温度云场的构建方法及装置
CN113051171A (zh) 接口测试方法、装置、设备及存储介质
KR20180003193A (ko) 구조물 검사 지원 장치 및 방법
TWM613073U (zh) 擴增實境加工輔助系統
JP4571894B2 (ja) 部品特定プログラム
JP2006059014A (ja) 3次元cadデータと測定3次元データの距離算出装置、距離算出方法及び距離算出プログラム
TWI773075B (zh) 擴增實境加工輔助系統及其使用方法
CN116373024B (zh) 用于工业包装袋孔位的智能化定位分析方法、系统及介质