JPH10161906A - Device and method for executing software - Google Patents

Device and method for executing software

Info

Publication number
JPH10161906A
JPH10161906A JP8319543A JP31954396A JPH10161906A JP H10161906 A JPH10161906 A JP H10161906A JP 8319543 A JP8319543 A JP 8319543A JP 31954396 A JP31954396 A JP 31954396A JP H10161906 A JPH10161906 A JP H10161906A
Authority
JP
Japan
Prior art keywords
software
execution
hardware
event
simulator
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
JP8319543A
Other languages
Japanese (ja)
Inventor
Masaaki Miki
正章 三木
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 JP8319543A priority Critical patent/JPH10161906A/en
Publication of JPH10161906A publication Critical patent/JPH10161906A/en
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

PROBLEM TO BE SOLVED: To control the simulation of hardware and software so that it matches with real operation timing. SOLUTION: A hardware simulator 4 displays the image of hardware on a display means 5 based on hardware information 2 and updates the indication based on the change of hardware. A user generates the event of test data to be inputted to the software by operating this image while using the mouse or keyboard of input means 1. A virtual execution engine 6 simulates the operation of software corresponding to the applied event. A user definition simulator 9 sends the change contents of external environment to affect mutually with a system to the hardware simulator 4 as the event.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】本発明は、開発中のソフトウ
ェアを試験するソフトウェア実行装置及びソフトウェア
実行方法の改良に関するもので、特に、ハードウェアと
ソフトウェアのシミュレーションを実際の動作タイミン
グに対応するように制御することによって、正確な試験
を行うものに係る。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to an improvement of a software execution device and a software execution method for testing software under development, and more particularly, to controlling a simulation of hardware and software so as to correspond to an actual operation timing. By doing so, it pertains to one that performs an accurate test.

【0002】[0002]

【従来の技術】エアコン(空気調和装置)、電子レン
ジ、電子式炊飯機、携帯電話機類など、各種のシステム
において、ハードウェアを制御するためにソフトウェア
が用いられている。ソフトウェアの開発には動作確認の
ための試験が不可欠であるが、従来、ハードウェアに組
み込むソフトウェアの試験は、組み込むハードウェアの
完成を待って、そのハードウェアを用いて行なわれてい
た。このため、開発早期でハードウェアが未完成の場
合、ソフトウェアの試験を行うことは困難であった。
2. Description of the Related Art In various systems such as an air conditioner (air conditioner), a microwave oven, an electronic rice cooker, and a portable telephone, software is used to control hardware. A test for confirming the operation is indispensable for software development. Conventionally, a test of software to be incorporated in hardware has been performed using the hardware after the completion of the hardware to be incorporated. For this reason, when hardware is incomplete at the early stage of development, it has been difficult to test software.

【0003】この結果、ソフトウェアの試験とハードウ
ェアの開発を同時並行的に行なうことができず、製品の
開発期間が長くなってしまうという問題があった。さら
に、ソフトウェアの仕様段階では、開発者自身がソフト
ウェアの仕様を目で追って誤りを検出するという手作業
を行なっていた。このため、ソフトウェアの誤りを見逃
す可能性も少なくなく、作業の効率化も困難であった。
[0003] As a result, software testing and hardware development cannot be performed simultaneously in parallel, resulting in a problem that the product development period is lengthened. Further, at the software specification stage, the developer himself has manually performed a task of detecting errors by visually following the software specifications. For this reason, there is little possibility that a software error is overlooked, and it has been difficult to improve work efficiency.

【0004】このような問題点を解決するための技術と
しては、本出願人による特開平6−110049が挙げ
られる。この技術は、ソフトウェアの動作仕様を与える
と、仕様に含まれる動作を順次シミュレートし、動作に
対応するハードウェアの変化を表示するものである。
[0004] As a technique for solving such a problem, Japanese Patent Application Laid-Open No. 6-110049 by the present applicant is cited. According to this technology, when an operation specification of software is given, operations included in the specification are sequentially simulated, and a change in hardware corresponding to the operation is displayed.

【0005】[0005]

【発明が解決しようとする課題】しかし、特開平6−1
10049では、シミュレーションを実行する一定の処
理が一巡するごとに、シミュレーション上の時間を進め
る構成となっていた。このため、シミュレーションで
は、実際と異なって、一定の処理が一巡するまでは時間
が進行せず、また、処理内容に応じて時間の進行ペース
が変動した。この結果、タイマのカウントや製品の温度
変化など、時間の経過と関係がある事柄については、正
確なシミュレーションが困難であった。
However, Japanese Patent Application Laid-Open No.
In the configuration 10049, the simulation time is advanced each time a certain process for executing the simulation makes one cycle. For this reason, in the simulation, unlike the actual case, the time does not progress until a certain process has completed one cycle, and the progress pace of the time varies according to the content of the process. As a result, it has been difficult to perform accurate simulations on matters related to the passage of time, such as counting by a timer and changes in product temperature.

【0006】また、ソフトウェアの試験に関する別の技
術である特開平5−289860は、プログラムを仮想
部品に分け、各部品に予め動作を定義しておき、部品に
操作が与えられたときに定義した動作を実行するもので
ある。特開平5−289860では、仮想部品の例であ
るタイマーが時間に基づいて作動することに触れている
が、シミュレーション全体を時間の情報に沿って行った
り、ソフトウェアを試験するための入力データの入力タ
イミングなどについては考慮されていない。
Japanese Patent Application Laid-Open No. Hei 5-289860, which is another technique related to software testing, divides a program into virtual parts, defines the operation in advance for each part, and defines the operation when an operation is given to the part. Perform the operation. JP-A-5-289860 mentions that a timer, which is an example of a virtual part, operates based on time. However, the entire simulation is performed according to time information, and input of input data for testing software is performed. Timing is not taken into account.

【0007】しかし、実際のシステムは、ハードウェア
の動作もソフトウェアの動作も一定の所要時間をもって
行われるものである。このため、ハードウェア及びソフ
トウェア双方のシミュレーションに対して、時間の情報
を提供することによって、実際の動作タイミングに対応
するシミュレーションを行う技術が望まれていた。ま
た、操作が入力されるタイミングに応じてソフトウェア
が異なった動作をする場合もあるので、ソフトウェアに
対して試験のために与える入力データ(テストデータ)
を、所望のタイミングで発生させる技術が望まれてい
た。
However, in an actual system, both the operation of hardware and the operation of software are performed with a certain required time. For this reason, there has been a demand for a technique of providing time information for simulation of both hardware and software to perform simulation corresponding to actual operation timing. In some cases, the software operates differently depending on the timing at which an operation is input, so input data (test data) given to the software for a test.
At a desired timing.

【0008】さらに、ソフトウェアとハードウェアが相
互に影響を及ぼし合うだけではなく、ソフトウェアやハ
ードウェアが外部の環境と関係を持っている場合があ
る。このような場合は、システムの動作が外部環境を変
化させるだけでなく、変化した外部環境がさらにシステ
ムの動作に影響を与える場合も考えられる。例えば、冷
蔵庫内の温度変化は外気温の影響も受けるし、また、エ
アコンが運転すればエアコン外部の室温も変動する。従
来技術では、システム自体を構成するハードウェアやソ
フトウェアのシミュレーションは可能であったが、この
ような外部環境の変化はシミュレートされなかった。こ
のため、外部環境との関係も含めた正確なソフトウェア
試験は困難であり、外部環境の変化をもシミュレートす
るソフトウェア試験装置が求められていた。
[0008] Further, not only may software and hardware affect each other, but also software and hardware may have a relationship with an external environment. In such a case, not only the operation of the system may change the external environment, but also the changed external environment may further affect the operation of the system. For example, changes in the temperature inside the refrigerator are affected by the outside air temperature, and when the air conditioner is operated, the room temperature outside the air conditioner also fluctuates. In the prior art, hardware and software constituting the system itself can be simulated, but such a change in the external environment is not simulated. For this reason, it is difficult to perform an accurate software test including the relationship with the external environment, and a software test apparatus that simulates a change in the external environment has been required.

【0009】本発明は、上記のような従来技術の問題点
を解決するために提案されたもので、その目的は、ハー
ドウェアとソフトウェアのシミュレーションを実際の動
作タイミングに対応するように制御することによって、
正確な試験を行うソフトウェア実行装置及びソフトウェ
ア実行方法を提供することである。また、本発明の他の
目的は、シミュレーションされる仮想ハードウェアを操
作することによって所定のデータを生成し、試験を効率
的に行うソフトウェア実行装置及びソフトウェア実行方
法を提供することである。
The present invention has been proposed to solve the above-mentioned problems of the prior art, and an object thereof is to control hardware and software simulations so as to correspond to actual operation timings. By
An object of the present invention is to provide a software execution device and a software execution method for performing an accurate test. It is another object of the present invention to provide a software execution device and a software execution method for generating predetermined data by operating virtual hardware to be simulated and performing a test efficiently.

【0010】また、本発明の他の目的は、前記制御に基
づいて、指定されたタイミングで所定のデータを与える
ことによって、イベントのタイミングが問題となる試験
を有効に行うソフトウェア実行装置及びソフトウェア実
行方法を提供することである。また、本発明の他の目的
は、システムの外部環境の変化もシミュレートすること
によって、現実に近い正確な試験を行うソフトウェア実
行装置及びソフトウェア実行方法を提供することであ
る。
Another object of the present invention is to provide a software execution device and a software execution device for effectively performing a test in which the timing of an event is a problem by giving predetermined data at a designated timing based on the control. Is to provide a way. It is another object of the present invention to provide a software execution device and a software execution method for performing a realistic and accurate test by simulating a change in an external environment of the system.

【0011】また、本発明の他の目的は、保存しておい
た所定のデータをシミュレーションに再利用することに
よって、効率的に試験を行うソフトウェア実行装置及び
ソフトウェア実行方法を提供することである。また、本
発明の他の目的は、シミュレーション途中の情報を保存
してシミュレーションを再開することによって、多様な
試験態様を実現するソフトウェア実行装置及びソフトウ
ェア実行方法を提供することである。
It is another object of the present invention to provide a software execution device and a software execution method for efficiently performing a test by reusing stored predetermined data for simulation. It is another object of the present invention to provide a software execution device and a software execution method for realizing various test modes by saving information during a simulation and restarting the simulation.

【0012】[0012]

【課題を解決するための手段】上記の目的を達成するた
め、請求項1の発明は、ハードウェアの制御に用いるソ
フトウェアを試験するためのソフトウェア実行装置にお
いて、前記ハードウェアに関する情報に基づいて仮想ハ
ードウェアをコンピュータ上に形成するための第1の実
行手段と、前記ソフトウェアを試験するための所定のデ
ータに基づいて、実行対象となるソフトウェアを前記仮
想ハードウェアに対して実行させる第2の実行手段と、
前記第1の実行手段と第2の実行手段に対して、前記仮
想ハードウェアとそのソフトウェアの動作タイミング
を、現実の動作タイミングに対応するように制御する制
御手段と、を有することを特徴とする。
According to one aspect of the present invention, there is provided a software execution device for testing software used for controlling hardware, the virtual execution being performed based on information on the hardware. First execution means for forming hardware on a computer, and second execution for executing software to be executed on the virtual hardware based on predetermined data for testing the software Means,
Control means for controlling the operation timing of the virtual hardware and its software corresponding to the actual operation timing with respect to the first execution means and the second execution means. .

【0013】請求項7の発明は、請求項1の発明を方法
の観点から把握したものであって、ハードウェアの制御
に用いるソフトウェアを試験するためのソフトウェア実
行方法において、前記ハードウェアに関する情報に基づ
いて仮想ハードウェアをコンピュータ上に形成するため
の第1の実行処理と、前記ソフトウェアを試験するため
の所定のデータに基づいて、実行対象となるソフトウェ
アを前記仮想ハードウェアに対して実行させる第2の実
行処理と、前記第1の実行処理と第2の実行処理に対し
て、前記仮想ハードウェアとそのソフトウェアの動作タ
イミングを、現実の動作タイミングに対応するように制
御する制御処理と、を含むことを特徴とする。
According to a seventh aspect of the present invention, there is provided a software execution method for testing software used for controlling hardware, wherein the information relating to the hardware is provided. A first execution process for forming virtual hardware on a computer based on the first execution process, and executing a software to be executed on the virtual hardware based on predetermined data for testing the software. 2 and a control process for controlling the operation timing of the virtual hardware and its software to correspond to the actual operation timing with respect to the first execution process and the second execution process. It is characterized by including.

【0014】なお、ソフトウェアを試験するためのソフ
トウェア実行方法を実現するコンピュータソフトウェア
を記録した記録媒体も本発明の一態様である。この場
合、記録媒体に記録されたコンピュータソフトウェアに
よって実現されるソフトウェア実行方法は、前記ハード
ウェアに関する情報に基づいて仮想ハードウェアをコン
ピュータ上に形成するための第1の実行処理と、前記ソ
フトウェアを試験するための所定のデータに基づいて、
実行対象となるソフトウェアを前記仮想ハードウェアに
対して実行させる第2の実行処理と、前記第1の実行処
理と第2の実行処理に対して、前記仮想ハードウェアと
そのソフトウェアの動作タイミングを、現実の動作タイ
ミングに対応するように制御する制御処理と、を含むこ
とを特徴とする。
A recording medium on which computer software for realizing a software execution method for testing software is also an aspect of the present invention. In this case, the software execution method realized by the computer software recorded on the recording medium includes a first execution process for forming virtual hardware on a computer based on the information on the hardware, and a test of the software. Based on the given data to
A second execution process for executing software to be executed on the virtual hardware, and an operation timing of the virtual hardware and the software with respect to the first execution process and the second execution process, And a control process for performing control so as to correspond to the actual operation timing.

【0015】請求項1,7の発明では、ハードウェアが
未完成でも、ハードウェアに関する情報を入力すれば、
仮想ハードウェアがコンピュータ上に形成され、実行対
象となるソフトウェアが前記仮想ハードウェアに対して
実行される。そして、ソフトウェアによる制御でハード
ウェアが動作するときは、動作が仮想ハードウェアに現
われる。このため、開発早期の段階でハードウェアが未
完成でも、あたかも実際のハードウェア(実機)を用い
るのと同様の環境でソフトウェアに対して所定のデータ
を与え、ソフトウェアのテストを行なうことができる。
なお、ここでいうソフトウェアは、ニモニックコードの
ような具体的なソフトウェアでもソフトウェアの仕様で
もよい。このため、具体的なソフトウェアが未完成でも
ソフトウェアの試験を行うことができる。この結果、製
品の開発期間を短縮させるとともに、従来開発者が目で
追うことによって行っていた仕様の不具合の検出を支援
できるので、ソフトウェアのデバッグの正確性と効率を
大幅に向上する。そして、仮想ハードウェアとソフトウ
ェアの動作タイミングは、現実の動作タイミングに対応
するように制御されるので、実際の動作タイミングに沿
って正確にシミュレートすることができる。
According to the first and seventh aspects of the present invention, even if the hardware is not completed, if information about the hardware is input,
Virtual hardware is formed on a computer, and software to be executed is executed on the virtual hardware. When the hardware operates under the control of software, the operation appears in the virtual hardware. For this reason, even if the hardware is not completed in the early stage of development, it is possible to give the predetermined data to the software in the same environment as using the actual hardware (actual machine) and perform the software test.
Note that the software mentioned here may be specific software such as a mnemonic code or software specifications. Therefore, even if the specific software is not completed, the software can be tested. As a result, the development time of the product can be shortened, and the detection of the specification defect which has been conventionally performed by the developer can be assisted, thereby significantly improving the accuracy and efficiency of software debugging. Since the operation timings of the virtual hardware and the software are controlled so as to correspond to the actual operation timings, it is possible to simulate accurately in accordance with the actual operation timings.

【0016】請求項2の発明は、請求項1記載のソフト
ウェア実行装置において、前記所定のデータを、第1の
実行手段上の仮想ハードウェアを操作することにより生
成することを特徴とする請求項1記載のソフトウェア実
行装置。
According to a second aspect of the present invention, in the software execution device according to the first aspect, the predetermined data is generated by operating virtual hardware on the first execution means. 2. The software execution device according to 1.

【0017】請求項8の発明は、請求項2の発明を方法
の観点から把握したものであって、請求項7記載のソフ
トウェア実行方法において、前記所定のデータを、第1
の実行処理による仮想ハードウェアを操作することによ
り生成することを特徴とする請求項7記載のソフトウェ
ア実行方法。
According to an eighth aspect of the present invention, the invention of the second aspect is grasped from the viewpoint of a method. In the software execution method according to the seventh aspect, the predetermined data is stored in the first place.
8. The software execution method according to claim 7, wherein the software execution method is generated by manipulating virtual hardware by the execution processing of the software.

【0018】請求項2,8の発明では、仮想ハードウェ
アをマウスなどで操作すれば、ソフトウェアに与える所
定のデータが生成されるので、所定のデータを文字列で
定義して入力する必要がなく、ソフトウェアの試験が効
率化される。
According to the second and eighth aspects of the present invention, if the virtual hardware is operated with a mouse or the like, predetermined data to be given to the software is generated, so that there is no need to define and input the predetermined data as a character string. As a result, software testing becomes more efficient.

【0019】請求項3の発明は、請求項1又は2記載の
ソフトウェア実行装置において、前記第1の実行手段
は、発生のタイミングが各々指定された一連のイベント
を所定のデータとして与えられた場合に、各イベント
を、前記制御手段による制御に基づいて、指定された前
記タイミングで前記第2の実行手段に送るように構成さ
れたことを特徴とする請求項1又は2記載のソフトウェ
ア実行装置。
According to a third aspect of the present invention, in the software execution device according to the first or second aspect, the first execution means is provided when a series of events whose occurrence timings are specified are given as predetermined data. 3. The software execution device according to claim 1, wherein each event is sent to the second execution unit at the designated timing under the control of the control unit.

【0020】請求項9の発明は、請求項3の発明を方法
の観点から把握したものであって、請求項7又は8記載
のソフトウェア実行方法において、前記第1の実行処理
は、発生のタイミングが各々指定された一連のイベント
を所定のデータとして与えられた場合に、各イベント
を、前記制御処理による制御に基づいて、指定された前
記タイミングで前記第2の実行処理に対して提供するこ
とを特徴とする。
According to a ninth aspect of the present invention, the invention of the third aspect is grasped from a method point of view. In the software execution method according to the seventh or eighth aspect, the first execution processing is performed at a timing of occurrence. When a series of specified events are given as predetermined data, each event is provided to the second execution process at the specified timing based on the control by the control process. It is characterized by.

【0021】請求項3,9の発明では、所定のデータを
単に順番に発生させるだけでなく、所定のデータを構成
するイベントごとに発生のタイミングを指定しておけ
ば、制御手段による制御に基づいて、指定されたタイミ
ングでソフトウェアのシミュレーションに対してイベン
トが提供される。このため、データが入力されるタイミ
ングによって動作が異なるなど、イベントのタイミング
が問題となる試験を有効に行うことができる。
According to the third and ninth aspects of the present invention, not only the predetermined data is generated sequentially but also the generation timing is specified for each event constituting the predetermined data, the control is performed based on the control by the control means. Thus, an event is provided to the software simulation at a specified timing. For this reason, it is possible to effectively perform a test in which the timing of an event is a problem, for example, the operation differs depending on the timing at which data is input.

【0022】請求項4の発明は、請求項1,2又は3記
載のソフトウェア実行装置において、対象とする前記シ
ステムと関係がある外部環境の変化内容を定義するため
の定義手段と、前記システムの動作と、前記定義された
変化内容に基づいて、前記外部環境の変化を前記第2の
実行手段に提供する第3の実行手段を有することを特徴
とする。
According to a fourth aspect of the present invention, in the software execution device according to the first, second or third aspect, a definition means for defining a change content of an external environment related to the target system; And a third execution unit that provides the change in the external environment to the second execution unit based on the operation and the defined change content.

【0023】請求項10の発明は、請求項4の発明を方
法の観点から把握したものであって、請求項7,8又は
9記載のソフトウェア実行方法において、対象とする前
記システムと関係がある外部環境の変化内容を定義する
ための定義処理と、前記システムの動作と、前記定義さ
れた変化内容に基づいて、前記外部環境の変化を前記第
2の実行処理に対して提供することを特徴とする第3の
実行処理を含むことを特徴とする。
According to a tenth aspect of the present invention, the invention of the fourth aspect is grasped from the viewpoint of a method. In the software execution method according to the seventh, eighth or ninth aspect, there is a relationship with the target system. Providing a change process of the external environment to the second execution process based on a definition process for defining a change content of an external environment, an operation of the system, and the defined change content. And a third execution process.

【0024】請求項4,10の発明では、システムが外
部環境を変化させたり、外部環境の変化がシステムの動
作に影響を与える場合も、外部環境の変化がシミュレー
トされる。このため、シミュレートされた外部環境の変
化に基づいて、さらにシステムの動作をシミュレートす
ることによって、より実際に即した正確なテスト結果を
得ることができる。特に、外部環境の変化を前記制御に
基づいてシミュレートすることにより、より現実に近い
外部環境の変化を得られ、正確なテストを行うことが可
能となる。
According to the fourth and tenth aspects of the present invention, a change in the external environment is simulated even when the system changes the external environment or when the change in the external environment affects the operation of the system. For this reason, by further simulating the operation of the system based on the simulated change in the external environment, it is possible to obtain more accurate test results that are more practical. In particular, by simulating a change in the external environment based on the control, a change in the external environment that is closer to reality can be obtained, and an accurate test can be performed.

【0025】請求項5の発明は、請求項1,2,3又は
4記載のソフトウェア実行装置において、前記第1の実
行手段から得られた所定のデータを保存する保存手段を
有し、前記第1の実行手段は、前記保存された所定のデ
ータを読み出して第2の実行手段に送るように構成され
たことを特徴とする。
According to a fifth aspect of the present invention, in the software execution device according to the first, second, third or fourth aspect, the software execution device further comprises storage means for storing predetermined data obtained from the first execution means, The first execution means is configured to read out the stored predetermined data and send it to the second execution means.

【0026】請求項5の発明では、第1の実行手段で作
成した所定のデータを記録しておき、この所定のデータ
を再利用してシミュレートを行うことができる。このた
め、同じ所定のデータを用いる場合のシミュレーション
が効率化され、異常動作の再現試験も容易になる。
According to the fifth aspect of the present invention, the predetermined data created by the first execution means is recorded, and the simulation can be performed by reusing the predetermined data. For this reason, the simulation when the same predetermined data is used is made more efficient, and the reproduction test of the abnormal operation is facilitated.

【0027】請求項6の発明は、請求項1,2,3,4
又は5記載のソフトウェア実行装置において、前記各シ
ミュレートを中断後に再開するために必要な情報を、所
望の時点で保存するための第2の保存手段と、保存され
た前記情報を用いて各シミュレートを再開するための再
開手段と、を備えたことを特徴とする。
The invention of claim 6 is the invention of claims 1, 2, 3, 4
Or in the software execution apparatus according to 5, wherein information necessary for restarting each of the simulations after interruption is stored at a desired point in time, and a second storage means for storing each simulation using the stored information. And a restart means for restarting the computer.

【0028】請求項6の発明では、ソフトウェアやハー
ドウェアの状態など、一旦中断したシミュレーションを
再開できる情報を、所望の時点で保存させておくことが
できる。このため、保存後に失敗や事故など不測の事態
が発生した場合に、記録した時点から作業をやり直した
り、スケジュールの都合に応じて作業を後日再開するこ
とにより、多様な試験の態様を実現することができる。
According to the sixth aspect of the present invention, information for restarting the simulation once interrupted, such as the state of software and hardware, can be stored at a desired time. Therefore, in the event that an unexpected event such as a failure or accident occurs after storage, various tests can be implemented by re-starting the work from the point of recording or resuming the work at a later date according to the schedule. Can be.

【0029】特に、記録しておいた所定のデータを用い
て自動的に行う試験が長時間を要する場合、所定のデー
タの再生を途中まで行った時点で再開用の情報を保存し
ておき、後に再開することによって、長時間を要するテ
ストを自動的にしかもスケジュールに合わせて分割して
行うことが可能となる。このため、試験作業の進め方の
自由度が向上する。
In particular, when a test to be performed automatically using the recorded predetermined data requires a long time, information for resuming is stored when reproduction of the predetermined data has been performed halfway. By resuming the test later, it is possible to automatically perform a test that requires a long time and to divide the test according to a schedule. For this reason, the degree of freedom of the test operation is improved.

【0030】[0030]

【発明の実施の形態】次に、本発明のソフトウェア実行
装置の実施の形態について、図を参照して説明する。
Next, an embodiment of a software execution apparatus according to the present invention will be described with reference to the drawings.

【0031】(1)構成 この実施の形態は、請求項1〜5のソフトウェア実行装
置及びこのソフトウェア実行装置上で実行されるソフト
ウェア実行方法(請求項6〜10)を具体化したソフト
ウェア試験装置(以下「本装置」という)及びソフトウ
ェア試験方法に関するものである。まず、図1は、本装
置の構成を示す機能ブロック図である。この図におい
て、実線の矢印はデータの流れを示し、破線の矢印は制
御の流れを示す。
(1) Configuration In this embodiment, a software test apparatus (a test apparatus) embodying a software execution apparatus according to claims 1 to 5 and a software execution method executed on this software execution apparatus (claims 6 to 10) (Hereinafter referred to as “this device”) and a software test method. First, FIG. 1 is a functional block diagram showing the configuration of the present apparatus. In this figure, solid arrows indicate the flow of data, and broken arrows indicate the flow of control.

【0032】まず、本装置は、情報及び指示を入力する
ための入力手段1を有する。入力手段1としては、例え
ばキーボード及びマウスを用いることができる。この入
力手段1は、例えば、開発中のハードウェアの構成及び
動作に関するハードウェア情報2及び試験しようとする
ソフトウェアとして動作仕様3を入力するために用いら
れる。
First, the present apparatus has input means 1 for inputting information and instructions. As the input means 1, for example, a keyboard and a mouse can be used. The input unit 1 is used, for example, to input hardware information 2 relating to the configuration and operation of hardware under development and an operation specification 3 as software to be tested.

【0033】また、本装置は、ハードウェア情報2に基
づいてハードウェア及びハードウェアの動作をシミュレ
ートして表示することによって仮想ハードウェアをコン
ピュータ上に形成するハードウェアシミュレータ4(請
求項1における第1の実行手段に相当するもの)を有す
る。また、本装置は、各種情報を表示する表示手段5を
有しており、ハードウェアシミュレータ4によってシミ
ュレートされるハードウェア及びその動作は、この表示
手段5に表示される。
Further, the present apparatus simulates and displays the hardware and the operation of the hardware based on the hardware information 2 to display virtual hardware on a computer. (Corresponding to first execution means). Further, the present apparatus has a display means 5 for displaying various information, and the hardware simulated by the hardware simulator 4 and its operation are displayed on the display means 5.

【0034】なお、ハードウェアシミュレータ4は、ハ
ードウェアを表示するだけでなく、表示されたハードウ
ェアに対する操作を、入力手段1を介して入力し、入力
された操作を、ソフトウェアの試験に用いるテストデー
タ(前記所定のデータに相当するもの)として、仮想実
行エンジン6に送るように構成されている。
The hardware simulator 4 not only displays hardware, but also inputs an operation on the displayed hardware via the input means 1 and uses the input operation for a software test. It is configured to be sent to the virtual execution engine 6 as data (corresponding to the predetermined data).

【0035】仮想実行エンジン6は、動作仕様3及びハ
ードウェアシミュレータ4から得られるテストデータに
基づいて、試験対象となるソフトウェアを前記仮想ハー
ドウェアに対して実行させる手段(請求項1における第
2の実行手段に相当するもの)である。
The virtual execution engine 6 causes the virtual hardware to execute software to be tested on the virtual hardware based on the operation specifications 3 and the test data obtained from the hardware simulator 4. (Corresponding to execution means).

【0036】前記の入力手段1は、試験しようとする前
記システムと関係がある外部環境の変化内容8を定義す
るためにも用いられる(請求項4における定義手段に相
当する)。そして、本装置は、システムの動作と、定義
された変化内容8に基づいて、外部環境の変化をシミュ
レートするユーザ定義シミュレータ9(請求項4におけ
る第3の実行手段に相当するもの)を有する。また、本
装置は、ハードウェアシミュレータ4、仮想実行エンジ
ン5及びユーザ定義シミュレータ9に対して時間の情報
を提供するクロック7を有する。このクロック7は、ハ
ードウェアシミュレータ4及び仮想実行エンジン6に対
して、仮想ハードウェアとそのソフトウェアの動作タイ
ミングを、現実の動作タイミングに対応するように制御
する制御手段に相当する。
The input means 1 is also used to define external environment change contents 8 related to the system to be tested (corresponding to the definition means in claim 4). The apparatus has a user-defined simulator 9 (corresponding to a third execution means in claim 4) for simulating a change in an external environment based on the operation of the system and the defined change content 8. . Further, the present apparatus has a clock 7 for providing time information to the hardware simulator 4, the virtual execution engine 5, and the user-defined simulator 9. The clock 7 corresponds to a control unit that controls the hardware simulator 4 and the virtual execution engine 6 to control the operation timing of the virtual hardware and its software so as to correspond to the actual operation timing.

【0037】また、本装置は、テストデータを保存する
再生用ヒストリファイル10(請求項5における保存手
段に相当するもの)を有し、ハードウェアシミュレータ
4は、入力される指示に応じて、再生用ヒストリファイ
ル10に保存されたテストデータを読み出して仮想実行
エンジン6に送るように構成されている。
The present apparatus has a reproduction history file 10 (corresponding to a storage means in claim 5) for storing test data, and the hardware simulator 4 reproduces the test data in response to an input instruction. The test data stored in the history file for use 10 is read and sent to the virtual execution engine 6.

【0038】また、本装置は、各シミュレートに関し
て、一旦中断後に再開できる情報を所望の時点で保存す
るための再開用ファイル11(請求項6における第2の
保存手段に相当するもの)を有する。これに対応して、
ハードウェアシミュレータ4、仮想実行エンジン6及び
ユーザ定義シミュレータ9は、入力される指示に応じ
て、再開用ファイル11に保存された情報を用いて各シ
ミュレートを再開するように構成されており、各シミュ
レートを再開するための再開手段(請求項6)を構成し
ている。
In addition, the present apparatus has a restart file 11 (corresponding to a second storage unit in claim 6) for storing information that can be restarted after being interrupted once at a desired time for each simulation. . Correspondingly,
The hardware simulator 4, the virtual execution engine 6, and the user-defined simulator 9 are configured to restart each simulation using information stored in the restart file 11 in response to an input instruction. The restart means (claim 6) for restarting the simulation is constituted.

【0039】また、本装置は、仮想実行エンジン6がソ
フトウェアの動作をシミュレートする際に発生する遷移
などの情報を保存するための閲覧用ヒストリファイル1
2を有する。なお、ハードウェアシミュレータ4、仮想
実行エンジン6、ユーザ定義シミュレータ9、クロック
7は、マルチプロセスシステム上の各プロセスとして構
成されているので、相互に独立性が高く、全体の動作が
安定している。
The present apparatus also includes a browsing history file 1 for storing information such as transitions generated when the virtual execution engine 6 simulates the operation of software.
2 Since the hardware simulator 4, the virtual execution engine 6, the user-defined simulator 9, and the clock 7 are configured as processes in a multi-process system, they are highly independent of each other, and the whole operation is stable. .

【0040】(2)作用及び効果 (2−1)本装置における試験の概略 ここでは、ソフトウェアとして、冷蔵庫を制御するため
の組み込みマイコンプログラムを試験するものとする。
プログラムの開発者たるユーザは、冷蔵庫のハードウェ
アや、アセンブラ用ニモニックコードなどの具体的なマ
イコンプログラムが完成していない開発の早期の段階
で、シミュレートによってソフトウェアを試験すること
ができる。
(2) Function and Effect (2-1) Outline of Test in This Device Here, it is assumed that a built-in microcomputer program for controlling the refrigerator is tested as software.
A user who is a program developer can test software by simulation at an early stage of development when concrete microcomputer programs such as refrigerator hardware and assembler mnemonic code are not completed.

【0041】すなわち、ユーザは、まず入力手段1か
ら、ハードウェア情報2、動作仕様3及び外部環境の変
化内容8を入力する。そして、ユーザが、入力手段1か
ら試験開始の指示を入力すると、この指示はハードウェ
アシミュレータ4、仮想実行エンジン6及びユーザ定義
シミュレータ9に送られる。
That is, the user first inputs the hardware information 2, the operation specifications 3, and the change contents 8 of the external environment from the input means 1. When the user inputs a test start instruction from the input unit 1, the instruction is sent to the hardware simulator 4, the virtual execution engine 6, and the user-defined simulator 9.

【0042】試験開始の指示を受けて、ハードウェアシ
ミュレータ4は、ハードウェア情報2に基づいて、冷蔵
庫のハードウェアを表示手段5に画像表示する。ユーザ
は、入力手段1のマウスやキーボードによってこの画像
に対して操作を行うことによって、ソフトウェアに入力
されるテストデータたるイベントを発生させることがで
きる。
Upon receiving the instruction to start the test, the hardware simulator 4 displays an image of the refrigerator hardware on the display means 5 based on the hardware information 2. By operating the image using the mouse or keyboard of the input unit 1, the user can generate an event as test data input to the software.

【0043】また、ユーザ定義シミュレータ9は、シス
テムの外部環境として、冷蔵室やフリーザの温度を、時
間のほかに、室温・扉の開閉・コンプレッサのON/O
FF・室温などに基づいてシミュレートし、変化内容を
イベントとしてハードウェアシミュレータ4に送る。
Further, the user-defined simulator 9 controls the temperature of the refrigerator and the freezer as the external environment of the system in addition to the time, the room temperature, the opening and closing of the door, and the ON / O of the compressor.
Simulation is performed based on FF, room temperature, and the like, and the change content is sent to the hardware simulator 4 as an event.

【0044】ハードウェアシミュレータ4は、ユーザの
操作によるイベントとユーザ定義シミュレータ9から送
られたイベントに基づいてハードウェアの表示を変化さ
せるとともに、これらイベントを仮想実行エンジン6に
送る。仮想実行エンジン6は、与えられたイベントに対
応するソフトウェアの動作をシミュレートする。シミュ
レートされるソフトウェアがハードウェアを変化させる
ときは、変化がハードウェアシミュレータ4に送られ、
ハードウェアシミュレータ4によってハードウェア表示
が更新される。
The hardware simulator 4 changes the display of the hardware based on the event by the user operation and the event sent from the user-defined simulator 9, and sends these events to the virtual execution engine 6. The virtual execution engine 6 simulates the operation of the software corresponding to the given event. When the simulated software changes the hardware, the change is sent to the hardware simulator 4,
The hardware display is updated by the hardware simulator 4.

【0045】動作仕様3に誤りがある場合は、表示手段
5におけるハードウェアの表示において、発生するはず
の変化が発生しないので、ユーザはソフトウェアの異常
を発見することができる。なお、以上のような試験を実
現するために、本装置の各部分に係る具体的な情報や処
理内容について、以下に説明する。
If there is an error in the operation specification 3, no change that would occur in the display of the hardware on the display means 5 occurs, so that the user can discover an abnormality in the software. Note that, in order to realize the above test, specific information and processing contents related to each part of the present apparatus will be described below.

【0046】(2−2)ソフトウェア情報 ユーザが入力手段1から入力する動作仕様3は、冷蔵庫
を制御するマイコンプログラムの仕様を表す状態遷移図
である。図2は、状態遷移図として表された動作仕様3
を簡略化して示した図である。
(2-2) Software Information The operation specification 3 input by the user through the input means 1 is a state transition diagram representing the specification of the microcomputer program for controlling the refrigerator. FIG. 2 shows an operation specification 3 represented as a state transition diagram.
FIG.

【0047】ここで、状態遷移図(STD:State
Transition Diagram)は状態遷移
モデルを図表にしたものである。状態遷移モデルは、ソ
フトウェアの仕様の表現形式の一つで、いくつかの取り
うる状態106(図2において円形で示す)と、状態間
の遷移107(図2において矢印で示す)とから構成さ
れる。本装置は、ソフトウェアの仕様を状態遷移図(S
TD:State Transition Diagr
am)として入力しシミュレートする点で、STDシミ
ュレータと呼ぶことができる。
Here, a state transition diagram (STD: State)
A transition diagram is a diagram of a state transition model. The state transition model is one of the expression forms of software specifications, and includes several possible states 106 (shown by circles in FIG. 2) and transitions 107 between states (shown by arrows in FIG. 2). You. This device converts the software specifications into a state transition diagram (S
TD: State Transition Diagr
am) and can be called an STD simulator.

【0048】図2の状態遷移図において、各遷移には、
遷移の内容を表す遷移記述108として、その遷移が発
生する条件(イベント)と、その遷移によって発生する
現象(アクション)が定義される。図3は、イベントと
アクションの書式の例を示す図である。この図に示すよ
うに、イベント109とアクション110は、区切り記
号「//」で区切って記述される。
In the state transition diagram of FIG.
As the transition description 108 representing the content of the transition, a condition (event) that causes the transition and a phenomenon (action) that occurs due to the transition are defined. FIG. 3 is a diagram illustrating an example of a format of an event and an action. As shown in this figure, the event 109 and the action 110 are described by being separated by a delimiter “//”.

【0049】また、図4は、状態遷移図の他の例であ
り、具体的には冷蔵庫のコンプレッサを制御するソフト
ウェアの動作仕様である。この例では、電源を入れると
状態initから始まり、状態reset において、冷蔵庫内の
温度がコンプレッサをONする基準の温度より高いときに
(イベント「冷蔵庫温度:ON温度以上」)、コンプレッ
サの運転を開始することによって(アクション「コンプ
レッサ:運転する」)状態onへと遷移する。
FIG. 4 is another example of a state transition diagram, specifically, the operation specification of software for controlling a compressor of a refrigerator. In this example, when the power is turned on, the operation starts from the state init, and in the state reset, when the temperature in the refrigerator is higher than the reference temperature for turning on the compressor (event “refrigerator temperature: ON temperature or more”), the compressor starts operating. (Action "compressor: run") to state on.

【0050】状態onでコンプレッサの運転を続けた結
果、温度が十分下がると(イベント「冷蔵庫内温度: O
FF温度未満」)が発生し、状態protect へ遷移する。こ
の遷移ではアクションとして、コンプレッサを停止する
とともに(アクション「コンプレッサ:停止する」)保
護タイマを起動する(アクション「保護タイマ:設定す
る」)。保護タイマがカウントしている間は状態protec
t であり、冷蔵庫内の温度が上昇してもコンプレッサは
運転しない。
As a result of continuing the operation of the compressor in the state “on”, when the temperature drops sufficiently (event “Refrigerator temperature: O
<FF temperature ”) occurs and transits to state protect. In this transition, as an action, the compressor is stopped (action “compressor: stop”) and a protection timer is started (action “protection timer: set”). The state protec while the protection timer is counting
The compressor does not operate even if the temperature inside the refrigerator rises.

【0051】ソフトウェアの試験では、イベントには各
種のものがありうるが、例えば「扉を開く」/「扉を閉
める」等のイベントは、ユーザがハードウェアシミュレ
ータ4で発生させるテストデータとなる。反対に、状態
の遷移やアクションは、テストデータを入力した結果と
して仮想実行エンジン6がシミュレーションによって発
生させ、発生した結果は表示手段5を通じて最終的にユ
ーザに提供される。
In a software test, there can be various types of events. For example, an event such as “open a door” / “close a door” is test data generated by the hardware simulator 4 by a user. Conversely, state transitions and actions are generated by simulation by the virtual execution engine 6 as a result of inputting test data, and the generated results are finally provided to the user through the display unit 5.

【0052】(2−3)ハードウェア情報 また、ユーザが入力手段1から入力するハードウェア情
報は、ハードウェアである冷蔵庫の構成及び動作を表す
情報である。ハードウェア情報は、冷蔵庫を構成する構
成要素ごとに上記と同様の状態遷移モデルで表してお
く。例えば、図5は、あるタイマにおける状態遷移を表
す図である。
(2-3) Hardware Information The hardware information input by the user from the input means 1 is information representing the configuration and operation of the refrigerator as hardware. The hardware information is represented by a state transition model similar to the above for each component constituting the refrigerator. For example, FIG. 5 is a diagram illustrating a state transition in a certain timer.

【0053】この例では、タイマが「初期」状態にある
場合、仮想実行エンジン6がイベントを処理することに
よって「設定」というアクションが発生すると、タイマ
の状態が「継続」に遷移し、設定された時間のカウント
が開始される。また、カウントの継続中に「停止」とい
うアクションが発生すると、タイマの状態は「停止」に
遷移し、時間のカウントは中断される。また、設定され
た時間が経過すると「タイムアウト」というイベントが
自動的に発生し、状態は「終了」に移行する。
In this example, when the timer is in the “initial” state, and the virtual execution engine 6 processes the event and the action “set” occurs, the state of the timer transits to “continue” and is set. The counting of the time is started. Also, if an action of “stop” occurs during the continuation of the count, the state of the timer transits to “stop”, and the counting of time is interrupted. When the set time has elapsed, an event of “timeout” is automatically generated, and the state shifts to “end”.

【0054】なお、この例で状態遷移図という表現形式
を用いたのは単なる一例であって、同等の意味内容を表
せるデータ形式であれば、状態遷移図には限定されず、
所望の形式を用いることができる。例えば、ある状態遷
移図をテキストで表すには、状態ごとの識別子を含む状
態のリストと、識別子を用いた遷移のリストを作成し、
遷移ごとにイベントとアクションを記述すればよい。
Note that the expression form of the state transition diagram in this example is merely an example, and is not limited to the state transition diagram as long as the data format can represent the equivalent meaning.
Any desired format can be used. For example, to represent a state transition diagram in text, create a list of states including an identifier for each state and a list of transitions using the identifier,
An event and an action may be described for each transition.

【0055】(2−4)外部環境の変化内容 外部環境は、システムのハードウェアやソフトウェアと
関係があるが、システム自体を構成していない要素であ
る。例えば、冷蔵庫の庫内温度や冷蔵庫の周囲の室温な
どは冷蔵庫自体を構成する要素ではないが、冷蔵庫を制
御するソフトウェアの動作に影響を与える。これら外部
環境の変化内容としては、例えば、ある時点でのいくつ
かの数値に基づいて、新たな数値を計算する数式を与え
る。
(2-4) Changes in External Environment The external environment is an element that is related to the hardware and software of the system but does not constitute the system itself. For example, the temperature inside the refrigerator or the room temperature around the refrigerator is not an element that constitutes the refrigerator itself, but affects the operation of software that controls the refrigerator. As the contents of these changes in the external environment, for example, a mathematical expression for calculating a new numerical value based on some numerical values at a certain point in time is given.

【0056】この数式は、次のような要素に基づいて作
成する。例えば、冷蔵室やフリーザの温度は扉をあける
と上昇する。また、これらの温度は、コンプレッサの運
転によって低下するが、除霜運転中は逆に若干上昇す
る。温度は、庫内の内容物が多いほど下がりにくく、ま
た、外気温(室温)が高いほど冷えにくい。これら各要
素ごとに、定数や関数を用いた項を作成し、項からなる
数式を作成すればよい。
This formula is created based on the following factors. For example, the temperature of the refrigerator compartment or the freezer rises when the door is opened. Further, these temperatures are reduced by the operation of the compressor, but are slightly increased during the defrosting operation. The temperature is less likely to decrease as the content in the refrigerator increases, and harder to cool as the outside air temperature (room temperature) increases. What is necessary is just to create a term using a constant or a function for each of these elements, and create a mathematical expression including the term.

【0057】(2−5)ユーザとのインタフェース 上記のソフトウェア情報及びハードウェア情報は、あら
かじめファイルとして作成しておき、試験を行う際に処
理ユニットに読み込んでもよい。例えば、図6は、本装
置であるSTDシミュレータを実現する場合の概略的構
成例を示す図である。すなわち、ユーザ111が、入力
手段112を通じてSTDシミュレータ113に指示を
与えると、STDシミュレータ113は、テストするマ
イコンプログラムの動作仕様3が記述されたSTD情報
ファイル114と、冷蔵庫のハードウェア情報2が記述
されたハードウェア情報ファイル115とを読み込む。
外部環境の変化をシミュレートしない場合は、外部環境
の変化内容は必須の情報ではない。このように読み込ま
れた情報によって、仮想的なハードウェア及び仮想的な
ソフトウェアがシミュレーションによって実現され、ソ
フトウェアの試験を行うための仮想的なテスト環境が構
築される。
(2-5) Interface with User The above-mentioned software information and hardware information may be created in advance as a file and read into the processing unit when a test is performed. For example, FIG. 6 is a diagram illustrating a schematic configuration example in the case of realizing an STD simulator that is the present apparatus. That is, when the user 111 gives an instruction to the STD simulator 113 through the input unit 112, the STD simulator 113 describes the STD information file 114 in which the operation specification 3 of the microcomputer program to be tested is described and the hardware information 2 of the refrigerator. The read hardware information file 115 is read.
When the change of the external environment is not simulated, the content of the change of the external environment is not essential information. Based on the information thus read, virtual hardware and virtual software are realized by simulation, and a virtual test environment for testing software is constructed.

【0058】なお、STDシミュレータ113とユーザ
111との情報のやり取りは、映像表示手段116に表
示されるグラフィカルユーザインタフェース(GUI)
を通じて行われる。例えば、図7に示すGUI表示11
9は、ハードウェアシミュレータ4が表示手段5に表示
するもので、イベントの発生を表示したり、冷蔵庫の外
観や外界とインターフェースのある部品のモニタ用など
に用いられる。
The exchange of information between the STD simulator 113 and the user 111 is performed by a graphical user interface (GUI) displayed on the video display means 116.
Done through. For example, the GUI display 11 shown in FIG.
Reference numeral 9 denotes a display on the display means 5 by the hardware simulator 4, which is used for displaying the occurrence of an event, for monitoring the appearance of the refrigerator, and for parts having an interface with the outside world, and the like.

【0059】また、図8に示すGUI表示120は、仮
想実行エンジン6が表示手段5に表示するもので、ST
Dの状態や冷蔵庫内部の部品のモニタ用、本装置の動作
を制御するためのコマンド入力用に用いられる。以下、
ユーザは各種指示をこのようなGUIを通じて与えるも
のとして説明する。ユーザからキーボードやマウスを通
じて送られてくる装置の運転/停止などの指示は、種類
に応じて、ハードウェアシミュレータ4、仮想実行エン
ジン6、クロック7、ユーザ定義シミュレータ9に通知
される。
The GUI display 120 shown in FIG. 8 is displayed on the display means 5 by the virtual execution engine 6 and is displayed in the ST mode.
It is used for monitoring the state of D and components inside the refrigerator, and for inputting commands for controlling the operation of the present apparatus. Less than,
The description will be given assuming that the user gives various instructions through such a GUI. Instructions such as operation / stop of the device transmitted from the user via the keyboard or mouse are notified to the hardware simulator 4, virtual execution engine 6, clock 7, and user-defined simulator 9 according to the type.

【0060】(2−6)試験の内容 試験を開始するには、ユーザが、仮想実行エンジン6の
GUI120(図8)にあるコントロール用shell
121から、デバッグを開始するコマンドを入力する。
ここで、テストデータ(イベント)を仮想実行エンジン
6に与える態様として、手動モードと自動モードを選択
することができる。
(2-6) Contents of Test In order to start the test, the user operates the control shell on the GUI 120 (FIG. 8) of the virtual execution engine 6.
At 121, a command to start debugging is input.
Here, as a mode of providing test data (event) to the virtual execution engine 6, a manual mode and an automatic mode can be selected.

【0061】(2−6−1)手動モード 手動モードは、イベントを一つずつ順次入力しながらシ
ミュレーションを行うモードであり、自動モードは、あ
らかじめ入力した一連のテストデータを連続してソフト
ウェアに与えてシミュレーションを行うモードである。
(2-6-1) Manual Mode In the manual mode, simulation is performed while sequentially inputting events one by one. In the automatic mode, a series of test data input in advance is continuously supplied to software. This is a mode for performing simulation.

【0062】手動モードを選択すると、仮想実行エンジ
ン6は、クロック7にシグナルを送信することによって
時間のカウントを開始させ、ハードウェアシミュレータ
4でイベントを発生させることができるようになる。図
9は、手動モードでの動作の概略的手順を示すフローチ
ャートである。
When the manual mode is selected, the virtual execution engine 6 starts counting time by transmitting a signal to the clock 7, so that the hardware simulator 4 can generate an event. FIG. 9 is a flowchart showing a schematic procedure of the operation in the manual mode.

【0063】すなわち、手動モードでは、ユーザがキー
ボードやマウスを通じて表示を操作すると、ハードウェ
アシミュレータ4がイベント(テストデータ)を発生さ
せる(ステップ91)。ハードウェアシミュレータ4は
発生したイベントを、仮想実行エンジン6が理解可能な
所定の形式のデータとして仮想実行エンジン6に送る
(ステップ92)。仮想実行エンジン6が理解可能な形
式は、例えば「冷蔵庫扉:開;」のような文字列であ
る。ここで、図10は、冷蔵庫全体を示すGUI123
又は冷蔵庫の部品たる扉を示すGUI124に対する操
作によってイベント125が発生し、このイベント12
5が仮想実行エンジン6に送られるという関係を示す概
念図である。
That is, in the manual mode, when the user operates the display through the keyboard or the mouse, the hardware simulator 4 generates an event (test data) (step 91). The hardware simulator 4 sends the generated event to the virtual execution engine 6 as data in a predetermined format that can be understood by the virtual execution engine 6 (step 92). The format that the virtual execution engine 6 can understand is, for example, a character string such as “refrigerator door: open;”. Here, FIG. 10 shows a GUI 123 showing the entire refrigerator.
Alternatively, an event 125 is generated by an operation on the GUI 124 indicating a door that is a part of the refrigerator, and the event 12
FIG. 5 is a conceptual diagram showing a relationship that 5 is sent to a virtual execution engine 6.

【0064】イベントを受け取った仮想実行エンジン6
は、受け取ったイベントによって状態遷移やアクション
が発生するか否か調べて(ステップ93)動作仕様のシ
ミュレーション実行を行う。この実行の結果はハードウ
ェアシミュレータ4及び表示手段5を通じてユーザに提
供されるので(ステップ94)、ユーザは提供された結
果に応じて次のイベントを発生させる(ステップ9
1)。
The virtual execution engine 6 that has received the event
Checks whether a state transition or action occurs due to the received event (step 93), and performs a simulation of the operation specification. Since the result of this execution is provided to the user through the hardware simulator 4 and the display means 5 (step 94), the user generates the next event according to the provided result (step 9).
1).

【0065】(2−6−2)自動モード 上記のような手動モードは、ユーザが任意にイベントを
発生させることができ、プログラムのインタラクティブ
なデバッグが可能であるが、多量のイベントを発生させ
たり、正確なタイミングでイベントを発生させるには、
次のような自動モードが適している。自動モードでイベ
ントを発生させるには以下のような手順(図11)が必
要である。
(2-6-2) Automatic Mode In the manual mode as described above, the user can arbitrarily generate an event and interactive debugging of the program is possible. , To trigger events at the right time,
The following automatic modes are suitable. The following procedure (FIG. 11) is required to generate an event in the automatic mode.

【0066】まず、ユーザは、発生させたいテストデー
タを入力し、入力したデータをファイル10として保存
しておく(ステップ111)。図12は、テストデータ
ファイルに保存するイベント情報129の形式を例示し
たもので、この例では、発生させるべきタイミングとし
て、イベントごとに発生時刻が指定されている。
First, the user inputs test data to be generated, and saves the input data as a file 10 (step 111). FIG. 12 illustrates the format of the event information 129 stored in the test data file. In this example, the generation time is specified for each event as the timing to generate.

【0067】次に、ユーザはマウスを操作してハードウ
ェアシミュレータ4のGUI119(図7)にある自動
発生用イベントloadボタン135をクリックする。
その結果、ファイルの内容が読み込まれ(ステップ11
2)、ファイルに含まれる各イベントがイベント表示ウ
インドウ136(図7)に表示される。
Next, the user operates the mouse and clicks on the automatically generated event load button 135 on the GUI 119 (FIG. 7) of the hardware simulator 4.
As a result, the contents of the file are read (step 11).
2) Each event included in the file is displayed in the event display window 136 (FIG. 7).

【0068】続けて、autoボタン137をクリック
することによって自動モードに切り替わり(ステップ1
13)、それまで手動モードであった場合は、前述のよ
うな手動によるイベント発生は中止される。そして、コ
ントロール用shell121(図8)からデバッグを
開始するコマンドを入力すると、クロック7が時間のカ
ウントを開始し、試験が開始される(ステップ11
4)。自動モードでは、ハードウェアシミュレータ4は
クロック7の提供する時間を参照しながら、読み込んだ
イベントを、時刻に応じて順次仮想実行エンジン6に送
る(ステップ115)。
Subsequently, the mode is switched to the automatic mode by clicking the auto button 137 (step 1).
13) If the mode was the manual mode until then, the occurrence of the event by manual as described above is stopped. Then, when a command to start debugging is input from the control shell 121 (FIG. 8), the clock 7 starts counting time and the test is started (step 11).
4). In the automatic mode, the hardware simulator 4 sequentially sends the read events to the virtual execution engine 6 according to the time while referring to the time provided by the clock 7 (step 115).

【0069】なお、ユーザは、manualボタン13
8(図7)をクリックして手動によるイベント発生モー
ドに戻ったり、イベントclearボタン139をクリ
ックしてイベントを消去することができる。
The user operates the manual button 13
8 (FIG. 7) to return to the manual event generation mode, or click the event clear button 139 to delete the event.

【0070】(2−6−3)実施の形態の効果 このように、本実施の形態では、テストデータを単に順
番に発生させるだけでなく、テストデータを構成するイ
ベントごとに発生のタイミングを指定しておけば、クロ
ック7に基づいて、指定されたタイミングでソフトウェ
アのシミュレーションに対してイベントが提供される。
このため、データが入力されるタイミングによって動作
が異なるなど、イベントのタイミングが問題となる試験
を有効に行うことができる。なお、図13は、イベント
に対する処理の状態について、従来技術の場合と本発明
の場合を比較して概念的に示したタイミングチャートで
ある。
(2-6-3) Effects of Embodiment As described above, in this embodiment, not only test data is generated sequentially but also the generation timing is specified for each event constituting the test data. If so, an event is provided to the software simulation at a designated timing based on the clock 7.
For this reason, it is possible to effectively perform a test in which the timing of an event is a problem, for example, the operation differs depending on the timing at which data is input. FIG. 13 is a timing chart conceptually showing the state of processing for an event by comparing the case of the prior art with the case of the present invention.

【0071】即ち、従来技術のように、テストデータを
ただシーケンシャル(順次)に発生させる場合は、テス
トデータとして例えばイベント1が入力されたときに対
応する処理1がただちに行なわれ、イベント2が入力さ
れると対応する処理2が行われる(図13左側の例)。
このように、従来では、テストデータたるイベントに応
じて、対応する処理が必ず順々に行なわれた。このた
め、イベントの入力タイミングによって処理の有無など
が変化する場合に、有効なソフトウェア試験を行なうこ
とは困難であった。
That is, when test data is generated only sequentially (sequentially) as in the prior art, for example, when event 1 is input as test data, the corresponding process 1 is immediately performed, and event 2 is input. Then, the corresponding process 2 is performed (example on the left side of FIG. 13).
As described above, conventionally, corresponding processes are always performed in sequence according to an event that is test data. Therefore, it is difficult to perform an effective software test when the presence / absence of processing changes depending on the event input timing.

【0072】これに対して、本実施の形態の場合は、図
13右側の例に示すように、発生させるテストデータに
ついて、イベントごとに時間軸上の位置を発生時刻とし
て指定することができる。この例では、ソフトウェアの
外部でイベント1が発生し、このイベント1に対応する
処理1が終了する前にイベント2が発生したために、処
理2が行なわれていない。処理1に必要なはずの所要時
間の間、処理2が起動されないという時間的な要素は、
クロック7からの時間の情報によって実現されるもので
ある。
On the other hand, in the case of the present embodiment, as shown in the example on the right side of FIG. 13, for the test data to be generated, the position on the time axis can be designated as the occurrence time for each event. In this example, the event 2 occurs outside the software, and the event 2 occurs before the process 1 corresponding to the event 1 ends, so that the process 2 is not performed. The temporal element that process 2 is not activated during the time required for process 1 is as follows:
This is realized by time information from the clock 7.

【0073】このように、本実施の形態によれば、ソフ
トウェアによる処理中に発生したイベントは検出されな
いなど、実際の時間的変化に即した試験が可能となる。
したがって、チャタリング除去の動作など、タイミング
が問題となる試験を有効に行なうことができる。
As described above, according to the present embodiment, it is possible to carry out a test in accordance with an actual temporal change, for example, an event occurring during processing by software is not detected.
Therefore, it is possible to effectively perform a test in which timing matters, such as an operation for removing chattering.

【0074】(2−7)クロックの動作 上記のような自動モードでのイベント発生に用いられる
時間の情報は、クロック7から提供される。クロック7
は、図14に示すように、水晶発振子などのサイクルを
カウントすることによって時間をカウントし(ステップ
141)、一定時間経過すると(ステップ142)新た
な時刻を各シミュレータに通知し(ステップ143)、
時間のカウント(ステップ141)からの手順を繰り返
す。クロックは、このような処理によって、装置全体に
共通の時間を提供している。なお、図14以降のフロー
チャートにおいて、接続子A,B,C,Dは本装置の各
部分間での情報をやり取りする関係があることを示す。
(2-7) Operation of Clock Time information used for event generation in the automatic mode as described above is provided from the clock 7. Clock 7
As shown in FIG. 14, the time is counted by counting cycles of a crystal oscillator or the like (step 141), and after a lapse of a predetermined time (step 142), a new time is notified to each simulator (step 143). ,
The procedure from time counting (step 141) is repeated. The clock provides a common time to the entire device by such processing. In the flowcharts of FIG. 14 and subsequent figures, connectors A, B, C, and D indicate that there is a relationship for exchanging information between the respective parts of the apparatus.

【0075】(2−8)ハードウェアシミュレータ4の
動作 このようなシミュレーションにおけるハードウェアであ
る冷蔵庫は、ハードウェアシミュレータ4によって作成
されるコンピュータグラフィックス画像として、表示手
段5に表示されている。手動モードの場合、ユーザは、
入力手段1のマウスやキーボードによってこの画像に対
して操作を行うことによって、テストデータたるイベン
トを発生させることができる。このため、テストデータ
を文字列で定義して入力する必要がなく、ソフトウェア
の試験が効率化される。
(2-8) Operation of Hardware Simulator 4 The refrigerator, which is hardware in such a simulation, is displayed on the display means 5 as a computer graphics image created by the hardware simulator 4. In manual mode, the user
By operating the image with the mouse or keyboard of the input unit 1, an event as test data can be generated. Therefore, there is no need to define and input test data as a character string, and the efficiency of software testing is improved.

【0076】例えば、ハードウェアである冷蔵庫につい
て、ユーザが、扉を開けるというイベントを発生させた
い場合は、マウスのカーソルやボタンを用いて、図10
に示された冷蔵庫のGUI123で扉を開ける操作をす
るか、扉部品のみの状態を提供している扉部品のGUI
124で開ボタンをマウスでクリックするかする。その
結果、部品名と状態名を組にした「扉:開;」イベント
125が自動生成され、仮想実行エンジン6へと送られ
る。
For example, when a user wants to generate an event of opening a door for a refrigerator as hardware, the user can use a mouse cursor or button to generate an event as shown in FIG.
The operation of opening the door with the GUI 123 of the refrigerator shown in FIG.
At 124, the open button is clicked with the mouse. As a result, a “door: open;” event 125 in which a part name and a state name are paired is automatically generated and sent to the virtual execution engine 6.

【0077】このような機能を実現するために、ハード
ウェアシミュレータ4は、具体的には(図15)、クロ
ック7による時間の情報を参照し(ステップ151)、
ユーザ定義シミュレータ9が発生させたテストデータが
送られてきているかどうかを参照し(ステップ15
2)、ある場合は(ステップ153)マウスクリックや
送られてきたテストデータに基づいて表示を変化させる
(ステップ154)。ユーザ定義シミュレータ9からの
イベントがない場合で、かつ、自動モードの時は(ステ
ップ155)、あらかじめ発生予定時刻順にならべられ
たイベント列を読み込み、現在の時刻が発生予定時刻を
過ぎたイベントを発生させる(ステップ156,15
4,157)。
In order to realize such a function, the hardware simulator 4 specifically refers to time information by the clock 7 (FIG. 15) (step 151),
It is determined whether or not the test data generated by the user-defined simulator 9 has been sent (step 15).
2) In some cases (step 153), the display is changed based on the mouse click or the transmitted test data (step 154). When there is no event from the user-defined simulator 9 and in the automatic mode (step 155), an event sequence arranged in the order of the scheduled occurrence time is read in advance, and an event whose current time has passed the scheduled occurrence time is generated. (Steps 156, 15
4,157).

【0078】また、ユーザ定義シミュレータ9からのイ
ベントがない場合で、かつ、手動モードの時は(ステッ
プ155)、マウスクリックがあったときに(ステップ
158)、表示を変化させるとともに(ステップ15
4)テストデータを発生させる(ステップ157)、な
お、表示が更新されたときはテストデータが第2の実行
手段に通知される(ステップ157)。
When there is no event from the user-defined simulator 9 and in the manual mode (step 155), when the mouse is clicked (step 158), the display is changed (step 15).
4) Test data is generated (step 157). When the display is updated, the test data is notified to the second execution means (step 157).

【0079】なお、ハードウェアシミュレータ4は、自
らがテストデータを発生させたか否かにかかわらず、仮
想実行エンジン6から通知される各部品の状態変化を参
照し(ステップ159)、それに基づいて表示を更新す
る(ステップ1510)。ユーザはこのように更新され
る表示を観察することによって、ソフトウェアが正しく
ハードウェアを制御しているか否かを判断することがで
きる。
The hardware simulator 4 refers to the state change of each component notified from the virtual execution engine 6 irrespective of whether the hardware simulator 4 itself generates test data (step 159), and displays based on the change. Is updated (step 1510). By observing the updated display in this way, the user can determine whether the software is correctly controlling the hardware.

【0080】(2−9)仮想実行エンジン6の動作 仮想実行エンジン6は、入力されたテストデータを、状
態遷移表現されたソフトウェアの仕様にしたがって処理
しクロック7で提供される時間を参照しながらソフトウ
ェアや製品の状態を変化させる。この点の処理は、シミ
ュレーションの実行形式にかかわらず同様に行われる。
なお、シミュレーションの実行形式は、例えば、手動モ
ードであるか自動モードであるかの区別である。また、
他にも、通常の実行であるか、遷移一つずつのステップ
実行など特殊形式であるかの区別などが考えられる。
(2-9) Operation of Virtual Execution Engine 6 The virtual execution engine 6 processes the input test data in accordance with the software specification represented by the state transition and refers to the time provided by the clock 7. Change the state of software and products. The processing at this point is performed similarly regardless of the execution form of the simulation.
The execution form of the simulation is, for example, a distinction between a manual mode and an automatic mode. Also,
In addition, a distinction can be made between normal execution and a special form such as step execution of each transition.

【0081】仮想実行エンジン6は、具体的には(図1
6)、クロック7が刻む時間を参照し(ステップ16
1)、続いて、タイマのタイムアウトなど内部イベント
が発生していないか、判断する(ステップ162)。こ
こで内部イベントは、ハードウェアや外部環境によら
ず、ソフトウェアの機能に基づいて発生するイベントで
ある。内部イベントが発生していない場合は外部からの
イベントを参照し(ステップ163)、内部イベント又
は外部イベントが発生している場合は(ステップ16
4)状態遷移図とイベントを比較する(ステップ16
5)。
Specifically, the virtual execution engine 6 (FIG. 1)
6), referring to the time ticked by clock 7 (step 16)
1) Subsequently, it is determined whether or not an internal event such as a timer timeout has occurred (step 162). Here, the internal event is an event that occurs based on the function of the software regardless of the hardware or the external environment. If an internal event has not occurred, an external event is referenced (step 163). If an internal event or an external event has occurred (step 16).
4) Compare the state transition diagram with the event (step 16)
5).

【0082】この比較の結果、遷移が発火するのは、現
在の状態から発火可能ないずれかの遷移のイベントに、
与えられたイベントが一致している場合である。比較の
結果、遷移が発火するならば(ステップ166)アクシ
ョンを発生させて部品の状態を変更し、ハードウェアシ
ミュレータ4及びユーザ定義シミュレータ9に部品の状
態変化を通知するとともに(ステップ167)状態遷移
図における状態を遷移させる(ステップ168)。この
場合、仮想実行エンジン6は、STDモニタ用GUIに
おける現在の状態を更新する。図17は、仮想実行エン
ジン6が、発生させた遷移及びアクションについてGU
Iを更新する関係を示す概念図である。
As a result of this comparison, the transition is fired when any of the transition events that can be fired from the current state is:
This is the case when the given events match. As a result of the comparison, if the transition is fired (step 166), an action is generated to change the state of the part, and the hardware simulator 4 and the user-defined simulator 9 are notified of the change in the state of the part (step 167). The state in the figure is changed (step 168). In this case, the virtual execution engine 6 updates the current state in the STD monitor GUI. FIG. 17 shows the GU for the transitions and actions generated by the virtual execution engine 6.
It is a conceptual diagram which shows the relationship which updates I.

【0083】(2−10)表示の更新 仮想実行エンジン6から部品の状態変化を通知されたハ
ードウェアシミュレータ4は、部品モニタ用GUIの状
態を更新する。例えば、ランプが点灯するアクションが
発生した場合、図18のランプ部品のGUI126のよ
うにランプ部品の状態を示すハイライト表示が点灯へと
変化したり、冷蔵庫の外観が示された冷蔵庫のGUI1
23においてランプが点灯したりする。
(2-10) Update of Display The hardware simulator 4 notified of the change in the state of the component from the virtual execution engine 6 updates the status of the component monitor GUI. For example, when the action of turning on the lamp occurs, a highlight display indicating the state of the lamp component changes to lighting as shown in a lamp component GUI 126 in FIG. 18, or a refrigerator GUI 1 showing the appearance of the refrigerator.
At 23, a lamp is turned on.

【0084】テストデータの発生からこの表示の変化に
至る処理を繰り返すことによってユーザはプログラムの
不具合を発見することができる。ランプが点灯するはず
の操作を行なったにもかかわらず、ランプが点灯しない
ような場合、プログラムに不具合があると考えることが
できる。
By repeating the process from the generation of the test data to the change of the display, the user can find out the defect of the program. If the lamp does not turn on even after the operation that should have turned on the lamp, it can be considered that there is a problem in the program.

【0085】例えば、図2の遷移内容108が正しいと
ころ、アクションから誤って「ランプ:点灯する」を含
まない誤った遷移内容を図19のように入力したものと
仮定する。この場合、ハードウェアシミュレータ4で
「扉を開く」というイベントを発生させた結果、仮想実
行エンジン6は状態1から状態2への遷移と「コンプレ
ッサを運転する」というアクションが発生した結果をユ
ーザに示す。しかし、「ランプが点灯する」というアク
ションは仕様に記述されていないため発生せず、仮想実
行エンジン6はランプを点灯させない。この結果を見た
ユーザが仕様の不具合を発見する。
For example, it is assumed that, while the transition content 108 in FIG. 2 is correct, an erroneous transition content that does not include “lamp: turn on” is erroneously input as shown in FIG. In this case, as a result of the event “opening the door” being generated by the hardware simulator 4, the virtual execution engine 6 notifies the user of the transition from the state 1 to the state 2 and the result of the action “run the compressor”. Show. However, the action of “lamp is turned on” is not described because it is not described in the specification, and the virtual execution engine 6 does not turn on the lamp. The user who sees this result finds a defect in the specification.

【0086】(2−11)ユーザ定義シミュレータ9に
よる処理 さらに、本実施の形態では、システムが外部環境を変化
させたり、外部環境の変化がシステムの動作に影響を与
える場合も、ユーザ定義シミュレータ9が外部環境の変
化をシミュレートする。
(2-11) Processing by User-Defined Simulator 9 Further, in the present embodiment, even when the system changes the external environment or the change of the external environment affects the operation of the system, the user-defined simulator 9 Simulates changes in the external environment.

【0087】図20は、ユーザ定義シミュレータ9が外
部環境の変化をシミュレートする手順を示すフローチャ
ートである。この図に示すように、ユーザ定義シミュレ
ータ9は、ハードウェアシミュレータ4及び仮想実行エ
ンジン6から、システムの状態を示す各数値を受け取り
(ステップ201)、またクロック7が提供する時間を
参照する(ステップ202)。そして、変化内容として
ユーザが与えた数式によって、シミュレートする対象と
なる数値の新たな値を計算し(ステップ203)、計算
した新たな数値によってそれまでの数値を更新する(ス
テップ204)。計算された温度が基準値を超えて変化
した場合は(ステップ205)、テストデータたるイベ
ントを発生させてハードウェアシミュレータ4に通知す
る(ステップ206)。
FIG. 20 is a flowchart showing a procedure in which the user-defined simulator 9 simulates a change in the external environment. As shown in this figure, the user-defined simulator 9 receives numerical values indicating the state of the system from the hardware simulator 4 and the virtual execution engine 6 (Step 201), and refers to the time provided by the clock 7 (Step 201). 202). Then, a new value of the numerical value to be simulated is calculated based on the mathematical expression given by the user as the change content (step 203), and the previous numerical value is updated with the calculated new numerical value (step 204). If the calculated temperature changes beyond the reference value (step 205), an event as test data is generated and notified to the hardware simulator 4 (step 206).

【0088】数値の変化によるイベント発生の条件は、
例えば、温度の1の桁が変化した場合などでもよいし、
コンプレッサのON/OFFを決める場合の境界値など
でもよい。ハードウェアシミュレータ4は受け取ったイ
ベントをGUIに反映させた後、そのイベントを仮想実
行エンジン6に送る。図21は、イベントがユーザ定義
シミュレータ9から、ハードウェアシミュレータ4を経
て仮想実行エンジン6に送られる状態を示す概念図であ
る。
The condition of the event occurrence due to the change of the numerical value is as follows.
For example, the temperature may change by one digit,
A boundary value for determining ON / OFF of the compressor may be used. After reflecting the received event on the GUI, the hardware simulator 4 sends the event to the virtual execution engine 6. FIG. 21 is a conceptual diagram showing a state in which an event is sent from the user-defined simulator 9 to the virtual execution engine 6 via the hardware simulator 4.

【0089】このように、ユーザ定義シミュレータ9が
シミュレートした外部環境の変化に基づいて、仮想実行
エンジン6が、システムの動作をさらにシミュレートす
ることによって、より実際に即した正確なテスト結果を
得ることができる。特に、外部環境の変化を前記クロッ
ク7に基づいてシミュレートすることにより、より現実
に近い外部環境の変化を得られ、正確なテストを行うこ
とが可能となる。
As described above, the virtual execution engine 6 further simulates the operation of the system on the basis of the change in the external environment simulated by the user-defined simulator 9, thereby obtaining more accurate test results that are more practical. Obtainable. In particular, by simulating a change in the external environment based on the clock 7, a change in the external environment closer to reality can be obtained, and an accurate test can be performed.

【0090】(2−12)テストデータの保存と閲覧 ユーザは、ハードウェアシミュレータ4でユーザが発生
させたイベントのヒストリ(履歴)を、図7の再生用ヒ
ストリ表示ウインドウ127を通じて、イベントとその
発生時刻が組になった情報として、常に閲覧することが
できる。また、ユーザが、ハードウェアシミュレータG
UI119(図7)の再生用ヒストリsaveボタン1
28をクリックすることによって、このヒストリを図1
0テストデータ129と同じ形式で、再生用ヒストリフ
ァイル10に保存することができる。また、再生用ヒス
トリclearボタン130を押すとヒストリは消去さ
れる。
(2-12) Saving and Browsing of Test Data The user records the history (history) of the event generated by the user in the hardware simulator 4 through the reproduction history display window 127 of FIG. The information can be always browsed as a set of time. In addition, the user sets the hardware simulator G
History save button 1 for reproduction on UI 119 (FIG. 7)
This history can be seen in FIG.
0 can be stored in the reproduction history file 10 in the same format as the test data 129. If the history clear button for reproduction 130 is pressed, the history is deleted.

【0091】このように記録された再生用情報104は
自動モードのテストデータとして使用することができ
る。このため、同じテストデータを用いる場合のシミュ
レーションが効率化され、異常動作の再現試験も容易に
なる。
The reproduction information 104 recorded in this manner can be used as test data in the automatic mode. Therefore, the simulation when the same test data is used is made more efficient, and the reproduction test of the abnormal operation is facilitated.

【0092】(2−13)閲覧用ヒストリ 本実施の形態において、仮想実行エンジン6では、イベ
ントの受取、アクションの発生、STDの状態遷移発生
について、これらのヒストリ133が記録される(図2
2)。ユーザは、仮想実行エンジン6のGUI120
(図8)にある閲覧用ヒストリ表示ウインドウ131を
通じて、発生時刻順に並べられたこれらのヒストリを常
に閲覧することができる。またユーザが仮想実行エンジ
ン6のGUI120(図8)の閲覧用ヒストリsave
ボタン132をクリックすることによって、このヒスト
リを図22に示す通りの内容で閲覧用ヒストリファイル
12に保存することができる。閲覧用ヒストリclea
rボタン134を押すとヒストリは消去される。
(2-13) Viewing History In this embodiment, the virtual execution engine 6 records the history 133 of the event reception, the action occurrence, and the STD state transition occurrence (FIG. 2).
2). The user operates the GUI 120 of the virtual execution engine 6.
Through the browsing history display window 131 shown in FIG. 8, it is possible to always browse these histories arranged in the order of occurrence time. In addition, the user browses the GUI 120 (FIG. 8) of the virtual execution engine 6 and browses history.
By clicking the button 132, this history can be saved in the browsing history file 12 with the contents shown in FIG. History for viewing
When the r button 134 is pressed, the history is deleted.

【0093】(2−14)シミュレーションの中断と再
開 本実施の形態では、ソフトウェアやハードウェアの状態
など、一旦中断したシミュレーションを再開できる情報
を、所望の時点で再開用ファイル11に保存させておく
ことができる。このため、保存後に失敗や事故など不測
の事態が発生した場合に、記録した時点から作業をやり
直したり、スケジュールの都合に応じて作業を後日再開
することにより、多様な試験の態様を実現することがで
きる。
(2-14) Interruption and Resumption of Simulation In the present embodiment, information for restarting the simulation once interrupted, such as the state of software and hardware, is stored in the restart file 11 at a desired time. be able to. Therefore, in the event that an unexpected event such as a failure or accident occurs after storage, various tests can be implemented by re-starting the work from the point of recording or resuming the work at a later date according to the schedule. Can be.

【0094】特に、記録しておいたテストデータを用い
て自動的に行う試験が長時間を要する場合、テストデー
タの再生を途中まで行った時点で再開用の情報を保存し
ておき、後に再開することによって、長時間を要するテ
ストを自動的にしかもスケジュールに合わせて分割して
行うことが可能となる。このため、試験作業の進め方の
自由度が向上する。
In particular, when a test performed automatically using the recorded test data requires a long time, restart information is stored when the test data is reproduced halfway, and restarted later. By doing so, it is possible to automatically perform a test that requires a long time and to divide the test according to a schedule. For this reason, the degree of freedom of the test operation is improved.

【0095】具体的には、ソフトウェアの試験中の状況
を記録するときは、コントロール用shell121
(図8)から、情報を再開用ファイル11にセーブする
コマンドを打ち込む。この結果、現在のSTDの状態、
部品の状態、時刻などが再開用ファイル11に記録され
る。再開用情報の具体的な内容としては、例えば、ハー
ドウェアに含まれる各部品の状態(タイマの時刻やカウ
ンタのカウント数を含む)、状態遷移モデルで表現され
たソフトウェアの状態、クロック7がカウントしている
時刻、ユーザ定義シミュレータ9を使用している場合は
温度などの各値等を挙げることができる。
More specifically, when recording the status during the software test, the control shell 121 is used.
From FIG. 8, a command to save information in the restart file 11 is input. As a result, the current state of the STD,
The state, time, and the like of the component are recorded in the restart file 11. Specific contents of the restart information include, for example, the state of each component included in the hardware (including the time of the timer and the count number of the counter), the state of the software expressed by the state transition model, and the clock 7. When the user-defined simulator 9 is used, each value such as temperature can be listed.

【0096】中断していたデバッグを再開するときは、
コントロール用shell121(図8)から再開用フ
ァイル11をロードするコマンドを入力すればよい。こ
れによって、仮想実行エンジン6は、STDや部品の状
態をファイルの通りに設定する。次に、仮想実行エンジ
ン6はハードウェアシミュレータ4、ユーザ定義シミュ
レータ9に、再開用ファイル11の内容にしたがって部
品の状態を設定するようシグナルを送り、また、時刻を
設定するためにクロック7にシグナルを送信する。これ
らのシグナルにしたがって、ハードウェアシミュレータ
4、ユーザ定義シミュレータ9、クロック7も再開用フ
ァイル11からそれぞれ必要とする情報を取得し、試験
が再開される。
When resuming the debugging that has been suspended,
What is necessary is just to input the command which loads the file 11 for restart from the control shell 121 (FIG. 8). As a result, the virtual execution engine 6 sets the status of the STD and the components according to the file. Next, the virtual execution engine 6 sends a signal to the hardware simulator 4 and the user-defined simulator 9 to set the state of the component in accordance with the contents of the restart file 11, and sends a signal to the clock 7 to set the time. Send According to these signals, the hardware simulator 4, the user-defined simulator 9, and the clock 7 also acquire necessary information from the restart file 11, respectively, and the test is restarted.

【0097】(2−15)実施の形態の効果 以上のように、本実施の形態では、ハードウェアが未完
成でも、ハードウェアの構成及び動作に関するハードウ
ェア情報2を入力すれば、ハードウェアの動作がハード
ウェアシミュレータ4のシミュレートによって表示手段
5に表示される。そして、表示されたハードウェアをマ
ウスなどの入力手段1で操作すれば、ソフトウェアに与
えるテストデータも生成される。また、ニモニックコー
ドのような具体的なソフトウェアが未完成でも、ソフト
ウェアの動作仕様3を入力すれば、仮想実行エンジン6
によって、テストデータを用いてソフトウェアの動作が
シミュレートされ、ソフトウェアによる制御でハードウ
ェアが動作するときは、動作が表示手段5の表示に表わ
れる。
(2-15) Effects of Embodiment As described above, in this embodiment, even if the hardware is not completed, if the hardware information 2 on the hardware configuration and operation is input, the hardware The operation is displayed on the display means 5 by the simulation of the hardware simulator 4. Then, when the displayed hardware is operated by the input means 1 such as a mouse, test data to be given to the software is also generated. Even if specific software such as mnemonic code is not completed, if the operation specification 3 of the software is input, the virtual execution engine 6
Thus, the operation of the software is simulated using the test data, and when the hardware operates under the control of the software, the operation appears on the display of the display unit 5.

【0098】このため、開発早期の段階でハードウェア
及びソフトウェアが未完成でも、あたかも実際のハード
ウェア(実機)を用いるのと同様の環境でソフトウェア
に対してテストデータを与え、ソフトウェアのテストを
行なうことができる。この結果、製品の開発期間を短縮
させるとともに、従来開発者が目で追うことによって行
っていた仕様の不具合の検出を支援できるので、ソフト
ウェアのデバッグの正確性と効率を大幅に向上する。
For this reason, even if the hardware and software are not completed at the early stage of development, test data is given to the software in the same environment as using the actual hardware (real machine), and the software is tested. be able to. As a result, the development time of the product can be shortened, and the detection of the specification defect which has been conventionally performed by the developer can be assisted, thereby significantly improving the accuracy and efficiency of software debugging.

【0099】そして、ハードウェア及びソフトウェアの
シミュレートはクロック7によって提供される時間の情
報に基づいて行われるので、実際の動作タイミングに沿
った正確なシミュレーションが実現される。
Since the simulation of the hardware and software is performed based on the information on the time provided by the clock 7, an accurate simulation according to the actual operation timing is realized.

【0100】(3)他の実施の形態 本発明は、上記実施の形態に限定されるものではないの
で、次に例示するような他の実施の形態をも包含するも
のである。例えば、本発明は、ソフトウェアの試験のみ
ならずソフトウェアの実行そのものを目的として実施す
ることもできる。また、上記実施の形態の自動モードに
おいて、操作性を向上させるには、ユーザが、不具合が
起きた時点で本装置を止めたり、任意の時点で本装置を
停止させ、じっくりと、新たに部品の状態を見たり、ヒ
ストリをさかのぼって不具合の箇所を発見したりできる
必要がある。このような作業を支援するために、次に例
示するような機能を備えることが望ましい。
(3) Other Embodiments The present invention is not limited to the above-described embodiments, but includes other embodiments as exemplified below. For example, the present invention can be implemented not only for software testing but also for software execution itself. Further, in the automatic mode of the above-described embodiment, in order to improve operability, the user stops the apparatus at the time of occurrence of a malfunction, or stops the apparatus at an arbitrary time, and slowly adds a new component. It is necessary to be able to see the status of the problem and to go back to the history to find the faulty part. In order to support such operations, it is desirable to provide the following functions.

【0101】例えば、仮想実行エンジンGUI120
(図8)のコントロール用shell121から試験
(デバッグ)を中断するコマンドを入力する。その結
果、クロック7にシグナルが送信され、時間のカウント
が停止するので、イベントの発生が中止され、デバッグ
が中断される。ユーザは、関心のある箇所でデバッグを
停止させることによって、その時点で各GUIに表示さ
れている情報を確認することができる。
For example, the virtual execution engine GUI 120
A command to interrupt the test (debug) is input from the control shell 121 (FIG. 8). As a result, a signal is transmitted to the clock 7 and the counting of time is stopped, so that occurrence of the event is stopped and debugging is stopped. By stopping debugging at a point of interest, the user can check the information displayed on each GUI at that time.

【0102】また、仮想実行エンジンGUI120(図
8)のコントロール用shell121からデバッグを
1遷移分だけ実行するステップ実行のコマンド(例え
ば"cont")を入力する。この結果、仮想実行エンジン6
はイベントの処理を続け、STDの遷移が1つ起きた時
点で、時間のカウントを停止するシグナルをクロック7
に送信することによってデバッグを中止する。なお、コ
マンドのオプションパラメータとして、"cont 5"のよう
に、実行する遷移のステップ数を指定すれば、n遷移分
実行したところでデバッグが中止される。このようにす
れば、不具合の原因と思われる箇所について、遷移を単
位としてデバッグを部分ごとに進めながら、情報を詳細
に検討することができる。
Also, a command (eg, “cont”) for executing a step to execute debugging for one transition is input from the control shell 121 of the virtual execution engine GUI 120 (FIG. 8). As a result, the virtual execution engine 6
Continues the processing of the event and, at the time one STD transition occurs, sends a signal to stop time counting to clock 7
Stop debugging by sending to. If the number of transition steps to be executed is specified as an optional parameter of the command, such as “cont 5”, debugging is stopped when n transitions have been executed. In this way, it is possible to examine the information in detail while proceeding with debugging for each part which is considered to be the cause of the defect in units of transition.

【0103】さらに、仮想実行エンジンGUI120
(図8)のコントロール用shell121からブレー
クポイント設定用のコマンドを入力することによって、
ソフトウエェアの所望の位置にブレークポイント(停止
点)を設定する。ブレークポイントはSTDの各状態や
イベントを単位として設定すればよい。状態遷移が発生
したとき遷移先の状態にブレークポイントが設定されて
いれば、仮想実行エンジン6はデバッグを中止しクロッ
ク7に時間カウントを止めるシグナルを送信することに
なる。この結果、高速に実行される部分についても、目
的とする箇所で確実にソフトウェアの実行を停止させ、
必要な情報を検討することが容易になる。
Further, the virtual execution engine GUI 120
By inputting a command for setting a breakpoint from the control shell 121 (FIG. 8),
Set breakpoints (stop points) at desired locations in the software. Breakpoints may be set in units of STD states or events. If a breakpoint is set in the transition destination state when a state transition occurs, the virtual execution engine 6 stops debugging and sends a signal to the clock 7 to stop time counting. As a result, even for the parts that execute at high speed, the execution of the software is surely stopped at the intended places,
It becomes easy to consider necessary information.

【0104】また、上記実施の形態では、ハードウェア
シミュレータ4、仮想実行エンジン6、クロック7及び
ユーザ定義シミュレータ9をプロセスで実現している
が、これらは必ずしもプロセスで実現する必要はない。
また、プロセス間の通信にはシグナルを、ヒストリや再
開用情報の記録にはファイルを用いているが、これらも
具体的には自由な態様で実現することができる。
In the above embodiment, the hardware simulator 4, the virtual execution engine 6, the clock 7, and the user-defined simulator 9 are realized by processes, but they need not necessarily be realized by processes.
In addition, signals are used for communication between processes, and files are used for recording history and resumption information, but these can also be realized in a free manner.

【0105】例えば、ハードウェアシミュレータ4、仮
想実行エンジン6及びユーザ定義シミュレータ9をオブ
ジェクトプログラミング指向言語におけるオブジェクト
(インスタンス)として実現し、オブジェクト間の通信
にはメッセージを用いることもできる。またヒストリや
再開用情報の記録は、ファイル形式を用いず、メモリの
使用領域全体の内容(スナップショット)を外部記憶装
置の所定の領域に保存することによって行うこともでき
る。
For example, the hardware simulator 4, the virtual execution engine 6, and the user-defined simulator 9 are realized as objects (instances) in an object programming oriented language, and messages can be used for communication between the objects. Further, the recording of the history and the information for resumption can be performed by saving the contents (snapshot) of the entire used area of the memory in a predetermined area of the external storage device without using the file format.

【0106】また、上記実施の形態ではハードウェアシ
ミュレータ4によって実現される仮想ハードウェアを操
作することによってテストデータが生成されたが、ハー
ドウェアシミュレータ4は必ずしもそのように構成する
必要はなく、テストデータはファイルなどの形式で外部
から与えるようにしてもよい。また、上記実施の形態に
おける変化内容8、ユーザ定義シミュレータ9、再生用
ヒストリファイル10、再開用ファイル11、閲覧用ヒ
ストリファイル12を設けない構成も考えられる。
In the above embodiment, the test data is generated by operating the virtual hardware realized by the hardware simulator 4. However, the hardware simulator 4 does not necessarily need to be configured in such a manner. The data may be provided externally in the form of a file or the like. Further, a configuration in which the contents of change 8, the user-defined simulator 9, the history file for reproduction 10, the file for resumption 11, and the history file for browsing 12 in the above embodiment are not provided is also conceivable.

【0107】[0107]

【発明の効果】以上説明したように、本発明によれば、
ハードウェアとソフトウェアのシミュレーションを実際
の動作タイミングに沿って制御されるので、ソフトウェ
ア実行の正確性と効率が大幅に向上する。
As described above, according to the present invention,
Because the hardware and software simulations are controlled according to the actual operation timing, the accuracy and efficiency of software execution is greatly improved.

【図面の簡単な説明】[Brief description of the drawings]

【図1】本発明の実施の形態において、その構成を表わ
す機能ブロック図
FIG. 1 is a functional block diagram showing the configuration of an embodiment of the present invention.

【図2】本発明の実施の形態において、状態遷移図とし
て表された動作仕様3を簡略化して示した図
FIG. 2 is a diagram showing a simplified operation specification 3 represented as a state transition diagram in the embodiment of the present invention.

【図3】本発明の実施の形態において、イベントとアク
ションの書式の例を示す図
FIG. 3 is a diagram showing an example of a format of an event and an action in the embodiment of the present invention.

【図4】本発明の実施の形態における状態遷移図につい
て他の例を示す図
FIG. 4 is a diagram showing another example of the state transition diagram according to the embodiment of the present invention.

【図5】本発明の実施の形態において、あるタイマの状
態遷移を表す図
FIG. 5 is a diagram showing a state transition of a certain timer in the embodiment of the present invention.

【図6】本発明の実施の形態において、本装置であるS
TDシミュレータを実現する場合の概略的構成例を示す
FIG. 6 is a diagram showing an embodiment of the present invention;
The figure which shows the example of a schematic structure when realizing a TD simulator

【図7】本発明の実施の形態において、ハードウェアシ
ミュレータ4が表示手段5に表示するGUIの表示例
FIG. 7 is a display example of a GUI displayed on the display unit 5 by the hardware simulator 4 in the embodiment of the present invention.

【図8】本発明の実施の形態において、仮想実行エンジ
ン6が表示手段5に表示するGUIの表示例
FIG. 8 is a display example of a GUI displayed on the display unit 5 by the virtual execution engine 6 in the embodiment of the present invention.

【図9】本発明の実施の形態において、手動モードでの
動作の概略的手順を示すフローチャート
FIG. 9 is a flowchart showing a schematic procedure of an operation in a manual mode in the embodiment of the present invention.

【図10】本発明の実施の形態において、冷蔵庫全体を
示すGUI123又は冷蔵庫の部品たる扉を示すGUI
124に対する操作によってイベント125が発生し、
このイベント125が仮想実行エンジン6に送られると
いう関係を示す概念図
FIG. 10 shows a GUI 123 showing the entire refrigerator or a GUI showing a door as a part of the refrigerator in the embodiment of the present invention.
Event 125 is generated by an operation on 124,
Conceptual diagram showing the relationship that this event 125 is sent to the virtual execution engine 6

【図11】本発明の実施の形態において、自動モードで
イベント発生の概略的手順を示すフローチャート
FIG. 11 is a flowchart showing a schematic procedure of event occurrence in an automatic mode in the embodiment of the present invention.

【図12】本発明の実施の形態におけるイベント情報の
形式の例を示す図
FIG. 12 is a diagram showing an example of a format of event information according to the embodiment of the present invention.

【図13】イベントに対する処理の状態について、従来
技術の場合と本発明の場合を比較して概念的に示したタ
イミングチャート
FIG. 13 is a timing chart conceptually showing the state of processing for an event by comparing the case of the prior art with the case of the present invention.

【図14】本発明の実施の形態において、クロックの動
作手順を示すフローチャート
FIG. 14 is a flowchart showing an operation procedure of a clock in the embodiment of the present invention.

【図15】本発明の実施の形態において、ハードウェア
シミュレータ4の動作手順を示すフローチャート
FIG. 15 is a flowchart showing an operation procedure of the hardware simulator 4 in the embodiment of the present invention.

【図16】本発明の実施の形態において、仮想実行エン
ジン6の動作手順を示すフローチャート
FIG. 16 is a flowchart showing an operation procedure of the virtual execution engine 6 in the embodiment of the present invention.

【図17】本発明の実施の形態において、仮想実行エン
ジン6が、発生させた遷移及びアクションについてGU
Iを更新する関係を示す概念図
FIG. 17 is a diagram illustrating an example of a GU according to the embodiment of the present invention regarding a transition and an action generated by a virtual execution engine 6;
Conceptual diagram showing the relationship for updating I

【図18】本発明の実施の形態において、冷蔵庫を構成
するランプ部品の状態を示すGUIの表示例
FIG. 18 is a display example of a GUI showing a state of lamp parts constituting a refrigerator in the embodiment of the present invention.

【図19】本発明の実施の形態において、アクションに
「ランプ:点灯する」を含まない誤った遷移内容の例
FIG. 19 is an example of an erroneous transition content that does not include “lamp: turn on” in the action in the embodiment of the present invention.

【図20】本発明の実施の形態において、ユーザ定義シ
ミュレータ9が外部環境の変化をシミュレートする手順
を示すフローチャート
FIG. 20 is a flowchart showing a procedure in which the user-defined simulator 9 simulates a change in the external environment in the embodiment of the present invention.

【図21】本発明の実施の形態において、イベントがユ
ーザ定義シミュレータ9から、ハードウェアシミュレー
タ4を経て仮想実行エンジン6に送られる状態を示す概
念図
FIG. 21 is a conceptual diagram showing a state in which an event is sent from the user-defined simulator 9 to the virtual execution engine 6 via the hardware simulator 4 in the embodiment of the present invention.

【図22】本発明の実施の形態において、仮想実行エン
ジン6で記録される、イベント等のヒストリの形式を示
す図
FIG. 22 is a diagram showing a format of a history such as an event recorded by the virtual execution engine 6 in the embodiment of the present invention.

Claims (10)

【特許請求の範囲】[Claims] 【請求項1】 ハードウェアの制御に用いるソフトウェ
アを試験するためのソフトウェア実行装置において、 前記ハードウェアに関する情報に基づいて仮想ハードウ
ェアをコンピュータ上に形成するための第1の実行手段
と、 前記ソフトウェアを試験するための所定のデータに基づ
いて、実行対象となるソフトウェアを前記仮想ハードウ
ェアに対して実行させる第2の実行手段と、 前記第1の実行手段と第2の実行手段に対して、前記仮
想ハードウェアとそのソフトウェアの動作タイミング
を、現実の動作タイミングに対応するように制御する制
御手段と、 を有することを特徴とするソフトウェア実行装置。
1. A software execution device for testing software used for controlling hardware, comprising: first execution means for forming virtual hardware on a computer based on information on the hardware; A second execution unit that executes software to be executed on the virtual hardware, based on predetermined data for testing the first execution unit and the second execution unit; Control means for controlling the virtual hardware and the operation timing of the software so as to correspond to the actual operation timing.
【請求項2】 前記所定のデータを、第1の実行手段上
の仮想ハードウェアを操作することにより生成すること
を特徴とする請求項1記載のソフトウェア実行装置。
2. The software execution device according to claim 1, wherein the predetermined data is generated by operating virtual hardware on a first execution unit.
【請求項3】 前記第1の実行手段は、発生のタイミン
グが各々指定された一連のイベントを所定のデータとし
て与えられた場合に、各イベントを、前記制御手段によ
る制御に基づいて、指定された前記タイミングで前記第
2の実行手段に送るように構成されたことを特徴とする
請求項1又は2記載のソフトウェア実行装置。
3. When a series of events whose occurrence timings are specified as given data are given as predetermined data, the first execution means specifies each event based on control by the control means. 3. The software execution device according to claim 1, wherein the software execution device is configured to send to the second execution means at the timing.
【請求項4】 対象とする前記システムと関係がある外
部環境の変化内容を定義するための定義手段と、 前記システムの動作と、前記定義された変化内容に基づ
いて、前記外部環境の変化を前記第2の実行手段に提供
する第3の実行手段を有することを特徴とする請求項
1,2又は3記載のソフトウェア実行装置。
4. A definition means for defining a change content of an external environment related to the target system, an operation of the system, and a change of the external environment based on the defined change content. 4. The software execution device according to claim 1, further comprising a third execution unit provided to the second execution unit.
【請求項5】 前記第1の実行手段から得られた所定の
データを保存する保存手段を有し、 前記第1の実行手段は、前記保存された所定のデータを
読み出して第2の実行手段に送るように構成されたこと
を特徴とする請求項1,2,3又は4記載のソフトウェ
ア実行装置。
5. A storage device for storing predetermined data obtained from the first execution unit, wherein the first execution unit reads out the stored predetermined data and executes a second execution unit. The software execution device according to claim 1, 2, 3, or 4, wherein the software execution device is configured to send the data to the software execution device.
【請求項6】 前記各シミュレートを中断後に再開する
ために必要な情報を、所望の時点で保存するための第2
の保存手段と、 保存された前記情報を用いて各シミュレートを再開する
ための再開手段と、 を備えたことを特徴とする請求項1,2,3,4又は5
記載のソフトウェア実行装置。
6. A second information for storing at a desired time information necessary for restarting each of the simulations after the interruption.
6. A storage means for resuming each simulation using the stored information, and a restart means for restarting each simulation.
A software execution device as described.
【請求項7】 ハードウェアの制御に用いるソフトウェ
アを試験するためのソフトウェア実行方法において、 前記ハードウェアに関する情報に基づいて仮想ハードウ
ェアをコンピュータ上に形成するための第1の実行処理
と、 前記ソフトウェアを試験するための所定のデータに基づ
いて、実行対象となるソフトウェアを前記仮想ハードウ
ェアに対して実行させる第2の実行処理と、 前記第1の実行処理と第2の実行処理に対して、前記仮
想ハードウェアとそのソフトウェアの動作タイミング
を、現実の動作タイミングに対応するように制御する制
御処理と、 を含むことを特徴とするソフトウェア実行方法。
7. A software execution method for testing software used for controlling hardware, comprising: a first execution process for forming virtual hardware on a computer based on information on the hardware; A second execution process for executing software to be executed on the virtual hardware based on predetermined data for testing, and a first execution process and a second execution process. A control process for controlling operation timing of the virtual hardware and its software so as to correspond to actual operation timing.
【請求項8】 前記所定のデータを、第1の実行処理に
よる仮想ハードウェアを操作することにより生成するこ
とを特徴とする請求項7記載のソフトウェア実行方法。
8. The software execution method according to claim 7, wherein the predetermined data is generated by operating virtual hardware by a first execution process.
【請求項9】 前記第1の実行処理は、発生のタイミン
グが各々指定された一連のイベントを所定のデータとし
て与えられた場合に、各イベントを、前記制御処理によ
る制御に基づいて、指定された前記タイミングで前記第
2の実行処理に対して提供することを特徴とする請求項
7又は8記載のソフトウェア実行方法。
9. A method according to claim 1, wherein when a series of events whose occurrence timings are specified are given as predetermined data, each of the first execution processes is specified based on control by the control process. 9. The software execution method according to claim 7, wherein the method is provided for the second execution process at the timing.
【請求項10】 対象とする前記システムと関係がある
外部環境の変化内容を定義するための定義処理と、 前記システムの動作と、前記定義された変化内容に基づ
いて、前記外部環境の変化を前記第2の実行処理に対し
て提供することを特徴とする第3の実行処理を含むこと
を特徴とする請求項7,8又は9記載のソフトウェア実
行方法。
10. A definition process for defining a change content of an external environment related to the target system; an operation of the system; and a change of the external environment based on the defined change content. 10. The software execution method according to claim 7, further comprising a third execution process provided for the second execution process.
JP8319543A 1996-11-29 1996-11-29 Device and method for executing software Pending JPH10161906A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP8319543A JPH10161906A (en) 1996-11-29 1996-11-29 Device and method for executing software

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP8319543A JPH10161906A (en) 1996-11-29 1996-11-29 Device and method for executing software

Publications (1)

Publication Number Publication Date
JPH10161906A true JPH10161906A (en) 1998-06-19

Family

ID=18111433

Family Applications (1)

Application Number Title Priority Date Filing Date
JP8319543A Pending JPH10161906A (en) 1996-11-29 1996-11-29 Device and method for executing software

Country Status (1)

Country Link
JP (1) JPH10161906A (en)

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1130948A (en) * 1997-07-11 1999-02-02 Kubota Corp Simulation system for plant operation training
JP2007052580A (en) * 2005-08-17 2007-03-01 Fujitsu Ten Ltd Software development environment system
JP2007086992A (en) * 2005-09-21 2007-04-05 Canon Inc Design support program and design support method
JP2007536659A (en) * 2004-05-07 2007-12-13 シーメンス アクチエンゲゼルシヤフト Method and apparatus for simulation of automated systems
JP2008210107A (en) * 2007-02-26 2008-09-11 Fujitsu Ltd Simulation method and simulation device
JP2009176186A (en) * 2008-01-28 2009-08-06 Tokyo Electron Ltd Program test device and program
JP2010282291A (en) * 2009-06-02 2010-12-16 Internatl Business Mach Corp <Ibm> Simulation system, method, and program
DE112011102727T5 (en) 2010-08-16 2013-06-27 Mitsubishi Electric Corporation Control program creating device, control program creating program and control program generating method
WO2013145270A1 (en) * 2012-03-30 2013-10-03 三菱電機株式会社 Air conditioner testing system, air-conditioning system simulator, and program
JP6395967B1 (en) * 2017-06-23 2018-09-26 三菱電機株式会社 Program verification system, control device, and program verification method
US11106478B2 (en) 2017-11-10 2021-08-31 Mitsubishi Electric Corporation Simulation device, simulation method, and computer readable medium

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH1130948A (en) * 1997-07-11 1999-02-02 Kubota Corp Simulation system for plant operation training
JP2007536659A (en) * 2004-05-07 2007-12-13 シーメンス アクチエンゲゼルシヤフト Method and apparatus for simulation of automated systems
JP4733695B2 (en) * 2004-05-07 2011-07-27 シーメンス アクチエンゲゼルシヤフト Method and apparatus for simulation of automated systems
JP2007052580A (en) * 2005-08-17 2007-03-01 Fujitsu Ten Ltd Software development environment system
JP2007086992A (en) * 2005-09-21 2007-04-05 Canon Inc Design support program and design support method
JP4621100B2 (en) * 2005-09-21 2011-01-26 キヤノン株式会社 Design support program
JP2008210107A (en) * 2007-02-26 2008-09-11 Fujitsu Ltd Simulation method and simulation device
US8725485B2 (en) 2007-02-26 2014-05-13 Spansion Llc Simulation method and simulation apparatus
JP2009176186A (en) * 2008-01-28 2009-08-06 Tokyo Electron Ltd Program test device and program
WO2009096322A1 (en) * 2008-01-28 2009-08-06 Tokyo Electron Limited Program test device and program
CN101925883A (en) * 2008-01-28 2010-12-22 东京毅力科创株式会社 Program test device and program
KR101110241B1 (en) * 2008-01-28 2012-02-15 도쿄엘렉트론가부시키가이샤 Program test device and program
US8412496B2 (en) 2009-06-02 2013-04-02 International Business Machines Corporation Simulation system, method, and program
JP2010282291A (en) * 2009-06-02 2010-12-16 Internatl Business Mach Corp <Ibm> Simulation system, method, and program
DE112011102727T5 (en) 2010-08-16 2013-06-27 Mitsubishi Electric Corporation Control program creating device, control program creating program and control program generating method
US9176490B2 (en) 2010-08-16 2015-11-03 Mitsubishi Electric Corporation Control program generation device, control program generation program, and control program generation method
WO2013145270A1 (en) * 2012-03-30 2013-10-03 三菱電機株式会社 Air conditioner testing system, air-conditioning system simulator, and program
GB2515685A (en) * 2012-03-30 2014-12-31 Mitsubishi Electric Corp Air conditioner testing system, air-conditioning system simulator, and program
JPWO2013145270A1 (en) * 2012-03-30 2015-08-03 三菱電機株式会社 Air conditioner test system, air conditioning system simulator and program
US9817410B2 (en) 2012-03-30 2017-11-14 Mitsubishi Electric Corporation Air conditioner testing system, air-conditioning system simulator, and program
GB2515685B (en) * 2012-03-30 2019-02-20 Mitsubishi Electric Corp Air conditioner testing system, air-conditioning system simulator, and program
JP6395967B1 (en) * 2017-06-23 2018-09-26 三菱電機株式会社 Program verification system, control device, and program verification method
WO2018235250A1 (en) * 2017-06-23 2018-12-27 三菱電機株式会社 Program verifying system, control apparatus, and program verifying method
CN109643095A (en) * 2017-06-23 2019-04-16 三菱电机株式会社 Program authentication system, control device and program verification method
US11106478B2 (en) 2017-11-10 2021-08-31 Mitsubishi Electric Corporation Simulation device, simulation method, and computer readable medium

Similar Documents

Publication Publication Date Title
JP2000132424A (en) Software instrumentation method
US8584097B2 (en) Post-execution software debugger with event display
US20120174077A1 (en) Backward post-execution software debugger
US7441235B2 (en) Method, apparatus and program for testing control program
JP4472615B2 (en) Programmable device modeling method and apparatus
KR20000075835A (en) Method and apparatus for correcting errors in computer systems
JPH10161906A (en) Device and method for executing software
JP2009265668A (en) Training simulator for engineering project
CN112115022B (en) AADL-based IMA system health monitoring test method
JP2001209411A (en) Plc simulator
CN100403275C (en) Micro processor and method using in firmware program debug
JPH11194960A (en) Software testing device
CN111858305B (en) Instrument fault online diagnosis method and device
WO2001097035A1 (en) Automatic evaluation method and automatic evaluation system and storage medium storing automatic evaluation program
JP2003036183A (en) Method for testing integrated circuit using integrated debugging circuit
JP2887515B2 (en) Recorder simulator
US20020026302A1 (en) Automatic evaluation method, automatic evaluation system, and storage medium storing automatic evaluation program
US20230315617A1 (en) Plc testing system and method
JPH1091477A (en) Control microcomputer device and maintenance tool for the same
JP4192380B2 (en) PLC simulator apparatus, simulation program, and recording medium on which the program is recorded
JPH07248939A (en) Processor and processor system
JPH07219980A (en) Test execution system
JPH11219209A (en) Offline simulation device of general purpose plc
US5878249A (en) Method for synchronizing the simulation of the environment of a real-time system
JPH07271287A (en) Plant simulation device and method for setting its initial state