[go: up one dir, main page]

JP2003030007A - Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program - Google Patents

Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program

Info

Publication number
JP2003030007A
JP2003030007A JP2001213482A JP2001213482A JP2003030007A JP 2003030007 A JP2003030007 A JP 2003030007A JP 2001213482 A JP2001213482 A JP 2001213482A JP 2001213482 A JP2001213482 A JP 2001213482A JP 2003030007 A JP2003030007 A JP 2003030007A
Authority
JP
Japan
Prior art keywords
program
execution
time
function
action
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
JP2001213482A
Other languages
Japanese (ja)
Inventor
Suketada Futamura
祐地 二村
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.)
Mitsubishi Electric Corp
Original Assignee
Mitsubishi Electric 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 Mitsubishi Electric Corp filed Critical Mitsubishi Electric Corp
Priority to JP2001213482A priority Critical patent/JP2003030007A/en
Publication of JP2003030007A publication Critical patent/JP2003030007A/en
Pending legal-status Critical Current

Links

Landscapes

  • Stored Programmes (AREA)
  • Debugging And Monitoring (AREA)

Abstract

(57)【要約】 【課題】 従来の状態遷移の動作を行うプログラムを設
計する場合に、状態遷移に関する設計情報と実行制限時
間に関する設計情報を連係して取り扱うことが困難であ
った為、実行制限時間に関する設計情報の記述忘れや見
落としの問題があった。 【解決手段】 本発明のプログラム開発支援システム
は、状態遷移エディタ1によりイベント情報とアクショ
ン情報とアクション情報に対応させてアクションの実行
制限時間を示す制限時間情報とを状態遷移情報として指
定するとともに構成要素情報を指定する。プログラム自
動生成手段3は、構成要素情報に基づいてプログラム構
成要素記憶部9からプログラム構成要素を選択して選択
したプログラム構成要素を用いて状態遷移情報と構成要
素情報とに従うプログラムを生成する。この時、生成す
るプログラムにアクションの実行実測時間を計測して計
測した実行実測時間と実行制限時間とを比較して結果を
提示する処理を含める。
(57) [Problem] To design a program that performs a conventional state transition operation, it is difficult to handle design information related to the state transition and design information related to the execution time limit in a cooperative manner. There was a problem of forgetting or overlooking the description of the design information regarding the time limit. SOLUTION: The program development support system according to the present invention is configured such that a state transition editor 1 designates event information, action information, and time limit information indicating an action execution time limit as state transition information in correspondence with the action information. Specify element information. The program automatic generation means 3 selects a program component from the program component storage unit 9 based on the component information and generates a program according to the state transition information and the component information using the selected program component. At this time, the generated program includes a process of measuring the actual execution time of the action, comparing the actual execution time measured and the execution time limit, and presenting the result.

Description

【発明の詳細な説明】Detailed Description of the Invention

【0001】[0001]

【発明の属する技術分野】本発明は、プログラム開発の
うち、状態遷移に関する開発作業を支援するシステムに
係り、特に状態遷移に要するプログラムの処理時間に関
する開発作業を支援するプログラム開発支援システムに
関する。また、プログラム開発支援方法、プログラム開
発支援プログラムを記録したコンピュータ読み取り可能
な記録媒体、プログラム開発支援プログラムに関する。
BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a system for supporting development work related to state transition in program development, and more particularly to a program development support system for supporting development work related to processing time of a program required for state transition. The present invention also relates to a program development support method, a computer-readable recording medium recording the program development support program, and a program development support program.

【0002】[0002]

【従来の技術】情報処理技術の急激な発展と適用分野の
拡大に伴い、開発するプログラムの規模及び機能は一般
に急激に拡大している。本状況に対し現在、プログラム
の開発効率向上や品質向上に向けた各種技術が開発され
ている。例えば制御系や通信系あるいは組込み系のプロ
グラムでは一般に、複数の状態とその状態間の遷移とし
てプログラムの動作仕様を定めることが多く、このた
め、これらの分野におけるソフトウェア開発では、状態
遷移の仕様を形式的に記述することでプログラムの開発
を支援する方法が開発されている。
2. Description of the Related Art With the rapid development of information processing technology and the expansion of application fields, the scale and functions of programs to be developed are generally expanding rapidly. In response to this situation, various technologies are currently being developed to improve program development efficiency and quality. For example, in a control system, communication system, or embedded system program, in general, the operating specifications of a program are often defined as a plurality of states and transitions between the states. Therefore, in software development in these fields, the state transition specifications are specified. A method has been developed to support program development by describing it formally.

【0003】図20は、特開平7−78076「プログ
ラム自動生成装置」にて示されている状態遷移の記述例
である。本方式は広く状態遷移図として知られている記
述方式であり、複数の状態、状態間の遷移、イベント、
アクションという4つの要素を含んでいる。イベントは
システム内で発生する事象であり、アクションはイベン
トの発生によりある状態から別の状態へ遷移する際に行
う処理である。本記述方式では状態は丸で、また状態間
の遷移は矢印で、イベント及びアクションは遷移に付随
して「/」の両側に「イベント/アクション」といった
形式で記述し、図20の例では、SN1、SN2はそれ
ぞれ異なる状態を表し、SN1からSN2に向かう矢印
は状態SN1から状態SN2への遷移を表し、en1は
その遷移が発生するときの契機となるイベントを表し、
an1はその遷移に際し行うアクションを表す。
FIG. 20 is a description example of the state transition shown in Japanese Patent Laid-Open No. 7-78076 "Automatic Program Generator". This method is a description method widely known as a state transition diagram.
It contains four elements called actions. An event is an event that occurs in the system, and an action is a process that is performed when transitioning from one state to another state due to the occurrence of the event. In this description method, states are circles, transitions between states are arrows, and events and actions are described in the form of "event / action" on both sides of "/" accompanying the transitions. SN1 and SN2 represent different states, an arrow from SN1 to SN2 represents a transition from state SN1 to state SN2, and en1 represents an event that triggers the transition.
an1 represents an action performed at the time of the transition.

【0004】状態遷移の形式的記述には、状態遷移図の
ほかステートチャートや状態遷移表といった記述方式も
広く用いられている。ステートチャートはUML(Un
iform Modeling Language)で
定義されている状態遷移の記述方式であり、状態遷移図
に比較すると状態の階層化や平行した状態遷移を容易に
記述できるといった特徴がある。しかし基本的には状態
遷移図に類似した図形による記述方式を採用しており、
状態を長方形で、遷移を状態間の矢印で、イベント及び
アクションを遷移に対する付記として記述する。一方、
状態遷移表は表形式による記述方式であり、列(横方
向)に状態を、行(縦方向)にイベントを列挙し、行及
び列の交点となる表内の各セルを、対応する列が示す状
態において対応する行が示すイベントを契機として発生
する遷移として、そのときの遷移先の状態及びアクショ
ンをこれら各セル内に記述する。状態遷移表による状態
遷移の記述の例を図21に示す。本例では、状態SN1
ではイベントen1を契機とした遷移では、アクション
an1を行い、状態SN2に遷移することを示してい
る。この記述内容は図20に示す状態遷移図を用いた記
述例と等価である。
For formal description of state transition, description methods such as a state transition diagram and a state chart and a state transition table are widely used. The statechart is UML (Un
This is a description method of state transitions defined by "iform Modeling Language", and is characterized in that state hierarchies and parallel state transitions can be easily described as compared with state transition diagrams. However, basically, a description method using a graphic similar to the state transition diagram is adopted,
States are described as rectangles, transitions are indicated by arrows between states, and events and actions are described as annotations for transitions. on the other hand,
The state transition table is a tabular description method. States are listed in columns (horizontal direction) and events are listed in rows (vertical direction). Each cell in the table that is an intersection of rows and columns has a corresponding column. The state and action of the transition destination at that time are described in each of these cells as a transition that occurs in the state shown by the event indicated by the corresponding row. FIG. 21 shows an example of the state transition description based on the state transition table. In this example, the state SN1
Indicates that the action an1 is performed in the transition triggered by the event en1 to transit to the state SN2. This description content is equivalent to the description example using the state transition diagram shown in FIG.

【0005】前述の通り、制御系や通信系あるいは組込
み系のプログラムでは、その動作を状態遷移によって記
述できる場合が多いため、これらの分野のソフトウェア
開発では、その設計段階にて、前述した状態遷移図、ス
テートチャート、状態遷移表、あるいはさらに同等の記
述能力を持つ他の方式を用いて、状態遷移の形式的な記
述を利用することが広く行われている。これらの形式的
記述方式を採用することで、プログラムの動作仕様を明
確に記述し、またその正確さを容易に検証できるように
なり、プログラムの開発効率向上や品質向上を図ること
ができる。このような状態遷移の形式的記述方式は、上
記分野だけでなく、例えば機器のユーザインタフェース
を実現するプログラムの設計でも用いられる。機器に対
する利用者の操作をイベントとすることで、ユーザイン
タフェースの動作は状態遷移として表すことができ、や
はり状態遷移の形式的記述方式を用いることで、プログ
ラムの開発効率の向上や品質向上を図れるためである。
As described above, in a control system, a communication system, or an embedded system program, its operation can often be described by state transitions. Therefore, in software development in these fields, the state transitions described above are performed at the design stage. It is widely practiced to use formal description of state transitions using diagrams, state charts, state transition tables, or other methods with equivalent description capabilities. By adopting these formal description methods, it becomes possible to clearly describe the operation specification of the program and to verify its accuracy easily, and it is possible to improve the development efficiency and quality of the program. Such a formal description method of state transition is used not only in the above field but also in designing a program that realizes a user interface of a device, for example. The operation of the user interface can be expressed as a state transition by using the user's operation on the device as an event, and by using the formal description method of the state transition, the development efficiency and quality of the program can be improved. This is because.

【0006】[0006]

【発明が解決しようとする課題】ところで、制御系や通
信系ないし組込み系のシステムでは、その処理に要する
時間に制約がある、すなわちリアルタイム動作を要求さ
れる場合が通常である。また機器のユーザインタフェー
スについても、利用者に対する快適な操作性を実現する
ため、プログラム設計上その操作から応答までに要する
時間に制約を定めることが多い。
By the way, in a control system, a communication system, or an embedded system, there is usually a limitation on the time required for the processing, that is, a real-time operation is usually required. Regarding the user interface of the device, in order to realize a comfortable operability for the user, there are often restrictions on the time required from the operation to the response in designing the program.

【0007】しかし一般には、プログラムの動作時間に
関する制約は、プログラム設計段階において形式的に記
述することは少なく、通常はプログラムのロジックに関
する設計情報とは別に、プログラム設計情報に付随した
コメントといった形で別途自然言語にて記述することが
多い。例えば前述した状態遷移に関する形式的な記述方
式ではいずれも、アクションについてその処理に許容さ
れる実行時間(実行制限時間)に関する記述は形式化さ
れていない。このため通常は、状態遷移の動作に関する
設計情報と実行制限時間に関する設計情報を連携して取
り扱うことが困難で、実行制限時間に関する設計情報は
記述し忘れられたり、または見落とされやすく、実行制
限時間に関する試験もその設計時に見落としが起き易い
といった問題点がある。
However, in general, the restrictions on the program operation time are rarely described formally at the program design stage, and usually in the form of comments attached to the program design information in addition to the design information on the program logic. Often written in natural language. For example, in any of the formal description methods regarding the state transition described above, the description regarding the execution time (execution time limit) allowed for the processing of the action is not formalized. Therefore, it is usually difficult to handle the design information related to the state transition operation and the design information related to the execution time limit, and the design information related to the execution time limit is easily forgotten or overlooked. There is also a problem in that the test concerning is likely to be overlooked at the time of its design.

【0008】また、開発したシステムが時間的制約を満
たして動作するようにするためには、一般には、まずプ
ログラムを動作させ設計上の時間的制約を満たしている
かの測定を行い、問題があればその内部動作を解析し、
時間超過の原因となる不具合を除去するか、あるいは動
作ロジックを改善することで、処理時間の短縮を図ると
いった作業を繰り返し、最終的に設計上の時間的制約を
満たすようにする、あるいは不都合のない程度に収める
ようにするといった手順で行う。本作業はプログラムが
動作可能となるプログラム開発の下流工程で実施する
が、この段階では開発工程の遅れが問題となっているこ
とが多く、本作業は測定作業の繰り返しが必要で工数が
多くかかるために、漏れなく十分に実施することは難し
いといった問題点がある。
In order for the developed system to operate while satisfying the time constraint, generally, the program is first run to measure whether or not the design time constraint is satisfied, and there is a problem. If you analyze its internal operation,
Repeat the work to shorten the processing time by removing the defect that causes the time excess or improving the operation logic, and finally satisfy the time constraint in design, or Follow the procedure such that it fits within the limit. This work is carried out in the downstream process of program development where the program can operate, but at this stage the delay in the development process is often a problem, and this work requires repeated measurement work and takes a lot of man-hours. Therefore, there is a problem that it is difficult to carry out the operation without omission.

【0009】この発明は上記のような従来技術の持つ問
題点を解決するためになされたもので、状態遷移の設計
に際して、そのアクションの処理に許容される制限時間
(実行制限時間)を同時に記述し、またアクションの処
理に要した時間(実行実測時間)の測定及び実行制限時
間と実行実測時間の解析を容易に行えるようにすること
で、実行制限時間に関する仕様の記述漏れと試験の設計
及び実施の漏れを防ぎ、実行制限時間に関する検証及び
改善を十分に行えるようにし、プログラムの開発効率と
品質を向上させることを目的とする。
The present invention has been made to solve the above-mentioned problems of the prior art. At the time of designing a state transition, the time limit (execution time limit) allowed for the processing of the action is described at the same time. In addition, by making it easy to measure the time required for action processing (actual measurement time) and analyze the execution time limit and the actual measurement time, omission of the specification regarding the execution time limit and test design and The purpose is to prevent omission of implementation, to enable sufficient verification and improvement regarding execution time limit, and to improve development efficiency and quality of programs.

【0010】[0010]

【課題を解決するための手段】この発明に係る発生する
イベントによって指定されたアクションを実行して複数
の状態のなかのある状態を他の状態へ遷移させコンピュ
ータ上で動作するプログラムを開発するプログラム開発
支援システムは、上記プログラムのプログラム構成要素
を複数記憶するプログラム構成要素記憶部と、上記プロ
グラムが遷移させる複数の状態のそれぞれの状態を示す
状態情報と、上記イベントを示すイベント情報と、上記
アクションを示すアクション情報と、上記アクション毎
に上記アクションを実行する場合の処理の制限時間を示
す制限時間情報とを、状態遷移情報として指定するとと
もに、上記アクション情報に対応させて上記アクション
の実行に用いるプログラム構成要素を構成要素情報とし
て指定する状態遷移エディタと、上記状態遷移エディタ
により指定された構成要素情報を基に上記プログラム構
成要素記憶部から該当するプログラム構成要素を選択し
て、選択したプログラム構成要素を含むアクションを実
行するプログラムであって、上記アクションを実行する
場合の実行実測時間を計測する処理と、上記計測した実
行実測時間と上記状態遷移エディタにより指定された制
限時間とを比較して比較した結果を提示する処理とを実
行するプログラムを生成するプログラム生成部とを備え
たことを特徴とする。
A program for developing a program which executes an action designated by an event that occurs according to the present invention to transition one state among a plurality of states to another state and which operates on a computer The development support system includes a program component storage unit that stores a plurality of program components of the program, state information indicating each of a plurality of states transitioned by the program, event information indicating the event, and the action. And the time limit information indicating the time limit of the process for executing the action for each of the actions is specified as the state transition information, and is used to execute the action in association with the action information. State transitions that specify program components as component information An editor and a program for selecting an appropriate program component from the program component storage unit based on component information specified by the state transition editor, and executing an action including the selected program component, A program for executing the process of measuring the actually measured execution time when the action is executed, and the process of presenting the result of comparison between the measured actually measured time and the time limit specified by the state transition editor. And a program generation unit for generating

【0011】また、この発明に係るプログラム開発支援
システムは、上記プログラム開発支援システムがさら
に、上記プログラム生成部により生成されたプログラム
を実行して、上記プログラムを実行することにより計測
されるアクションの実行実測時間をアクション毎に通知
するプログラム実行部と、上記プログラム実行部により
通知されたアクション毎の実行実測時間を受信して、ア
クション毎の実行実測時間を収集する実行実測時間収集
部と、上記実行実測時間収集部により収集されたアクシ
ョン毎の実行実測時間を取得するとともに、上記状態遷
移エディタにより指定されたアクション毎の制限時間情
報とを取得して、上記制限時間情報と上記実行実測時間
とを比較して、比較した結果を提示する実行時間解析部
とを備えたことを特徴とする。
Further, in the program development support system according to the present invention, the program development support system further executes the program generated by the program generation unit, and executes an action measured by executing the program. A program execution unit that notifies the actual measurement time for each action, an execution actual measurement time collection unit that receives the actual execution time measurement for each action notified by the program execution unit, and collects the actual execution time measurement for each action, and the above execution The actual measurement time for each action collected by the actual time collection unit is acquired, and the time limit information for each action specified by the state transition editor is acquired, and the time limit information and the actual measurement time for execution are acquired. It is equipped with an execution time analysis unit that compares and presents the comparison results. To.

【0012】また、この発明に係るプログラム開発支援
システムは、上記プログラム実行部が、発生するイベン
トによって、1つのアクションを複数回実行し、上記実
行実測時間収集部は、収集したアクション毎の実行実測
時間を基にアクション毎の平均実行実測時間とアクショ
ン毎の最大実行実測時間との少なくともいずれか一方を
求め、上記実行時間解析部は、上記実行実測時間収集部
により求められたアクション毎の平均実測時間とアクシ
ョン毎の最大実行実測時間との少なくともいずれか一方
と上記状態遷移エディタにより指定されたアクション毎
の制限時間情報とを比較して、比較した結果を提示する
ことを特徴とする。
Also, in the program development support system according to the present invention, the program execution unit executes one action a plurality of times according to an event that occurs, and the execution measurement time collection unit collects the execution measurement for each collected action. Based on the time, at least one of the average execution measurement time for each action and the maximum execution measurement time for each action is obtained, and the execution time analysis unit calculates the average measurement for each action obtained by the execution measurement time collection unit. At least one of the time and the maximum actual measurement time for each action is compared with the time limit information for each action designated by the state transition editor, and the comparison result is presented.

【0013】また、この発明に係るプログラム開発支援
システムは、上記実行実測時間収集部が、収集したアク
ション毎の実行実測時間を基にアクション毎の統計的な
値である統計実行実測時間を求め、上記実行時間解析部
は、上記実行実測時間収集部により求められたアクショ
ン毎の統計実行実測時間と上記状態遷移エディタにより
指定されたアクション毎の制限時間情報とを比較して、
比較した結果を提示することを特徴とする。
Further, in the program development support system according to the present invention, the execution measurement time collection unit obtains a statistical execution measurement time which is a statistical value for each action based on the collected execution measurement time for each action, The execution time analysis unit compares the statistical execution measurement time for each action obtained by the execution measurement time collection unit with time limit information for each action specified by the state transition editor,
The feature is that the result of the comparison is presented.

【0014】また、この発明に係るプログラム開発支援
システムは、上記プログラム構成要素は、所定の処理を
行う関数である場合と所定の処理を行う1つ以上の関数
を含む場合とのいずれかであり、上記プログラム生成部
は、上記関数を実行する場合の関数実行実測時間を測定
する処理を実行するプログラムを生成し、上記プログラ
ム実行部は、上記プログラム生成部により生成されたプ
ログラムを実行することにより上記関数実行実測時間を
測定する処理を実行し、上記プログラム開発支援システ
ムは、上記プログラム実行部により実行される上記関数
実行時間を測定する処理により起動されて、関数毎の関
数実行実測時間を測定して収集する関数実行時間測定部
を備え、上記実行時間解析部は、上記関数実行時間測定
部により収集された関数毎の関数実行実測時間を取得し
て提示することを特徴とする。
Further, in the program development support system according to the present invention, the program constituent element is either a function for performing a predetermined process or a case including one or more functions for performing a predetermined process. The program generation unit generates a program that executes a process of measuring the function execution actual measurement time when the function is executed, and the program execution unit executes the program generated by the program generation unit. The process for measuring the function execution actual measurement time is executed, and the program development support system is activated by the process for measuring the function execution time executed by the program execution unit to measure the function execution actual measurement time for each function. The function execution time measurement unit collects the function execution time measurement unit, and the execution time analysis unit collects the function execution time measurement unit. Characterized in that it presents to obtain the function execution measured time for each function.

【0015】また、この発明に係るプログラム開発支援
システムは、上記状態遷移エディタが、上記構成要素情
報に対応させて、上記構成要素情報の示すプログラム構
成要素を実行する場合の処理の制限時間を示す構成要素
制限時間情報を指定し、上記プログラム生成部は、上記
プログラム構成要素毎に上記プログラム構成要素を実行
する場合の構成要素実行実測時間を計測する処理と、上
記計測した構成要素実行実測時間と上記状態遷移エディ
タにより指定された構成要素制限時間情報とを比較して
比較した結果を提示する処理とを実行するプログラムを
生成することを特徴とする。
Also, in the program development support system according to the present invention, the state transition editor indicates the time limit of the processing when the state transition editor executes the program component indicated by the component information in association with the component information. Designating the component time limit information, the program generation unit, a process of measuring the component execution actual measurement time when executing the program component for each of the program components, and the measured component execution actual measurement time It is characterized by generating a program for executing a process of comparing the constituent element time limit information designated by the state transition editor and presenting a result of the comparison.

【0016】また、この発明に係るプログラム開発支援
システムは、上記プログラム実行部が、上記プログラム
生成部により生成されたプログラムを実行することによ
り計測されるプログラム構成要素毎の構成要素実行実測
時間を上記実行実測時間収集部に通知し、上記実行実測
時間収集部は、上記プログラム実行部により通知された
プログラム構成要素毎の構成要素実行実測時間を収集
し、上記実行時間解析部は、上記実行実測時間収集部に
より収集されたプログラム構成要素毎の構成要素実行実
測時間と上記状態遷移エディタにより指定されたプログ
ラム構成要素毎の構成要素制限時間情報とを比較して、
比較した結果を提示することを特徴とする。
Further, in the program development support system according to the present invention, the program execution unit executes the program generated by the program generation unit, and the component execution actual measurement time for each program component is measured. The execution measurement time collection unit is notified, the execution measurement time collection unit collects the component execution measurement time for each program component notified by the program execution unit, and the execution time analysis unit calculates the execution measurement time. By comparing the component execution actual measurement time for each program component collected by the collection unit with the component time limit information for each program component specified by the state transition editor,
The feature is that the result of the comparison is presented.

【0017】また、この発明に係るプログラム開発支援
システムは、上記プログラム構成要素は、所定の処理を
行う関数である場合と所定の処理を行う1つ以上の関数
を含む場合のいずれかであり、上記状態遷移エディタに
より指定される構成要素制限時間情報は、関数を実行す
る場合の処理の関数制限時間情報であり、上記プログラ
ム生成部は、上記関数を実行する場合の関数実行実測時
間を測定する処理を実行するプログラムを生成し、上記
プログラム実行部は、上記プログラム生成部により生成
されたプログラムを実行することにより上記関数実行実
測時間を測定する処理を実行し、上記プログラム開発支
援システムは、上記プログラム実行部により実行される
上記関数実行実測時間を測定する処理により起動され
て、関数毎の関数実行実測時間を測定して収集する関数
実行時間測定部を備え、上記実行時間解析部は、上記関
数実行時間測定部から収集された関数毎の関数実行実測
時間を取得するとともに、上記状態遷移エディタにより
指定された関数毎の関数制限時間情報を取得して、上記
関数実行実測時間と上記関数制限時間情報とを比較し
て、比較した結果を提示することを特徴とする。
Further, in the program development support system according to the present invention, the program constituent element is either a function for performing a predetermined process or a function including one or more functions for performing a predetermined process, The component time limit information specified by the state transition editor is the function time limit information of the process when the function is executed, and the program generation unit measures the function execution actually measured time when the function is executed. A program for executing a process is generated, and the program execution unit executes a process of measuring the function execution measurement time by executing the program generated by the program generation unit. The function execution for each function is started by the process of measuring the function execution actual measurement time, which is executed by the program execution unit. A function execution time measurement unit that measures and collects the actual measurement time is provided, and the execution time analysis unit acquires the function execution actual measurement time for each function collected from the function execution time measurement unit and uses the state transition editor. It is characterized in that the function time limit information for each designated function is acquired, the function execution actual measurement time is compared with the function time limit information, and the comparison result is presented.

【0018】また、この発明に係るプログラム開発支援
システムは、上記実行時間解析部が、上記関数実行実測
時間を、上記関数実行実測時間の長い関数の順に提示す
ることと、上記関数実行実測時間を、上記アクションの
実行実測時間に与える影響の高い順に提示することのい
ずれかを行うことを特徴とする。
Further, in the program development support system according to the present invention, the execution time analysis unit presents the function execution actually measured time in the order of the function having the longest function execution actually measured time and the function execution actually measured time. It is characterized in that either of the above-mentioned actions is presented in descending order of influence on the actually measured execution time.

【0019】また、この発明に係るプログラム開発支援
システムは、上記関数実行時間測定部が、収集した関数
毎の関数実行実測時間を基に関数毎の統計的な値である
統計関数実行実測時間を求め、上記実行時間解析部は、
上記関数実行時間測定部により求められた統計関数実行
実測時間に基づいてばらつきの大きい順に提示すること
を特徴とする。
Further, in the program development support system according to the present invention, the function execution time measuring unit calculates the statistical function execution actually measured time which is a statistical value for each function based on the collected function execution actually measured time for each function. Then, the execution time analysis unit
It is characterized in that it is presented in descending order of variation based on the statistical function execution actual measurement time obtained by the function execution time measurement unit.

【0020】また、この発明に係るプログラム開発支援
システムは、上記実行実測時間収集部が、収集したアク
ション毎の実行実測時間を基にアクション毎の統計的な
値である統計実行実測時間を求め、上記関数実行時間測
定部は、収集した関数毎の関数実行実測時間を基に関数
毎の統計的な値である統計関数実行実測時間を求め、上
記実行時間解析部は、上記実行実測時間収集部により求
められた統計実行実測時間と上記関数実行時間測定部に
より求められた統計関数実行実測時間とに基づいて、上
記関数実行実測時間を、上記アクションの統計実行実測
時間に与える影響の高い順に提示することを特徴とす
る。
Also, in the program development support system according to the present invention, the execution measurement time collection unit obtains a statistical execution measurement time which is a statistical value for each action based on the collected execution measurement time for each action, The function execution time measurement unit obtains a statistical function execution measurement time, which is a statistical value for each function, based on the collected function execution measurement time for each function, and the execution time analysis unit calculates the execution measurement time collection unit. Based on the statistical execution actual measurement time obtained by the above and the statistical function execution actual measurement time obtained by the above function execution time measuring unit, the above-mentioned function execution actual measurement time is presented in the order of increasing influence on the statistical execution actual measurement time of the above action. It is characterized by doing.

【0021】また、この発明に係るプログラム開発支援
システムは、上記プログラム構成要素は、所定の処理を
行う関数である場合と所定の処理を行う1つ以上の関数
を含む場合とのいずれかであり、上記状態遷移エディタ
により指定される構成要素制限時間情報は、関数を実行
する場合の処理の関数制限時間情報であり、上記プログ
ラム生成部は、上記関数を実行する場合の関数実行実測
時間を測定する処理を実行するプログラムを生成し、上
記プログラム開発支援システムは、さらに、上記プログ
ラム生成部により生成されたプログラムを実行して、上
記プログラムを実行することにより上記関数実行実測時
間を測定する処理を実行するプログラム実行部と、上記
プログラム実行部により実行される上記関数実行実測時
間を測定する処理により起動されて、関数毎の関数実行
実測時間を測定して収集する関数実行時間測定部と、上
記関数実行時間測定部により収集された関数毎の関数実
行実測時間を取得するとともに、上記状態遷移エディタ
により指定された関数毎の関数制限時間情報を取得し
て、上記関数実行実測時間と上記関数制限時間情報とを
比較して、比較した結果を提示する実行時間解析部とを
備えたことを特徴とする。
Further, in the program development support system according to the present invention, the program constituent element is either a function for performing a predetermined process or a case including one or more functions for performing a predetermined process. The component time limit information specified by the state transition editor is the function time limit information of the process when the function is executed, and the program generation unit measures the function execution measured time when the function is executed. The program development support system further executes the program generated by the program generation unit, and executes the program to measure the function execution measurement time. Program execution unit to be executed, and processing for measuring the function execution actual measurement time executed by the program execution unit The function execution time measurement unit that is activated by measuring the function execution actual measurement time for each function and the function execution actual measurement time for each function collected by the function execution time measurement unit are acquired, and the state transition is performed. The function time limit information for each function designated by the editor is acquired, and the function time measurement time and the function time limit information are compared, and an execution time analysis unit that presents the comparison result is provided. Characterize.

【0022】この発明に係る発生するイベントによって
複数の状態の所定の状態間を指定されたアクションを実
行して遷移するコンピュータ上で動作するプログラムを
開発するプログラム開発支援方法は、上記アクションに
1つ以上含まれる所定の処理を行うプログラム構成要素
を、プログラム構成要素記憶部に記憶し、上記プログラ
ムの遷移する複数の状態のそれぞれの状態を示す状態情
報と、上記イベントを示すイベント情報と、上記アクシ
ョンを示すアクション情報と、上記アクション毎に上記
アクションを実行する場合の処理の制限時間を示す制限
時間情報とを、状態遷移情報として指定するとともに、
上記アクション情報に対応させて上記アクションに含む
プログラム構成要素を構成要素情報として指定し、上記
指定された構成要素情報を基に上記プログラム構成要素
記憶部から該当するプログラム構成要素を選択して、選
択したプログラム構成要素含むアクションを実行すると
ともに、上記アクションを実行する場合の実行実測時間
を計測する処理と、上記計測した実行実測時間と上記指
定された制限時間とを比較して比較した結果を提示する
処理とを実行するプログラムを生成することを特徴とす
る。
According to the present invention, there is provided a program development support method for developing a program operating on a computer, which executes a transition between designated states of a plurality of states according to an event that occurs, and which is one of the above actions. Program components for performing the predetermined processing included above are stored in the program component storage unit, and status information indicating each of a plurality of transition states of the program, event information indicating the event, and the action And the time limit information indicating the time limit of the process when executing the above action for each of the above actions is specified as the state transition information,
A program component included in the action is designated as component information in association with the action information, and a corresponding program component is selected from the program component storage unit based on the designated component information and selected. In addition to executing the action including the program component described above, the process of measuring the actually measured execution time when executing the above action and the comparison of the measured actually measured time with the specified time limit are presented and the result of comparison is presented. It is characterized by generating a program for executing the processing.

【0023】また、この発明に係るプログラム開発支援
方法は、上記プログラム開発支援方法がさらに、上記生
成されたプログラムを実行して、上記プログラムを実行
することにより計測されるアクションの実行実測時間を
アクション毎に通知し、上記通知されたアクション毎の
実行実測時間を受信して、アクション毎の実行実測時間
を収集し、上記収集されたアクション毎の実行実測時間
を取得するとともに、上記指定されたアクション毎の制
限時間情報とを取得して、上記制限時間情報と上記実行
実測時間とを比較して、比較した結果を提示することを
特徴とする。
Further, in the program development support method according to the present invention, the program development support method further executes the generated program, and sets an action execution measurement time measured by executing the program. Each time it is notified, the execution measurement time for each action is notified, the execution measurement time for each action is collected, the execution measurement time for each action is acquired, and the specified action is specified. Each time limit information is acquired, the time limit information is compared with the execution actual measurement time, and the comparison result is presented.

【0024】また、この発明に係るプログラム開発支援
方法は、上記プログラム開発支援方法がさらに、上記構
成要素情報に対応させて、上記構成要素情報の示すプロ
グラム構成要素を実行する場合の処理の制限時間を示す
構成要素制限時間情報を指定し、上記プログラム構成要
素毎に上記プログラム構成要素を実行する場合の構成要
素実行実測時間を計測する処理と、上記計測した構成要
素実行実測時間と上記指定された構成要素制限時間情報
とを比較して比較した結果を提示する処理とを実行する
プログラムを生成することを特徴とする。
Further, in the program development support method according to the present invention, the time limit for processing when the program development support method further executes the program component indicated by the component information in association with the component information. Specifying the component element time limit information, and processing for measuring the component execution actual measurement time when the program component is executed for each program component, and the measured component execution actual measurement time and the specified It is characterized by generating a program that executes a process of comparing the constituent element time limit information and presenting a result of the comparison.

【0025】また、この発明に係るプログラム開発支援
方法は、上記プログラム開発支援方法がさらに、上記生
成されたプログラムを実行することにより計測されるプ
ログラム構成要素毎の構成要素実行実測時間を通知し、
上記通知されたプログラム構成要素毎の構成要素実行実
測時間を収集し、上記収集されたプログラム構成要素毎
の構成要素実行実測時間と上記指定されたプログラム構
成要素毎の構成要素制限時間情報とを比較して、比較し
た結果を提示することを特徴とする。
Further, in the program development support method according to the present invention, the program development support method further notifies the component execution actual measurement time for each program component measured by executing the generated program,
The component execution actual measurement time of each notified program component is collected, and the collected component execution actual measurement time of each program component is compared with the component time limit information of each designated program component. Then, the result of the comparison is presented.

【0026】また、この発明に係るプログラム開発支援
方法は、上記プログラム構成要素は、所定の処理を行う
関数である場合と所定の処理を行う1つ以上の関数を含
む場合とのいずれかであり、上記指定された制限時間情
報は、関数を実行する場合の処理の関数制限時間情報で
あり、上記プログラムを生成する場合に、上記関数を実
行する場合の関数実行実測時間を測定する処理を実行す
るプログラムを生成し、上記プログラム開発支援方法
は、さらに、上記生成されたプログラムを実行して、上
記プログラムを実行することにより上記関数実行実測時
間を測定する処理を実行して、上記関数実行実測時間を
測定する処理により起動されて、関数毎の関数実行実測
時間を測定して収集し、上記収集された関数毎の関数実
行実測時間を取得するとともに、上記指定された関数毎
の関数制限時間情報を取得して、上記関数実行実測時間
と上記関数制限時間情報とを比較して、比較した結果を
提示することを特徴とする。
Further, in the program development support method according to the present invention, the program component is either a function for performing a predetermined process or a case including one or more functions for performing a predetermined process. The specified time limit information is the function time limit information of the process when the function is executed, and when the program is generated, the process of measuring the function execution measured time when the function is executed is executed. The program development support method further includes executing the generated program, executing the process of measuring the function execution actual measurement time by executing the program, and executing the function execution actual measurement. It is started by the process of measuring the time, and the measured function execution time for each function is measured and collected, and the measured function execution time for each function is acquired. Together, it acquires the function time limit information for each function that is the specified, by comparing the function execution measured time and the function restriction time information, characterized in that it presents the results of a comparison.

【0027】この発明に係る発生するイベントによって
複数の状態の所定の状態間を指定されたアクションを実
行して遷移するコンピュータ上で動作するプログラムを
開発するプログラム開発支援プログラムを記録したコン
ピュータ読み取り可能な記録媒体において、上記コンピ
ュータ読み取り可能な記録媒体に記録されたプログラム
開発支援プログラムが、上記アクションに1つ以上含ま
れる所定の処理を行うプログラム構成要素を、プログラ
ム構成要素記憶部に記憶するプログラム構成要素記憶工
程と、上記プログラムの遷移する複数の状態のそれぞれ
の状態を示す状態情報と、上記イベントを示すイベント
情報と、上記アクションを示すアクション情報と、上記
アクション毎に上記アクションを実行する場合の処理の
制限時間を示す制限時間情報とを、状態遷移情報として
指定するとともに、上記アクション情報に対応させて上
記アクションに含むプログラム構成要素を構成要素情報
として指定する状態遷移情報指定工程と、上記状態遷移
情報指定工程により指定された構成要素情報を基に上記
プログラム構成要素記憶部から該当するプログラム構成
要素を選択して、選択したプログラム構成要素を含むア
クションを実行するとともに、上記アクションを実行す
る場合の実行実測時間を計測する処理と、上記計測した
実行実測時間と上記状態遷移情報指定工程により指定さ
れた制限時間とを比較して比較した結果を提示する処理
とを実行するプログラムを生成するプログラム生成工程
とを有することを特徴とする。
According to the present invention, a computer readable recording program development support program for developing a program operating on a computer that executes a specified action to transit between predetermined states of a plurality of states according to an event that occurs In the recording medium, a program component for storing a program component, which is stored in the computer-readable recording medium, for performing a predetermined process included in one or more of the actions in the program component storage unit. Storing step, status information indicating each of a plurality of transition states of the program, event information indicating the event, action information indicating the action, and processing for executing the action for each action System that indicates the time limit of The time transition information is designated as the state transition information, and the state transition information designating step of designating the program component included in the action as the component information in association with the action information, and the state transition information designating step. Based on the component information, the corresponding program component is selected from the program component storage unit, the action including the selected program component is executed, and the actual measurement time for executing the action is measured. And a program generation step of generating a program for executing the processing and the processing of presenting the result of comparison by comparing the measured actual measured time with the time limit specified by the state transition information specifying step. Characterize.

【0028】また、この発明に係るプログラム開発支援
プログラムを記録したコンピュータ読み取り可能な記録
媒体は、上記コンピュータ読み取り可能な記録媒体に記
録されたプログラム開発支援プログラムがさらに、上記
プログラム生成工程により生成されたプログラムを実行
して、上記プログラムを実行することにより計測される
アクションの実行実測時間をアクション毎に通知するプ
ログラム実行工程と、上記プログラム実行工程により通
知されたアクション毎の実行実測時間を受信して、アク
ション毎の実行実測時間を収集する実行実測時間収集工
程と、上記実行実測時間収集工程により収集されたアク
ション毎の実行実測時間を取得するとともに、上記状態
遷移情報指定工程により指定されたアクション毎の制限
時間情報とを取得して、上記制限時間情報と上記実行実
測時間とを比較して、比較した結果を提示する実行時間
解析工程とを有することを特徴とする。
Further, in a computer-readable recording medium recording the program development supporting program according to the present invention, the program development supporting program recorded in the computer-readable recording medium is further generated by the program generating step. By executing the program, the program execution process for notifying the action execution measurement time measured by executing the program for each action, and the execution measurement time for each action notified by the program execution process are received. , The actual measurement time collecting step for collecting the actual execution time for each action, and the actual execution time for each action collected by the actual execution time collecting step, and for each action specified by the state transition information designating step Get time limit information and Te, and comparing the limit time information and the execution measured time, and having an execution time analysis step of presenting the results of a comparison.

【0029】また、この発明に係るプログラム開発支援
プログラムを記録したコンピュータ読み取り可能な記録
媒体は、上記コンピュータ読み取り可能な記録媒体に記
録されたプログラム開発支援プログラムの上記状態遷移
情報指定工程が、上記構成要素情報に対応させて、上記
構成要素情報の示すプログラム構成要素を実行する場合
の処理の制限時間を示す構成要素制限時間情報を指定
し、上記プログラム生成工程は、上記プログラム構成要
素毎に上記プログラム構成要素を実行する場合の構成要
素実行実測時間を計測する処理と、上記計測した構成要
素実行実測時間と上記状態遷移情報指定工程により指定
された構成要素制限時間情報とを比較して比較した結果
を提示する処理とを実行するプログラムを生成すること
を特徴とする。
Further, in a computer-readable recording medium recording the program development supporting program according to the present invention, the state transition information designating step of the program development supporting program recorded in the computer-readable recording medium has the above structure. Corresponding to the element information, the constituent element time limit information indicating the time limit of the process when the program constituent element indicated by the constituent element information is executed is designated, and the program generation step includes the program for each program constituent element. The result of comparing and comparing the process of measuring the component execution actual measurement time when executing the component and the measured component execution actual measurement time and the component time limit information designated by the state transition information designating step Is generated, and a program for executing the processing is presented.

【0030】また、この発明に係るプログラム開発支援
プログラムを記録したコンピュータ読み取り可能な記録
媒体は、上記コンピュータ読み取り可能な記録媒体に記
録されたプログラム開発支援プログラムの上記プログラ
ム実行工程が、上記プログラム生成工程により生成され
たプログラムを実行することにより計測されるプログラ
ム構成要素毎の構成要素実行実測時間を通知し、上記実
行実測時間収集工程は、上記プログラム実行工程により
通知されたプログラム構成要素毎の構成要素実行実測時
間を収集し、上記実行時間解析工程は、上記実行実測時
間収集工程により収集されたプログラム構成要素毎の構
成要素実行実測時間と上記状態遷移情報指定工程により
指定されたプログラム構成要素毎の構成要素制限時間情
報とを比較して、比較した結果を提示することを特徴と
する。
Further, in a computer-readable recording medium recording the program development supporting program according to the present invention, the program executing step of the program developing supporting program recorded in the computer readable recording medium is the program generating step. The component actual measurement time for each program component measured by executing the program generated by is notified, and the execution actual time collection step is performed by the program execution element notified by the program execution step. The actual measurement time is collected, and the execution time analysis step is performed by the component actual measurement time for each program constituent element collected by the actual execution time collection step Compare with the component time limit information, Characterized in that it presented the results of the compare.

【0031】また、この発明に係るプログラム開発支援
プログラムを記録したコンピュータ読み取る可能な記録
媒体は、上記プログラム構成要素は、所定の処理を行う
関数である場合と所定の処理を行う1つ以上の関数を含
む場合とのいずれかであり、上記状態遷移情報指定工程
により指定される制限時間情報は、関数を実行する場合
の処理の関数制限時間情報であり、上記プログラム生成
工程は、上記関数を実行する場合の関数実行実測時間を
測定する処理を実行するプログラムを生成し、上記プロ
グラム開発支援プログラムを記録したコンピュータ読み
取り可能な記録媒体は、さらに、上記プログラム生成工
程により生成されたプログラムを実行して、上記プログ
ラムを実行することにより上記関数実行実測時間を測定
する処理を実行するプログラム実行工程と、上記プログ
ラム実行工程により実行される上記関数実行実測時間を
測定する処理により起動されて、関数毎の関数実行実測
時間を測定して収集する関数実行時間測定工程と、上記
関数実行時間測定工程により収集された関数毎の関数実
行実測時間を取得するとともに、上記状態遷移情報指定
工程により指定された関数毎の関数制限時間情報を取得
して、上記関数実行実測時間と上記関数制限時間情報と
を比較して、比較した結果を提示する実行時間解析工程
とを有することを特徴とする。
In the computer-readable recording medium in which the program development support program according to the present invention is recorded, the above-mentioned program constituent elements are a function for performing a predetermined process, and one or more functions for performing a predetermined process. And the time limit information specified by the state transition information specifying step is function time limit information of processing when executing a function, and the program generation step executes the function. A computer-readable recording medium that generates a program for performing the process of measuring the function execution actual measurement time in the case of storing the program development support program further executes the program generated by the program generating step. , By executing the above program, execute the process to measure the function execution actual measurement time. A program execution step, a function execution time measurement step that is started by the processing for measuring the function execution actual measurement time executed by the program execution step, and measures and collects the function execution actual measurement time for each function, and the function execution The function execution actual measurement time for each function collected in the time measuring step is acquired, and the function time limit information for each function specified in the state transition information specifying step is acquired to obtain the function execution actual measurement time and the function restriction. And an execution time analysis step of presenting a result of the comparison.

【0032】この発明に係る発生するイベントによって
複数の状態の所定の状態間を指定されたアクションを実
行して遷移するコンピュータ上で動作するプログラムを
開発するプログラム開発支援プログラムにおいて、上記
プログラム開発支援プログラムが、上記アクションに1
つ以上含まれる所定の処理を行うプログラム構成要素
を、プログラム構成要素記憶部に記憶するプログラム構
成要素記憶工程と、上記プログラムの遷移する複数の状
態のそれぞれの状態を示す状態情報と、上記イベントを
示すイベント情報と、上記アクションを示すアクション
情報と、上記アクション毎に上記アクションを実行する
場合の処理の制限時間を示す制限時間情報とを、状態遷
移情報として指定するとともに、上記アクション情報に
対応させて上記アクションに含むプログラム構成要素を
構成要素情報として指定する状態遷移情報指定工程と、
上記状態遷移情報指定工程により指定された構成要素情
報を基に上記プログラム構成要素記憶部から該当するプ
ログラム構成要素を選択して、選択したプログラム構成
要素を含むアクションを実行するとともに、上記アクシ
ョンを実行する場合の実行実測時間を計測する処理と、
上記計測した実行実測時間と上記状態遷移情報指定工程
により指定された制限時間とを比較して、比較した結果
を提示する処理とを実行するプログラムを生成するプロ
グラム生成工程とを有することを特徴とする。
In the program development support program for developing a program operating on a computer, which executes a designated action between a plurality of predetermined states according to the present invention, the program development support program is developed. But in the above action 1
A program component storing step of storing, in the program component storage unit, a program component that performs one or more predetermined processes, state information indicating each of a plurality of transition states of the program, and the event The event information indicated, the action information indicating the action, and the time limit information indicating the time limit of the process for executing the action for each of the actions are specified as the state transition information and are associated with the action information. State transition information specifying step of specifying the program constituent elements included in the above action as constituent element information,
A corresponding program component is selected from the program component storage unit based on the component information designated by the state transition information designating step, an action including the selected program component is executed, and the action is executed. And the process of measuring the actual measurement time
A program generation step of generating a program that compares the measured actual measurement time with the time limit specified by the state transition information specification step, and presents a result of the comparison. To do.

【0033】また、この発明に係るプログラム開発支援
プログラムは、上記プログラム開発支援プログラムがさ
らに、上記プログラム生成工程により生成されたプログ
ラムを実行して、上記プログラムを実行することにより
計測されるアクションの実行実測時間をアクション毎に
通知するプログラム実行工程と、上記プログラム実行工
程により通知されたアクション毎の実行実測時間を受信
して、アクション毎の実行実測時間を収集する実行実測
時間収集工程と、上記実行実測時間収集工程により収集
されたアクション毎の実行実測時間を取得するととも
に、上記状態遷移情報指定工程により指定されたアクシ
ョン毎の制限時間情報とを取得して、上記制限時間情報
と上記実行実測時間とを比較して、比較した結果を提示
する実行時間解析工程とを有することを特徴とする。
In the program development support program according to the present invention, the program development support program further executes the program generated in the program generation step, and executes an action measured by executing the program. A program execution process for notifying the actual measurement time for each action, an execution actual measurement time collecting process for receiving the actual execution time for each action notified by the program execution process, and collecting the actual execution time for each action, and the above execution The actual measurement time for each action collected by the actual measurement time collection step is acquired, and the time limit information for each action specified by the state transition information specification step is acquired, and the time limit information and the actual measurement time for execution are acquired. Execution time analysis engine that compares with and presents the comparison result Characterized in that it has and.

【0034】また、この発明に係るプログラム開発支援
プログラムは、上記状態遷移情報指定工程が、上記構成
要素情報に対応させて、上記構成要素情報の示すプログ
ラム構成要素を実行する場合の処理の制限時間を示す構
成要素制限時間情報を指定し、上記プログラム生成工程
は、上記プログラム構成要素毎に上記プログラム構成要
素を実行する場合の構成要素実行実測時間を計測する処
理と、上記計測した構成要素実行実測時間と上記状態遷
移情報指定工程により指定された構成要素制限時間情報
とを比較して比較した結果を提示する処理とを実行する
プログラムを生成することを特徴とする。
Further, in the program development support program according to the present invention, the time limit for processing when the state transition information designating step executes the program component indicated by the component information in association with the component information. Specifying the component time limit information, the program generation step, the process of measuring the component execution actual measurement time when executing the program component for each program component, and the measured component execution actual measurement It is characterized by generating a program for executing a process of comparing the time and the component element time limit information designated by the state transition information designation step and presenting the result of the comparison.

【0035】また、この発明に係るプログラム開発支援
プログラムは、上記プログラム実行工程が、上記プログ
ラム生成工程により生成されたプログラムを実行するこ
とにより計測されるプログラム構成要素毎の構成要素実
行実測時間を通知し、上記実行実測時間収集工程は、上
記プログラム実行工程により通知されたプログラム構成
要素毎の構成要素実行実測時間を収集し、上記実行時間
解析工程は、上記実行実測時間収集工程により収集され
たプログラム構成要素毎の構成要素実行実測時間と上記
状態遷移情報指定工程により指定されたプログラム構成
要素毎の構成要素制限時間情報とを比較して、比較した
結果を提示することを特徴とする。
In the program development support program according to the present invention, the program execution step notifies the component element actual measurement time of each program component element measured by executing the program generated by the program generation step. Then, the execution measurement time collection step collects the component execution measurement time of each program component notified by the program execution step, and the execution time analysis step collects the program collected by the execution measurement time collection step. It is characterized in that the actual measurement time of component execution for each component is compared with the component time limit information for each program component designated by the state transition information designating step, and the comparison result is presented.

【0036】また、この発明に係るプログラム開発支援
プログラムは、上記プログラム構成要素は、所定の処理
を行う関数である場合と所定の処理を行う1つ以上の関
数を含む場合とのいずれかであり、上記状態遷移情報指
定工程により指定される制限時間情報は、関数を実行す
る場合の処理の関数制限時間情報であり、上記プログラ
ム生成工程は、上記関数を実行する場合の関数実行実測
時間を測定する処理を実行するプログラムを生成し、上
記プログラム開発支援プログラムは、さらに、上記プロ
グラム生成工程により生成されたプログラムを実行し
て、上記プログラムを実行することにより上記関数実行
実測時間を測定する処理を実行するプログラム実行工程
と、上記プログラム実行工程により実行される上記関数
実行実測時間を測定する処理により起動されて、関数毎
の関数実行実測時間を測定して収集する関数実行時間測
定工程と、上記関数実行時間測定工程により収集された
関数毎の関数実行実測時間を取得するとともに、上記状
態遷移情報指定工程により指定された関数毎の関数制限
時間情報を取得して、上記関数実行実測時間と上記関数
制限時間情報とを比較して、比較した結果を提示する実
行時間解析工程とを有することを特徴とする。
Further, in the program development support program according to the present invention, the program constituent element is either a function for performing a predetermined process or a case including one or more functions for performing a predetermined process. The time limit information specified by the state transition information specifying step is function time limit information of the process when executing the function, and the program generating step measures the function execution actually measured time when executing the function. Generating a program for executing the processing, the program development support program further executes the program generated by the program generation step, and executes the program to measure the function execution measurement time. Measure the program execution process to be executed and the function execution measurement time executed by the program execution process The function execution time measurement step that is started by the processing to measure and collect the function execution measurement time for each function, and the function execution measurement time for each function collected by the function execution time measurement step are acquired. A function time limit information for each function designated by the state transition information designation step is acquired, the function execution measured time is compared with the function time limit information, and an execution time analysis step of presenting the comparison result is performed. It is characterized by having.

【0037】[0037]

【発明の実施の形態】以下に説明する実施の形態では、
プログラム生成部はプログラム自動生成手段、プログラ
ム実行部はプログラム実行手段、実行実測時間収集部は
実行実測時間収集手段、実行時間解析部は実行時間解析
手段、関数実行時間測定部は関数実行時間測定手段と称
する。
BEST MODE FOR CARRYING OUT THE INVENTION In the embodiments described below,
The program generation unit is a program automatic generation unit, the program execution unit is a program execution unit, the execution measurement time collection unit is the execution measurement time collection unit, the execution time analysis unit is the execution time analysis unit, and the function execution time measurement unit is the function execution time measurement unit. Called.

【0038】また、プログラム構成要素は、四則演算処
理や、分岐処理や、制御を行うたの処理や、関数等、を
コンピュータに実行させるために、所定のプログラミン
グ言語で記述されたソースコードの集まりである。ソー
スコードの集まりが関数である場合を特に「プログラム
部品」と呼ぶが、以下の各実施の形態では、ソースコー
ドの集まりが関数である場合と関数でない(四則演算処
理や、分岐処理や、制御を行うための処理)場合とを区
別せずに、プログラム構成要素を「プログラム部品」と
呼ぶ。さらに、構成要素情報を部品情報、プログラム構
成要素をプログラム構成要素、構成要素制限時間情報を
部品制限時間情報、構成要素実行実測時間を部品実行実
測時間、プログラム構成要素記憶工程をプログラム部品
記憶工程と呼ぶ。また、関数でない(四則演算処理や、
分岐処理や、制御を行うための処理)や関数であるプロ
グラム部品とは、ともにプログラム構成要素記憶部に記
憶されているものとする。
The program component is a collection of source codes written in a predetermined programming language for causing a computer to execute the four arithmetic operations, the branch processing, the control processing, the function, and the like. Is. The case where the collection of source codes is a function is particularly called a "program part", but in each of the following embodiments, the collection of source codes is not a function and is not a function (four arithmetic operations processing, branching processing, control Processing for performing) is referred to as a “program component” without distinguishing it from the case. Further, component information is part information, program component is a program component, component time limit information is part time limit information, component execution actual measurement time is part execution actual measurement time, and program component storage step is program part storage step. Call. Also, it is not a function (four arithmetic operations,
It is assumed that the branch process, the process for performing control, and the program components that are functions are both stored in the program component storage unit.

【0039】実施の形態1.図1はこの発明の実施の形
態1のプログラム開発支援システムのシステム構成図で
ある。図1が示すように、本実施の形態は、状態遷移エ
ディタ1、状態遷移情報保持手段2、プログラム自動生
成手段3、プログラムソースコード4、プログラム構成
要素記憶部9から構成される。
Embodiment 1. 1 is a system configuration diagram of a program development support system according to a first embodiment of the present invention. As shown in FIG. 1, this embodiment includes a state transition editor 1, a state transition information holding unit 2, a program automatic generation unit 3, a program source code 4, and a program component storage unit 9.

【0040】本実施の形態では、プログラム開発者が状
態遷移エディタ1を用いて、プログラムの動作仕様のう
ち状態遷移に関する情報として、複数の状態のそれぞれ
の状態を示す状態情報と、複数のイベントのそれぞれの
イベントを示すイベント情報と、各状態においてイベン
トの発生により生起される状態間の遷移と、各遷移にお
いて実行されるアクションを示すアクション情報とを状
態遷移情報として記述する。アクションの記述において
は、アクション情報に対応させて、どのプログラム部品
をどのような手順で呼び出すかといった部品情報、例え
ば、プログラムフローを記述するとともに、必要に応じ
てその処理に許容される制限時間(実行制限時間)を示
す制限時間情報を記述する。
In the present embodiment, the program developer uses the state transition editor 1 as the information regarding the state transition in the operation specifications of the program, the state information indicating each state of the plurality of states and the plurality of events. The event information indicating each event, the transition between the states caused by the occurrence of the event in each state, and the action information indicating the action executed in each transition are described as the state transition information. In the description of an action, part information such as which program part is called in what procedure in correspondence with the action information, for example, the program flow is described, and the time limit (the time limit allowed for the process) is added as necessary. Describe the time limit information indicating the execution time limit.

【0041】本実施の形態における状態遷移エディタ1
で記述する状態遷移情報の例を図2、図3に示す。図2
は本実施の形態における状態遷移エディタ1による状態
遷移情報の記述例である。本実施の形態では、状態遷移
情報は状態遷移図の形式に沿って、状態11を丸で表
し、状態間の遷移12を矢印で表す。また遷移12の契
機となるイベントと、遷移12において実行するアクシ
ョン、ならびにアクションの実行制限時間は、それぞれ
「/」を用いてつないだ「イベント/アクション/実行
制限時間」といった形式で、遷移12に付随して記述す
る。なお実行制限時間を特に定義する必要がない場合は
「イベント/アクション/−」あるいは「イベント/ア
クション」と記述する。図2に示す記述例では、SN
1、SN2、SN3と3つの状態11が存在し、状態S
N1から状態SN2への遷移12は「enA/an12
/t12」、すなわちイベントenAを契機とした遷移
であり、アクションan12を行い、そのときの実行制
限時間はt12である。
State transition editor 1 in the present embodiment
2 and 3 show examples of the state transition information described in. Figure 2
Is an example of description of state transition information by the state transition editor 1 in the present embodiment. In the present embodiment, in the state transition information, the state 11 is represented by a circle and the transition 12 between states is represented by an arrow in accordance with the format of the state transition diagram. In addition, the event that triggers the transition 12, the action executed in the transition 12, and the execution time limit of the action are displayed in the transition 12 in the format of “event / action / execution time limit” that is connected using “/”. Described in accompanying. If it is not necessary to define the execution time limit, describe it as "event / action /-" or "event / action". In the description example shown in FIG. 2, SN
There are three states 11, 1, SN2, SN3, and state S
The transition 12 from N1 to state SN2 is "enA / an12.
/ T12 ”, that is, the transition triggered by the event enA, the action an12 is performed, and the execution time limit at that time is t12.

【0042】図3は本実施の形態における状態遷移エデ
ィタ1によるアクションのプログラムフロー(部品情
報)の記述例である。図3に示す記述例では、アクショ
ンan12の処理S10を記述しており、同処理S10
は、まずプログラム部品p1を実行し(S11)、次に
p1の実行結果を検査し(S12)、もしその結果が真
であれば(S12のYES)、プログラム部品p2を実
行し(S13)処理を終了する。またp1の実行結果が
真でなければ(S12のNO)即座に処理を終了する。
プログラム部品p1,p2は、プログラム構成要素記憶
部9に記憶されているプログラム部品である。プログラ
ム構成要素記憶部9へのプログラム部品の登録は、プロ
グラム構成要素記憶工程により行われる。状態遷移情報
の記述及び部品情報の記述は、状態遷移情報指定工程に
より行われる。
FIG. 3 is a description example of a program flow (parts information) of an action by the state transition editor 1 in this embodiment. In the description example shown in FIG. 3, the process S10 of the action an12 is described, and the process S10 is described.
First executes the program component p1 (S11), then inspects the execution result of p1 (S12), and if the result is true (YES in S12), executes the program component p2 (S13). To finish. If the execution result of p1 is not true (NO in S12), the process is immediately terminated.
The program components p1 and p2 are program components stored in the program component storage unit 9. Registration of the program component in the program component storage unit 9 is performed by the program component storage step. The description of the state transition information and the description of the component information are performed in the state transition information specifying step.

【0043】状態遷移エディタ1で記述した状態遷移情
報と部品情報とは、状態遷移情報保持手段2にて保存す
る。また状態遷移情報保持手段2が保持する内容は、再
度状態遷移エディタ1を用いてプログラム開発者が改定
し、保存しなおすこともできる。プログラム自動生成手
段3は、状態遷移情報保持手段2に保持される部品情報
を元にプログラム構成要素記憶部9を参照して使用する
プログラム部品を選択して、選択したプログラム部品と
状態遷移情報保持手段2に保持される状態遷移情報の内
容を元に、状態遷移の処理を実現するプログラムソース
コード4を自動的に生成する。このとき生成するプログ
ラムソースコード4には、いずれかのアクションに対し
実行制限時間の検証を行う処理を含めるようにも、また
そのような検証処理をまったく含まないようにすること
も可能である。アクション情報に対応させて実行制限時
間が記述されている場合は、アクションに対し実行制限
時間の検証を行う処理を含める。アクション情報に対応
させて実行制限時間が記述されていない場合は、アクシ
ョンに対し実行制限時間の検証を行う処理を含めない。
プログラムソースコード4の生成は、プログラム生成工
程により行う。
The state transition information and the component information described by the state transition editor 1 are stored in the state transition information holding means 2. Further, the contents held by the state transition information holding means 2 can be revised again by the program developer using the state transition editor 1 and saved again. The program automatic generation unit 3 refers to the program component storage unit 9 based on the component information held in the state transition information holding unit 2, selects a program component to be used, and holds the selected program component and state transition information. The program source code 4 for realizing the state transition processing is automatically generated based on the content of the state transition information stored in the means 2. The program source code 4 generated at this time may include a process of verifying the execution time limit for any action, or may not include such a verification process at all. When the execution time limit is described in association with the action information, a process for verifying the execution time limit for the action is included. If the execution time limit is not described in association with the action information, the process of verifying the execution time limit for the action is not included.
The generation of the program source code 4 is performed by the program generation step.

【0044】本実施の形態におけるプログラム自動生成
手段3が生成するプログラムソースコード4のフローチ
ャートの一例を図4、図5に示す。図4はイベント駆動
型で動作する状態遷移の処理を実現するプログラムソー
スコードのうち、いずれのアクションに対しても実行制
限時間に対する検証処理を行わない、基本的な状態遷移
の処理S20のフローチャートである。プログラム自動
生成手段3は、図4に示すフローチャートに従い動作す
るプログラムを自動生成する。この時、アクションで使
用するプログラム部品は、状態遷移エディタ1により指
定された部品情報に基づいてプログラム構成要素記憶部
9より選択して使用する。
An example of a flow chart of the program source code 4 generated by the program automatic generation means 3 in the present embodiment is shown in FIGS. FIG. 4 is a flowchart of a basic state transition process S20 in which the verification process for the execution time limit is not performed for any action in the program source code that realizes the state transition process that operates in the event-driven type. is there. The program automatic generation means 3 automatically generates a program that operates according to the flowchart shown in FIG. At this time, the program component used in the action is selected and used from the program component storage unit 9 based on the component information designated by the state transition editor 1.

【0045】図4に示す処理S20では、まずプログラ
ムの動作に必要な初期化処理を行い(S21)、次にプ
ログラム開始時の初期状態として状態SN1を現在の状
態に設定する(S22)。その後状態遷移の契機となる
イベントの発生を待ち(S23)、イベントが発生する
と現在の状態及び発生したイベントに応じてアクション
の実行と次の状態への遷移の処理S24を行い、その後
またイベントの発生の待ち(S23)を繰り返す。
In the process S20 shown in FIG. 4, the initialization process necessary for the operation of the program is first performed (S21), and then the state SN1 is set to the present state as the initial state at the start of the program (S22). After that, the occurrence of an event that triggers the state transition is waited (S23), and when the event occurs, the action execution and the process transition to the next state S24 are performed according to the current state and the occurred event, and then the event The occurrence waiting (S23) is repeated.

【0046】アクションの実行と次の状態への遷移の処
理S24では、まず現在の状態を調べ(S25)、もし
状態SN1であれば対応する処理S26を、また状態S
N2であれば対応する処理S27を、そして状態SN3
であれば対応する処理S28を実行する。状態SN1に
対応する処理S26では、発生したイベントを調べ(S
261)、もしイベントenAであれば、アクションa
n12を実行し(S262)、現在の状態を遷移後の状
態SN2に設定(S263)してから処理S26を終了
し、イベントenA以外であればそのまま処理S26を
終了する。また状態SN2に対応する処理S27では、
発生したイベントを調べ(S271)、もしイベントe
nBであれば、アクションan23を実行し(S27
2)、現在の状態を遷移後の状態SN3に設定(S27
3)してから処理S27を終了し、もしイベントenD
であれば、アクションan21を実行し(S274)、
現在の状態を遷移後の状態SN1に設定(S275)し
てから処理S27を終了し、それ以外であればそのまま
処理S27を終了する。また状態SN3に対応する処理
S28では、発生したイベントを調べ(S281)、も
しイベントenCであれば、アクションan32を実行
し(S282)、現在の状態を遷移後の状態SN2に設
定(S283)してから処理S28を終了し、もしイベ
ントenDであれば、アクションan31を実行し(S
284)、現在の状態を遷移後の状態SN1に設定(S
285)してから処理S28を終了し、それ以外であれ
ばそのまま処理S28を終了する。
In the step S24 of executing an action and transitioning to the next state, the current state is first checked (S25), and if the state is SN1, the corresponding step S26 is performed again.
If it is N2, the corresponding process S27 is performed, and then the state SN3
If so, the corresponding process S28 is executed. In the process S26 corresponding to the state SN1, the generated event is checked (S
261), if the event is enA, action a
n12 is executed (S262), the current state is set to the post-transition state SN2 (S263), and the process S26 is ended. If it is other than the event enA, the process S26 is ended as it is. In the process S27 corresponding to the state SN2,
Examine the event that occurred (S271), if event e
If it is nB, the action an23 is executed (S27
2), the current state is set to the state SN3 after transition (S27
3) After that, the process S27 ends, and if the event enD
If so, the action an21 is executed (S274),
The current state is set to the post-transition state SN1 (S275), and then the process S27 is ended. Otherwise, the process S27 is ended. In the process S28 corresponding to the state SN3, the generated event is checked (S281). If the event is enC, the action an32 is executed (S282), and the current state is set to the state SN2 after transition (S283). After that, the process S28 ends, and if the event is enD, the action an31 is executed (S
284), the current state is set to the state SN1 after the transition (S
285) and then the process S28 ends, and otherwise, the process S28 ends.

【0047】一方図5は、イベント駆動型で動作する状
態遷移の処理を実現するプログラムソースコードのう
ち、状態SN1から状態SN2への遷移で実行するアク
ションan12について、実行制限時間に対する検証処
理を行うようにした状態遷移の処理S30のフローチャ
ートである。
On the other hand, FIG. 5 performs a verification process for the execution time limit for the action an12 executed in the transition from the state SN1 to the state SN2 in the program source code that realizes the state transition process operating in the event driven type. 7 is a flowchart of a state transition process S30 thus performed.

【0048】図5に示す処理S30は、基本的には、図
4に示される処理S20とほぼ同じロジックであり、違
いは実行時間の測定のための処理S32が加わったこと
と、状態SN1に対応した処理S26が実行制限時間に
関する検証処理を含む処理S33に変わったことのみで
ある。すなわち処理S30は、処理S20同様、まずプ
ログラムの動作に必要な初期化処理を行い(S21)、
次にプログラム開始時の初期状態として状態SN1を現
在の状態に設定する(S22)。その後状態遷移の契機
となるイベントの発生を待ち(S23)、イベントが発
生すると現在の状態及び発生したイベントに応じて、イ
ベントan12に対する実行制限時間の検証処理を含む
アクションの実行と次の状態への遷移の処理S31を行
い、その後またイベントの発生待ちを繰り返す(S2
3)。
The process S30 shown in FIG. 5 is basically the same logic as the process S20 shown in FIG. 4, except that the process S32 for measuring the execution time is added and the state SN1 is added. It is only that the corresponding process S26 is changed to the process S33 including the verification process regarding the execution time limit. That is, like the process S20, the process S30 first performs an initialization process required for the operation of the program (S21),
Next, the state SN1 is set to the current state as the initial state at the start of the program (S22). After that, the occurrence of an event that triggers the state transition is waited for (S23), and when the event occurs, the execution of the action including the verification processing of the execution time limit for the event an12 and the next state are performed according to the present state and the event that occurred. Processing of the transition of S31 is performed, and then the waiting for the occurrence of an event is repeated (S2
3).

【0049】アクションの実行と次の状態への遷移の処
理S31では、現在時刻を得て変数tに保存し(S3
2)、ついで現在の状態を調べ(S25)、もし状態S
N1であれば対応する処理S33を、また状態SN2で
あれば対応する処理S27を、そして状態SN3であれ
ば対応する処理S28を実行する。なお状態SN2に対
応する処理S27及び状態SN3に対応する処理S28
は、図4で示した処理S27、S28と同一であるため
説明を省略し、以降では状態SN1に対応する処理S3
3について示す。
In step S31 of executing the action and transiting to the next state, the current time is obtained and stored in the variable t (S3
2) Then, check the current state (S25), and if the state S
If N1, the corresponding process S33 is performed, if the state is SN2, the corresponding process S27 is performed, and if the state is SN3, the corresponding process S28 is performed. Note that the process S27 corresponding to the state SN2 and the process S28 corresponding to the state SN3
Is the same as the processing S27 and S28 shown in FIG. 4, and therefore its explanation is omitted, and hereinafter, the processing S3 corresponding to the state SN1 is performed.
3 is shown.

【0050】状態SN1に対応する処理S33では、発
生したイベントを調べ(S261)、もしイベントen
Aであれば、アクションan12を実行し(S26
2)、現在の状態を遷移後の状態SN2に設定する(S
263)。そして現在時刻と変数tに保存した時刻との
差、すなわちアクションan12の実行に要した時間
(実行実測時間)を求め(S34)、もしその差がアク
ションan12の実行制限時間t12より大きい場合に
は(S35のYES)、アクションan12の実行実測
時間が実行制限時間を満たせなかったとしてその旨を示
す警告を出力し(S36)、処理S33を終了する。一
方その差が実行制限時間t12以下の場合(S35のN
O)は、警告は出力せずに処理S33を終了する。また
発生したイベントがイベントenA以外であればそのま
ま状態SN1に対応する処理S33を終了する。
In the process S33 corresponding to the state SN1, the generated event is checked (S261), and if the event en
If it is A, the action an12 is executed (S26
2), the current state is set to the state SN2 after the transition (S
263). Then, the difference between the current time and the time saved in the variable t, that is, the time required to execute the action an12 (actual measurement time) is obtained (S34). If the difference is larger than the execution time limit t12 of the action an12, (YES in S35), a warning indicating that the actual measurement time of the action an12 cannot satisfy the execution time limit is output (S36), and the process S33 ends. On the other hand, when the difference is less than the execution time limit t12 (N in S35)
O) ends the process S33 without outputting a warning. If the generated event is other than the event enA, the process S33 corresponding to the state SN1 is finished as it is.

【0051】なお図5では、図4で示す基本的な状態遷
移の処理S20に対し、状態SN1から状態SN2への
遷移で実行するアクションan12について、実行制限
時間に対する検証処理のみを付加した状態遷移の処理S
30を示したが、同様に処理S20に対し他のアクショ
ンに関する検証処理を付加しても良く、本実施の形態に
おけるプログラム自動生成手段3は、図5に示すような
形で、必要に応じて任意のアクションを対象に、その実
行制限時間に対する検証処理を付加するよう動作する。
図5のS32,S34からS36の処理は、測定用のプ
ログラムソースコードの雛型がプログラム自動生成手段
3の内部に組み込まれていて、プログラム自動生成手段
3は、実行時間を測定するアクションanXに応じて、
その雛形を適宜修正したうえで、プログラムソースコー
ドの適切な箇所へ付加するようにするものである。ま
た、プログラム自動生成手段3は、アクションの処理を
行うプログラムを生成する場合に、図3に示したプログ
ラムフローに従いプログラムを生成する。プログラムフ
ローに記述されているプログラム部品は、プログラム構
成要素記憶部9より選択して、プログラムの生成時に組
み込む。
In FIG. 5, in addition to the basic state transition process S20 shown in FIG. 4, only the verification process for the execution time limit is added to the action an12 executed in the transition from the state SN1 to the state SN2. Processing S
Although 30 is shown, the verification processing regarding other actions may be added to the processing S20 in the same manner, and the program automatic generation means 3 in the present embodiment has a form as shown in FIG. It operates to add a verification process for the execution time limit to an arbitrary action.
In the processes of S32, S34 to S36 of FIG. 5, the model of the program source code for measurement is incorporated in the automatic program generation means 3, and the automatic program generation means 3 performs the action anX for measuring the execution time. Depending on,
The template is appropriately modified and then added to an appropriate place in the program source code. Further, the automatic program generation means 3 generates a program according to the program flow shown in FIG. 3 when generating a program for processing an action. The program component described in the program flow is selected from the program component storage unit 9 and incorporated when the program is generated.

【0052】本実施の形態では、プログラム開発支援シ
ステムは上記のように動作するので、状態遷移の設計に
際して、状態遷移と共にそのアクションの処理に許容さ
れる制限時間を同時に記述することができ、またアクシ
ョンの処理に要する時間を測定し実行制限時間との比較
を行う処理を、生成するプログラムソースコード内に自
動的に埋め込むことができる。これにより実行制限時間
に関する設計情報の記述忘れや見落としを防ぎ、さらに
実行制限時間に関する試験の設計忘れや実施忘れを防ぐ
ことができ、検証作業が簡素にできるようになるため、
ソフトウェア開発の下流工程で時間的制約に関する検証
及び改善作業を十分に実施しやすくなり、プログラムの
開発効率及び品質の向上といった効果が得られる。
In this embodiment, since the program development support system operates as described above, when designing the state transition, it is possible to simultaneously describe the time limit allowed for processing the action together with the state transition. The process of measuring the time required to process an action and comparing it with the execution time limit can be automatically embedded in the generated program source code. As a result, it is possible to prevent the design information about the execution time limit from being forgotten or overlooked, and to avoid forgetting to design or execute the test regarding the execution time limit, which simplifies the verification work.
This makes it easier to sufficiently carry out verification and improvement work related to time constraints in the downstream process of software development, and the effect of improving program development efficiency and quality can be obtained.

【0053】なお本実施の形態では、アクションに対す
る実行制限時間を、遷移に対する「イベント/アクショ
ン/実行制限時間」といった付随する表記として記述す
るようにしているが、これは別の方式、例えば遷移に対
しては「イベント/アクション」のみ記述し、実行制限
時間はアクションに対するプログラムフローと併せてプ
ログラムフロー記述時に、別途そのプログラムフロー全
体に対する属性情報として実行制限時間を記述するとい
った方式を採用しても良い。また本実施の形態では、状
態遷移の記述を状態遷移図の形式に沿って行ったが、こ
れは他の状態遷移の形式的記述方法、例えばステートチ
ャートや状態遷移表といった形式を採用しても同様の効
果が得られる。同様に本実施の形態ではアクションの処
理をプログラムフローとして記述しているが、これはP
AD(problem analysis diagr
am)やHCP(hierarchical and
compact description char
t)といった他の図形的記述方式、さらにはプログラム
のソースコードといったテキスト形式での記述方式を採
用しても同様の効果が得られる。
In the present embodiment, the execution time limit for an action is described as an accompanying notation such as "event / action / execution time limit" for a transition. In contrast, if only the "event / action" is described and the execution time limit is described together with the program flow for the action, the execution time limit is separately described as attribute information for the entire program flow. good. Further, in the present embodiment, the description of the state transition is performed according to the format of the state transition diagram. The same effect can be obtained. Similarly, in this embodiment, the processing of actions is described as a program flow, but this is
AD (problem analysis diagr
am) and HCP (hierarchical and
compact description char
Similar effects can be obtained by adopting another graphic description method such as t) or a text description method such as the source code of a program.

【0054】また実行制限時間と実行実測時間を比較す
る際には、実行実測時間が実行制限時間を超過した場合
に警告を提示するのではなく、実行制限時間に一定の比
率を乗じた値、例えば実行制限時間の80%を越えた場
合に警告を提示するようにしてもよく、さらに実行制限
時間の80%を越えた場合は警戒を、実行制限時間を越
えた場合は警告と提示するといったように提示の仕方に
差をつけることで、プログラム開発者に対し対策の優先
度を示唆することができ、改善作業の作業効率が向上す
る。さらに実行制限時間と実行実測時間の差ないし比率
を求め、その値を併記してプログラム開発者に対し提示
しても、対策の優先度を示唆することができ、効果を高
めることができる。
When comparing the execution time limit and the actual measurement time, a warning is not displayed when the actual measurement time exceeds the execution time limit, but a value obtained by multiplying the execution time limit by a certain ratio, For example, a warning may be presented when the execution time exceeds 80%, and a warning is issued when the execution time exceeds 80% and a warning is issued when the execution time is exceeded. By making a difference in the way of presentation as described above, the priority of measures can be suggested to the program developer, and the work efficiency of the improvement work is improved. Further, even if the difference or ratio between the execution time limit and the actual measurement time is obtained and the value is written together and presented to the program developer, the priority of the countermeasure can be suggested, and the effect can be enhanced.

【0055】また本実施の形態では、アクションに対す
る実行実測時間を求める際に、現在時刻を元に測定を行
うようにしているが、これは例えばプログラムがUNI
X(「UNIX」はAT&Tベル研究所が開発したオペ
レーティング・システムの名称)やWindows N
T(「Windows NT」は「WindowsNe
w Technology」の略称。Microsof
t社の商標)といったマルチタスクオペレーティングシ
ステム上で動作する場合は、現在時刻ではなく、プログ
ラムが起動されてからその処理のために消費したCPU
(central processing unit)
時間に替えても良く、この場合実行実測時間の測定に他
のタスクの影響を減らすことができ、実行実測時間の測
定精度を高めることができる。あるいは、アクションに
対する実行制限時間はプログラムが特定の組み込み装置
上で動作する場合を想定して設定されており、一方プロ
グラムを実際に動作させる環境が別の装置(例えば汎用
のパーソナルコンピュータやワークステーション)であ
る場合は、実行実測時間を求める際には、現在時刻また
はCPU時間の差の値から両者のハードウェア性能の違
いを換算してプログラムが本来動作する装置上での実行
実測時間を推定するようにして求めるようにしても良
い。この場合、実行実測時間と実行制限時間の比較の精
度を高めることができる。
Further, in the present embodiment, when the execution actually measured time for the action is obtained, the measurement is performed based on the current time.
X (“UNIX” is the name of the operating system developed by AT & T Bell Laboratories) and Windows N
T (“Windows NT” is “Windows Ne
Abbreviation of "w Technology". Microsof
When operating on a multi-tasking operating system such as the T company's trademark, the CPU consumed for the processing since the program was started, not the current time
(Central processing unit)
The time may be replaced by time, and in this case, the influence of other tasks on the measurement of the actual measurement time can be reduced, and the measurement accuracy of the actual measurement time can be improved. Alternatively, the execution time limit for an action is set assuming that the program runs on a specific embedded device, while the environment in which the program actually runs is on another device (for example, a general-purpose personal computer or workstation). If the actual measurement time is found, the actual measurement time on the device where the program originally operates is estimated by converting the difference in the hardware performance between the current time and the CPU time from the value of the difference between the current time and the CPU time. You may ask for it in this way. In this case, the accuracy of comparison between the actual measurement time and the execution time limit can be improved.

【0056】また実行実測時間が実行制限時間を超過し
た際に行う警告の出力処理が、例えばハードディスク上
のファイルへのログ出力といった形を取るためにプログ
ラムの処理時間に対して比較的大きな時間を要し、実行
制限時間の検証処理を付加した場合とそうでない場合で
プログラムの時間的な動作が変わってしまうことが問題
となる場合では、警告の出力処理中にはプログラムの時
間的な動作を定める計時機能や周辺機器(あるいはその
シミュレーション)の動作を一時的に停止するようにす
ることで、実行制限時間の検証処理を行う場合とそうで
ない場合でのプログラムの時間的な動作の差異を少なく
するよう、対処することができる。
Further, since the warning output process performed when the actual measurement time exceeds the execution time limit takes the form of, for example, log output to a file on the hard disk, a relatively large time is required for the processing time of the program. Therefore, if the problem is that the time behavior of the program changes when the execution time limit verification process is added and when it is not added, the time action of the program should not be changed during the warning output process. By temporarily stopping the operation of the specified timekeeping function and peripheral devices (or its simulation), the difference in the time operation of the program between when the execution time limit verification process is performed and when it is not performed is reduced. Can be dealt with.

【0057】なお状態遷移処理に対する実行制限時間検
証処理の付加は、図4及び図5に示したようなイベント
駆動型の状態遷移処理だけでなく、他の方式の状態遷移
処理に対しても、同様に可能である。以降では、図6、
図7を用いて、イベントポーリング型の状態遷移処理に
対する実行制限時間検証処理の付加方法について、また
図8、図9、図10を用いて、状態遷移テーブルを用い
たイベント駆動型の状態遷移処理に対する実行制限時間
検証処理の付加方法について、それぞれその実施の形態
を示す。
The execution time limit verification process is added to the state transition process in addition to the event driven type state transition process as shown in FIGS. It is possible as well. In the following, FIG.
A method of adding the execution time limit verification process to the event polling type state transition process will be described with reference to FIG. 7, and an event driven type state transition process using a state transition table will be described with reference to FIGS. The respective embodiments will be described with respect to the method of adding the execution time limit verification process to the above.

【0058】本実施の形態におけるプログラム自動生成
手段3が生成するプログラムソースコード4のフローチ
ャートとして、イベントポーリング型の状態遷移処理に
関する一例を図6、図7に示す。図6はイベントポーリ
ング型で動作する状態遷移の処理を実現するプログラム
ソースコードのうち、いずれのアクションに対しても実
行制限時間に対する検証処理を行わない、基本的な状態
遷移の処理S40のフローチャートである。図7は、イ
ベントポーリング型で動作する状態遷移の処理を実現す
るプログラムソースコードのうち、状態SN1から状態
SN2への遷移で実行するアクションan12につい
て、実行制限時間に対する検証処理を行うようにした状
態遷移の処理S50のフローチャートである。
As a flow chart of the program source code 4 generated by the automatic program generation means 3 in the present embodiment, an example of event polling type state transition processing is shown in FIGS. 6 and 7. FIG. 6 is a flowchart of a basic state transition process S40 in which, of the program source code that realizes the state transition process that operates in the event polling type, the verification process for the execution time limit is not performed for any action. is there. FIG. 7 shows a state in which the verification process for the execution time limit is performed for the action an12 executed in the transition from the state SN1 to the state SN2 in the program source code that realizes the state transition process that operates in the event polling type. It is a flowchart of a transition process S50.

【0059】図6に示す処理S40は、イベントの獲得
処理部分を除き基本的には図4に示される処理S20と
同じ処理である。すなわち処理S40では、まずプログ
ラムの動作に必要な初期化処理を行い(S21)、次に
プログラム開始時の初期状態として状態SN1を現在の
状態に設定する(S22)。その後ポーリング間隔に該
当する一定時間分だけ時間の経過を待ち(S41)、そ
の後状態遷移の契機となるイベントが発生しているかを
調べる(S42)。そしてもしイベントが発生していな
ければ(S42のNO)、再度時間の経過待ち(S4
1)に戻る。一方イベントが発生していれば(S42の
YES)、現在の状態及び発生したイベントに応じてア
クションの実行と次の状態への遷移の処理S24を行
い、その後またイベントの発生を待つための時間経過待
ち(S41)を繰り返す。アクションの実行と次の状態
への遷移の処理S24は、図4に示した処理S24と同
一であるため、説明を省略する。
The process S40 shown in FIG. 6 is basically the same as the process S20 shown in FIG. 4 except for the event acquisition process part. That is, in the process S40, the initialization process required for the operation of the program is first performed (S21), and then the state SN1 is set to the current state as the initial state at the start of the program (S22). After that, the elapse of a certain time corresponding to the polling interval is waited (S41), and then it is checked whether an event that triggers the state transition has occurred (S42). If no event has occurred (NO in S42), wait for the passage of time again (S4).
Return to 1). On the other hand, if an event has occurred (YES in S42), the time for performing the action S24 of executing the action and transitioning to the next state according to the current state and the event that has occurred, and then waiting for the event to occur again. The waiting for the progress (S41) is repeated. Since the process S24 of executing the action and transitioning to the next state is the same as the process S24 shown in FIG. 4, description thereof will be omitted.

【0060】一方図7に示す処理S50は、基本的に
は、図6に示される処理S40とほぼ同じロジックであ
り、違いは、図6におけるアクションの実行と次の状態
への遷移の処理S24が、イベントan12に対する実
行制限時間の検証処理を含むアクションの実行と次の状
態への遷移の処理S31に変わったことのみである。す
なわち処理S50では、処理S40同様、まずプログラ
ムの動作に必要な初期化処理を行い(S21)、次にプ
ログラム開始時の初期状態として状態SN1を現在の状
態に設定する(S22)。その後ポーリング間隔に該当
する一定時間分だけ時間の経過を待ち(S41)、その
後状態遷移の契機となるイベントが発生しているかを調
べる(S42)。そしてもしイベントが発生していなけ
れば(S42のNO)、再度時間の経過待ち(S41)
に戻る。一方イベントが発生していれば(S42のYE
S)、現在の状態及び発生したイベントに応じて、イベ
ントan12に対する実行制限時間の検証処理を含むア
クションの実行と次の状態への遷移の処理S31を行
い、その後またイベントの発生を待つための時間経過待
ち(S41)を繰り返す。ここでアクションの実行と次
の状態への遷移の処理S31は、図5に示した処理S3
1と同一であるため、説明を省略する。
On the other hand, the process S50 shown in FIG. 7 has basically the same logic as the process S40 shown in FIG. 6, and the difference is that the process S24 of executing the action and transition to the next state in FIG. However, it is only changed to the processing S31 of executing the action including the verification processing of the execution time limit for the event an12 and transiting to the next state. That is, in the process S50, similarly to the process S40, the initialization process necessary for the operation of the program is first performed (S21), and then the state SN1 is set to the current state as the initial state at the start of the program (S22). After that, the elapse of a certain time corresponding to the polling interval is waited (S41), and then it is checked whether an event that triggers the state transition has occurred (S42). If no event has occurred (NO in S42), wait for the passage of time again (S41).
Return to. On the other hand, if an event has occurred (Y in S42)
S), according to the current state and the event that has occurred, for executing the action including the verification process of the execution time limit for the event an12 and the process S31 for transition to the next state, and then waiting for the event to occur again. The waiting for the passage of time (S41) is repeated. Here, the process S31 of executing the action and transitioning to the next state is the process S3 shown in FIG.
The description is omitted because it is the same as 1.

【0061】なお図7では、図6で示す基本的な状態遷
移の処理S40に対し、状態SN1から状態SN2への
遷移で実行するアクションan12について、実行制限
時間に対する検証処理のみを付加した状態遷移の処理S
50を示したが、これは同様に処理S40に対し他のア
クションに関する検証処理を付加しても良く、本実施の
形態におけるプログラム自動生成手段3は、図7に示す
ような形で、必要に応じて任意のアクションを対象に、
その実行制限時間に対する検証処理を付加できるよう動
作する。
In addition, in FIG. 7, in addition to the basic state transition process S40 shown in FIG. 6, for the action an12 executed in the transition from the state SN1 to the state SN2, only the state transition in which the verification process for the execution time limit is added is added. Processing S
Although 50 is shown, the verification processing regarding other actions may be added to the processing S40 in the same manner, and the program automatic generation means 3 in the present embodiment is required as shown in FIG. Depending on the desired action,
It operates so that verification processing for the execution time limit can be added.

【0062】次に、本実施の形態におけるプログラム自
動生成手段3が生成するプログラムソースコード4とし
て、状態遷移テーブルを用いたイベント駆動型の状態遷
移処理に関する一例を図8、図9、図10を用いて説明
する。図8は、プログラム自動生成手段3が生成するプ
ログラムソースコード4のうち、図9及び図10に示さ
れる状態遷移処理が用いる状態遷移テーブル21の構造
を示す図である。図9は状態遷移の処理を実現するプロ
グラムソースコードのうち、いずれのアクションに対し
ても実行制限時間に対する検証処理を行わない、基本的
な状態遷移の処理S60のフローチャートである。図1
0は、状態遷移の処理を実現するプログラムソースコー
ドのうち、各アクションに対する実行制限時間に対する
検証処理を行う状態遷移の処理S70のフローチャート
である。
Next, as the program source code 4 generated by the automatic program generation means 3 in the present embodiment, an example of event-driven state transition processing using a state transition table will be described with reference to FIGS. 8, 9 and 10. It demonstrates using. FIG. 8 is a diagram showing the structure of the state transition table 21 used in the state transition processing shown in FIGS. 9 and 10 in the program source code 4 generated by the automatic program generation means 3. FIG. 9 is a flowchart of a basic state transition process S60 in which the verification process for the execution time limit is not performed for any action in the program source code for realizing the state transition process. Figure 1
0 is a flowchart of a state transition process S70 of performing a verification process for the execution time limit for each action in the program source code that realizes the state transition process.

【0063】図8に示す状態遷移テーブル21は、内容
としては図21に示される状態遷移表と類似した内容で
あるが、図20に示す従来技術での状態遷移図に対する
図2に示す本発明での状態遷移図同様、実行制限時間も
併せて保持できるようになっている。すなわち、例えば
状態SN1でのイベントenAを契機とした遷移は、図
8では状態SN1とイベントenAの交わるセルとして
保持されており、アクションan12(セル内の中段)
を行い状態SN2(セル内の上段)に遷移し、そのとき
の実効制限時間はt12(セル内の下段)であることを
示している。なお実行制限時間を特に定義する必要がな
い場合は、「−」あるいは実行制限時間として不正な値
(例えば負の値)を保持することで、実行制限時間を定
義する場合と区別する。これにより図8に示す状態遷移
テーブル21は、図2に示す状態遷移図を用いた記述と
等価の内容を保持することが可能である。
The content of the state transition table 21 shown in FIG. 8 is similar to that of the state transition table shown in FIG. 21, but the present invention shown in FIG. 2 for the state transition diagram of the prior art shown in FIG. Similar to the state transition diagram in (1), the execution time limit can also be held. That is, for example, the transition triggered by the event enA in the state SN1 is held as a cell where the state SN1 and the event enA intersect in FIG. 8, and the action an12 (middle stage in the cell).
The state is changed to the state SN2 (upper stage in the cell), and the effective time limit at that time is t12 (lower stage in the cell). If it is not necessary to define the execution time limit, a negative value (for example, a negative value) is held as the execution time limit to distinguish it from the case where the execution time limit is defined. As a result, the state transition table 21 shown in FIG. 8 can hold contents equivalent to the description using the state transition diagram shown in FIG.

【0064】状態遷移テーブル21を用いることで、図
9に示す処理S60は、まずプログラムの動作に必要な
初期化処理を行い(S21)、次にプログラム開始時の
初期状態として状態SN1を現在の状態に設定する(S
22)。その後状態遷移の契機となるイベントの発生を
待ち(S23)、イベントが発生すると現在の状態及び
発生したイベントを元に、状態遷移テーブル21から対
応する遷移先の状態及び実行するアクションの情報を取
り出す(S61)。次に得たアクションを実行し(S6
2)、遷移先の状態を新しい現在の状態に設定し(S6
3)、その後またイベントの発生の待ち(S23)を繰
り返すよう動作し、状態遷移の処理を行う。
By using the state transition table 21, the process S60 shown in FIG. 9 first performs an initialization process necessary for the operation of the program (S21), and then sets the state SN1 as the initial state at the start of the program. Set to state (S
22). After that, the occurrence of an event that triggers the state transition is waited for (S23), and when the event occurs, the information of the corresponding transition destination state and the action to be executed is retrieved from the state transition table 21 based on the current state and the occurred event. (S61). Next, execute the obtained action (S6
2) Set the transition destination state to the new current state (S6
3) After that, the operation of repeating the operation of waiting for the occurrence of an event (S23) is repeated to perform the state transition process.

【0065】一方図10に示す処理S70は、基本的に
は、図9に示される処理S60とほぼ同じロジックであ
り、違いは時間測定のための処理S32が加わったこと
と、実行制限時間に関する検証処理S72〜S75が加
わったことのみである。すなわち処理S70は、処理S
60同様、まずプログラムの動作に必要な初期化処理を
行い(S21)、次にプログラム開始時の初期状態とし
て状態SN1を現在の状態に設定する(S22)。その
後状態遷移の契機となるイベントの発生を待ち(S2
3)、イベントが発生すると、まず現在時刻を得て変数
tに保存し(S32)、次に、現在の状態及び発生した
イベントを元に、状態遷移テーブル21から対応する遷
移先の状態、実行するアクション、及び同アクションに
対する実行制限時間の情報を取り出す(S71)。つい
で得たアクションの処理を実行する(S62)。次に実
行制限時間が不正な値(例えば負の値)でなければ(S
72のNO)、現在時刻と変数tに保存した時刻との
差、すなわちアクションの処理に要した時間(実行実測
時間)を求め(S73)、もし実行実測時間がアクショ
ンに対する実行制限時間より大きい場合には(S74の
YES)、アクションの実行実測時間が実行制限時間を
満たせなかったとしてその旨を示す警告を出力し(S7
5)、その後遷移先の状態を新しい現在の状態に設定し
(S63)、またイベントの発生の待ち(S23)を繰
り返す。なお実行制限時間が不正な値である場合(S7
2のYES)または、比較の結果アクションに対する実
行制限時間を満たしている場合(S74のNO)は、警
告は出力せずに遷移先の状態を新しい現在の状態に設定
し(S63)、またイベントの発生待ち(S23)を繰
り返す。
On the other hand, the process S70 shown in FIG. 10 has basically the same logic as the process S60 shown in FIG. 9, and the difference is that the process S32 for measuring time is added and the execution time limit. It is only that the verification processes S72 to S75 are added. That is, the process S70 is the process S
Similar to 60, first, initialization processing necessary for the operation of the program is performed (S21), and then the state SN1 is set to the current state as the initial state at the start of the program (S22). After that, wait for the occurrence of an event that triggers the state transition (S2
3) When an event occurs, first obtain the current time and save it in a variable t (S32), then, based on the current state and the event that occurred, the state of the corresponding transition destination from the state transition table 21, execution Information on the action to be performed and the execution time limit for the action is extracted (S71). Then, the obtained action process is executed (S62). Next, if the execution time limit is not an invalid value (for example, a negative value) (S
No of 72), the difference between the current time and the time saved in the variable t, that is, the time required to process the action (execution actual measurement time) is obtained (S73), and if the execution actual measurement time is larger than the execution time limit for the action (YES in S74), a warning indicating that the actual measurement time of the action cannot satisfy the execution time limit is output (S7).
5) After that, the state of the transition destination is set to the new current state (S63), and the waiting for the occurrence of the event (S23) is repeated. If the execution time limit is an incorrect value (S7
2) or if the execution time limit for the action as a result of comparison is satisfied (NO in S74), the transition destination state is set to the new current state without outputting a warning (S63), and the event The occurrence waiting (S23) is repeated.

【0066】なおプログラム自動生成手段3がプログラ
ムソースコード4を生成する際には、状態遷移テーブル
21の各セルが保持する実行制限時間として、検証を行
いたいアクションに対応する箇所は状態遷移情報として
定義される設計上の定義値(実行制限時間として正しい
値)を設定し、それ以外のアクションに対応する箇所は
実行制限時間として不正な値(例えば負の値)を設定す
ることで、処理S70によるアクションに対する実行制
限時間の検証処理の実施要否を各アクション毎に任意に
定めることができる。本実施の形態では、プログラム自
動生成手段3が状態遷移テーブル21に対応するプログ
ラムソースコードを生成する際、このように状態遷移テ
ーブル21の保持する実行制限時間の値を適宜設定する
ことで、任意のアクションを対象に、その実行制限時間
に対する検証処理の実施有無を制御するよう動作する。
When the program automatic generation means 3 generates the program source code 4, the portion corresponding to the action to be verified is the state transition information as the execution time limit held in each cell of the state transition table 21. By setting a design definition value (correct value as the execution time limit) to be defined, and setting an invalid value (for example, a negative value) as the execution time limit for the other actions, the process S70 is performed. Whether or not to execute the verification processing of the execution time limit for the action can be arbitrarily determined for each action. In the present embodiment, when the program automatic generation means 3 generates the program source code corresponding to the state transition table 21, by appropriately setting the value of the execution time limit held in the state transition table 21 in this way, For the action of, the operation is performed to control whether or not the verification process is performed for the execution time limit.

【0067】このように、プログラム自動生成手段3
は、各種の状態遷移処理に対応した実行制限時間の検証
処理を付加したプログラムソースコード4を生成するこ
とができ、これにより生成したプログラムソースコード
4の適用性を高めることができ、本実施の形態の適用対
象を広めることができる。
Thus, the program automatic generation means 3
Can generate the program source code 4 to which the verification process of the execution time limit corresponding to various state transition processes is added, and thereby the applicability of the generated program source code 4 can be enhanced. The application target of the form can be spread.

【0068】本実施の形態1では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。プ
ログラムの仕様として、複数の状態と、複数のイベント
と、各状態においてイベントの発生により生起される状
態間の遷移と、各遷移において実行されるアクション、
を含む状態遷移情報を記述する状態遷移エディタと、同
状態遷移エディタにより記述された状態遷移情報を蓄え
る状態遷移情報保持手段と、状態遷移情報に基づき、状
態遷移の処理を実現するプログラムのソースコードを自
動生成するプログラム自動生成手段から構成され、状態
遷移エディタでは、アクションの処理の記述において、
どのプログラム部品をどのような手順で呼び出すかとい
ったプログラムフローを記述することができ、また任意
のアクションについて、その処理に許容される制限時間
(実行制限時間)を記述することができ、プログラム自
動生成手段では、任意のアクションについて、その処理
時間(実行実測時間)を測定し実行制限時間と比較して
提示する処理を含めてプログラムソースコードを自動生
成することができる。
In the first embodiment, the program development support system having the following features has been described. As the program specifications, multiple states, multiple events, transitions between states caused by the occurrence of an event in each state, actions executed in each transition,
State transition information describing state transition information, state transition information holding means for storing the state transition information described by the state transition editor, and source code of a program for realizing state transition processing based on the state transition information It consists of the program automatic generation means to automatically generate, in the state transition editor, in the description of action processing,
It is possible to describe the program flow such as what program part is called by what procedure, and the time limit (execution time limit) allowed for the processing of any action can be described. The means can automatically generate the program source code including a process of measuring a processing time (actually measured time) of the arbitrary action, comparing the time with the execution time limit, and presenting the result.

【0069】実施の形態2.図11はこの発明の実施の
形態2のプログラム開発支援システムを示すシステム構
成図である。図11が示すように、本実施の形態は、状
態遷移エディタ1、状態遷移情報保持手段2、プログラ
ム自動生成手段3、プログラムソースコード4、プログ
ラム実行手段5、実行実測時間収集手段6、実行時間解
析手段7、プログラム構成要素記憶部9から構成され
る。
Embodiment 2. 11 is a system configuration diagram showing a program development support system according to a second embodiment of the present invention. As shown in FIG. 11, in the present embodiment, the state transition editor 1, the state transition information holding means 2, the program automatic generation means 3, the program source code 4, the program execution means 5, the execution measurement time collection means 6, the execution time are provided. The analysis unit 7 and the program component storage unit 9 are included.

【0070】本実施の形態における状態遷移エディタ
1、状態遷移情報保持手段2の動作は、実施の形態1で
示した状態遷移エディタ1、状態遷移情報保持手段2の
動作と同じであるためその説明を省略する。同様に状態
遷移エディタ1で記述する状態遷移情報の例は、実施の
形態1で示した図2〜図3と同じであるためその説明を
省略する。また、プログラム構成要素記憶部9も実施の
形態1で説明したように用いられる。
The operations of the state transition editor 1 and the state transition information holding means 2 in the present embodiment are the same as the operations of the state transition editor 1 and the state transition information holding means 2 shown in the first embodiment, and therefore their explanations are given. Is omitted. Similarly, an example of the state transition information described in the state transition editor 1 is the same as that shown in FIGS. The program component storage unit 9 is also used as described in the first embodiment.

【0071】本実施の形態におけるプログラム自動生成
手段3は、状態遷移情報保持手段2に保持される状態遷
移情報の内容を元に、状態遷移の処理を実現するプログ
ラムソースコード4を自動的に生成する。このとき生成
するプログラムソースコード4には、いずれかのアクシ
ョンに対しその実行に要する時間(実行実測時間)の測
定を行う処理を含めるようにも、またそのような測定処
理をまったく含まないようにすることも可能である。含
むようにする場合と含まないようにする場合とは、上記
実施の形態1で説明したように状態遷移エディタ1によ
り制限時間情報が指定されているか指定されていないか
によって判断する。
The program automatic generation means 3 in the present embodiment automatically generates the program source code 4 for realizing the state transition processing based on the contents of the state transition information held in the state transition information holding means 2. To do. The program source code 4 generated at this time should include a process of measuring the time required for execution of any action (execution actual measurement time), or not include such measurement process at all. It is also possible to do so. Whether to include it or not to include it is determined depending on whether or not the time limit information is specified by the state transition editor 1 as described in the first embodiment.

【0072】本実施の形態におけるプログラム自動生成
手段3が生成するプログラムソースコード4のうち、い
ずれのアクションに対してもその処理に要する時間(実
行実測時間)の測定処理を行わない、基本的な状態遷移
の処理のフローチャートの例は、実施の形態1で示した
図4の処理S20と同一であるため、その説明を省略す
る。次に、イベント駆動型で動作する状態遷移の処理を
実現するプログラムソースコードをプログラム自動生成
手段3によって生成する。生成されたプログラムソース
コードでは、状態SN1から状態SN2への遷移で実行
するアクションan12について、その実行実測時間の
測定処理を行う。この状態遷移の処理のフローチャート
の例を、図12を用いて説明する。
In the program source code 4 generated by the program automatic generation means 3 in the present embodiment, the measurement processing of the time required for the processing (execution measurement time) is not performed for any action. The example of the flowchart of the state transition process is the same as the process S20 of FIG. 4 described in the first embodiment, and therefore the description thereof is omitted. Next, the program automatic generation means 3 generates a program source code which realizes a state transition process which operates in an event driven type. In the generated program source code, the action actual measurement time is measured for the action an12 executed in the transition from the state SN1 to the state SN2. An example of a flowchart of this state transition process will be described with reference to FIG.

【0073】図12は、本実施の形態におけるプログラ
ム自動生成手段3が生成するプログラムソースコード4
のうち、状態SN1から状態SN2への遷移で実行する
アクションan12について、その実行実測時間の測定
処理を行うようにした、イベント駆動型で動作する状態
遷移の処理S80のフローチャートである。
FIG. 12 shows a program source code 4 generated by the automatic program generation means 3 in this embodiment.
11 is a flowchart of a state transition process S80 which operates in an event-driven manner, in which an execution actual measurement time is measured for an action an12 executed in a transition from the state SN1 to the state SN2.

【0074】図12に示す処理S80は、基本的には、
図4に示される処理S20とほぼ同じロジックであり、
違いは時間測定のための処理S32が加わったことと、
状態SN1に対応した処理S26が実行実測時間の測定
処理を含む処理S82に変わったことのみである。すな
わち処理S80は、処理S20同様、まずプログラムの
動作に必要な初期化処理を行い(S21)、次にプログ
ラム開始時の初期状態として状態SN1を現在の状態に
設定する(S22)。その後状態遷移の契機となるイベ
ントの発生を待ち(S23)、イベントが発生すると現
在の状態及び発生したイベントに応じて、イベントan
12に対する実行実測時間の測定処理を含むアクション
の実行と次の状態への遷移の処理S81を行い、その後
またイベントの発生を待ちを繰り返す(S23)。
The process S80 shown in FIG. 12 is basically
It has almost the same logic as the process S20 shown in FIG.
The difference is that processing S32 for time measurement is added,
The only difference is that the process S26 corresponding to the state SN1 is changed to the process S82 including the process of measuring the actually measured execution time. That is, like the process S20, the process S80 first performs an initialization process necessary for the operation of the program (S21), and then sets the state SN1 to the current state as the initial state at the start of the program (S22). After that, the occurrence of an event that triggers the state transition is waited for (S23), and when the event occurs, the event an according to the current state and the occurred event an
The action including the measurement process of the actual measurement time for 12 and the process of transition to the next state S81 are performed, and then the occurrence of an event is repeated waiting (S23).

【0075】アクションの実行と次の状態への遷移の処
理S81では、現在時刻を得て変数tに保存し(S3
2)、ついで現在の状態を調べ(S25)、もし状態S
N1であれば対応する処理S82を、また状態SN2で
あれば対応する処理S27を、そして状態SN3であれ
ば対応する処理S28を実行する。なお状態SN2に対
応する処理S27及び状態SN3に対応する処理S28
は、図4で示した処理S27、S28と同一であるため
説明を省略し、以降では状態SN1に対応する処理S8
2について示す。
In the process S81 of executing the action and transitioning to the next state, the current time is obtained and stored in the variable t (S3
2) Then, check the current state (S25), and if the state S
If N1, the corresponding process S82 is performed, if the state is SN2, the corresponding process S27 is performed, and if the state is SN3, the corresponding process S28 is performed. Note that the process S27 corresponding to the state SN2 and the process S28 corresponding to the state SN3
Is the same as the processing S27 and S28 shown in FIG. 4, and therefore its explanation is omitted, and hereinafter, the processing S8 corresponding to the state SN1 is performed.
2 is shown.

【0076】状態SN1に対応する処理S82では、発
生したイベントを調べ(S261)、もしイベントen
Aであれば、アクションan12を実行し(S26
2)、現在の状態を遷移後の状態SN2に設定する(S
263)。そして現在時刻と変数tに保存した時刻との
差、すなわちアクションan12の実行に要した時間
(実行実測時間)を求め(S34)、測定値をアクショ
ンan12に対する実行実測時間として実行実測時間収
集手段6へ渡し(S83)、処理S82を終了する。ま
た発生したイベントがイベントenA以外であればその
まま状態SN1に対応する処理82を終了する。
In the process S82 corresponding to the state SN1, the generated event is checked (S261), and if the event en
If it is A, the action an12 is executed (S26
2), the current state is set to the state SN2 after the transition (S
263). Then, the difference between the current time and the time stored in the variable t, that is, the time required to execute the action an12 (execution actual measurement time) is obtained (S34), and the measured value is set as the execution actual measurement time for the action an12, and the execution actual measurement time collection means 6 To (S83), and the process S82 ends. If the generated event is other than the event enA, the process 82 corresponding to the state SN1 is ended.

【0077】なお図12では、図4で示す基本的な状態
遷移の処理S20に対し、状態SN1から状態SN2へ
の遷移で実行するアクションan12に対する実行実測
時間の測定処理のみを付加した状態遷移の処理S80を
示したが、同様に処理S20に対し他のアクションに関
する実行実測時間の測定処理を付加しても良く、本実施
の形態におけるプログラム自動生成手段3は、図12に
示すような形で、必要に応じて任意のアクションを対象
に、その実行実測時間の測定処理を付加するよう動作す
る。プログラム自動生成手段3は、状態遷移エディタ1
により指定された状態遷移情報と部品情報とに基づい
て、図12に示すフローチャートの処理手順を実行する
プログラムを自動生成する。実施の形態1と同様に、ア
クションan12の処理については状態遷移エディタ1
により指定された部品情報を元にプログラム構成要素記
憶部9から該当するプログラム部品を選択して、選択し
たプログラム部品をプログラム生成時に用いる。このプ
ログラムを自動生成する工程をプログラム自動生成工程
とし、状態遷移情報と部品情報を指定する工程を状態遷
移情報指定工程とする。また、状態遷移情報と部品情報
とは、実施の形態1と同様に状態遷移情報保持手段2に
よって保持されるものとする。
In addition, in FIG. 12, in addition to the basic state transition processing S20 shown in FIG. 4, only the measurement processing of the actual measurement time for the action an12 executed in the transition from the state SN1 to the state SN2 is added. Although the process S80 is shown, similarly, the process of measuring the actually measured execution time relating to another action may be added to the process S20, and the program automatic generation means 3 in the present embodiment has the form shown in FIG. , It operates so as to add a process of measuring the execution actual measurement time to an arbitrary action as needed. The program automatic generation means 3 is a state transition editor 1
A program for executing the processing procedure of the flowchart shown in FIG. 12 is automatically generated based on the state transition information and the component information designated by. As with the first embodiment, the state transition editor 1 is used for the processing of the action an12.
Based on the component information designated by, the corresponding program component is selected from the program component storage unit 9 and the selected program component is used when the program is generated. The process of automatically generating this program is referred to as a program automatic generation process, and the process of designating state transition information and component information is referred to as a state transition information designating process. Further, the state transition information and the component information are held by the state transition information holding means 2 as in the first embodiment.

【0078】また、図12では、処理S83で測定値を
実行実測時間収集手段へ通知しているが、通知を行うと
ともに、図5の処理S35とS36の実行実測時間と実
行制限時間とを比較して、比較した結果を提示する処理
を行うように、プログラム自動生成手段3がプログラム
ソースコードを生成することも可能である。
Further, in FIG. 12, the measured value is notified to the execution measured time collecting means in the process S83, but the notification is performed and the measured actual time and the execution time limit of the processes S35 and S36 in FIG. 5 are compared. Then, the program automatic generation means 3 can also generate the program source code so as to perform the processing of presenting the comparison result.

【0079】プログラム実行手段5では、プログラム自
動生成手段3で自動生成されたプログラムソースコード
4を元に、必要に応じて、コンパイルやリンク処理を行
い実行可能な実行可能モジュールを生成し、状態遷移情
報保持手段2が保持する状態遷移情報によって定義され
た通りに動作するプログラムを実行する。このとき用い
られたプログラムソースコード4が、処理S80のよう
にアクションに対する実行実測時間の測定処理を含むロ
ジックであれば、プログラムの実行に伴い、アクション
が実行される度に測定された実行実測時間は該当するア
クションの情報とともに実行実測時間収集手段6に渡さ
れる。実行実測時間収集手段6は渡されたアクション及
び実行実測時間の情報を元に、それぞれのアクションに
対する実行実測時間の平均値を求めて保持するように動
作し、後に実行時間解析手段7に提供できるようその値
を保存する。実行実測時間収集手段6は、例えば図12
では処理S80の処理が終了するまで、アクション毎に
通知された実行実測時間を累積して、処理S80の終了
時に累積したアクション毎の実行実測時間を元に実行実
測時間の平均値を求める。同じアクションであってもプ
ログラムを実行しているときのシステム環境によって実
行実測時間が異なるので、アクション毎に実行実測時間
の平均値を求める。また、例えば図12の処理S80を
複数回実行して、その複数回実行をしたときのアクショ
ン毎の実行実測時間を累積して、平均値を求めるように
してもかまわない。
In the program execution means 5, based on the program source code 4 automatically generated by the program automatic generation means 3, compile or link processing is performed as needed to generate an executable executable module, and a state transition is made. The program that operates as defined by the state transition information held by the information holding means 2 is executed. If the program source code 4 used at this time is a logic that includes a process of measuring the actually measured execution time for an action as in step S80, the actually measured execution time measured each time the action is executed as the program is executed. Is passed to the actually-measured execution time collecting means 6 together with information on the corresponding action. The actually measured execution time collecting means 6 operates so as to obtain and hold the average value of the actually measured execution time for each action based on the information of the passed action and the actually measured execution time, and can provide it to the execution time analysis means 7 later. So save that value. The actual measurement time collecting means 6 is shown in FIG.
Then, until the processing of the process S80 is completed, the actually measured execution time notified for each action is accumulated, and the average value of the actually measured execution time is obtained based on the actually measured execution time for each action accumulated at the end of the process S80. Even if it is the same action, the actual measurement time is different depending on the system environment when the program is being executed, so the average value of the actual measurement time is calculated for each action. Further, for example, the process S80 of FIG. 12 may be executed a plurality of times, and the actually measured execution time for each action when the processing S80 is executed a plurality of times may be accumulated to obtain the average value.

【0080】実行時間解析手段7では、状態遷移情報保
持手段2が保持する状態遷移情報の内容を調べ、実行制
限時間が定義されているアクションのそれぞれについ
て、アクションに対する実行実測時間が測定されていな
いか、実行実測時間収集手段6が保持する実行実測時間
の内容を調べ、アクションに対する実行実測時間(計測
された平均の値)が保持されており、その値が実行制限
時間を超過している場合は、その旨を示す警告を出力す
る。
The execution time analysis means 7 checks the contents of the state transition information held by the state transition information holding means 2 and does not measure the actually measured execution time for each action for which the execution time limit is defined. Or, if the actual measurement time stored in the actual measurement time collection means 6 is checked, the actual measurement time (measured average value) for the action is stored, and the value exceeds the execution time limit. Outputs a warning to that effect.

【0081】アクションに対する実行実測時間が測定さ
れていないか、実行実測時間収集手段6が保持する実行
実測時間の内容を調べとあるのは、プログラムの実行に
よってプログラムに含まれているアクションが全て必ず
実行されるとは限らないので、調べている。
The fact that the actual measurement time for the action is not measured or the content of the actual measurement time held by the actual measurement time collection means 6 is checked means that all the actions included in the program by the execution of the program must be executed. It is not always executed, so I am investigating.

【0082】プログラム実行手段5は、プログラム実行
工程によりプログラム自動生成手段3によって生成され
たプログラムを実行する。この時、プログラム自動生成
手段3によって生成されたプログラムに図5の処理S3
5、S36の処理が含まれている場合は、そのアクショ
ンを実行する度に処理S35とS36とが実行される。
また、実行実測時間収集手段6がアクション毎の実行実
測時間の通知を受けて、累積して、実行実測時間の平均
値を求める処理は、実行実測時間収集工程により行う。
また、実行時間解析手段7が実行するアクション毎の実
行実測時間の平均値と実行制限時間とを比較して、比較
結果を提示する処理は、実行時間解析工程によって行
う。
The program executing means 5 executes the program generated by the program automatic generating means 3 in the program executing step. At this time, the program generated by the automatic program generation means 3 is added to the process S3 of FIG.
If the process of S5 and S36 is included, the processes S35 and S36 are executed each time the action is executed.
Further, the actual measurement time collection means 6 receives the notification of the actual measurement time for each action, accumulates the same, and obtains the average value of the actual measurement time by the actual measurement time collection step.
Further, the process of comparing the average value of the actually measured execution time of each action executed by the execution time analysis unit 7 with the execution time limit and presenting the comparison result is performed by the execution time analysis step.

【0083】本実施の形態では、上記のように動作する
ので、実施の形態1と同様、状態遷移の設計に際して、
状態遷移と共にそのアクションの処理に許容される制限
時間を同時に記述することができ、またアクションの処
理に要する時間(実行実測時間)を測定する処理を、生
成するプログラムソースコード内に自動的に埋め込むこ
とができ、さらに測定した実行実測時間と実行制限時間
の比較を自動的に行うことができる。これにより実行制
限時間に関する設計情報の記述忘れや見落としを防ぎ、
さらに実行制限時間に関する試験の設計忘れや実施忘れ
を防ぐことができ、検証作業が簡素にできるようになる
ため、ソフトウェア開発の下流工程で時間的制約に関す
る検証及び改善作業を十分に実施しやすくなり、プログ
ラムの開発効率及び品質の向上といった効果が得られ
る。
Since the present embodiment operates as described above, when designing the state transition, as in the first embodiment,
It is possible to describe the time limit allowed for the processing of the action together with the state transition, and automatically embed the processing for measuring the time required for processing the action (actual measurement time) in the generated program source code. Further, it is possible to automatically compare the measured actual measurement time with the execution time limit. This will prevent you from forgetting or overlooking the design information about the execution time limit,
In addition, it is possible to prevent forgetting the design and forgetting to execute the test related to the execution time limit, and simplifying the verification work, which makes it easy to perform verification and improvement work related to time constraints in the downstream process of software development. It is possible to obtain effects such as improvement of program development efficiency and quality.

【0084】なお上記では、図12の処理S83で、実
行実測時間として実行実測時間収集手段6へ渡す方法と
しては、例えばログとしてファイルに出力する方式、あ
るいはメッセージ機構や共有メモリ機構を用いて情報を
受け渡す方式など、一般に複数のプログラム間で情報を
受け渡す任意の方式を用いて実現することができる。
In the above description, in the process S83 of FIG. 12, as the method of passing the actually measured time to the actually measured time collecting means 6, for example, a method of outputting it as a log to a file, a message mechanism or a shared memory mechanism is used. In general, it can be realized by using any method such as a method of transferring information between a plurality of programs.

【0085】また実施の形態1と同様、実行制限時間と
実行実測時間を比較する際には、実行実測時間が実行制
限時間を超過した場合に警告を提示するのではなく、実
行制限時間に一定の比率を乗じた値、例えば実行制限時
間の80%を越えた場合に警告を提示するようにしても
よく、さらに実行制限時間の80%を越えた場合は警戒
を、実行制限時間を越えた場合は警告と提示するといっ
たように提示の仕方に差をつけることで、プログラム開
発者に対し対策の優先度を示唆することができ、改善作
業の作業効率が向上する。さらに実行制限時間と実行実
測時間の差ないし比率を求め、その値を併記してプログ
ラム開発者に対し提示しても、対策の優先度を示唆する
ことができ、効果を高めることができる。
As in the first embodiment, when comparing the execution time limit and the execution time limit, a warning is not given when the execution time limit exceeds the execution time limit, but the execution time limit is fixed. A warning may be displayed when the value exceeds the execution time limit, for example, when the execution time limit exceeds 80%. If the execution time limit exceeds 80%, warning is issued and the execution time limit is exceeded. In this case, by giving a difference such as giving a warning, the priority of the measure can be suggested to the program developer, and the work efficiency of the improvement work is improved. Further, even if the difference or ratio between the execution time limit and the actual measurement time is obtained and the value is written together and presented to the program developer, the priority of the countermeasure can be suggested, and the effect can be enhanced.

【0086】また上記実施の形態では、実行実測時間収
集手段6は渡されたアクション及びその実行実測時間の
情報を元に、それぞれのアクションに対する実行実測時
間の平均値を保持するように動作したが、これは最大値
を求めるように動作してもよい。この場合、より厳しい
条件で実行制限時間と実行実測時間との比較を行える。
さらに、実行実測時間の平均値と最大値の両者を併用
し、実行実測時間収集手段6は平均値及び最大値の両者
を求めるように動作し、実行時間解析手段7では、それ
ぞれと実行制限時間との比較結果を提示するようにして
もよい。この場合、各アクションに関する実行制限時間
の達成可否の程度を大きく分類することができ、対策の
優先度を示唆することができ、やはり改善作業の作業効
率が向上する。また、アクション毎に実行実測時間の最
大値のみを求めるようにして、最大値と実行制限時間と
を比較するようにしてもかまわない。
In the above embodiment, the actually-measured execution time collecting means 6 operates so as to hold the average value of the actually-measured execution time for each action based on the information of the passed action and the actually-measured execution time thereof. , Which may operate to find the maximum value. In this case, the execution time limit and the actual measurement time can be compared under more severe conditions.
Further, both the average value and the maximum value of the actually measured execution time are used together, and the actually measured time collection means 6 operates so as to obtain both the average value and the maximum value. You may make it present the comparison result with. In this case, the degree of achievement of the execution time limit for each action can be roughly classified, the priority of the countermeasure can be suggested, and the work efficiency of the improvement work is also improved. Alternatively, only the maximum value of the actually measured execution time may be obtained for each action, and the maximum value and the execution time limit may be compared.

【0087】あるいは実行実測時間収集手段6は、平均
値や最大値といった特定の単一の数値ではなく、実行実
測時間のヒストグラムないし確率分布といった統計的な
値を生成、保持するように動作しても良く、この場合実
行時間解析手段7では、実行制限時間を超過する確率、
あるいは実行制限時間に一定の比率を乗じた値を超過す
る確率が一定以上の場合には警告を提示するように動作
することで、同様の効果が得られる。さらに平均値や最
大値を用いる場合と同様、実行制限時間の80%を越え
る確率が一定以上の場合は警戒を、実行制限時間を越え
た値がある場合は警告と提示するといったように提示の
仕方に差をつけることで、また実行実測時間の分布状況
を提示することで、プログラム開発者に対し各アクショ
ンに対する対策の優先度を示唆することができ、やはり
改善作業の作業効率が向上する。
Alternatively, the actually-measured-time collecting means 6 operates so as to generate and hold a statistical value such as a histogram or a probability distribution of actually measured times, instead of a specific single numerical value such as an average value or a maximum value. In this case, the execution time analysis means 7 has a probability of exceeding the execution time limit,
Alternatively, when the probability of exceeding the value obtained by multiplying the execution time limit by a certain ratio is more than a certain value, the warning effect is presented to obtain the same effect. Further, similar to the case of using the average value or the maximum value, a warning is displayed when the probability of exceeding 80% of the execution time limit is a certain value or more, and a warning is displayed when there is a value exceeding the execution time limit. By giving different methods and presenting the distribution status of the actual measurement time, it is possible to suggest the priority of the measures for each action to the program developer, and the work efficiency of the improvement work is also improved.

【0088】なお本実施の形態では、アクションに対す
る実行制限時間を、遷移に対する「イベント/アクショ
ン/実行制限時間」といった付随する表記として記述す
るようにしているが、これは実施の形態1と同様に別の
方式、例えば遷移に対しては「イベント/アクション」
のみ記述し、実行制限時間はアクションに対するプログ
ラムフローと合わせて記述するといった方式を採用して
も良い。また本実施の形態では、状態遷移の記述を状態
遷移図の形式に沿って行ったが、これは他の状態遷移の
形式的記述方法、例えばステートチャートや状態遷移表
といった形式を採用しても同様の効果が得られる。同様
に本実施の形態ではアクションの処理をプログラムフロ
ーとして記述しているが、これはPADやHCPといっ
た他の図形的記述方式、さらにはプログラムのソースコ
ードといったテキスト形式での記述方式を採用しても同
様の効果が得られる。
In the present embodiment, the execution time limit for an action is described as an accompanying notation such as "event / action / execution time limit" for a transition, but this is the same as in the first embodiment. "Event / action" for other methods, eg transitions
It is also possible to adopt a method of describing only the execution time and describing the execution time limit together with the program flow for the action. Further, in the present embodiment, the description of the state transition is performed according to the format of the state transition diagram. The same effect can be obtained. Similarly, in the present embodiment, the action processing is described as a program flow. However, this employs other graphic description methods such as PAD and HCP, and a text description method such as the source code of the program. Also has the same effect.

【0089】また本実施の形態では、アクションに対す
る実行実測時間を求める際に、現在時刻を元に測定を行
うようにしているが、これも実施の形態1と同様に、例
えばプログラムがUNIXやWindows NTとい
ったマルチタスクオペレーティングシステム上で動作す
る場合は、現在時刻ではなく、プログラムが起動されて
からその処理のために消費したCPU時間に替えても良
く、この場合実行実測時間の測定に他のタスクの影響を
減らすことができ、実行実測時間の測定精度を高めるこ
とができる。あるいは、アクションに対する実行制限時
間はプログラムが特定の組み込み装置上で動作する場合
を想定して設定されており、一方プログラムを実際に動
作させる環境が別の装置(例えば汎用のパーソナルコン
ピュータやワークステーション)である場合は、実行実
測時間を求める際には、現在時刻またはCPU時間の差
の値から両者のハードウェア性能の違いを換算してプロ
グラムが本来動作する装置上での実行実測時間を推定す
るようにして求めるようにしても良く、この場合、実行
実測時間と実行制限時間の比較の精度を高めることがで
きる。
Further, in the present embodiment, when the actually measured execution time for the action is obtained, the measurement is performed based on the current time. However, similarly to the first embodiment, for example, the program is UNIX or Windows. When operating on a multitasking operating system such as NT, instead of the current time, the CPU time consumed for the processing after the program is started may be replaced. In this case, another task may be used to measure the actually measured execution time. Can be reduced, and the measurement accuracy of the actual measurement time can be improved. Alternatively, the execution time limit for an action is set assuming that the program runs on a specific embedded device, while the environment in which the program actually runs is on another device (for example, a general-purpose personal computer or workstation). If the actual measurement time is found, the actual measurement time on the device where the program originally operates is estimated by converting the difference in the hardware performance between the current time and the CPU time from the value of the difference between the current time and the CPU time. It may be determined in this way, and in this case, the accuracy of comparison between the actual measurement time and the execution time limit can be improved.

【0090】また測定した実行実測時間を実行実測時間
収集手段6へ渡す処理S83が、例えばハードディスク
上のファイルへのログ出力といった形を取るためにプロ
グラムの処理時間に対して比較的大きな時間を要し、実
行実測時間の測定処理を付加した場合とそうでない場合
でプログラムの時間的な動作が変わってしまうことが問
題となる場合では、測定情報を渡す処理の間はプログラ
ムの時間的な動作を定める計時機能や周辺機器(あるい
はそのシミュレーション)の動作を一時的に停止するよ
うにすることで、実行実測時間の測定処理を行う場合と
そうでない場合でのプログラムの時間的な動作の差異を
少なくするよう、対処することができる。
Further, since the process S83 of passing the measured actually measured time to the actually measured time collecting means 6 takes the form of, for example, log output to a file on the hard disk, a relatively large time is required for the processing time of the program. However, if there is a problem that the time behavior of the program changes depending on whether the measurement process of the actual measurement time is added or not, the time action of the program may be interrupted during the process of passing the measurement information. By temporarily stopping the operation of the specified timekeeping function and peripheral equipment (or its simulation), the difference in the time operation of the program between when the actual measurement time is measured and when it is not is reduced. Can be dealt with.

【0091】さらに実施の形態1と同様に、プログラム
自動生成手段3が生成するプログラムソースコード4と
しては、図4または図12に示すイベント駆動型の状態
遷移処理だけでなく、イベントポーリング型の状態遷移
処理、あるいは状態遷移テーブル21を用いたイベント
駆動型の状態遷移処理としても良く、各種の方式に対応
したプログラムソースコード4を生成できることで、プ
ログラムソースコード4の適用性を高めることができ、
本実施の形態の適用対象を広めることができる。
Further, as in the first embodiment, the program source code 4 generated by the automatic program generation means 3 is not limited to the event driven type state transition processing shown in FIG. 4 or 12, but also the event polling type state. It may be a transition process or an event-driven state transition process using the state transition table 21. Since the program source code 4 corresponding to various methods can be generated, the applicability of the program source code 4 can be enhanced,
The target of application of the present embodiment can be widened.

【0092】本実施の形態2では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。プ
ログラムの仕様として、複数の状態と、複数のイベント
と、各状態においてイベントの発生により生起される状
態間の遷移と、各遷移において実行されるアクション、
を含む状態遷移情報を記述する状態遷移エディタと、同
状態遷移エディタにより記述された状態遷移情報を蓄え
る状態遷移情報保持手段と、状態遷移情報に基づき、状
態遷移の処理を実現するプログラムのソースコードを自
動生成するプログラム自動生成手段と、自動生成された
プログラムのソースコードを元にプログラムを実行する
プログラム実行手段と、プログラムの実行に伴い渡され
る、アクションの処理に要した時間の測定値(実行実測
時間)を集める実行実測時間収集手段と、集めた実行実
測時間を解析する実行時間解析手段から構成され、状態
遷移エディタでは、アクションの処理の記述において、
どのプログラム部品をどのような手順で呼び出すかとい
ったプログラムフローを記述することができ、また任意
のアクションについて、その処理に許容される制限時間
(実行制限時間)を記述することができ、プログラム自
動生成手段では、任意のアクションについて、その実行
に要する時間(実行実測時間)を測定し実行実測時間収
集手段に渡す処理を含めてプログラムソースコードを自
動生成することができ、実行時間解析手段では、任意の
アクションについて、状態遷移情報として記述された実
行制限時間と、実行実測時間収集手段に集められた実行
実測時間とを比較して提示することができる。
In the second embodiment, the program development support system having the following features has been described. As the program specifications, multiple states, multiple events, transitions between states caused by the occurrence of an event in each state, actions executed in each transition,
A state transition editor that describes state transition information, including state transition information holding means that stores the state transition information described by the state transition editor, and a source code of a program that implements state transition processing based on the state transition information A program automatic generation unit that automatically generates a program, a program execution unit that executes a program based on the source code of the automatically generated program, and a measurement value (execution time) of the time required for processing an action that is passed along with the execution of the program. (Actual measurement time), the actual measurement time collection means for collecting the actual measurement time and the execution time analysis means for analyzing the collected actual measurement time. In the state transition editor, in the description of the action processing,
You can describe the program flow such as which program part is called by what procedure, and the time limit (execution time limit) allowed for the processing of any action can be described. The means can automatically generate the program source code including the process of measuring the time required for execution of any action (actual measurement time) and passing it to the actually-measured time collection means. For the action, the execution time limit described as the state transition information and the actual measurement time collected in the actual execution time collection means can be compared and presented.

【0093】また、別の特徴として、実行実測時間収集
手段では、渡された実行実測時間を元にアクション毎の
平均値あるいは/及び最大値を求め保持するように動作
し、実行時間解析手段では、実行実測時間収集手段が保
持する実行実測時間の平均値あるいは最大値を元にアク
ションの実行制限時間と比較し、その値を越える場合、
あるいは近い場合には警告を提示する特徴を有するプロ
グラム開発支援システムを説明した。
As another feature, the actually measured time collecting means operates so as to find and hold the average value and / or the maximum value for each action based on the passed actually measured time, and the execution time analyzing means. , The actual execution time of the action is compared with the execution time limit of the action based on the average value or the maximum value of the actual execution time held by the execution actual time collection means, and when the value is exceeded,
Alternatively, the program development support system having the feature of presenting a warning when it is close is explained.

【0094】また、別の特徴として、実行実測時間収集
手段では、渡された実行実測時間を元に、特定の固定値
ではなく、ヒストグラムないし確率分布といった統計的
な値としてアクション毎の実行実測時間の情報を求め保
持するよう動作し、実行時間解析手段では、アクション
の実行制限時間が実行実測時間収集手段が保持する実行
実測時間を越える、あるいは近づく確率を求め、その確
率が一定値を越える場合は警告を提示する特徴を有する
プログラム開発支援システムを説明した。
As another characteristic, the actually-measured-time collection means uses the actually-measured execution time passed as a statistical value such as a histogram or a probability distribution instead of a specific fixed value, and actually-measured execution time for each action. When the execution time analysis means determines the probability that the execution time limit of the action exceeds or is close to the actual measurement time that the actual measurement time collection means holds, and the probability exceeds a certain value. Explained a program development support system with the feature of presenting warnings.

【0095】実施の形態3.図13はこの発明の実施の
形態3のプログラム開発支援システムのシステム構成図
である。図13が示すように、本実施の形態は、状態遷
移エディタ1、状態遷移情報保持手段2、プログラム自
動生成手段3、プログラムソースコード4、プログラム
実行手段5、実行実測時間収集手段6、実行時間解析手
段7、関数実行時間測定手段8、プログラム構成要素記
憶部9から構成される。
Embodiment 3. FIG. 13 is a system configuration diagram of the program development support system according to the third embodiment of the present invention. As shown in FIG. 13, in the present embodiment, the state transition editor 1, the state transition information holding means 2, the program automatic generation means 3, the program source code 4, the program execution means 5, the execution measurement time collection means 6, the execution time are executed. The analysis unit 7, the function execution time measurement unit 8, and the program component storage unit 9 are included.

【0096】本実施の形態における状態遷移エディタ
1、状態遷移情報保持手段2の動作は、実施の形態1で
示した状態遷移エディタ1、状態遷移情報保持手段2の
動作と同じであるためその説明を省略する。同様に状態
遷移エディタ1で記述する状態遷移情報、部品情報の例
は、実施の形態1で示した図2〜図3と同じであるため
その説明を省略する。
The operations of the state transition editor 1 and the state transition information holding means 2 in the present embodiment are the same as the operations of the state transition editor 1 and the state transition information holding means 2 shown in the first embodiment, and therefore their explanations are given. Is omitted. Similarly, the examples of the state transition information and the component information described in the state transition editor 1 are the same as those in FIGS.

【0097】本実施の形態におけるプログラム自動生成
手段3は、状態遷移情報保持手段2に保持される状態遷
移情報と部品情報との内容を元に、状態遷移の処理を実
現するプログラムソースコード4を自動的に生成する。
このとき生成するプログラムソースコード4には、いず
れかのアクションに対しその実行に要する時間(実行実
測時間)とアクションの処理内で実行される関数の実行
時間の測定を行う処理を含めるようにも、またそのよう
な測定処理をまったく含まないようにすることも可能で
ある。状態遷移エディタ1により指定される状態遷移情
報に実行制限時間の指定が行われている場合は、関数の
実行時間の測定を行う処理を含めるようにプログラムを
生成する。状態遷移情報に実行制限時間の指定が行われ
ていない場合は、関数の実行時間の測定を行う処理を含
めないようにプログラムを生成する。
The automatic program generation means 3 in the present embodiment uses the program source code 4 for realizing the state transition processing based on the contents of the state transition information and the component information held in the state transition information holding means 2. Generate automatically.
The program source code 4 generated at this time may also include a process of measuring the time required for execution of any action (actual measurement time) and the execution time of the function executed in the process of the action. It is also possible not to include such measurement processing at all. When the execution time limit is specified in the state transition information specified by the state transition editor 1, the program is generated so as to include the process of measuring the execution time of the function. When the execution time limit is not specified in the state transition information, the program is generated so as not to include the process of measuring the execution time of the function.

【0098】本実施の形態におけるプログラム自動生成
手段3が生成するプログラムソースコード4のうち、い
ずれのアクションに対してもその処理に要する時間(実
行実測時間)の測定処理を行わない、基本的な状態遷移
の処理のフローチャートの例は、実施の形態1で示した
図4の処理S20と同一であるため、その説明を省略す
る。次に、イベント駆動型で動作する状態遷移の処理を
実現するプログラムソースコードのうち、状態SN1か
ら状態SN2への遷移で実行するアクションan12に
ついて、その実行実測時間とアクションの処理内で実行
される関数の実行時間の測定処理を行うようにした状態
遷移の処理のフローチャートの例を、図14を用いて説
明する。プログラム自動生成手段3は、プログラム生成
工程において、状態遷移エディタ1により指定された部
品情報に基づいて、部品情報に指定されているプログラ
ム部品をプログラム構成要素記憶部9から選択して、選
択したプログラム部品と状態遷移エディタ1により指定
された状態遷移情報に基づいて、図14のフローチャー
トの処理手順を実行するプログラムを生成する。
In the program source code 4 generated by the program automatic generation means 3 in the present embodiment, the measurement processing of the time required for the processing (execution measurement time) is not performed for any action. The example of the flowchart of the state transition process is the same as the process S20 of FIG. 4 described in the first embodiment, and therefore the description thereof is omitted. Next, of the program source code that realizes the processing of the state transition that operates in the event-driven type, the action an12 to be executed at the transition from the state SN1 to the state SN2 is executed within the execution measurement time and the processing of the action. An example of a flow chart of a state transition process in which the function execution time measurement process is performed will be described with reference to FIG. In the program generation step, the program automatic generation means 3 selects the program component specified in the component information from the program component storage unit 9 based on the component information specified by the state transition editor 1 and selects the selected program. A program for executing the processing procedure of the flowchart of FIG. 14 is generated based on the components and the state transition information specified by the state transition editor 1.

【0099】図14は、本実施の形態におけるプログラ
ム自動生成手段3が生成するプログラムソースコード4
のうち、状態SN1から状態SN2への遷移で実行する
アクションan12について、その実行実測時間とアク
ションの処理内で実行される関数の実行時間の測定処理
を行うようにした、イベント駆動型で動作する状態遷移
の処理S90のフローチャートである。
FIG. 14 is a program source code 4 generated by the automatic program generation means 3 in this embodiment.
Among them, the action an12 executed in the transition from the state SN1 to the state SN2 operates as an event-driven type in which the actual measurement time of the action and the execution time of the function executed in the process of the action are measured. It is a flow chart of processing S90 of state transition.

【0100】図14に示す処理S90は、基本的には、
図4に示される処理S20とほぼ同じロジックであり、
違いは時間測定のための処理S32が加わったことと、
状態SN1に対応した処理S26が実行実測時間の測定
処理を含む処理S92に変わったことのみである。すな
わち処理S90は、処理S20同様、まずプログラムの
動作に必要な初期化処理を行い(S21)、次にプログ
ラム開始時の初期状態として状態SN1を現在の状態に
設定する(S22)。その後状態遷移の契機となるイベ
ントの発生を待ち(S23)、イベントが発生すると現
在の状態及び発生したイベントに応じて、イベントan
12に対する実行実測時間の測定処理を含むアクション
の実行と次の状態への遷移の処理S91を行い、その後
またイベントの発生を待ちを繰り返す(S23)。
Basically, the process S90 shown in FIG.
It has almost the same logic as the process S20 shown in FIG.
The difference is that processing S32 for time measurement is added,
The only difference is that the process S26 corresponding to the state SN1 is changed to the process S92 including the process of measuring the actually measured execution time. That is, in the process S90, similarly to the process S20, first, the initialization process necessary for the operation of the program is performed (S21), and then the state SN1 is set to the current state as the initial state at the start of the program (S22). After that, the occurrence of an event that triggers the state transition is waited for (S23), and when the event occurs, the event an according to the current state and the occurred event an
The action including the process of measuring the actually measured time for 12 and the process of transition to the next state S91 are performed, and then the occurrence of an event is repeated waiting (S23).

【0101】アクションの実行と次の状態への遷移の処
理S91では、現在時刻を得て変数tに保存し(S3
2)、ついで現在の状態を調べ(S25)、もし状態S
N1であれば対応する処理S92を、また状態SN2で
あれば対応する処理S27を、そして状態SN3であれ
ば対応する処理S28を実行する。なお状態SN2に対
応する処理S27及び状態SN3に対応する処理S28
は、図4で示した処理S27、S28と同一であるため
説明を省略し、以降では状態SN1に対応する処理S9
2について示す。なお、関数の実行実測時間の測定は、
関数実行時間測定手段8によって行う。このため、プロ
グラム自動生成手段3は、プログラムを生成する場合に
は、アクションを実行する直前に関数実行時間測定手段
8を起動するプログラムソースコードを生成し、アクシ
ョンを実行した直後に関数実行時間測定手段8を停止さ
せるプログラムソースコードを生成する。また、関数実
行時間測定手段8は、ある関数の動作によって呼び出さ
れる関数、或いはさらにその呼び出される関数から呼び
出される関数についても関数の実行実測時間を測定する
ように動作する。関数実行時間測定手段8は、関数が実
際に動作しなければ動作しない。
In the process S91 of executing an action and transiting to the next state, the current time is obtained and stored in the variable t (S3
2) Then, check the current state (S25), and if the state S
If N1, the corresponding process S92 is performed, if the state is SN2, the corresponding process S27 is performed, and if the state is SN3, the corresponding process S28 is performed. Note that the process S27 corresponding to the state SN2 and the process S28 corresponding to the state SN3
Is the same as the processes S27 and S28 shown in FIG. 4, and therefore the description thereof is omitted, and hereinafter, the process S9 corresponding to the state SN1.
2 is shown. In addition, the measurement of the actual measurement time of the function is
This is performed by the function execution time measuring means 8. Therefore, when generating a program, the automatic program generation means 3 generates a program source code that activates the function execution time measurement means 8 immediately before executing an action, and measures the function execution time immediately after execution of the action. A program source code for stopping the means 8 is generated. Further, the function execution time measuring means 8 operates so as to measure the actually measured execution time of a function that is called by the operation of a certain function or a function that is called from the called function. The function execution time measuring means 8 does not operate unless the function actually operates.

【0102】状態SN1に対応する処理S92では、発
生したイベントを調べ(S261)、もしイベントen
Aであれば、関数実行時間測定手段8に関数の実行時間
の測定を開始するよう指示し(S93)、ついでアクシ
ョンan12を実行し(S262)、そして関数実行時
間測定手段8に関数の実行時間の測定を停止するよう指
示し(S94)、その後現在の状態を遷移後の状態SN
2に設定する(S263)。そして現在時刻と変数tに
保存した時刻との差、すなわちアクションan12の実
行に要した時間(実行実測時間)を求め(S34)、測
定値をアクションan12に対する実行実測時間として
実行実測時間収集手段6へ渡し(S83)、処理S92
を終了する。また発生したイベントがイベントenA以
外であればそのまま状態SN1に対応する処理92を終
了する。プログラム自動生成手段3はプログラムを生成
するとき、アクションの中に関数が含まれているか、ま
たは、アクション自身が関数であるか調べて、関数が含
まれている、または、関数である場合に、図14の処理
S93とS94の処理をプログラムソースコードに含む
ようにプログラムを生成して、関数が含まれていない、
または、関数でない場合には、図14の処理S93とS
94の処理をプログラムソースコードに含まないように
プログラムを生成してもかまわない。プログラム自動生
成手段3は、プログラム生成工程により図14に示すフ
ローチャートの処理手順を実行するプログラムを生成す
る。
In the processing S92 corresponding to the state SN1, the generated event is checked (S261), and if the event en
If it is A, the function execution time measuring means 8 is instructed to start measuring the execution time of the function (S93), then the action an12 is executed (S262), and the function execution time measuring means 8 is executed. To stop the measurement of (S94), and then change the current state to the state SN after transition.
It is set to 2 (S263). Then, the difference between the current time and the time stored in the variable t, that is, the time required to execute the action an12 (execution actual measurement time) is obtained (S34), and the measured value is set as the execution actual measurement time for the action an12, and the execution actual measurement time collection means 6 To (S83), processing S92
To finish. If the generated event is other than the event enA, the process 92 corresponding to the state SN1 is finished as it is. When the program automatic generation means 3 generates a program, it checks whether the action includes a function or whether the action itself is a function, and when the function is included or is a function, The program is generated so that the program source code includes the processing of steps S93 and S94 of FIG. 14, and the function is not included.
Alternatively, if it is not a function, the processes S93 and S in FIG.
The program may be generated so that the processing of 94 is not included in the program source code. The program automatic generation means 3 generates a program for executing the processing procedure of the flowchart shown in FIG. 14 by the program generation step.

【0103】なお図14では、図4で示す基本的な状態
遷移の処理S20に対し、状態SN1から状態SN2へ
の遷移で実行するアクションan12に対する実行実測
時間とアクションの処理内で実行される関数の実行時間
の測定処理のみを付加した状態遷移の処理S90を示し
たが、同様に処理S20に対し他のアクションに関する
実行実測時間とアクションの処理内で実行される関数の
実行時間の測定処理を付加しても良く、本実施の形態に
おけるプログラム自動生成手段3は、図14に示すよう
な形で、必要に応じて任意のアクションを対象に、その
実行実測時間とアクションの処理内で実行される関数の
実行時間の測定処理を付加するよう動作する。
In addition, in FIG. 14, in contrast to the basic state transition process S20 shown in FIG. 4, the actually measured execution time for the action an12 executed in the transition from the state SN1 to the state SN2 and the function executed in the action process. Although the state transition process S90 in which only the execution time measurement process is added is shown, the process measurement process of the execution time of the function executed in the action measurement process and the action of another action is similarly performed to the process S20. The program automatic generation means 3 in the present embodiment may be added in the form as shown in FIG. 14, and is executed within the processing of the actually measured execution time and the action for an arbitrary action as needed. It operates so as to add the measurement processing of the execution time of the function.

【0104】プログラム実行手段5では、プログラム自
動生成手段3で自動生成されたプログラムソースコード
4を元に、必要に応じて、コンパイルやリンク処理を行
い実行可能な実行可能モジュールを生成し、状態遷移情
報保持手段2が保持する状態遷移情報に沿って動作する
プログラムを実行する。プログラムの実行は、プログラ
ム実行工程により行う。このとき用いられたプログラム
ソースコード4が、処理S90のようにアクションに対
する実行実測時間とアクションの処理内で実行される関
数の実行時間の測定処理を含むロジックであれば、プロ
グラムの実行に伴い測定されたアクションの実行実測時
間は該当するアクションの情報とともに実行実測時間収
集手段6に渡される。実行実測時間収集手段6は渡され
たアクション及び実行実測時間の情報を元に、それぞれ
のアクションに対する実行実測時間の平均値を求めて保
持するように動作し、後に実行時間解析手段7に提供で
きるようその値を保存する。
In the program execution means 5, based on the program source code 4 automatically generated by the program automatic generation means 3, compile or link processing is performed as necessary to generate an executable executable module, and the state transition is performed. The program that operates according to the state transition information held by the information holding unit 2 is executed. The program is executed in the program execution step. If the program source code 4 used at this time is a logic that includes the measurement process of the actual measurement time of the action and the execution time of the function executed in the action process as in step S90, the measurement is performed as the program is executed. The actually-measured execution time of the action thus taken is passed to the actually-executed time collection means 6 together with information on the corresponding action. The actually measured execution time collecting means 6 operates so as to obtain and hold the average value of the actually measured execution time for each action based on the information of the passed action and the actually measured execution time, and can provide it to the execution time analysis means 7 later. So save that value.

【0105】また、関数の実行時間の測定処理は、関数
の実行時間の測定の開始及び停止の指示が関数実行時間
測定手段8に渡されて行われる。関数実行時間測定手段
8は、関数の実行時間の測定開始の指示を受けてから測
定停止の指示を受ける間、プログラム実行手段5によっ
て実行されるプログラムの内部で動作するプログラム関
数について、関数の処理の開始から終了までの時間を計
測し、その平均値を求めて保持するように動作し、また
後に実行時間解析手段7に提供できるようその値を保存
する。関数を実行する形態としては、実行するアクショ
ンが1つの関数である場合、1つのアクションの中で複
数の関数が呼び出される場合、1つの関数の中でさらに
別の関数を呼び出す場合とが考えられる。関数実行時間
測定手段8は、上記した全ての場合について関数毎に関
数の実行時間を測定するものである。図14では、関数
の実行時間の測定開始処理S93から関数の実行時間の
測定終了処理S94の間、つまり、アクションan12
の実行処理S262の動作の裏側で関数の実行時間が測
定される。裏側で関数の実行時間を測定することについ
て説明するため、関数実行時間測定手段8を詳細に説明
する。例えば、関数実行時間測定手段8は、関数の実行
時間を記録する関数実行時間記録手段と、関数の実行時
間を保管する関数実行時間データファイルと、関数の実
行時間を実行時間解析手段7に通知する関数実行時間通
知手段と、を有している。アクションan12の中で呼
び出される関数の「呼び出し/戻り」毎に関数実行時間
記録手段が動作して、呼び出されて実行されている関数
の実行時間の測定をおこない、関数を示す関数情報と対
応させて測定した関数の実行時間を関数実行時間データ
ファイルに記録する。その後、実行時間解析手段7が関
数実行時間測定手段に対して保持する関数毎の実行時間
を調べる際に、関数実行時間通知手段に対して関数実行
時間データファイルに記録されている関数毎の実行時間
を通知するように指示して、関数毎の実行時間を取得す
る。なお、関数の実行時間を測定する手段の実例として
以下に記載する市販ツールが存在しているので、それを
使用する。または、デバッガと呼ばれるプログラム開発
ツールを利用しても、関数実行時間測定手段を実現する
ことができる。市販ツールの一例として、Ration
al Quantify(Ratinal社より販売さ
れているツール)やTrueTime(NuMega社
より販売されているツール)がある。プログラム自動生
成手段3により生成されたプログラムは、プログラム実
行工程によりプログラム実行手段5により実行される。
また、測定された実行実測時間は、実行実測時間収集工
程により実行実測時間収集手段6へ通知される。また、
関数の実行時間の測定は、関数実行時間測定工程により
関数実行時間測定手段8により行われる。また、実行実
測時間と実行制限時間の比較、及び、比較結果の提示、
関数実行時間の提示の処理は、実行時間解析工程により
実行時間解析手段7により行われる。
Further, the function execution time measurement processing is carried out by instructing the function execution time measurement means 8 to start and stop the measurement of the function execution time. The function execution time measuring means 8 processes the function of the program function operating inside the program executed by the program executing means 5 while receiving the instruction to start the measurement of the execution time of the function and then the instruction to stop the measurement. It measures to measure the time from the start to the end and calculates and holds the average value, and saves the value so that it can be provided to the execution time analysis means 7 later. As a form of executing a function, an action to be executed may be one function, a plurality of functions may be called in one action, or another function may be called in one function. . The function execution time measuring means 8 measures the function execution time for each function in all the cases described above. In FIG. 14, between the function execution time measurement start process S93 and the function execution time measurement end process S94, that is, the action an12.
The execution time of the function is measured behind the operation of the execution processing S262 of. The function execution time measuring means 8 will be described in detail in order to explain the measurement of the execution time of the function on the back side. For example, the function execution time measuring unit 8 notifies the function execution time recording unit that records the function execution time, the function execution time data file that stores the function execution time, and the function execution time to the execution time analysis unit 7. And a function execution time notifying means for performing. For each "call / return" of the function called in the action an12, the function execution time recording means operates to measure the execution time of the function that has been called and executed, and associates it with the function information indicating the function. The measured execution time of the function is recorded in the function execution time data file. After that, when the execution time analysis unit 7 checks the execution time of each function held by the function execution time measurement unit, the execution of each function recorded in the function execution time data file is executed by the function execution time notification unit. Get the execution time for each function by instructing to notify the time. Since there is a commercially available tool described below as an example of means for measuring the execution time of a function, it is used. Alternatively, the function execution time measuring means can be realized by using a program development tool called a debugger. As an example of commercially available tools,
There are al Quantify (tools sold by Rational) and TrueTime (tools sold by NuMega). The program generated by the program automatic generation means 3 is executed by the program execution means 5 in the program execution step.
Further, the measured actual measurement time is notified to the actual measurement time collection means 6 by the actual measurement time collection step. Also,
The execution time of the function is measured by the function execution time measuring means 8 in the function execution time measuring step. In addition, comparison of actual measurement time and execution time limit, and presentation of comparison result,
The process of presenting the function execution time is performed by the execution time analysis means 7 in the execution time analysis step.

【0106】実行時間解析手段7では、状態遷移情報保
持手段2が保持する状態遷移情報の内容を調べ、実行制
限時間が定義されているアクションのそれぞれについ
て、アクションに対する実行実測時間が測定されていな
いか、実行実測時間収集手段6が保持する実行実測時間
の内容を調べ、アクションに対する実行実測時間(計測
された平均の値)が保持されており、その値が実行制限
時間を超過している場合は、その旨を示す警告を出力す
る。また同時に実行時間解析手段7は、対象となるアク
ションについて、そのプログラムフローを解析すること
で、そのアクションがどのような関数を呼び出すかを調
べ、呼び出されるそれぞれの関数について、関数実行時
間測定手段8が保持する各関数の実行時間の内容を調べ
その測定値(関数実行時間)と関数情報とを求めること
で、実行実測時間が実行制限時間を超過したアクション
の処理内で実行された関数について、その関数の名称及
び関数実行時間の一覧を出力する。
The execution time analysis means 7 checks the contents of the state transition information held by the state transition information holding means 2 and, for each of the actions for which the execution time limit is defined, does not measure the actually measured execution time for the action. Or, if the actual measurement time stored in the actual measurement time collection means 6 is checked, the actual measurement time (measured average value) for the action is stored, and the value exceeds the execution time limit. Outputs a warning to that effect. At the same time, the execution time analysis means 7 analyzes the program flow of the target action to check what function the action calls, and the function execution time measurement means 8 for each called function. By checking the contents of the execution time of each function held by, and obtaining the measured value (function execution time) and the function information, the function executed in the processing of the action whose actual execution time exceeds the execution time limit, A list of the function names and function execution times is output.

【0107】本実施の形態では、上記のように動作する
ので、実施の形態1,2と同様、状態遷移の設計に際し
て、状態遷移と共にそのアクションの処理に許容される
制限時間を同時に記述することができ、また実施の形態
2と同様、アクションの処理に要する時間(実行実測時
間)を測定する処理を、生成するプログラムソースコー
ド内に自動的に埋め込むことができ、さらに測定した実
行実測時間と実行制限時間の比較を自動的に行うことが
できる。これにより実行制限時間に関する設計情報の記
述忘れや見落としを防ぎ、さらに実行制限時間に関する
試験の設計忘れや実施忘れを防ぐことができ、検証作業
が簡素にできるようになる。さらに実行制限時間を超過
したアクションの処理について、その処理の内部で実行
された関数について、その名称と実行時間の一覧を出力
することにより、処理時間の改善対象を示唆することが
でき、ソフトウェア開発の下流工程で時間的制約に関す
る検証及び改善作業を十分に実施しやすくなり、プログ
ラムの開発効率及び品質の向上といった効果が得られ
る。
Since the present embodiment operates as described above, when designing the state transition, the time limit allowed for the processing of the action together with the state transition is described at the same time as in the first and second embodiments. Further, as in the second embodiment, the process for measuring the time required for processing an action (execution actual measurement time) can be automatically embedded in the generated program source code. Execution time limits can be automatically compared. As a result, it is possible to prevent the design information related to the execution time limit from being forgotten or overlooked, and to prevent the test design related to the execution time limit from being forgotten or forgotten, and the verification work can be simplified. Furthermore, regarding the processing of actions that have exceeded the execution time limit, by outputting a list of the names and execution times of the functions executed inside the processing, it is possible to suggest the target of improvement of the processing time. This makes it easier to carry out verification and improvement work related to time constraints in the downstream process, and obtains effects such as improvement in program development efficiency and quality.

【0108】なお一般にプログラムの処理時間の改善に
は、その内部処理の中で主要な時間を占めている処理の
順に対策を実施することが効果的である。このため実行
実測時間が実行制限時間を超過したアクションの処理内
で実行された関数について、その関数の名称及び関数実
行時間の一覧を出力する際には、その実行時間の長い順
に提示することで、プログラム開発者に対し処理時間の
改善についての対策の優先度を示唆することができ、改
善作業の作業効率が向上する。さらに実行時間解析手段
7で、警告を出力する対象となるアクションについてそ
のプログラムフローを解析する際に各関数についてその
実行回数を求め、内部で呼び出す関数の名称及び関数実
行時間の一覧を出力する際には実行時間と実効回数の積
の順に提示するようにすることで、対策の優先度をより
効果的に示唆でき、効果を高めることができる。
Generally, in order to improve the processing time of a program, it is effective to take measures in the order of the processing that occupies the main time in the internal processing. For this reason, when outputting a list of function names and function execution times for functions executed within the processing of an action whose actual measured time exceeds the execution time limit, it is possible to present them in descending order of execution time. , It is possible to suggest the priority of measures for improving the processing time to the program developer, and the work efficiency of the improvement work is improved. Further, when the execution time analysis unit 7 analyzes the program flow of an action for which a warning is to be output, the number of executions of each function is obtained, and the list of the names of functions to be internally called and the function execution time is output. By presenting in order of the product of the execution time and the effective number, the priority of the countermeasure can be more effectively suggested and the effect can be enhanced.

【0109】また実施の形態1,2と同様、実行制限時
間と実行実測時間を比較する際には、実行実測時間が実
行制限時間を超過した場合に警告を提示するのではな
く、実行制限時間に一定の比率を乗じた値、例えば実行
制限時間の80%を越えた場合に警告を提示するように
してもよく、さらに実行制限時間の80%を越えた場合
は警戒を、実行制限時間を越えた場合は警告を提示する
といったように提示の仕方に差をつけることで、プログ
ラム開発者に対し対策の優先度を示唆することができ、
改善作業の作業効率が向上する。さらに実行制限時間と
実行実測時間の差ないし比率を求め、その値を併記して
プログラム開発者に対し提示しても、対策の優先度を示
唆することができ、効果を高めることができる。
As in the first and second embodiments, when the execution time limit is compared with the actual measurement time, a warning is not presented when the actual measurement time exceeds the execution time limit, but the execution time limit is not displayed. A warning may be given when a value obtained by multiplying by a certain ratio, for example, exceeding 80% of the execution time limit, and when exceeding 80% of the execution time limit, be warned and set the execution time limit. By giving different warnings, such as showing a warning when the number exceeds, it is possible to suggest the priority of measures to the program developer.
Work efficiency of improvement work is improved. Further, even if the difference or ratio between the execution time limit and the actual measurement time is obtained and the value is written together and presented to the program developer, the priority of the countermeasure can be suggested, and the effect can be enhanced.

【0110】また上記実施の形態では、実行実測時間収
集手段6は渡されたアクション及びその実行実測時間の
情報を元に、それぞれのアクションに対する実行実測時
間の平均値を求めて保持するように動作したが、これは
実施の形態2と同様、最大値を求めるように動作しても
よい。この場合、より厳しい条件で実行制限時間と実行
実測時間との比較を行える。さらに、実行実測時間の平
均値と最大値の両者を併用し、実行実測時間収集手段6
は平均値及び最大値の両者を求めるように動作し、実行
時間解析手段7では、平均値と最大値のそれぞれと実行
制限時間との比較結果を提示するようにしてもよい。こ
の場合、各アクションに関する実行制限時間の達成可否
の程度を大きく分類することができ、対策の優先度を示
唆することができる。あるいは実行実測時間収集手段6
は、平均値や最大値といった特定の単一の数値ではな
く、実行実測時間のヒストグラムないし確率分布といっ
た統計的な値(統計実行実測時間)を生成、保持するよ
うに動作しても良く、この場合実行時間解析手段7で
は、実行制限時間を超過する確率、あるいは実行制限時
間に一定の比率を乗じた値を超過する確率が一定以上の
場合には警告を提示するように動作することで、同様の
効果が得られる。さらに平均値や最大値を用いる場合と
同様、実行制限時間の80%を越える確率が一定以上の
場合は警戒を、実行制限時間を越えた値がある場合は警
告と提示するといったように提示の仕方に差をつけるこ
とで、また実行実測時間の分布状況を提示することで、
プログラム開発者に対し各アクションに対する対策の優
先度を示唆することができ、改善作業の作業効率が向上
する。
Further, in the above embodiment, the actually-measured execution time collecting means 6 operates so as to obtain and hold the average value of the actually-measured execution time for each action based on the information of the passed action and the actually-measured execution time thereof. However, this may operate so as to obtain the maximum value as in the second embodiment. In this case, the execution time limit and the actual measurement time can be compared under more severe conditions. Further, both the average value and the maximum value of the actual measurement time are used together, and the actual measurement time collection means 6 is used.
May operate to obtain both the average value and the maximum value, and the execution time analysis means 7 may present the comparison result of each of the average value and the maximum value and the execution time limit. In this case, the degree of achievement of the execution time limit for each action can be roughly classified, and the priority of the countermeasure can be suggested. Alternatively, the actual measurement time collecting means 6
May operate to generate and hold a statistical value (statistical execution actual measurement time) such as a histogram of execution actual measurement times or a probability distribution, instead of a specific single numerical value such as an average value or a maximum value. In the case, the execution time analysis means 7 operates to present a warning when the probability of exceeding the execution time limit or the probability of exceeding the value obtained by multiplying the execution time limit by a certain ratio is a certain value or more, The same effect can be obtained. Further, as in the case of using the average value or the maximum value, a warning is given when the probability that 80% of the execution time limit is exceeded is a certain value or more, and a warning is given when there is a value that exceeds the execution time limit. By making a difference in the way and by presenting the distribution status of the actual measurement time,
It is possible to suggest the priority of the measures for each action to the program developer, and the work efficiency of the improvement work is improved.

【0111】同様に、上記実施の形態では、関数実行時
間測定手段8では、関数の実行時間として平均値を保持
するように動作したが、これは最大値を求めるように動
作しても良く、この場合、より厳しい条件で処理時間の
改善対象となる関数を示唆することができる。また一般
に、プログラムの処理時間については最大実行時間と平
均実行時間の差が大きい場合に処理時間の改善の余地が
高いと推定できることから、平均値と最大値の両者を併
用し、関数実行時間測定手段8は平均値及び最大値の両
者を求めるように動作し、実行時間解析手段7では、そ
の両者の値、さらにその差ないし比率といった関数実行
時間のばらつきを示す情報について提示するようにする
ことで、処理時間の改善に関する対策の優先度を示唆す
ることができ、改善作業の作業効率が向上する。この場
合各関数の提示順は平均値ないし最大値の順だけでな
く、両者の差あるいは比率といった関数実行時間のばら
つきを表す値が大きい順に提示できるようにすること
で、対策の優先度をより効果的に示唆することができ、
効果を高めることができる。
Similarly, in the above embodiment, the function execution time measuring means 8 operates so as to hold the average value as the execution time of the function, but it may operate so as to obtain the maximum value. In this case, a function whose processing time is to be improved can be suggested under more severe conditions. Generally, regarding the program processing time, it can be estimated that there is a lot of room for improvement in the processing time when the difference between the maximum execution time and the average execution time is large. Therefore, both the average value and the maximum value are used together to measure the function execution time. The means 8 operates so as to obtain both the average value and the maximum value, and the execution time analysis means 7 presents the values of the both and the information indicating the variation in the function execution time such as the difference or ratio thereof. Thus, it is possible to suggest the priority of measures for improving the processing time, and improve the work efficiency of the improvement work. In this case, the order of presenting each function is not limited to the order of the average value or the maximum value, but the priority of the measures can be further improved by making it possible to present the values in the descending order of the difference in the function execution time such as the difference or ratio between the two. Can be effectively suggested,
The effect can be enhanced.

【0112】さらに、関数実行時間測定手段8では、関
数の実行時間として、平均値や最大値といった特定の単
一の数値ではなく、関数実行時間のヒストグラムないし
確率分布といった統計的な値(統計関数実行実測時間)
を生成、保持するように動作しても良い。この場合実行
時間解析手段7では、その関数の名称及び関数実行時間
の一覧を出力する際には、関数の実行時間の平均値ある
いは最大値のほか、例えば実行時間の90%が満たす上
限値(実行時間の90%がその値以下となる値)といっ
た尺度に基づいた順に提示することで、プログラム開発
者に対し処理時間の改善についての対策の優先度を示唆
することができ、改善作業の作業効率が向上する。さら
に、併せて関数の実行時間の分布状況を提示すること
で、対策の優先度をより効果的に示唆することができ、
効果を高めることができる。また一般にプログラムの処
理時間についてはその時間のばらつきが大きい場合に処
理時間の改善の余地が高いと推定できることから、関数
の一覧を出力する際には関数の実行時間の分布のばらつ
きが大きい順でも提示できるようにする、あるいは他の
尺度とばらつきとの両者に配慮して適切な順で提示でき
るようにすることで、対策の優先度をより効果的に示唆
することができ、作業効率向上の効果を高めることがで
きる。
Further, in the function execution time measuring means 8, the function execution time is not a specific single numerical value such as an average value or a maximum value but a statistical value (statistical function) such as a histogram or a probability distribution of the function execution time. Actual measurement time)
May be generated and held. In this case, when the execution time analysis means 7 outputs the name of the function and the list of the function execution times, in addition to the average value or the maximum value of the execution times of the functions, for example, the upper limit value (90% of the execution time is satisfied. By presenting in order based on a scale such that 90% of the execution time is less than or equal to that value, it is possible to indicate to the program developer the priority of measures for improving the processing time, and the work of improvement work. Efficiency is improved. Furthermore, by presenting the distribution status of the execution time of the function together, it is possible to more effectively suggest the priority of measures,
The effect can be enhanced. Moreover, in general, it can be estimated that there is a lot of room for improvement in the processing time when there is a large variation in the processing time of the program. Therefore, when outputting the list of functions, even if the distribution of the execution time of the functions has a large variation, By presenting them, or by presenting them in an appropriate order in consideration of both other scales and variations, it is possible to more effectively suggest the priority of measures and improve work efficiency. The effect can be enhanced.

【0113】また一般に、アクションの実行実測時間の
統計的な分布と、そのアクション内で動作する関数の実
行時間の統計的な分布が測定できる場合は、アクション
の実行実測時間の統計的な分布に類似した実行時間の分
布を持つ関数があれば、その関数はアクションの実行時
間の分布に強い影響を与えている可能性が高いとみなせ
る。そして、アクションの実行時間の改善には該当する
関数の改修が効果的と推測できる。このことから、実行
実測時間収集手段6が、アクションの実行実測時間につ
いて、そのヒストグラムないし確率分布といった統計的
な値を生成、保持するように動作し、関数実行時間測定
手段8では、関数の実行時間としてそのヒストグラムな
いし確率分布といった統計的な値を生成、保持するよう
に動作し、実行時間解析手段7は、アクションに対する
関数の名称及び関数実行時間の一覧を出力する際に、ア
クションの実行実測時間の統計的な分布の形と、アクシ
ョンの中で呼び出される各関数の実行時間の統計的な分
布の形を比較し、その両者の類似度を求め、類似度の高
い順に関数を提示するようにしてもよい。これによりプ
ログラム開発者に対し処理時間の改善についての対策の
優先度を示唆することができ、改善作業の作業効率が向
上する。なお確率分布の類似度を求める方法としては、
例えばそれぞれの平均値と最大値の比を求めその値が近
い場合に類似度が高いとする方法、またそれぞれの分散
を求めその値が近い場合に類似度が高いとする方法、さ
らには相互相関値を求めその値を用いる方法など、統計
学上の知識に基づく各種の方法を用いることが可能であ
る。これらの方法の中から類似度としての適切さと導出
に必要な計算負荷の両面から適切な方式を選定して用い
ればよく、いずれの方法を用いても目的とする効果が得
られる。
In general, if the statistical distribution of the actual measurement time of the action and the statistical distribution of the execution time of the function operating in the action can be measured, the statistical distribution of the actual measurement time of the action is used. If there is a function that has a similar distribution of execution times, it can be considered that the function has a strong influence on the distribution of the execution times of actions. It can be inferred that the modification of the corresponding function is effective for improving the action execution time. From this fact, the actually measured execution time collecting means 6 operates so as to generate and hold a statistical value such as a histogram or a probability distribution of the actually measured execution time of the action, and the function execution time measuring means 8 executes the function. It operates so as to generate and hold a statistical value such as its histogram or probability distribution as time, and the execution time analysis means 7 measures the execution of an action when outputting a list of function names and function execution times for the action. Compare the statistical distribution of time and the statistical distribution of execution time of each function called in the action, find the similarity between them, and present the functions in descending order of similarity. You may As a result, it is possible to suggest to the program developer the priority of measures for improving the processing time, and the work efficiency of the improvement work is improved. In addition, as a method of obtaining the similarity of the probability distribution,
For example, the method of obtaining the ratio of each average value and the maximum value and making the similarity high when the values are close, the method of obtaining the variance of each and making the similarity high when the values are close, and further the cross correlation It is possible to use various methods based on statistical knowledge, such as a method of obtaining a value and using the value. It is only necessary to select and use an appropriate method from the viewpoints of both the appropriateness of similarity and the calculation load required for derivation from these methods, and any method can achieve the desired effect.

【0114】さらに、上記実施の形態について、プログ
ラムソースコード4は、プログラム自動生成手段3によ
り、関数の実行時間測定開始を指示する際には、どのア
クションに関する測定であるかの情報も併せて渡すよう
に生成される。プログラム実行手段5は、プログラムソ
ースコード4に基づくプログラムの実行に伴い関数の実
行時間の測定の開始及び停止の指示を関数実行時間測定
手段8に渡す際には、どのアクションに関する測定であ
るかの情報も併せて渡すように動作する。関数実行時間
測定手段8は、関数の実行時間を測定する際には、それ
ぞれがどのアクションに関連した関数の実行時間の測定
かを判別し、各関数の実行時間の平均値または最大値、
あるいはヒストグラムないし確率分布といった統計的な
値を求め保持する際には、関連するアクション毎に関数
実行時間を区別して求め保持するように動作する。実行
時間解析手段7は、対象となるアクションが呼び出す関
数について関数実行時間測定手段8が保持する各関数の
実行時間の内容を調べる際には、該当するアクションに
関連して測定した関数の実行時間を調べるようにしても
よい。この場合、関数の実行時間に関する情報は、対応
するアクション毎に区別して取り扱われるため、関数の
実行時間をアクションの実行実測時間と比較する際の精
度を高めることができ、処理時間の改善についての対策
の優先度を、より適切に示唆することができる。
Further, in the above embodiment, when the program automatic generation means 3 instructs the start of measurement of the execution time of a function, the program source code 4 also passes information on which action is the measurement. Is generated. When the program execution means 5 passes to the function execution time measurement means 8 instructions for starting and stopping the measurement of the function execution time in accordance with the execution of the program based on the program source code 4, which action is the measurement concerned? Operates to pass information as well. When measuring the execution time of a function, the function execution time measurement means 8 determines which action is related to the measurement of the execution time of the function, and determines the average value or the maximum value of the execution time of each function.
Alternatively, when a statistical value such as a histogram or a probability distribution is obtained and held, the function execution time is distinguished and obtained and held for each related action. When the execution time analysis unit 7 checks the contents of the execution time of each function held by the function execution time measurement unit 8 for the function called by the target action, the execution time of the function measured in relation to the corresponding action. May be checked. In this case, since the information about the execution time of the function is handled separately for each corresponding action, it is possible to improve the accuracy in comparing the execution time of the function with the actual measurement time of the action, and to improve the processing time. The priority of measures can be more appropriately suggested.

【0115】本実施の形態3では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。プ
ログラムの仕様として、複数の状態と、複数のイベント
と、各状態においてイベントの発生により生起される状
態間の遷移と、各遷移において実行されるアクション、
を含む状態遷移情報を記述する状態遷移エディタと、同
状態遷移エディタにより記述された状態遷移情報を蓄え
る状態遷移情報保持手段と、状態遷移情報に基づき、状
態遷移の処理を実現するプログラムのソースコードを自
動生成するプログラム自動生成手段と、自動生成された
プログラムのソースコードを元にプログラムを実行する
プログラム実行手段と、プログラムの実行に伴い渡され
る、アクションの処理に要した時間の測定値(実行実測
時間)を集める実行実測時間収集手段と、プログラムの
実行に伴う関数の実行に要する時間を測定する関数実行
時間測定手段と、集めた実行実測時間を解析する実行時
間解析手段から構成され、状態遷移エディタでは、アク
ションの処理の記述において、どのプログラム部品をど
のような手順で呼び出すかといったプログラムフローを
記述することができ、また任意のアクションについて、
その処理に許容される制限時間(実行制限時間)を記述
することができ、プログラム自動生成手段では、任意の
アクションについて、その実行に要する時間(実行実測
時間)を測定し実行実測時間収集手段に渡す処理と、そ
のアクションの処理内で実行される関数の実行時間の測
定処理の制御を含めてプログラムソースコードを自動生
成することができ、実行時間解析手段では、任意のアク
ションについて、状態遷移情報として記述された実行制
限時間と、実行実測時間収集手段に集められた実行実測
時間とを比較して提示するとともに、付随してアクショ
ンの処理内で実行された関数について関数実行時間測定
手段によって測定された実行時間と併せその一覧を提示
することができる。
In the third embodiment, the program development support system having the following features has been described. As the program specifications, multiple states, multiple events, transitions between states caused by the occurrence of an event in each state, actions executed in each transition,
State transition information describing state transition information, state transition information holding means for storing the state transition information described by the state transition editor, and source code of a program for realizing state transition processing based on the state transition information A program automatic generation means for automatically generating a program, a program execution means for executing a program based on the source code of the automatically generated program, and a measurement value (execution time of the time required for processing an action passed along with the execution of the program Actual measurement time) collecting means, function execution time measuring means for measuring the time required to execute a function accompanying program execution, and execution time analyzing means for analyzing the collected actual measurement time. In the transition editor, which program part is called in what procedure in the description of the action processing. Can describe a program flow such or out, and for any action,
The time limit (execution time limit) allowed for the processing can be described, and the program automatic generation means measures the time required for the execution (actual measurement time) for any action, and the execution time measurement means collects it. The program source code can be automatically generated, including control of the passing process and the measurement process of the execution time of the function executed in the process of the action. The execution time limit described as is compared with the actual measurement time collected in the actual measurement time collection means and presented, and the function execution time measurement means measures the function executed in the action process incidentally. The list can be presented together with the executed time.

【0116】また、別の特徴として、実行時間解析手段
がアクションの処理内で実行された関数についてその一
覧を提示する際には、その関数の実行時間の長い順に、
または関数の実行時間の測定値から推測されるアクショ
ンの実行実測時間に与える影響の高い順に列挙する特徴
を有するプログラム開発支援システムを説明した。
As another feature, when the execution time analysis means presents a list of the functions executed in the processing of the action, the execution time analysis means, in order of the execution time of the function,
Also, the program development support system having the characteristics listed in descending order of influence on the actually measured execution time of the action inferred from the measured execution time of the function has been described.

【0117】また、別の特徴として、関数実行時間測定
手段では、測定した関数の実行時間として、単一の数値
ではなく、平均値と最大値の両者、あるいはヒストグラ
ムないし確率分布といった統計的な値を求め保持し、実
行時間解析手段がアクションの処理内で実行された関数
についてその一覧を提示する際には、関数の実行時間の
ばらつきが大きい順に列挙する特徴を有するプログラム
開発支援システムを説明した。
As another feature, in the function execution time measuring means, the measured execution time of the function is not a single numerical value, but both an average value and a maximum value, or a statistical value such as a histogram or a probability distribution. The program development support system has a characteristic that, when the execution time analysis means presents a list of the functions executed in the processing of the action, .

【0118】また、別の特徴として、実行実測時間収集
手段では、アクションの実行実測時間として、単一の数
値ではなく、ヒストグラムないし確率分布といった統計
的な値を求め保持し、関数実行時間測定手段では、測定
した関数の実行時間として、単一の数値ではなく、ヒス
トグラムないし確率分布といった統計的な値を求め保持
し、実行時間解析手段がアクションの処理内で実行され
た関数についてその一覧を提示する際には、そのアクシ
ョンの実行実測時間の分布と関数の実行時間の分布の類
似度から、関数がアクションの実行時間に与える影響の
程度を推定し、その程度の高い順に列挙する特徴を有す
るプログラム開発支援システムを説明した。
As another feature, the execution measurement time collection means obtains and holds not a single numerical value but a statistical value such as a histogram or a probability distribution as the execution measurement time of the action, and the function execution time measurement means. Then, instead of a single numerical value, a statistical value such as a histogram or probability distribution is obtained and held as the measured execution time of the function, and the execution time analysis means presents a list of the functions executed in the processing of the action. When performing the action, the degree of influence of the function on the execution time of the action is estimated from the similarity between the distribution of the actually measured execution time of the action and the distribution of the execution time of the function, and the features are listed in descending order. The program development support system was explained.

【0119】実施の形態4.この発明の実施の形態4の
プログラム開発支援システムの一例を図15、図16を
用いて説明する。本実施の形態の構成及び状態遷移エデ
ィタ1で記述する状態遷移情報の例、そしてプログラム
自動生成手段3が生成する状態遷移情報に対応したプロ
グラムソースコード4の例は、実施の形態1で示した図
1、図2、図4、図5と同じであるため、その説明を省
略する。また本実施の形態の状態遷移情報保持手段2の
動作は、実施の形態1で示した状態遷移情報保持手段2
の動作と同じであるためその説明を省略する。図15は
本実施の形態における状態遷移エディタ1で記述するア
クションの部品情報(プログラムフロー)の記述例であ
る。図16は本実施の形態におけるプログラム自動生成
手段3が生成するアクションに対応したプログラムソー
スコード4のフローチャートの一例である。
Fourth Embodiment An example of the program development support system according to the fourth embodiment of the present invention will be described with reference to FIGS. An example of the state transition information described in the configuration and the state transition editor 1 of this embodiment, and an example of the program source code 4 corresponding to the state transition information generated by the automatic program generation means 3 are shown in the first embodiment. Since it is the same as FIG. 1, FIG. 2, FIG. 4, and FIG. 5, its explanation is omitted. The operation of the state transition information holding means 2 of this embodiment is the same as that of the state transition information holding means 2 shown in the first embodiment.
Since the operation is the same as the above, the description thereof will be omitted. FIG. 15 is a description example of component information (program flow) of an action described in the state transition editor 1 in this embodiment. FIG. 16 is an example of a flowchart of the program source code 4 corresponding to the action generated by the program automatic generation means 3 in the present embodiment.

【0120】本実施の形態における状態遷移エディタ1
は、アクションの処理の記述として、どのプログラム部
品をどのような手順で呼び出すかといった部品情報(プ
ログラムフロー)を記述する際に、プログラムフローの
内の部分的な処理について、その処理に許容される制限
時間(実行制限時間)を部品制限時間情報として記述す
ることができる。また本実施の形態におけるプログラム
自動生成手段3は、任意のアクションについて、アクシ
ョンの処理全体だけでなく、その内部の部分的な処理に
対する実行時間(実行実測時間)についてもその値を測
定し、対応する実行制限時間と比較して提示する処理を
含めてプログラムソースコードを自動生成することがで
きる。プログラム自動生成手段3によるプログラムソー
スの生成は、プログラム生成工程により行う。また、状
態遷移エディタ1による部品制限時間情報の指定は、状
態遷移情報指定工程により行う。
State transition editor 1 in the present embodiment
Is allowed for partial processing in the program flow when describing the component information (program flow) such as which program component is called by what procedure as a description of the action processing. The time limit (execution time limit) can be described as the component time limit information. Further, the program automatic generation means 3 in the present embodiment measures the value of not only the entire processing of the action but also the execution time (execution actual measurement time) of a partial processing of the action for an arbitrary action, and responds. It is possible to automatically generate the program source code including the processing to be presented in comparison with the execution time limit. Generation of the program source by the automatic program generation means 3 is performed in the program generation step. Further, the designation of the component time limit information by the state transition editor 1 is performed in the state transition information designating step.

【0121】本実施の形態の状態遷移エディタ1におけ
るアクションのプログラムフロー記述の動作について、
図15を用いて説明する。図15は本実施の形態におけ
る状態遷移エディタ1で記述するアクションのプログラ
ムフローの記述例であり、アクションan12の処理S
10の記述を示したものである。本図において、アクシ
ョンのプログラムフロー自体の記述は実施の形態1の図
3と同じである。すなわちアクションan12の処理S
10は、まずプログラム部品p1を実行し(S11)、
次にp1の実行結果を検査し(S12)、もしその結果
が真であれば(S12のYES)、プログラム部品p2
を実行し(S13)処理を終了する。またp1の実行結
果が真でなければ即座に処理を終了する(S12のN
O)。さらに本実施の形態の状態遷移エディタ1では、
アクションan12の処理S10内の部分的な処理につ
いて、その処理に許容される制限時間(実行制限時間)
についても部品制限時間情報の記述が可能である。すな
わち処理S11に対する実行制限時間はt12_aであ
り、処理S12からan12の処理が終わるまでの実行
制限時間はt12_bであり、さらに処理S13に対す
る実行制限時間はt12_bp2と定義している。なお
処理S10全体の実行制限時間t12は、図2に示され
る状態遷移情報により指定された情報に基づき自動的に
設定する。
Regarding the operation of the program flow description of the action in the state transition editor 1 of this embodiment,
This will be described with reference to FIG. FIG. 15 is a description example of the program flow of the action described in the state transition editor 1 in this embodiment, and the process S of the action an12.
10 shows the description of 10. In this figure, the description of the action program flow itself is the same as in FIG. 3 of the first embodiment. That is, the processing S of the action an12
10 first executes the program component p1 (S11),
Next, the execution result of p1 is inspected (S12). If the result is true (YES in S12), the program part p2 is checked.
Is executed (S13), and the process ends. If the execution result of p1 is not true, the process is immediately terminated (N in S12).
O). Furthermore, in the state transition editor 1 of this embodiment,
Time limit (execution time limit) allowed for the partial process in process S10 of action an12
For, it is possible to describe the part time limit information. That is, the execution time limit for the process S11 is t12_a, the execution time limit from the process S12 to the end of an12 is t12_b, and the execution time limit for the process S13 is defined as t12_bp2. The execution time limit t12 of the entire process S10 is automatically set based on the information designated by the state transition information shown in FIG.

【0122】また状態遷移エディタ1は、アクションに
対するプログラムフローを解析することで、これら部分
的な処理に対する実行制限時間が満たすべき制約条件を
自動的に抽出し、その制約条件を満たすよう各部分的な
処理に対する実行制限時間の値を自動的に調整するよう
動作する。すなわち図2に示される状態遷移情報によ
り、アクションan12全体に対する実行制限時間はt
12であり、また各処理S11、S12、S13の実行
順番を配慮することで、t12_a ≦ t12、t1
2_b ≦ t12、t12_a + t12_b ≦
t12、t12_bp2 ≦ t12_bといった制
約条件を抽出し、これによりプログラム開発者がこれら
の制約条件を満たさない値を設定しようとした場合、警
告を示し誤った値を定義できないよう動作する。また一
部の値を定義することで他の値を自動的に求めることが
できる場合は、参考値としてそれらの値を自動的に設定
し、プログラム開発者に対しその採用ないし修正を促す
よう動作する。例えばt12が0.5秒のとき、t12
_aを0.1秒と定義した場合、t12_b を0.4
秒( t12_b =t12 − t12_a )、t
12_bp2も0.4秒(t12_bp2 =t12_
b)と仮の値を自動的に設定するよう動作する。部品制
限時間情報の指定は、状態遷移情報指定工程により行
う。
The state transition editor 1 also automatically analyzes the program flow for an action to automatically extract the constraint conditions that should be satisfied for the execution time limit for these partial processes. It operates to automatically adjust the value of the execution time limit for various processes. That is, according to the state transition information shown in FIG. 2, the execution time limit for the entire action an12 is t
12 and t12_a ≤ t12, t1 by considering the execution order of each process S11, S12, S13.
2_b ≤ t12, t12_a + t12_b ≤
When the constraint conditions such as t12, t12_bp2 ≤ t12_b are extracted and the program developer tries to set a value that does not satisfy these constraint conditions, a warning is issued and an erroneous value cannot be defined. In addition, if you can automatically obtain other values by defining some values, those values are automatically set as reference values and the program developers are encouraged to adopt or modify them. To do. For example, when t12 is 0.5 seconds, t12
If _a is defined as 0.1 seconds, t12_b is 0.4
Seconds (t12_b = t12-t12_a), t
12_bp2 is also 0.4 seconds (t12_bp2 = t12_
It operates so that b) and a temporary value are automatically set. The component time limit information is designated in the state transition information designation step.

【0123】次に本実施の形態のプログラム自動生成手
段3におけるアクションに対応したプログラムソースコ
ード自動生成の動作について、図16を用いて説明す
る。図16は本実施の形態におけるプログラム自動生成
手段3が生成するアクションan12に対応したプログ
ラムソースコード4のうち、その内部の部分的な処理に
対して実行実測時間の検証処理を行うようにした処理S
100のフローチャートである。なお内部の部分的な処
理に対する実行実測時間の検証処理を行わない処理のフ
ローチャートは図15に示される処理S10のフローチ
ャートと同一となるので説明を省略する。
Next, the operation of the program source code automatic generation corresponding to the action in the program automatic generation means 3 of the present embodiment will be described with reference to FIG. FIG. 16 is a process in which the actual measurement time verification process is performed for a partial process inside the program source code 4 corresponding to the action an12 generated by the program automatic generation means 3 in the present embodiment. S
10 is a flowchart of 100. Note that the flow chart of the processing in which the verification processing of the actual measurement time for the internal partial processing is not performed is the same as the flow chart of the processing S10 shown in FIG.

【0124】図16に示す処理S100は、基本的には
図15に示される処理S10とほぼ同じロジックであ
り、違いは実行実測時間の検証のための準備、測定、比
較、結果提示の各処理S101〜S106、S110〜
S116が加わったことのみである。すなわち処理S1
00は、まず変数t2を時刻として不正な値に初期化し
(S101)、次に現在時刻を変数t0に保存した後
(S102)、プログラム部品p1を実行し(S1
1)、その後現在時刻を変数t1に保存し(S10
3)、次にp1の実行結果を検査し(S12)、もしそ
の結果が真であれば(S12のYES)、現在時刻を変
数t2に保存した後(S104)、プログラム部品p2
を実行し(S13)、その後現在時刻を変数t3に保存
し(S105)、さらにその後現在時刻を変数t4に保
存する(S106)。またp1の実行結果が真でなけれ
ば(S12のNO)、処理S104、S13、S105
を実施せず、現在時刻を変数t4に保存する処理S10
6を行う。
The process S100 shown in FIG. 16 has basically the same logic as the process S10 shown in FIG. 15, and the difference is that each process of preparation, measurement, comparison, and result presentation for verification of the actual measurement time of execution. S101 to S106, S110
It is only that S116 is added. That is, process S1
00 first initializes the variable t2 to an invalid value as time (S101), then saves the current time in the variable t0 (S102), and then executes the program component p1 (S1).
1) and then save the current time in the variable t1 (S10
3) Next, the execution result of p1 is checked (S12), and if the result is true (YES in S12), the current time is stored in the variable t2 (S104), and then the program component p2 is stored.
Is executed (S13), the current time is then stored in the variable t3 (S105), and then the current time is stored in the variable t4 (S106). If the execution result of p1 is not true (NO in S12), processes S104, S13, and S105.
S10 for saving the current time in the variable t4 without executing
Do 6.

【0125】処理S106の後は、続いて実行実測時間
の検証処理を行う。すなわちまず処理S11に対する実
行実測時間の検証として、変数t1に保存した時刻と変
数t0に保存した時刻の差、すなわち処理S11に対す
る実行実測時間が対応する実行制限時間t12_aを超
過しているか調べ(S110)、もし超過しているので
あれば(S110のYES)、処理S11の実行実測時
間が実行制限時間を満たせなかったとしてその旨を示す
警告を出力する(S111)。なお超過していない場合
は警告の出力S111は行わない。ついで同様に変数t
4に保存した時刻と変数t1に保存した時刻の差、すな
わち処理S12、S13に対する実行実測時間が対応す
る実行制限時間t12_bを超過しているか調べ(S1
12)、もし超過しているのであれば(S112のYE
S)、処理S12、S13の実行実測時間が実行制限時
間を満たせなかったとしてその旨を示す警告を出力する
(S113)。なお超過していない場合は警告の出力S
113は行わない。さらに変数t2に正しい時刻が設定
されていれば(S114のYES)、処理S13が実行
されているとして、同様に変数t3に保存した時刻と変
数t2に保存した時刻の差、すなわち処理S13に対す
る実行実測時間が対応する実行制限時間t12_bp2
を超過しているか調べ(S115)、もし超過している
のであれば(S115のYES)、処理S13の実行実
測時間が実行制限時間を満たせなかったとしてその旨を
示す警告を出力する(S116)。なお超過していない
場合は警告の出力S116は行わない。また変数t2に
正しい値が設定されていない場合は(S114のN
O)、処理S13が実行されなかったものとして、処理
S13に関する検証処理S115及びS116は実行し
ない。プログラム自動生成手段3は、図16のS100
のフローチャートに従う処理手順を実行するプログラム
を部品制限時間情報と部品情報とを用いて、プログラム
生成工程により生成する。
After the processing S106, the verification processing of the execution actual measurement time is subsequently performed. That is, first, as a verification of the actually measured time for the process S11, it is checked whether the difference between the time stored in the variable t1 and the time stored in the variable t0, that is, the actually measured time for the process S11 exceeds the corresponding execution time limit t12_a (S110. ), If it exceeds (YES in S110), a warning indicating that the actual measurement time of the process S11 cannot satisfy the execution time limit is output (S111). If it does not exceed, the warning output S111 is not performed. Then, similarly, the variable t
The difference between the time stored in 4 and the time stored in the variable t1, that is, whether the actually measured time for the processes S12 and S13 exceeds the corresponding execution time limit t12_b (S1
12) If it exceeds (Y in S112)
S), a warning indicating that the actual measurement time of the processes S12 and S13 does not satisfy the execution time limit is output (S113). If not exceeded, a warning output S
113 is not performed. Further, if the correct time is set in the variable t2 (YES in S114), it is determined that the process S13 is executed, and similarly, the difference between the time saved in the variable t3 and the time saved in the variable t2, that is, the process S13 is executed. Execution time limit t12_bp2 corresponding to the measured time
Is checked (S115), and if it is exceeded (YES in S115), a warning is output indicating that the actual measurement time of the process S13 cannot satisfy the execution time limit (S116). . If it does not exceed, the warning output S116 is not performed. If a correct value is not set for the variable t2 (N in S114)
O), assuming that the process S13 has not been executed, the verification processes S115 and S116 related to the process S13 are not executed. The program automatic generation means 3 uses S100 of FIG.
A program for executing the processing procedure according to the flowchart of is generated by the program generation step using the component time limit information and the component information.

【0126】本実施の形態では、上記のように動作する
ので、アクションのプログラムフローを記述する際に、
プログラムフローの内の部分的な処理について、その処
理に許容される制限時間を部品制限時間情報として同時
に記述することができ、またアクションの内部の部分的
な処理に要する時間を測定しそれぞれの実行制限時間と
の比較を行う処理を、生成するプログラムソースコード
内に自動的に埋め込むことができる。これにより実行制
限時間に関する設計情報の記述忘れや見落としを防ぎ、
さらに実行制限時間に関する試験の設計忘れや実施忘れ
を防ぐことができ、検証作業が簡素にできるようになる
ため、ソフトウェア開発の下流工程で時間的制約に関す
る検証及び改善作業を十分に実施しやすくなり、プログ
ラムの開発効率及び品質の向上といった効果が得られ
る。
In this embodiment, since the operation is as described above, when describing the program flow of the action,
For a partial process in the program flow, the time limit allowed for that process can be described at the same time as part time limit information, and the time required for the partial process inside the action can be measured and executed. The process of comparing with the time limit can be automatically embedded in the generated program source code. This will prevent you from forgetting or overlooking the design information about the execution time limit,
In addition, it is possible to prevent forgetting the design and forgetting to execute the test related to the execution time limit, and simplifying the verification work, which makes it easy to perform verification and improvement work related to time constraints in the downstream process of software development. It is possible to obtain effects such as improvement of program development efficiency and quality.

【0127】なお実行制限時間と実行実測時間を比較す
る際には、実行実測時間が実行制限時間を超過した場合
に警告を提示するのではなく、実行制限時間に一定の比
率を乗じた値、例えば実行制限時間の80%を越えた場
合に警告を提示するようにしてもよく、さらに実行制限
時間の80%を越えた場合は警戒を、実行制限時間を越
えた場合は警告を提示するといったように提示の仕方に
差をつける。このことにより、プログラム開発者に対し
対策の優先度を示唆することができ、改善作業の作業効
率が向上する。さらに実行制限時間と実行実測時間の差
ないし比率を求め、その値を併記してプログラム開発者
に対し提示しても、対策の優先度を示唆することがで
き、効果を高めることができる。
When comparing the execution time limit and the actual measurement time, a warning is not displayed when the actual measurement time exceeds the execution time limit, but a value obtained by multiplying the execution time limit by a certain ratio, For example, a warning may be presented when the execution time limit exceeds 80%, and a warning is issued when the execution time limit is exceeded, and a warning is displayed when the execution time limit is exceeded. Make a difference in how to present. As a result, the priority of the measures can be suggested to the program developer, and the work efficiency of the improvement work is improved. Further, even if the difference or ratio between the execution time limit and the actual measurement time is obtained and the value is written together and presented to the program developer, the priority of the countermeasure can be suggested, and the effect can be enhanced.

【0128】本実施の形態4では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。状
態遷移エディタでは、アクションの処理の記述として、
どのプログラム部品をどのような手順で呼び出すかとい
ったプログラムフローを記述する際に、プログラムフロ
ーの内の部分的な処理について、その処理に許容される
制限時間(実行制限時間)を記述することができ、プロ
グラム自動生成手段では、任意のアクションについて、
アクションの処理全体だけでなく、その内部の部分的な
処理に対する実行時間(実行実測時間)についても、そ
の値を測定し対応する実行制限時間と比較して提示する
処理を含めてプログラムソースコードを自動生成するこ
とができる。
In the fourth embodiment, the program development support system having the following features has been described. In the state transition editor, as a description of action processing,
When describing a program flow such as which program part is called by what procedure, the time limit (execution time limit) allowed for the partial process in the program flow can be described. , The program automatic generation means, for any action,
Not only the entire process of the action, but also the execution time (actual measurement time) for the partial process inside the action source code including the process of measuring the value and comparing it with the corresponding execution time limit It can be automatically generated.

【0129】実施の形態5.この発明の実施の形態5の
プログラム開発支援システムの一例を図17を用いて説
明する。本実施の形態の構成は実施の形態2で示した図
11と同じであるためその説明を省略する。また本実施
の形態の状態遷移エディタ1で記述する状態遷移情報の
例は実施の形態1で示した図2と同じであるため、また
状態遷移エディタ1で記述するアクションのプログラム
フロー(部品情報と部品制限時間情報)の記述例は実施
の形態4で示した図15と同じであるため、それぞれそ
の説明を省略する。また本実施の形態の状態遷移情報保
持手段2の動作は、実施の形態1で示した状態遷移情報
保持手段2の動作と同じであるためその説明を省略す
る。またプログラム自動生成手段3が生成する状態遷移
情報に対応したプログラムソースコード4の例は、実施
の形態1で示した図4及び実施の形態2で示した図12
と同じであるため、その説明を省略する。図17は本実
施の形態におけるプログラム自動生成手段3が生成する
アクションに対応したプログラムソースコード4のフロ
ーチャートの一例である。
Embodiment 5. An example of the program development support system according to the fifth embodiment of the present invention will be described with reference to FIG. Since the configuration of the present embodiment is the same as that of FIG. 11 shown in the second embodiment, the description thereof will be omitted. Further, since the example of the state transition information described in the state transition editor 1 of the present embodiment is the same as that of FIG. 2 shown in the first embodiment, the program flow of the action described in the state transition editor 1 (part information and Since a description example of (parts time limit information) is the same as that of FIG. 15 shown in the fourth embodiment, the description thereof will be omitted. Further, the operation of the state transition information holding means 2 of the present embodiment is the same as the operation of the state transition information holding means 2 shown in the first embodiment, and therefore its explanation is omitted. An example of the program source code 4 corresponding to the state transition information generated by the automatic program generation means 3 is shown in FIG. 4 shown in the first embodiment and FIG. 12 shown in the second embodiment.
Since it is the same as the above, the description thereof will be omitted. FIG. 17 is an example of a flowchart of the program source code 4 corresponding to the action generated by the program automatic generation means 3 in the present embodiment.

【0130】本実施の形態における状態遷移エディタ1
は、実施の形態4と同様、アクションの処理の記述とし
て、どのプログラム部品をどのような手順で呼び出すか
といったプログラムフロー(部品情報)を記述する際
に、プログラムフローの内の部分的な処理について、そ
の処理に許容される制限時間(実行制限時間)を部品制
限時間情報として記述することができる。また本実施の
形態におけるプログラム自動生成手段3は、任意のアク
ションについて、アクションの処理全体だけでなく、そ
の内部の部分的な処理に対する実行時間(実行実測時
間)についても、その値を測定し実行実測時間収集手段
6に渡す処理を含めてプログラムソースコードを自動生
成することができる。状態遷移エディタ1による状態遷
移情報の指定と、部品情報及び部品制限時間情報との指
定は、状態遷移情報指定工程により行う。また、プログ
ラム自動生成手段3によるプログラムの生成は、プログ
ラム生成工程により行う。
State transition editor 1 in the present embodiment
As in the case of the fourth embodiment, when describing a program flow (component information) such as which program component is called in what procedure as a description of action processing, a partial process in the program flow is described. The time limit (execution time limit) allowed for the processing can be described as the component time limit information. Further, the automatic program generation means 3 in the present embodiment measures and executes not only the entire process of an action but also the execution time (actual measurement time) for a partial process inside the action for an arbitrary action. The program source code can be automatically generated including the process of passing it to the measured time collection means 6. The state transition information is designated by the state transition editor 1, and the component information and the component time limit information are designated in the state transition information designating step. Further, the program generation by the program automatic generation means 3 is performed in the program generation step.

【0131】本実施の形態のプログラム自動生成手段3
におけるアクションに対応したプログラムソースコード
自動生成の動作について、図17を用いて説明する。図
17は本実施の形態におけるプログラム自動生成手段3
が生成するアクションan12に対応したプログラムソ
ースコード4のうち、その内部の部分的な処理に対して
実行実測時間の測定処理を行うようにした処理S120
のフローチャートである。なお内部の部分的な処理に対
する実行実測時間の測定処理を行わない処理のフローチ
ャートは図15に示される処理S10のフローチャート
と同一となるので説明を省略する。
Automatic program generation means 3 of the present embodiment
The operation of automatically generating the program source code corresponding to the action in (1) will be described with reference to FIG. FIG. 17 shows the automatic program generation means 3 in this embodiment.
Of the program source code 4 corresponding to the action an12 generated by the process S120 in which the actual measurement time measurement process is performed for a partial process inside thereof.
It is a flowchart of. Note that the flow chart of the processing in which the measurement processing of the actual measurement time is not performed for the internal partial processing is the same as the flow chart of the processing S10 shown in FIG.

【0132】図17に示す処理S120は、基本的には
図15に示される処理S10とほぼ同じロジックであ
り、違いは実行実測時間の検証のための準備、測定、結
果提示の各処理S101〜S106、S114、S12
1〜S123が加わったことのみである。すなわち処理
S120は、まず変数t2を時刻として不正な値に初期
化し(S101)、次に現在時刻を変数t0に保存した
後(S102)、プログラム部品p1を実行し(S1
1)、その後現在時刻を変数t1に保存し(S10
3)、次にp1の実行結果を検査し(S12)、もしそ
の結果が真であれば(S12のYES)、現在時刻を変
数t2に保存した後(S104)、プログラム部品p2
を実行し(S13)、その後現在時刻を変数t3に保存
し(S105)、さらにその後現在時刻を変数t4に保
存する(S106)。またp1の実行結果が真でなけれ
ば(S12のNO)、処理S104、S13、S105
を実施せず、現在時刻を変数t4に保存する処理S10
6を行う。
The process S120 shown in FIG. 17 is basically the same as the process S10 shown in FIG. 15, except that the processes S101 to S101 for preparing, measuring, and presenting results for verification of the actually measured time of execution. S106, S114, S12
It is only the addition of 1 to S123. That is, the process S120 first initializes the variable t2 as an invalid value as the time (S101), then saves the current time in the variable t0 (S102), and then executes the program component p1 (S1).
1) and then save the current time in the variable t1 (S10
3) Next, the execution result of p1 is checked (S12), and if the result is true (YES in S12), the current time is stored in the variable t2 (S104), and then the program component p2 is stored.
Is executed (S13), the current time is then stored in the variable t3 (S105), and then the current time is stored in the variable t4 (S106). If the execution result of p1 is not true (NO in S12), processes S104, S13, and S105.
S10 for saving the current time in the variable t4 without executing
Do 6.

【0133】処理S106の後は、続いて実行実測時間
の測定処理を行う。すなわち例えばログとしてファイル
に出力することで、変数t1に保存した時刻と変数t0
に保存した時刻の差を処理S11に対する実行実測時間
として実行実測時間収集手段6へ渡し(S121)、つ
いで同様に変数t4に保存した時刻と変数t1に保存し
た時刻の差を処理S12、S13に対する実行実測時間
として実行実測時間収集手段6へ渡す(S122)。さ
らに変数t2に正しい時刻が設定されていれば(S11
4のYES)、処理S13が実行されているとして、同
様に変数t3に保存した時刻と変数t2に保存した時刻
の差を処理S13に対する実行実測時間として実行実測
時間収集手段6へ渡す(S123)。なお変数t2に正
しい値が設定されていない場合(S114のNO)は、
処理S13が実行されなかったものとして、処理S13
に関する実行実測時間の出力処理S123は実行しな
い。プログラム自動生成手段3は、図17のフローチャ
ートに示された処理手順で動作を行うプログラムのソー
スコードを、プログラム生成工程により生成する。
After the processing S106, the measurement processing of the execution actual measurement time is subsequently performed. That is, for example, by outputting to a file as a log, the time saved in the variable t1 and the variable t0
The difference in time stored in step S11 is passed to the actual measurement time collection means 6 as the actual measurement time for step S11 (S121), and then the difference between the time saved in the variable t4 and the time saved in the variable t1 is processed in steps S12 and S13. The actual measurement time is passed to the actual measurement time collection means 6 (S122). Furthermore, if the correct time is set in the variable t2 (S11
4), and assuming that the process S13 is being executed, similarly, the difference between the time saved in the variable t3 and the time saved in the variable t2 is passed to the execution measured time collection means 6 as the execution measured time for the process S13 (S123). . If the correct value is not set for the variable t2 (NO in S114),
Assuming that the process S13 has not been executed, the process S13
The output process S123 of the actual measurement time regarding is not executed. The program automatic generation means 3 generates the source code of the program that operates according to the processing procedure shown in the flowchart of FIG. 17 in the program generation step.

【0134】プログラム実行手段5では、実施の形態2
と同様に、プログラム自動生成手段3で自動生成された
プログラムソースコード4を元に、必要に応じて、コン
パイルやリンク処理を行い実行可能な実行可能モジュー
ルを生成し、状態遷移情報保持手段2が保持する状態遷
移情報に定義された通りに動作するプログラムを実行す
る。このとき実行されたプログラムソースコード4が、
処理S120のようにアクションの内部の部分的な処理
に対する実行実測時間の測定処理を含むロジックであれ
ば、プログラムの実行に伴い測定された実行実測時間は
該当するアクション内部の部分的な処理を示す情報とと
もに実行実測時間収集手段6に渡される。実行実測時間
収集手段6は渡されたアクション内部の部分的な処理を
示す情報と実行実測時間を元に、それぞれの処理に対す
る実行実測時間の平均値を求めて保持するように動作
し、後に実行時間解析手段7に提供できるようその値を
保存する。プログラム実行手段5は、プログラム実行工
程によりプログラムを実行する。また、実行実測時間収
集手段6は、実行実測時間収集工程により実行実測時間
の平均値の算出と保持を行う。
In the program execution means 5, the second embodiment is adopted.
Similarly to the above, based on the program source code 4 automatically generated by the program automatic generation means 3, compile and link processing are performed as necessary to generate an executable executable module, and the state transition information holding means 2 Executes a program that operates as defined in the retained state transition information. The program source code 4 executed at this time is
If the logic includes the measurement process of the measured actual execution time for the partial process inside the action like the process S120, the actually measured execution time measured along with the execution of the program indicates the partial process inside the corresponding action. It is passed to the execution measurement time collection means 6 together with the information. Based on the information indicating the partial processing inside the passed action and the actually measured execution time, the actually measured execution time collecting means 6 operates so as to obtain and hold the average value of the actually measured execution time for each processing, and then executes the latter. The value is saved so that it can be provided to the time analysis means 7. The program executing means 5 executes the program in the program executing step. The actual measurement time collection means 6 calculates and holds the average value of the actual measurement times by the actual measurement time collection step.

【0135】実行時間解析手段7では、状態遷移情報保
持手段2が保持する部品制限時間情報と状態遷移情報と
の内容を調べ、制限時間が定義されているアクションの
内部の部分的な処理のそれぞれについて、対応する実行
実測時間が測定されていないか、実行実測時間収集手段
6が保持する実行実測時間の内容を調べ、対応する実行
実測時間(計測された平均の値)が保持されており、そ
の値が部品制限時間を超過している場合または、実行制
限時間を超過している場合には、その旨を示す警告を出
力する。実行時間解析手段7は、実行時間解析工程によ
り、指定された実行制限時間或いは、部品制限時間と実
行実測時間とを比較して比較結果を提示する処理を行
う。
The execution time analysis means 7 checks the contents of the component time limit information and the state transition information held by the state transition information holding means 2, and checks each of the partial processes inside the action for which the time limit is defined. Regarding the measured actual execution time, the contents of the actual measured time held by the actual measured time collection means 6 are checked, and the corresponding actual measured time (measured average value) is held. If the value exceeds the component time limit or the execution time limit, a warning indicating that fact is output. The execution time analysis means 7 performs a process of comparing the designated execution time limit or the component time limit with the actual measurement time and presenting a comparison result in the execution time analysis step.

【0136】本実施の形態では、プログラム開発支援シ
ステムは上記のように動作するので、アクションのプロ
グラムフロー(部品情報)を記述する際に、プログラム
フローの内の部分的な処理について、その処理に許容さ
れる制限時間(部品制限時間)を同時に記述することが
でき、またアクションの内部の部分的な処理に要する時
間(部品実行実測時間)を測定する処理を、生成するプ
ログラムソースコード内に自動的に埋め込むことができ
る。これにより、さらに測定した部品実行実測時間と部
品制限時間の比較を自動的に行うことができる。これに
より実行制限時間に関する設計情報の記述忘れや見落と
しを防ぎ、さらに実行制限時間に関する試験の設計忘れ
や実施忘れを防ぐことができ、検証作業が簡素にできる
ようになる。結果として、ソフトウェア開発の下流工程
で時間的制約に関する検証及び改善作業を十分に実施し
やすくなり、プログラムの開発効率及び品質の向上とい
った効果が得られる。
In this embodiment, since the program development support system operates as described above, when describing the program flow (part information) of an action, a partial process of the program flow is The allowable time limit (component time limit) can be described at the same time, and the process of measuring the time required for partial processing inside an action (component actual measurement time) is automatically included in the generated program source code. Can be embedded in the target. As a result, it is possible to automatically compare the measured component execution actual measurement time with the component time limit. As a result, it is possible to prevent the design information related to the execution time limit from being forgotten or overlooked, and to prevent the test design related to the execution time limit from being forgotten or forgotten, and the verification work can be simplified. As a result, it becomes easy to sufficiently carry out verification and improvement work related to time constraints in the downstream process of software development, and it is possible to obtain effects such as improvement in program development efficiency and quality.

【0137】なお、部品制限時間と部品実行実測時間を
比較する際には、実施の形態2と同様、部品実測時間が
部品制限時間を超過した場合に警告を提示するのではな
く、部品制限時間に一定の比率を乗じた値、例えば部品
制限時間の80%を越えた場合に警告を提示するように
してもよく、さらに部品制限時間の80%を越えた場合
は警戒を、部品制限時間を越えた場合は警告を提示する
といったように提示の仕方に差をつけるようにしてもよ
い。さらに部品制限時間と部品実行実測時間の差ないし
比率を求め、その値を併記して提示するようにしてもよ
い。また上記実施の形態では、実行実測時間収集手段6
は部品実行実測時間の平均値を求めて保持するように動
作したが、実施の形態2と同様、最大値を求めるように
動作してもよく、あるいは部品実行実測時間の平均値と
最大値の両者を併用し、実行実測時間収集手段6は平均
値及び最大値の両者を求めるように動作し、実行時間解
析手段7では、それぞれと部品制限時間との比較結果を
提示するようにしてもよい。さらには、実行実測時間収
集手段6は、部品実行実測時間のヒストグラムないし確
率分布といった統計的な値を生成、保持するように動作
し、実行時間解析手段7では、部品制限時間を超過する
確率、あるいは部品制限時間に一定の比率を乗じた値を
超過する確率が一定以上の場合には警告を提示するよう
にしてもよい。あるいは部品制限時間の80%を越える
確率が一定以上の場合は警戒を、部品制限時間を越えた
値がある場合は警告を提示するよう動作する、さらには
部品実行実測時間の分布状況を提示するように動作して
も良い。これらの処理はいずれも、プログラム開発者に
対し対策の優先度を示唆することができ、改善作業の作
業効率を向上することができる。
When comparing the component time limit and the component actual measurement time, as in the second embodiment, instead of presenting a warning when the component actual measurement time exceeds the component time limit, the component time limit is displayed. A warning may be given when a value obtained by multiplying by a certain ratio, for example, exceeds 80% of the part time limit, and when 80% of the part time limit is exceeded, be warned and It may be possible to make a difference in the manner of presenting it, such as presenting a warning when it exceeds. Further, a difference or a ratio between the component time limit and the component execution actual measurement time may be obtained, and the value may be additionally written and presented. Further, in the above-mentioned embodiment, the actual measurement time collection means 6
Operates so as to obtain and hold the average value of the component execution actual measurement time, but it may operate so as to obtain the maximum value as in the second embodiment, or it may operate to obtain the average value or the maximum value of the component execution actual measurement time. Both may be used together, and the actually measured time collection means 6 may operate to obtain both the average value and the maximum value, and the execution time analysis means 7 may present the comparison result of each and the component time limit. . Further, the actually measured execution time collecting means 6 operates so as to generate and hold a statistical value such as a histogram or a probability distribution of the actually measured time of parts, and the execution time analysis means 7 causes the probability of exceeding the time limit of parts, Alternatively, when the probability of exceeding the value obtained by multiplying the component time limit by a certain ratio is a certain amount or more, a warning may be presented. Alternatively, when the probability that 80% of the component time limit exceeds 80% or more, a warning is issued, and when there is a value that exceeds the component time limit, a warning is issued. Further, the distribution status of the component execution actual measurement time is presented. May work like. All of these processes can suggest the priority of measures to the program developer, and improve the work efficiency of the improvement work.

【0138】なお、実施の形態3に本実施の形態と同様
の処理を付加することは容易に可能であり、同様の効果
を得られる。すなわち、状態遷移エディタ1に対し、ア
クションの処理の記述として、どのプログラム部品をど
のような手順で呼び出すかといったプログラムフロー
(部品情報)を記述する際に、プログラムフローの内の
部分的な処理について、その処理に許容される制限時間
(部品制限時間)を記述することができるようにし、ま
たプログラム自動生成手段3に対し、任意のアクション
について、アクションの処理全体だけでなく、その内部
の部分的な処理に対する実行時間(部品実行実測時間)
についても、その値を測定し実行実測時間収集手段6に
渡す処理を含めてプログラムソースコードを自動生成す
ることができるようにする。さらにプログラム実行手段
5、実行実測時間収集手段6、実行時間解析手段7のそ
れぞれも、本実施の形態同様、アクションの内部の部分
的な処理に対する部品実行実測時間を取り扱えるよう処
理を追加する。これにより、本実施の形態同様、アクシ
ョンのプログラムフローの内の部分的な処理について
も、その処理に許容される制限時間を部品制限時間情報
として同時に記述し、またその処理に要する時間(部品
実行実測時間)を測定する処理を、生成するプログラム
ソースコード内に自動的に埋め込み、測定した部品実行
実測時間と部品制限時間の比較を自動的に行うことがで
きるようになり、実行制限時間に関する設計情報の記述
忘れや見落としを防ぐことができる。さらに制限時間に
関する試験の設計忘れや実施忘れを防ぐことができる。
この結果、検証作業が簡素にできるようになるため、ソ
フトウェア開発の下流工程で時間的制約に関する検証及
び改善作業を十分に実施しやすくなり、プログラムの開
発効率及び品質の向上といった効果が得られる。
It should be noted that it is possible to easily add the same processing as that of the present embodiment to the third embodiment, and the same effect can be obtained. That is, when describing a program flow (component information) such as which program component is called in what procedure as a description of action processing in the state transition editor 1, regarding a partial process in the program flow. It is possible to describe the time limit (part time limit) allowed for the processing, and to the program automatic generation means 3 not only the entire processing of the action but also a partial internal part of the action. Execution time for various processes (measurement time of component execution)
As for the above, the program source code can be automatically generated including the processing of measuring the value and passing it to the actually measured time collection means 6. Further, each of the program execution means 5, the execution measurement time collection means 6, and the execution time analysis means 7 is added with processing so as to handle the component execution measurement time for the partial processing inside the action, as in the present embodiment. As a result, similarly to the present embodiment, for a partial process in the program flow of an action, the time limit allowed for the process is simultaneously described as the part time limit information, and the time required for the process (part execution The process of measuring (measured time) is automatically embedded in the generated program source code, and it becomes possible to automatically compare the measured part execution measured time with the part time limit. It is possible to prevent information from being forgotten or overlooked. Furthermore, it is possible to prevent forgetting to design or forget to implement the test regarding the time limit.
As a result, since the verification work can be simplified, it becomes easy to sufficiently carry out the verification and improvement work regarding the time constraint in the downstream process of software development, and the effect of improving the development efficiency and quality of the program can be obtained.

【0139】本実施の形態5では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。状
態遷移エディタでは、アクションの処理の記述として、
どのプログラム部品をどのような手順で呼び出すかとい
ったプログラムフローを記述する際に、プログラムフロ
ーの内の部分的な処理について、その処理に許容される
制限時間(実行制限時間)を記述することができ、プロ
グラム自動生成手段では、任意のアクションについて、
アクションの処理全体だけでなく、その内部の部分的な
処理に対する実行時間(実行実測時間)についても、そ
の値を測定し実行実測時間収集手段に渡す処理を含めて
プログラムソースコードを自動生成することができる。
In the fifth embodiment, the program development support system having the following features has been described. In the state transition editor, as a description of action processing,
When describing a program flow such as which program part is called by what procedure, the time limit (execution time limit) allowed for the partial process in the program flow can be described. , The program automatic generation means, for any action,
Automatic generation of program source code including not only the entire processing of the action but also the execution time (actual measurement time) for the internal partial processing, including the process of measuring the value and passing it to the actual measurement time collection means. You can

【0140】実施の形態6.図18はこの発明の実施の
形態6のプログラム開発支援システムの一例を示すシス
テム構成図である。図18が示すように、本実施の形態
は、状態遷移エディタ1、状態遷移情報保持手段2、プ
ログラム自動生成手段3、プログラムソースコード4、
プログラム実行手段5、関数実行時間測定手段8、実行
時間解析手段7、プログラム構成要素記憶部9から構成
される。
Sixth Embodiment FIG. 18 is a system configuration diagram showing an example of the program development support system according to the sixth embodiment of the present invention. As shown in FIG. 18, in the present embodiment, the state transition editor 1, the state transition information holding means 2, the program automatic generation means 3, the program source code 4,
The program execution unit 5, the function execution time measurement unit 8, the execution time analysis unit 7, and the program component storage unit 9 are included.

【0141】本実施の形態における状態遷移エディタ
1、状態遷移情報保持手段2の動作は、実施の形態1で
示した状態遷移エディタ1、状態遷移情報保持手段2の
動作と同じであるためその説明を省略する。同様に状態
遷移エディタ1で記述する状態遷移情報、部品情報の例
は、実施の形態1で示した図2〜図3と同じであるため
その説明を省略する。
The operations of the state transition editor 1 and the state transition information holding means 2 in the present embodiment are the same as the operations of the state transition editor 1 and the state transition information holding means 2 shown in the first embodiment, and therefore their explanations are given. Is omitted. Similarly, the examples of the state transition information and the component information described in the state transition editor 1 are the same as those in FIGS.

【0142】本実施の形態におけるプログラム自動生成
手段3は、状態遷移情報保持手段2に保持される状態遷
移情報と部品情報の内容を元に、状態遷移の処理を実現
するプログラムソースコード4を自動的に生成する。こ
のときプログラムソースコード4内では、各アクション
に対する処理はそれぞれ1つの関数として生成され、関
数の名称はアクションと一意に対応付けられる名称が設
定される。なおアクションと関数の名称の対応付けには
各種の方式が採用可能であるが、最も単純な方式の1つ
は、各アクションの名前そのものを関数名とする方式で
ある。本方式では、例えばアクションan12の処理を
実現する関数はその名称を”an12”とする。
The program automatic generation means 3 in the present embodiment automatically executes the program source code 4 for realizing the state transition processing based on the contents of the state transition information and the component information held in the state transition information holding means 2. To generate. At this time, in the program source code 4, the process for each action is generated as one function, and the name of the function is set to a name uniquely associated with the action. Various methods can be adopted for associating the action and the function name, but one of the simplest methods is a method in which the name of each action itself is used as the function name. In this method, for example, the name of the function that realizes the processing of the action an12 is “an12”.

【0143】本方式に沿ったプログラム自動生成手段3
が生成するプログラムソースコード4のフローチャート
の一例を図19に示す。図19の処理S140はイベン
ト駆動型で動作する図4の状態遷移の処理S20のフロ
ーチャートと類似している。図4と図19の異なる点
は、アクションan12を実行する処理S262の前に
関数実行時間測定手段8を起動する為の処理S93を追
加したことと、アクションan12を実行する処理S2
62の後に関数実行時間測定手段8の動作を停止する為
の処理S94を追加した点である。その他の処理は実施
の形態1で説明しているため、ここでは説明は省略す
る。本実施の形態のプログラム自動生成手段3が生成す
る、図4に示される処理S20のフローチャートに対応
するプログラムソースコード4では、例えばアクション
an12を実行する処理S262は、具体的には関数”
an12”を呼び出すコードとして生成する。状態遷移
エディタ1により指定される状態遷移情報と部品情報と
は、状態遷移情報指定工程によって指定する。また、プ
ログラム自動生成手段3によるプログラムソースコード
の生成は、プログラム生成工程によって行う。
Automatic program generation means 3 according to this method
FIG. 19 shows an example of a flowchart of the program source code 4 generated by. The process S140 of FIG. 19 is similar to the flowchart of the state transition process S20 of FIG. The difference between FIG. 4 and FIG. 19 is that a process S93 for starting the function execution time measuring means 8 is added before the process S262 for executing the action an12, and the process S2 for executing the action an12.
The point is that after S62, a process S94 for stopping the operation of the function execution time measuring means 8 is added. Since the other processing is described in the first embodiment, the description is omitted here. In the program source code 4 generated by the automatic program generation means 3 of the present embodiment and corresponding to the flowchart of the process S20 shown in FIG. 4, for example, the process S262 for executing the action an12 is specifically a function "
The state transition information and the component information designated by the state transition editor 1 are designated by the state transition information designating step. Further, the program source code is generated by the automatic program generation means 3. The program generation process is performed.

【0144】プログラム実行手段5では、プログラム自
動生成手段3で自動生成されたプログラムソースコード
4を元に、必要に応じて、コンパイルやリンク処理を行
い実行可能な実行可能モジュールを生成し、状態遷移情
報保持手段2が保持する状態遷移情報に定義された通り
に動作するプログラムを実行する。関数実行時間測定手
段8は、プログラム実行手段5によって実行されるS9
3の処理の実行によって起動され、S94の処理の実行
によって動作を停止する。関数実行時間測定手段8は、
プログラム実行手段5によって実行されるプログラムの
内部で動作するプログラム関数について、それぞれ関数
の処理の開始から終了までの時間(関数実行時間)を計
測し、その平均値を求めて保持するように動作する。ま
た後に実行時間解析手段7に提供できるようその値を保
存する。プログラム実行手段5によるプログラム自動生
成手段3により生成されたプログラムの実行は、プログ
ラム実行工程により行う。また、関数実行時間測定手段
8による関数の実行時間の測定処理は、関数実行時間測
定工程により行う。
On the basis of the program source code 4 automatically generated by the program automatic generation means 3, the program execution means 5 compiles and links as needed to generate an executable module which can be executed, and makes a state transition. The program that operates as defined in the state transition information held by the information holding means 2 is executed. The function execution time measuring means 8 is executed by the program executing means 5 at S9.
The process is started by executing the process of step S3, and the operation is stopped by executing the process of step S94. The function execution time measuring means 8 is
For a program function that operates inside the program executed by the program executing means 5, the time from the start to the end of the function processing (function execution time) is measured, and the average value is calculated and held. . The value is saved so that it can be provided to the execution time analysis means 7 later. The execution of the program generated by the program automatic generation means 3 by the program execution means 5 is performed in the program execution step. Further, the function execution time measurement process by the function execution time measurement means 8 is performed in the function execution time measurement step.

【0145】実行時間解析手段7では、状態遷移情報保
持手段2が保持する状態遷移情報と部品情報の内容を調
べ、実行制限時間が定義されているアクションのそれぞ
れについて、アクションの処理に対応した関数の関数実
行時間が測定されていないか、アクションに対応して一
意に定まる関数の名称を元に、関数実行時間測定手段8
が保持する関数実行時間の内容を調べ、アクションに対
応する関数についてその関数実行時間(計測された平均
の値)が保持されており、その値がアクションに対する
実行制限時間を超過している場合は、その旨を示す警告
を出力する。また同時に実行時間解析手段7は、対象と
なるアクションについて、そのプログラムフローを解析
することで、そのアクションがどのような関数を呼び出
すかを調べ、呼び出されるそれぞれの関数について、関
数実行時間測定手段8が保持する各関数の実行時間の内
容を調べその測定値(関数実行時間)を求めることで、
実行時間が実行制限時間を超過したアクションの処理内
で実行された関数について、その関数の名称及び関数実
行時間の一覧を出力する。
The execution time analysis means 7 checks the contents of the state transition information and the component information held by the state transition information holding means 2 and, for each action for which the execution time limit is defined, a function corresponding to the processing of the action. Function execution time is not measured, or the function execution time measurement means 8 is used based on the name of the function uniquely determined corresponding to the action.
Check the contents of the function execution time held by, and if the function execution time (measured average value) is held for the function corresponding to the action and the value exceeds the execution time limit for the action , And outputs a warning to that effect. At the same time, the execution time analysis unit 7 analyzes the program flow of the target action to check what function the action calls, and the function execution time measurement unit 8 for each called function. By checking the contents of the execution time of each function held by, and obtaining the measured value (function execution time),
For a function executed in the processing of an action whose execution time exceeds the execution time limit, a list of the function name and function execution time is output.

【0146】本実施の形態では、プログラム開発支援シ
ステムは上記のように動作するので、状態遷移の設計に
際して、状態遷移と共にそのアクション(この実施の形
態では、アクションは1つの関数である)の処理に許容
される制限時間を制限時間情報として同時に記述するこ
とができる。またアクションの処理に要する時間を測定
し、対応する実行制限時間との比較を自動的に行うこと
ができる。これにより実行制限時間に関する設計情報の
記述忘れや見落としを防ぎ、さらに実行制限時間に関す
る試験の設計忘れや実施忘れを防ぐことができ、検証作
業が簡素にできるようになる。さらに実施の形態3と同
様、実行制限時間を超過したアクションの処理につい
て、その処理の内部で実行された関数について、その名
称と実行時間の一覧を出力することにより、処理時間の
改善対象を示唆することができ、ソフトウェア開発の下
流工程で時間的制約に関する検証及び改善作業を十分に
実施しやすくなり、プログラムの開発効率及び品質の向
上といった効果が得られる。
In this embodiment, since the program development support system operates as described above, when designing the state transition, the state transition and its action (in this embodiment, the action is one function) are processed. It is possible to simultaneously describe the time limit allowed for the time limit information. Further, it is possible to measure the time required to process the action and automatically compare it with the corresponding execution time limit. As a result, it is possible to prevent the design information related to the execution time limit from being forgotten or overlooked, and to prevent the test design related to the execution time limit from being forgotten or forgotten, and the verification work can be simplified. Further, similarly to the third embodiment, regarding the processing of the action that exceeds the execution time limit, by outputting the list of the names and the execution times of the functions executed inside the processing, the improvement target of the processing time is suggested. As a result, it becomes easy to sufficiently carry out verification and improvement work regarding time constraints in the downstream process of software development, and it is possible to obtain effects such as improvement in program development efficiency and quality.

【0147】なお、上記実施の形態において、関数実行
時間測定手段8は、同じ関数に対する測定値であっても
その呼び出し元が異なる場合は、異なる関数実行時間と
して区別して扱えるようにし、実行時間解析手段7は、
警告の対象となるアクションに対し、そのアクションか
ら呼び出されるそれぞれの関数について、関数実行時間
測定手段8が保持する各関数の実行時間の内容を調べそ
の測定値(関数実行時間)を求める際には、アクション
に対応した関数から呼び出されたときの関数実行時間を
求めるようにしてもよい。これは具体的には、例えば関
数”p1”が関数”an12”及び関数”an21”の
それぞれから呼び出される場合、関数実行時間測定手段
8は、関数”an12”から関数”p1”が呼び出され
たときの測定値は”an12⇒p1”における関数実行
時間として扱い、また関数”an21”から関数”p
1”が呼び出されたときの測定値は”an21⇒p1”
における関数実行時間として扱い、両者を区別して実行
時間解析手段7に提供できるようにする。実行時間解析
手段7は、アクションan12から呼び出される関数”
p1”についてその関数実行時間を調べる際は、アクシ
ョンan12に対応する処理を実行する関数”an1
2”から呼び出された時の”an12⇒p1”における
関数実行時間を求めるようにする。この場合、関数の実
行時間に関する情報は、対応するアクション毎に区別し
て取り扱われるため、関数の実行時間をアクションの実
行実測時間と比較する際の精度を高めることができ、処
理時間の改善についての対策の優先度を、より適切に示
唆することができる。
In the above-described embodiment, the function execution time measuring means 8 allows different function execution times to be treated as different function execution times even when the callers are different even if the measured values are for the same function. The means 7 is
For the action to be warned, for each function called from the action, when the content of the execution time of each function held by the function execution time measuring means 8 is checked and the measured value (function execution time) is obtained, The function execution time when called from the function corresponding to the action may be obtained. Specifically, for example, when the function "p1" is called from each of the function "an12" and the function "an21", the function execution time measuring unit 8 calls the function "p1" from the function "an12". The measured value at this time is treated as the function execution time in "an12⇒p1", and the function "an21" to function "p"
When "1" is called, the measured value is "an21⇒p1"
The function execution time is treated as a function execution time, and both can be provided to the execution time analysis means 7 separately. The execution time analysis means 7 is a function called from the action an12 "
When checking the function execution time for p1 ", the function" an1 "that executes the process corresponding to the action an12
The function execution time in "an12⇒p1" when called from "2" is calculated. In this case, since the information regarding the function execution time is handled separately for each corresponding action, the function execution time is It is possible to improve the accuracy in comparison with the actually measured execution time of the action, and it is possible to more appropriately suggest the priority of the measure for improving the processing time.

【0148】また一般にプログラムの処理時間の改善に
は、その内部処理の中で主要な時間を占めている処理の
順に対策を実施することが効果的である。このため実行
時間が実行制限時間を超過したアクションの処理内で実
行された関数について、その関数の名称及び関数実行時
間の一覧を出力する際には、その関数実行時間の長い順
に提示することで、プログラム開発者に対し処理時間の
改善についての対策の優先度を示唆することができ、改
善作業の作業効率が向上する。さらに実行時間解析手段
7で、警告を出力する対象となるアクションについてそ
のプログラムフローを解析する際に各関数についてその
実行回数を求め、内部で呼び出す関数の名称及び関数実
行時間の一覧を出力する際には実行時間と実行回数との
積を計算し、計算した答えの大きい順に提示するように
することで、対策の優先度をより効果的に示唆でき、効
果を高めることができる。
Further, generally, in order to improve the processing time of a program, it is effective to take measures in the order of the processing that occupies the main time in the internal processing. Therefore, when outputting the list of function names and function execution times for the functions executed in the processing of the action whose execution time exceeds the execution time limit, the function execution time can be presented in the descending order. , It is possible to suggest the priority of measures for improving the processing time to the program developer, and the work efficiency of the improvement work is improved. Further, when the execution time analysis unit 7 analyzes the program flow of an action for which a warning is to be output, the number of executions of each function is obtained, and the name of the function called internally and the list of the function execution time are output. By calculating the product of the execution time and the number of executions and presenting them in descending order of the calculated answer, the priority of the countermeasure can be more effectively suggested and the effect can be enhanced.

【0149】またアクションに対応する関数の実行時間
と実行制限時間を比較する際には、対応する関数の実行
時間が実行制限時間を超過した場合に警告を提示するの
ではなく、実行制限時間に一定の比率を乗じた値、例え
ば実行制限時間の80%を越えた場合に警告を提示する
ようにしてもよい。さらに実行制限時間の80%を越え
た場合は警戒を、実行制限時間を越えた場合は警告を提
示するといったように提示の仕方に差をつけることで、
プログラム開発者に対し対策の優先度を示唆することが
でき、改善作業の作業効率が向上する。さらに実行制限
時間と実行実測時間の差ないし比率を求め、その値を併
記してプログラム開発者に対し提示しても、対策の優先
度を示唆することができ、効果を高めることができる。
When comparing the execution time of the function corresponding to the action and the execution time limit, a warning is not displayed when the execution time of the corresponding function exceeds the execution time limit, but the execution time limit is displayed. A warning may be presented when a value multiplied by a certain ratio, for example, exceeding 80% of the execution time limit. Furthermore, by giving a warning when the execution time exceeds 80% and displaying a warning when the execution time exceeds the time limit,
The priority of measures can be suggested to the program developer, and the work efficiency of improvement work is improved. Further, even if the difference or ratio between the execution time limit and the actual measurement time is obtained and the value is written together and presented to the program developer, the priority of the countermeasure can be suggested, and the effect can be enhanced.

【0150】また上記実施の形態では、関数実行時間測
定手段8は渡された関数の実行時間の平均値を求めて保
持するように動作したが、これは第3の実施の形態3と
同様、最大値を求めるように動作してもよい。この場
合、より厳しい条件で実行制限時間と実行実測時間との
比較を行え、またより厳しい条件で処理時間の改善対象
となる関数を示唆することができる。
Further, in the above-mentioned embodiment, the function execution time measuring means 8 operates so as to obtain and hold the average value of the execution times of the passed functions, but this is the same as in the third embodiment. It may operate so as to obtain the maximum value. In this case, the execution time limit and the actual measurement time can be compared under more severe conditions, and the function whose processing time is to be improved can be suggested under more severe conditions.

【0151】さらに関数実行時間測定手段8は平均値及
び最大値の両者を求めるように動作し、実行時間解析手
段7では、それぞれと実行制限時間との比較結果を提示
するようにしてもよい。この場合、各アクションに関す
る実行制限時間の達成可否の程度を大きく分類すること
ができ、対策の優先度を示唆することができる。また一
般に、プログラムの処理時間については最大実行時間と
平均実行時間の差が大きい場合に処理時間の改善の余地
が高いと推定できる。このことから、実行時間解析手段
7で、実行時間が実行制限時間を超過したアクションの
処理内で実行された関数について、その関数の名称及び
関数実行時間の一覧を出力する際には、関数実行時間の
最大値と平均値の両者の値、さらにその差ないし比率と
いった関数実行時間のばらつきを示す情報について提示
するようにする。この結果、処理時間の改善に関する対
策の優先度を示唆することができ、改善作業の作業効率
が向上する。この場合各関数の提示順は平均値ないし最
大値の順だけでなく、両者の差あるいは比率といった関
数実行時間のばらつきを表す値が大きい順に提示できる
ようにする。これにより、対策の優先度をより効果的に
示唆することができ、効果を高めることができる。
Further, the function execution time measuring means 8 may operate so as to obtain both the average value and the maximum value, and the execution time analyzing means 7 may present the result of comparison between each of them and the execution time limit. In this case, the degree of achievement of the execution time limit for each action can be roughly classified, and the priority of the countermeasure can be suggested. Further, generally, regarding the processing time of a program, it can be estimated that there is a lot of room for improvement in the processing time when the difference between the maximum execution time and the average execution time is large. Therefore, when the execution time analysis unit 7 outputs the list of the function names and the function execution times of the functions executed in the processing of the action whose execution time exceeds the execution time limit, the function execution is executed. Both the maximum value and the average value of the time, and the information indicating the variation in the function execution time such as the difference or the ratio between them are presented. As a result, it is possible to suggest the priority of measures for improving the processing time, and the work efficiency of the improvement work is improved. In this case, the order of presentation of the respective functions is not limited to the order of the average value or the maximum value, but the order of presenting the value representing the variation in the function execution time such as the difference or ratio between the two may be presented. This makes it possible to more effectively suggest the priority of the countermeasure and enhance the effect.

【0152】あるいは関数実行時間測定手段8は、平均
値や最大値といった特定の単一の数値ではなく、ヒスト
グラムないし確率分布といった統計的な値を生成、保持
するように動作しても良い。この場合実行時間解析手段
7では、実行制限時間を超過する確率、あるいは実行制
限時間に一定の比率を乗じた値を超過する確率が一定以
上の場合には警告を提示するように動作することで、同
様の効果が得られる。さらに平均値や最大値を用いる場
合と同様、実行制限時間の80%を越える確率が一定以
上の場合は警戒を、実行制限時間を越えた値がある場合
は警告を提示するといったように提示の仕方に差をつけ
ることで、またアクションに対応する関数の実行時間の
分布状況を提示することで、プログラム開発者に対し各
アクションに対する対策の優先度を示唆することがで
き、改善作業の作業効率が向上する。同様に実行時間解
析手段7で、実行時間が実行制限時間を超過したアクシ
ョンの処理内で実行された関数について、その関数の名
称及び関数実行時間の一覧を出力する際には、関数の実
行時間の平均値あるいは最大値のほか、例えば実行時間
の90%が満たす上限値(実行時間の90%がその値以
下となる値)といった尺度に基づいた順に提示すること
で、プログラム開発者に対し処理時間の改善についての
対策の優先度を示唆することができ、改善作業の作業効
率が向上する。さらに、併せて関数の実行時間の分布状
況を提示することで、対策の優先度をより効果的に示唆
することができ、効果を高めることができる。また一般
にプログラムの処理時間についてはその時間のばらつき
が大きい場合に処理時間の改善の余地が高いと推定でき
る。このことから、関数の一覧を出力する際には関数の
実行時間の分布のばらつきが大きい順でも提示できるよ
うにする、あるいは他の尺度とばらつきの両者に配慮し
て適切な順で提示できるようにする。この結果、対策の
優先度をより効果的に示唆することができ、作業効率向
上の効果を高めることができる。
Alternatively, the function execution time measuring means 8 may operate to generate and hold a statistical value such as a histogram or a probability distribution instead of a specific single numerical value such as an average value or a maximum value. In this case, the execution time analysis means 7 operates so as to present a warning when the probability of exceeding the execution time limit or the probability of exceeding the value obtained by multiplying the execution time limit by a certain ratio is a certain value or more. , The same effect can be obtained. Further, as in the case of using the average value or the maximum value, a warning is given when the probability that 80% of the execution time limit is exceeded is a certain value or more, and a warning is given when there is a value that exceeds the execution time limit. By showing the distribution of the execution time of the function corresponding to the action by making a difference in the way, it is possible to suggest the priority of the measure for each action to the program developer, and the work efficiency of the improvement work. Is improved. Similarly, when the execution time analysis unit 7 outputs a list of function names and function execution times for functions executed in the processing of an action whose execution time exceeds the execution time limit, the execution time of the function is In addition to the average value or maximum value of, the processing is presented to the program developer in order based on a scale such as an upper limit value that 90% of the execution time satisfies (a value that 90% of the execution time is less than that value) The priority of measures for improving time can be suggested, and the work efficiency of improvement work is improved. Furthermore, by presenting the distribution status of the execution time of the function together, the priority of the countermeasure can be more effectively suggested, and the effect can be enhanced. Further, in general, it can be estimated that there is a lot of room for improvement in the processing time of the program when the variation in the processing time is large. Therefore, when outputting a list of functions, make it possible to present them even in the order in which the variations in the distribution of the execution time of the functions are large, or to present them in an appropriate order in consideration of both other scales and variations. To As a result, the priority of measures can be more effectively suggested, and the effect of improving work efficiency can be enhanced.

【0153】また、一般にアクションの実行時間の統計
的な分布と、そのアクション内で動作する関数の実行時
間の統計的な分布に類似性があれば、その関数はアクシ
ョンの実行時間の分布に強い影響を与えている可能性が
高いとみなせ、アクションの実行時間の改善には該当す
る関数の改修が効果的と推測できる。このことから、実
行時間解析手段7が関数の一覧を出力する際には、アク
ションに対応する関数の実行時間の統計的な分布の形
と、アクションの中で呼び出される各関数の実行時間の
統計的な分布の形を比較し、その両者の類似度を求め、
類似度の高い順に関数を提示するようにしてもよい。こ
れによりプログラム開発者に対し処理時間の改善につい
ての対策の優先度を示唆することができ、改善作業の作
業効率が向上する。なお確率分布の類似度を求める方法
としては、例えばそれぞれの平均値と最大値の比を求め
値が近い場合に類似度が高いとする方法、またそれぞれ
の分散を求め値が近い場合に類似度が高いとする方法、
さらには相互相関値を求めその値を用いる方法など、統
計学上の知識に基づく各種の方法を用いることが可能で
あり、類似度としての適切さと導出に必要な計算負荷の
両面から適切な方式を選定して用いればよく、いずれの
方法を用いても目的とする効果が得られる。
Generally, if there is a similarity between the statistical distribution of the execution time of an action and the statistical distribution of the execution time of a function operating in the action, the function has a strong distribution of the execution time of the action. It can be considered that there is a high possibility that it has an effect, and it can be inferred that modification of the corresponding function is effective for improving the execution time of the action. Therefore, when the execution time analysis unit 7 outputs a list of functions, the statistical distribution of the execution time of the functions corresponding to the action and the statistics of the execution time of each function called in the action are collected. Comparing the shapes of the various distributions, obtaining the similarity between the two,
The functions may be presented in descending order of similarity. As a result, it is possible to suggest to the program developer the priority of measures for improving the processing time, and the work efficiency of the improvement work is improved. As a method of obtaining the similarity of the probability distribution, for example, the method of determining the ratio of the average value and the maximum value to have a high similarity when the values are close to each other, and the method of determining the variance of each to be similar when the values are close How to be high,
Furthermore, it is possible to use various methods based on statistical knowledge, such as the method of obtaining the cross-correlation value and using that value. It is an appropriate method from the viewpoint of both the degree of similarity and the calculation load required for derivation. May be selected and used, and the desired effect can be obtained by any method.

【0154】また、図19では、アクションan12を
実行する(S262)前に関数実行時間測定手段8の動
作の起動を行い(S93)、アクションan12の実行
後に関数実行時間測定手段8の動作の停止(S94)を
行っていた。しかし、関数実行時間測定手段8が図19
の処理S140の動作開始とともに起動していつでも関
数の実行時間の測定が行える状態であり、また、関数の
実行の終了も関数からの何らかの情報を受信して関数実
行時間測定手段8が自身で判断可能であれば、S93,
S94の処理を省略してもかまわない。また、アクショ
ンan12は1つの関数であるが、アクションan23
は関数でなく一般の処理であり、状態遷移情報に制限時
間情報が指定されているとする。この場合は、プログラ
ム自動生成手段3はアクションan23の実行実測時間
を測定する為の処理を含めてプログラムのソースコード
を生成する。また、測定した実行実測時間を実行実測時
間収集手段6に通知するようにプログラムのソースコー
ドを生成する。従って、図18には実行実測時間収集手
段6は図示していないが、実行実測時間収集手段6を追
加してプログラム開発支援システムを構成することも可
能である。
In FIG. 19, the operation of the function execution time measuring means 8 is activated (S93) before the action an12 is executed (S262), and the operation of the function execution time measuring means 8 is stopped after the action an12 is executed. (S94) was performed. However, the function execution time measuring means 8 is shown in FIG.
The execution time of the function is ready to be measured at any time when the function is started at the start of the operation S140, and the function execution time measuring means 8 itself determines the end of the execution of the function by receiving some information from the function. If possible, S93,
The process of S94 may be omitted. Also, the action an12 is one function, but the action an23
Is a general process, not a function, and time limit information is specified in the state transition information. In this case, the program automatic generation means 3 generates the source code of the program including the process for measuring the actually measured execution time of the action an23. In addition, the source code of the program is generated so as to notify the actually measured execution time collecting unit 6 of the measured actually measured time. Therefore, although the actually measured time collection means 6 is not shown in FIG. 18, it is possible to add the actually measured time collection means 6 to configure a program development support system.

【0155】本実施の形態6では、以下の特徴を有する
プログラム開発支援システムについて説明を行った。プ
ログラムの仕様として、複数の状態と、複数のイベント
と、各状態においてイベントの発生により生起される状
態間の遷移と、各遷移において実行されるアクション、
を含む状態遷移情報を記述する状態遷移エディタと、同
状態遷移エディタにより記述された状態遷移情報を蓄え
る状態遷移情報保持手段と、状態遷移情報に基づき、状
態遷移の処理を実現するプログラムのソースコードを自
動生成するプログラム自動生成手段と、自動生成された
プログラムのソースコードを元にプログラムを実行する
プログラム実行手段と、プログラムの実行に伴う関数の
実行に要する時間(関数実行時間)を測定する関数実行
時間測定手段と、集めた関数実行時間を解析する実行時
間解析手段から構成され、状態遷移エディタでは、アク
ションの処理の記述において、どのプログラム部品をど
のような手順で呼び出すかといったプログラムフローを
記述することができ、また任意のアクションについて、
その処理に許容される制限時間(実行制限時間)を記述
することができ、プログラム自動生成手段では、任意の
アクションについて、その処理を一意に識別できる名称
のもつ関数として生成し、実行時間解析手段では、任意
のアクションについて、状態遷移情報として記述された
実行制限時間と、関数実行時間測定手段で集められたア
クションに対応した関数の実行時間とを比較して提示す
るとともに、付随してアクションの処理内で実行された
関数について実行時間と併せその一覧を提示することが
できる。
In the sixth embodiment, the program development support system having the following features has been described. As the program specifications, multiple states, multiple events, transitions between states caused by the occurrence of an event in each state, actions executed in each transition,
A state transition editor that describes state transition information, including state transition information holding means that stores the state transition information described by the state transition editor, and a source code of a program that implements state transition processing based on the state transition information A program automatic generating means for automatically generating a program, a program executing means for executing a program based on the source code of the automatically generated program, and a function for measuring a time (function execution time) required to execute a function accompanying the execution of the program Consists of execution time measurement means and execution time analysis means for analyzing the collected function execution times. In the state transition editor, in describing the processing of actions, describe the program flow such as which program component is called in what procedure. You can also, for any action,
The time limit (execution time limit) allowed for the process can be described, and the automatic program generation unit generates the process for any action as a function with a name that can be uniquely identified, and the execution time analysis unit. Then, for an arbitrary action, the execution time limit described as the state transition information and the execution time of the function corresponding to the action collected by the function execution time measuring means are compared and presented. A list of the functions executed in the process can be presented together with the execution time.

【0156】また、別の特徴として、実行時間解析手段
がアクションの処理内で実行された関数についてその一
覧を提示する際には、その関数の実行時間の長い順に、
または関数の実行時間の測定値から推測されるアクショ
ンの実行実測時間に与える影響の高い順に列挙する特徴
を有するプログラム開発支援システムを説明した。
Further, as another feature, when the execution time analysis means presents a list of the functions executed in the processing of the action, in order of the execution time of the function,
Also, the program development support system having the characteristics listed in descending order of influence on the actually measured execution time of the action inferred from the measured execution time of the function has been described.

【0157】また、別の特徴として、関数実行時間測定
手段では、測定した関数の実行時間として、単一の数値
ではなく、平均値と最大値の両者、あるいはヒストグラ
ムないし確率分布といった統計的な値を求め保持し、実
行時間解析手段がアクションの処理内で実行された関数
についてその一覧を提示する際には、関数の実行時間の
ばらつきが大きい順に列挙する特徴を有するプログラム
開発支援システムを説明した。
As another feature, in the function execution time measuring means, the measured execution time of the function is not a single numerical value, but both an average value and a maximum value, or a statistical value such as a histogram or a probability distribution. The program development support system has a characteristic that, when the execution time analysis means presents a list of functions executed in the processing of an action, the execution time analysis means enumerates them in descending order of variation in function execution time. .

【0158】また、別の特徴として、関数実行時間測定
手段では、測定した関数の実行時間として、単一の数値
ではなく、ヒストグラムないし確率分布といった統計的
な値を求め保持し、実行時間解析手段がアクションの処
理内で実行された関数についてその一覧を提示する際に
は、そのアクションに対応する関数の実行時間の分布と
その内部で実行された関数の実行時間の分布の類似度か
ら、内部で実行された関数がアクションの実行時間に与
える影響の程度を推定し、その程度の高い順に列挙する
特徴を有するプログラム開発支援システムを説明した。
As another feature, the function execution time measuring means finds and holds not a single numerical value but a statistical value such as a histogram or a probability distribution as the measured execution time of the function, and the execution time analyzing means. When presenting a list of functions executed in the processing of an action, the internal distribution of the execution time of the function corresponding to the action and the distribution of the execution time of the functions executed inside the I explained the program development support system which has the feature that the degree of the influence that the function executed in the paragraph gives to the execution time of the action is estimated and listed in descending order of the degree.

【0159】また、上記した実施の形態1から6に記載
した各処理工程は、プログラム開発支援方法に有されて
いる処理工程であるとともに、プログラム開発支援プロ
グラムの有する処理工程である。また、プログラム開発
支援プログラムは、コンピュータによって読み取り可能
な記録媒体(例えば、ROM(リード オンリー メモ
リ)やFXD(フレキシブル ディスク))に記録され
ている。また、プログラム開発支援プログラムは、プロ
グラム開発支援システムの備えるコンピュータ上で動作
するプログラムである。
The processing steps described in the first to sixth embodiments are the processing steps included in the program development support method and the processing steps included in the program development support program. The program development support program is recorded in a computer-readable recording medium (for example, ROM (Read Only Memory) or FXD (Flexible Disk)). The program development support program is a program that runs on a computer included in the program development support system.

【0160】[0160]

【発明の効果】以上のように、この発明では、状態遷移
を行うプログラムの設計に際して、状態遷移エディタ或
いは、状態遷移情報指定工程によってアクションの実行
時間に許容される制限時間を、状態情報やイベント情
報、アクション情報と同時に記述することができる。ま
た、プログラム生成部或いは、プログラム生成工程によ
って、アクションの実行に要する時間を測定して制限時
間との比較を行う処理を、生成するプログラムソースコ
ード内に埋め込むことができる。これにより、制限時間
に関する設計情報の記述忘れや見落としを防ぎ、さらに
制限時間に関する試験の設計忘れや実施忘れを防ぐこと
ができ、検証作業が簡素にできるようになるため、ソフ
トウェア開発の下流工程で時間的制約に関する検証及び
改善作業を十分に実施しやすくなり、プログラムの開発
効率及び品質の向上といった効果が得られる。
As described above, according to the present invention, when designing a program for performing state transition, the state information and the event are set to the time limit allowed for the action execution time by the state transition editor or the state transition information designating step. It can be described at the same time as information and action information. Further, it is possible to embed in the generated program source code a process of measuring the time required to execute the action and comparing it with the time limit by the program generation unit or the program generation step. As a result, it is possible to prevent the design information related to the time limit from being forgotten or overlooked, and to avoid forgetting the design or execution of the test related to the time limit, which simplifies the verification work. This makes it easier to carry out verification and improvement work related to time constraints, with the effect of improving program development efficiency and quality.

【0161】また、実行時間解析部或いは、実行時間解
析工程によって、測定した実行実測時間と制限時間との
比較を自動的に行うことができる。これにより、制限時
間に関する設計情報の記述忘れや見落としを防ぎ、さら
に制限時間に関する試験の設計忘れや実施忘れを防ぐこ
とができ、検証作業が簡素にできるようになるため、ソ
フトウェア開発の下流工程で時間的制約に関する検証及
び改善作業を十分に実施しやすくなり、プログラムの開
発効率及び品質の向上といった効果が得られる。
Further, the execution time analysis section or the execution time analysis step can automatically compare the measured actual measurement time with the time limit. As a result, it is possible to prevent the design information related to the time limit from being forgotten or overlooked, and to avoid forgetting the design or execution of the test related to the time limit, which simplifies the verification work. This makes it easier to carry out verification and improvement work related to time constraints, with the effect of improving program development efficiency and quality.

【0162】また、アクション毎の平均実測時間と最大
実行実測時間との少なくとも一方の実測時間と、制限時
間とを比較することにより、より厳しい条件で制限時間
と実測時間との比較が行える。これにより、アクション
毎の制限時間の達成可否の程度をユーザに対して提示す
ることができ、プログラムを改善する作業の作業効率を
向上することができる効果がある。
Further, by comparing the actual measurement time of at least one of the average actual measurement time and the maximum execution actual measurement time for each action with the time limit, it is possible to compare the time limit and the actual time under more severe conditions. As a result, the degree to which the time limit can be achieved for each action can be presented to the user, and the work efficiency of the work for improving the program can be improved.

【0163】また、統計実行実測時間を求めて、統計実
行実測時間と制限時間を比較することにより、実行実測
時間の分布状況をユーザに対して提示することができ
る。これにより、ユーザに対してアクションに対する対
策の優先度を示唆することができる効果がある。
Further, by obtaining the statistical execution actual measurement time and comparing the statistical execution actual measurement time with the time limit, the distribution status of the actual execution actual measurement time can be presented to the user. This has the effect of being able to suggest to the user the priority of measures against actions.

【0164】また、生成するプログラムに関数を実行す
る場合の関数実行実測時間を測定する処理を含めて、プ
ログラムを生成する。これにより、関数を含むアクショ
ンである場合、または、アクションが関数である場合
に、アクションの実行実測時間とともに関数の実行実測
時間を計測して、アクションの実行実測時間と制限時間
とを比較した結果、制限時間を超過したアクションの処
理について、その処理の内部で実行された関数につい
て、その名称と実行実測時間の一覧を出力することによ
り、処理時間の改善対象を示唆することができる効果が
ある。また、ソフトウェア開発の下流工程で時間的制約
に関する検証及び改善作業を十分に実施しやすくなり、
プログラムの開発効率及び品質の向上といった効果が得
られる。
Further, the program is generated by including the process of measuring the function execution actual measurement time when the function is executed in the generated program. As a result, when the action includes the function, or when the action is the function, the actual measurement time of the function is measured together with the actual measurement time of the action, and the actual measurement time of the action is compared with the time limit. , Regarding the processing of the action that exceeds the time limit, by outputting the list of the name and actual measurement time of the function executed inside the processing, there is an effect that it is possible to suggest the target of improvement of the processing time. . In addition, it becomes easier to sufficiently carry out verification and improvement work related to time constraints in the downstream process of software development.
It is possible to obtain effects such as improvement in program development efficiency and quality.

【0165】また、構成要素制限時間情報を指定すると
ともに、アクションの内部の部分的な処理に要する時間
を測定し、それぞれの制限時間との比較を行う処理を、
生成するプログラムソースコード内に埋め込むことがで
きる。これにより、アクションの内部の部分的な処理に
関しても制限時間に関する設計情報の記述忘れや見落と
しを防ぎ、さらに制限時間に関する試験の設計忘れや実
施忘れを防ぐことができ、検証作業が簡素にできるよう
になる効果がある。その結果、ソフトウェア開発の下流
工程で時間的制約に関する検証及び改善作業を十分に実
施しやすくなり、プログラムの開発効率及び品質の向上
といった効果が得られる。
Further, the process of designating the constituent element time limit information, measuring the time required for the partial processing inside the action, and comparing with each time limit,
It can be embedded in the generated program source code. As a result, it is possible to prevent forgetting or overlooking the description of the design information regarding the time limit even for the partial processing inside the action, and it is possible to prevent forgetting to forget the design of the test regarding the time limit or forgetting to implement it, and simplify the verification work. Is effective. As a result, it becomes easy to sufficiently carry out verification and improvement work regarding time constraints in the downstream process of software development, and it is possible to obtain effects such as improvement in program development efficiency and quality.

【0166】また、アクションの内部の部分的な処理に
ついて、その処理に許容される制限時間(構成要素制限
時間)を構成要素情報や状態遷移情報とともに記述する
ことができる。また、アクションの内部の部分的な処理
に要する時間(構成要素実行実測時間)を測定する処理
を、生成するプログラムソースコード内に自動的に埋め
込むことができる。これにより、測定した構成要素実行
実測時間と構成要素制限時間の比較を自動的に行うこと
ができ、実行制限時間に関する設計情報の記述忘れや見
落としを防ぎ、さらに実行制限時間に関する試験の設計
忘れや実施忘れを防ぐことができ、検証作業が簡素にで
きるようになる。結果として、ソフトウェア開発の下流
工程で時間的制約に関する検証及び改善作業を十分に実
施しやすくなり、プログラムの開発効率及び品質の向上
といった効果が得られる。
Further, for a partial process inside an action, the time limit (component time limit) allowed for the process can be described together with the component information and the state transition information. Further, the process of measuring the time required for the partial process inside the action (the component element actual measurement time) can be automatically embedded in the generated program source code. As a result, it is possible to automatically compare the measured actual execution time of the component with the time limit of the component, and prevent forgetting or missing the design information about the execution time limit. It is possible to prevent forgetting to carry out, and to simplify the verification work. As a result, it becomes easy to sufficiently carry out verification and improvement work related to time constraints in the downstream process of software development, and it is possible to obtain effects such as improvement in program development efficiency and quality.

【0167】また、制限時間を超過したアクションの処
理について、その処理の内部で実行された関数につい
て、その名称と実行時間の一覧を出力する。このことに
より、処理時間の改善対象を示唆することができ、ソフ
トウェア開発の下流工程で時間的制約に関する検証及び
改善作業を十分に実施しやすくなり、プログラムの開発
効率及び品質の向上といった効果が得られる。
Further, regarding the processing of the action that has exceeded the time limit, the list of the names and the execution times of the functions executed inside the processing is output. As a result, it is possible to suggest the target of improvement of the processing time, it becomes easy to sufficiently carry out verification and improvement work regarding time constraints in the downstream process of software development, and it is possible to obtain the effect of improving the development efficiency and quality of the program. To be

【0168】また、その関数の名称及び関数実行実測時
間の一覧を出力する際には、その関数実行時間の長い順
に提示することで、プログラム開発者に対し処理時間の
改善についての対策の優先度を示唆することができ、改
善作業の作業効率が向上する効果がある。また、アクシ
ョンの実行実測時間に与える影響の高い順に提示するこ
とで、対策の優先度をより効果的に示唆できる効果があ
る。
Further, when outputting the list of the function name and the function execution actual measurement time, by presenting the function execution time in the descending order, the priority of the measure for improving the processing time is given to the program developer. Can be suggested, which has the effect of improving the work efficiency of the improvement work. In addition, by presenting the actions in the descending order of the influence on the actual measurement time of execution, it is possible to more effectively suggest the priority of the measures.

【0169】また、統計関数実行実測時間のばらつきを
示す情報について提示するようにする。この結果、処理
時間の改善に関する対策の優先度を示唆することがで
き、改善作業の作業効率が向上する効果がある。この場
合ばらつきを表す値が大きい順に提示する。これによ
り、対策の優先度をより効果的に示唆することができる
効果がある。
Information indicating the variation in the statistical function execution actual measurement time is presented. As a result, it is possible to suggest the priority of measures for improving the processing time, and there is an effect that the work efficiency of the improvement work is improved. In this case, they are presented in descending order of the value representing the variation. This has the effect of more effectively suggesting the priority of measures.

【0170】また、関数実行実測時間を提示する場合
に、アクションの統計実行実測時間に与える影響の高い
順に提示する。この結果、ユーザに対して、処理時間の
改善についての対策の優先度を示唆することができる効
果がある。これにより、ソフトウェア開発の下流工程で
時間的制約に関する検証及び改善作業を十分に実施しや
すくなり、プログラムの開発効率及び品質の向上といっ
た効果が得られる。
When presenting the function execution actually measured time, it is presented in descending order of the effect on the statistical execution actually measured time of the action. As a result, there is an effect that the priority of measures for improving the processing time can be suggested to the user. As a result, it becomes easy to sufficiently carry out verification and improvement work concerning time constraints in the downstream process of software development, and it is possible to obtain the effects of improving the development efficiency and quality of programs.

【0171】また、状態遷移の設計に際して、状態遷移
と共に1つの関数又は1つ以上の関数を含むアクション
の処理に許容される制限時間を制限時間情報(関数制限
時間情報)として同時に記述して、アクションの処理に
要する時間(関数実行実測時間)を測定し、関数実行実
測時間と関数制限時間との比較を行う。これにより、関
数制限時間に関する設計情報の記述忘れや見落としを防
ぎ、さらに関数制限時間に関する試験の設計忘れや実施
忘れを防ぐことができ、検証作業が簡素にできるように
なる効果がある。
In designing the state transition, the time limit allowed for processing the action including one function or one or more functions together with the state transition is described as time limit information (function time limit information) at the same time. The time required for processing an action (function execution actual measurement time) is measured, and the function execution actual measurement time is compared with the function time limit. As a result, it is possible to prevent forgetting or forgetting to forget the description of the design information related to the function time limit, and to prevent forgetting to design or perform the test related to the function time limit, which simplifies the verification work.

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

【図1】 実施の形態1におけるプログラム開発支援シ
ステムのシステム構成図。
FIG. 1 is a system configuration diagram of a program development support system according to a first embodiment.

【図2】 実施の形態1における状態遷移エディタで記
述する状態遷移情報の例を示す図。
FIG. 2 is a diagram showing an example of state transition information described in a state transition editor according to the first embodiment.

【図3】 実施の形態1における状態遷移エディタで記
述する部品情報の例を示す図。
FIG. 3 is a diagram showing an example of component information described in the state transition editor according to the first embodiment.

【図4】 実施の形態1におけるプログラムソースコー
ドのフローチャートの一例を示す図。
FIG. 4 is a diagram showing an example of a flowchart of program source code according to the first embodiment.

【図5】 実施の形態1におけるプログラムソースコー
ドのフローチャートの一例を示す図。
FIG. 5 is a diagram showing an example of a flowchart of a program source code according to the first embodiment.

【図6】 実施の形態1におけるイベントポーリング型
の状態遷移処理に対する実行制限時間検証処理の付加方
法を示すフローチャートの一例を示す図。
FIG. 6 is a diagram showing an example of a flowchart showing a method of adding the execution time limit verification process to the event polling type state transition process according to the first embodiment.

【図7】 実施の形態1におけるイベントポーリング型
の状態遷移処理に対する実行制限時間検証処理の付加方
法を示すフローチャートの一例を示す図。
FIG. 7 is a diagram showing an example of a flowchart showing a method of adding the execution time limit verification process to the event polling type state transition process in the first embodiment.

【図8】 実施の形態1における状態遷移テーブルの一
例を示す図。
FIG. 8 is a diagram showing an example of a state transition table according to the first embodiment.

【図9】 実施の形態1における状態遷移テーブルを用
いたイベント駆動型の状態遷移処理に対する実行制限時
間検証処理の付加方法を示すフローチャートの一例を示
す図。
FIG. 9 is a diagram showing an example of a flowchart showing a method of adding the execution time limit verification process to the event-driven state transition process using the state transition table according to the first embodiment.

【図10】 実施の形態1における状態遷移テーブルを
用いたイベント駆動型の状態遷移処理に対する実行制限
時間検証処理の付加方法を示すフローチャートの一例を
示す図。
FIG. 10 is a diagram showing an example of a flowchart showing a method of adding the execution time limit verification process to the event-driven state transition process using the state transition table according to the first embodiment.

【図11】 実施の形態2におけるプログラム開発支援
システムのシステム構成図。
FIG. 11 is a system configuration diagram of a program development support system according to the second embodiment.

【図12】 実施の形態2におけるプログラムソースコ
ードのフローチャートの一例を示す図。
FIG. 12 is a diagram showing an example of a flowchart of program source code according to the second embodiment.

【図13】 実施の形態3におけるプログラム開発支援
システムのシステム構成図。
FIG. 13 is a system configuration diagram of a program development support system according to the third embodiment.

【図14】 実施の形態3におけるプログラムソースコ
ードのフローチャートの一例を示す図。
FIG. 14 is a diagram showing an example of a flowchart of program source code according to the third embodiment.

【図15】 実施の形態4における状態遷移エディタで
記述する部品情報の例を示す図。
FIG. 15 is a diagram showing an example of component information described in the state transition editor in the fourth embodiment.

【図16】 実施の形態4におけるプログラムソースコ
ードのフローチャートの一例を示す図。
FIG. 16 is a diagram showing an example of a flowchart of program source code according to the fourth embodiment.

【図17】 実施の形態5におけるプログラムソースコ
ードのフローチャートの一例を示す図。
FIG. 17 is a diagram showing an example of a flowchart of program source code according to the fifth embodiment.

【図18】 実施の形態6におけるプログラム開発支援
システムのシステム構成図。
FIG. 18 is a system configuration diagram of a program development support system according to the sixth embodiment.

【図19】 実施の形態6におけるプログラムソースコ
ードのフローチャートの一例を示す図。
FIG. 19 is a diagram showing an example of a flowchart of program source code according to the sixth embodiment.

【図20】 従来例における状態遷移の記述例を示す
図。
FIG. 20 is a diagram showing a description example of state transition in the conventional example.

【図21】 従来例における状態遷移表による状態遷移
の記述の例を示す図。
FIG. 21 is a diagram showing an example of a state transition description in a conventional state transition table.

【符号の説明】 1 状態遷移エディタ、2 状態遷移情報保持手段、3
プログラム自動生成手段、4 プログラムソースコー
ド、5 プログラム実行手段、6 実行実測時間収集手
段、7 実行時間解析手段、8 関数実行時間測定手
段、9 プログラム構成要素記憶部、11 状態、12
遷移、21 状態遷移テーブル。
[Explanation of Codes] 1 state transition editor, 2 state transition information holding means, 3
Automatic program generation means, 4 program source code, 5 program execution means, 6 execution measured time collection means, 7 execution time analysis means, 8 function execution time measurement means, 9 program component storage section, 11 states, 12
Transition, 21 State transition table.

Claims (27)

【特許請求の範囲】[Claims] 【請求項1】 発生するイベントによって指定されたア
クションを実行して複数の状態のなかのある状態を他の
状態へ遷移させコンピュータ上で動作するプログラムを
開発するプログラム開発支援システムにおいて、 上記プログラムを構成する所定の処理をコンピュータに
行わせるためのプログラム構成要素を複数記憶するプロ
グラム構成要素記憶部と、 上記プログラムが遷移させる複数の状態のそれぞれの状
態を示す状態情報と、上記イベントを示すイベント情報
と、上記アクションを示すアクション情報と、上記アク
ション毎に上記アクションを実行する場合の処理の制限
時間を示す制限時間情報とを、状態遷移情報として指定
するとともに、上記アクション情報に対応させて上記ア
クションの実行に用いるプログラム構成要素を構成要素
情報として指定する状態遷移エディタと、 上記状態遷移エディタにより指定された構成要素情報を
基に上記プログラム構成要素記憶部から該当するプログ
ラム構成要素を選択して、選択したプログラム構成要素
を含むアクションを実行するプログラムであって、上記
アクションを実行する場合の実行実測時間を計測する処
理と、上記計測した実行実測時間と上記状態遷移エディ
タにより指定された制限時間とを比較して、比較した結
果を提示する処理とを実行するプログラムを生成するプ
ログラム生成部とを備えたことを特徴とするプログラム
開発支援システム。
1. A program development support system for developing a program that runs on a computer by executing an action designated by an event that occurs to transition one state among a plurality of states to another state, the program comprising: A program component storage unit that stores a plurality of program components for causing a computer to perform a predetermined process to configure, status information indicating each of a plurality of states transitioned by the program, and event information indicating the event And action information indicating the action, and time limit information indicating the time limit of the process for executing the action for each action, as state transition information, and the action corresponding to the action information. The program components used to execute Based on the state transition editor specified as information and the component information specified by the state transition editor, select the corresponding program component from the program component storage section and execute the action including the selected program component. Which is a program for measuring the actual measured time of execution when executing the above action, compares the measured actual measured time with the time limit specified by the state transition editor, and presents the comparison result. And a program generation unit that generates a program for executing the processing.
【請求項2】 上記プログラム開発支援システムは、さ
らに、 上記プログラム生成部により生成されたプログラムを実
行して、上記プログラムを実行することにより計測され
るアクションの実行実測時間をアクション毎に通知する
プログラム実行部と、 上記プログラム実行部により通知されたアクション毎の
実行実測時間を受信して、アクション毎の実行実測時間
を収集する実行実測時間収集部と、 上記実行実測時間収集部により収集されたアクション毎
の実行実測時間を取得するとともに、上記状態遷移エデ
ィタにより指定されたアクション毎の制限時間情報とを
取得して、上記制限時間情報と上記実行実測時間とを比
較して比較した結果を提示する実行時間解析部とを備え
たことを特徴とする請求項1記載のプログラム開発支援
システム。
2. The program development support system further executes a program generated by the program generation unit to notify an action execution measurement time measured by executing the program for each action. The execution unit, the execution measurement time collection unit that receives the execution measurement time for each action notified by the program execution unit, and collects the execution measurement time for each action, and the action collected by the execution measurement time collection unit The actual measurement time for each is acquired, the time limit information for each action specified by the state transition editor is acquired, and the result of comparing and comparing the time limit information and the actual measurement time is presented. The program development support system according to claim 1, further comprising an execution time analysis unit. .
【請求項3】 上記プログラム実行部は、発生するイベ
ントによって、1つのアクションを複数回実行し、 上記実行実測時間収集部は、収集したアクション毎の実
行実測時間を基にアクション毎の平均実行実測時間とア
クション毎の最大実行実測時間との少なくともいずれか
一方を求め、 上記実行時間解析部は、上記実行実測時間収集部により
求められたアクション毎の平均実測時間とアクション毎
の最大実行実測時間との少なくともいずれか一方と上記
状態遷移エディタにより指定されたアクション毎の制限
時間情報とを比較して、比較した結果を提示することを
特徴とする請求項2記載のプログラム開発支援システ
ム。
3. The program execution unit executes one action a plurality of times depending on an event that occurs, and the execution measurement time collection unit calculates an average execution measurement for each action based on the collected execution measurement time for each action. At least one of the time and the maximum execution measurement time for each action is obtained, and the execution time analysis unit calculates the average measurement time for each action and the maximum execution measurement time for each action obtained by the execution measurement time collection unit. 3. The program development support system according to claim 2, wherein at least one of the above and the time limit information for each action designated by the state transition editor are compared and the comparison result is presented.
【請求項4】 上記実行実測時間収集部は、収集したア
クション毎の実行実測時間を基にアクション毎の統計的
な値である統計実行実測時間を求め、 上記実行時間解析部は、上記実行実測時間収集部により
求められたアクション毎の統計実行実測時間と上記状態
遷移エディタにより指定されたアクション毎の制限時間
情報とを比較して、比較した結果を提示することを特徴
とする請求項2記載のプログラム開発支援システム。
4. The execution measurement time collection unit obtains a statistical execution measurement time that is a statistical value for each action based on the collected execution measurement time for each action, and the execution time analysis unit calculates the execution measurement time. The statistical execution actual measurement time for each action obtained by the time collection unit is compared with the time limit information for each action specified by the state transition editor, and the comparison result is presented. Program development support system.
【請求項5】 上記プログラム構成要素は、所定の処理
を行う関数である場合と所定の処理を行う1つ以上の関
数を含む場合とのいずれかであり、 上記プログラム生成部は、上記関数を実行する場合の関
数実行実測時間を測定する処理を実行するプログラムを
生成し、 上記プログラム実行部は、上記プログラム生成部により
生成されたプログラムを実行することにより上記関数実
行実測時間を測定する処理を実行し、 上記プログラム開発支援システムは、上記プログラム実
行部により実行される上記関数実行時間を測定する処理
により起動されて、関数毎の関数実行実測時間を測定し
て収集する関数実行時間測定部を備え、 上記実行時間解析部は、上記関数実行時間測定部により
収集された関数毎の関数実行実測時間を取得して提示す
ることを特徴とする請求項2記載のプログラム開発支援
システム。
5. The program component is either a function that performs a predetermined process or a case that includes one or more functions that perform a predetermined process, and the program generation unit executes the function. A program for executing the process of measuring the function execution actual measurement time when executing is generated, and the program execution unit executes the process of measuring the function execution actual measurement time by executing the program generated by the program generation unit. The program development support system is activated by a process for measuring the function execution time executed by the program execution unit, and a function execution time measurement unit for measuring and collecting the function execution actual measurement time for each function. The execution time analysis unit may acquire and present the function execution measurement time for each function collected by the function execution time measurement unit. Program development support system according to claim 2, wherein.
【請求項6】 上記状態遷移エディタは、上記構成要素
情報に対応させて、上記構成要素情報の示すプログラム
構成要素を実行する場合の処理の制限時間を示す構成要
素制限時間情報を指定し、 上記プログラム生成部は、上記プログラム構成要素毎に
上記プログラム構成要素を実行する場合の構成要素実行
実測時間を計測する処理と、上記計測した構成要素実行
実測時間と上記状態遷移エディタにより指定された構成
要素制限時間情報とを比較して、比較した結果を提示す
る処理とを実行するプログラムを生成することを特徴と
する請求項1、または、2記載のプログラム開発支援シ
ステム。
6. The state transition editor specifies constituent element time limit information indicating a time limit of processing when executing a program constituent element indicated by the constituent element information in association with the constituent element information, The program generation unit measures the component execution actual measurement time when the program component is executed for each program component, the measured component execution actual measurement time, and the component specified by the state transition editor. The program development support system according to claim 1 or 2, wherein a program that executes a process of presenting a result of the comparison by comparing the time limit information with the time limit information is generated.
【請求項7】 上記プログラム実行部は、上記プログラ
ム生成部により生成されたプログラムを実行することに
より計測されるプログラム構成要素毎の構成要素実行実
測時間を上記実行実測時間収集部に通知し、 上記実行実測時間収集部は、上記プログラム実行部によ
り通知されたプログラム構成要素毎の構成要素実行実測
時間を収集し、 上記実行時間解析部は、上記実行実測時間収集部により
収集されたプログラム構成要素毎の構成要素実行実測時
間と上記状態遷移エディタにより指定されたプログラム
構成要素毎の構成要素制限時間情報とを比較して、比較
した結果を提示することを特徴とする請求項6記載のプ
ログラム開発支援システム。
7. The program execution unit notifies the execution measurement time collection unit of the component execution measurement time for each program component measured by executing the program generated by the program generation unit, and The execution measurement time collection unit collects the component execution measurement time for each program component notified by the program execution unit, and the execution time analysis unit collects each program component collected by the execution measurement time collection unit. 7. The program development support according to claim 6, wherein the actual measurement time of component execution is compared with the component time limit information for each program component specified by the state transition editor, and the comparison result is presented. system.
【請求項8】 上記プログラム構成要素は、所定の処理
を行う関数である場合と所定の処理を行う1つ以上の関
数を含む場合のいずれかであり、 上記状態遷移エディタにより指定される構成要素制限時
間情報は、関数を実行する場合の処理の関数制限時間情
報であり、 上記プログラム生成部は、上記関数を実行する場合の関
数実行実測時間を測定する処理を実行するプログラムを
生成し、 上記プログラム実行部は、上記プログラム生成部により
生成されたプログラムを実行することにより上記関数実
行実測時間を測定する処理を実行し、 上記プログラム開発支援システムは、上記プログラム実
行部により実行される上記関数実行実測時間を測定する
処理により起動されて、関数毎の関数実行実測時間を測
定して収集する関数実行時間測定部を備え、 上記実行時間解析部は、上記関数実行時間測定部から収
集された関数毎の関数実行実測時間を取得するととも
に、上記状態遷移エディタにより指定された関数毎の関
数制限時間情報を取得して、上記関数実行実測時間と上
記関数制限時間情報とを比較して、比較した結果を提示
することを特徴とする請求項7記載のプログラム開発支
援システム。
8. The program component is either a function for performing a predetermined process or includes one or more functions for performing a predetermined process, and the component specified by the state transition editor. The time limit information is the function time limit information of the process when the function is executed, and the program generation unit generates a program that executes the process of measuring the function execution actually measured time when the function is executed, The program execution unit executes a process of measuring the function execution actual measurement time by executing the program generated by the program generation unit, and the program development support system executes the function execution performed by the program execution unit. Function execution time measurement unit that is started by the process of measuring the actual measurement time and measures and collects the actual measurement time of function execution for each function The execution time analysis unit acquires the function execution measurement time for each function collected from the function execution time measurement unit, and also acquires the function time limit information for each function specified by the state transition editor. 8. The program development support system according to claim 7, wherein the measured function execution time is compared with the function time limit information, and the comparison result is presented.
【請求項9】 上記実行時間解析部は、上記関数実行実
測時間を、上記関数実行実測時間の長い関数の順に提示
することと、上記関数実行実測時間を、上記アクション
の実行実測時間に与える影響の高い順に提示することの
いずれかを行うことを特徴とする請求項5、または、8
記載のプログラム開発支援システム。
9. The execution time analysis unit presents the function execution actually measured time in the order of the function having the longest function execution actually measured time, and the influence of the function execution actually measured time on the action actually measured time. The method of presenting in any one of the following order:
Described program development support system.
【請求項10】 上記関数実行時間測定部は、収集した
関数毎の関数実行実測時間を基に関数毎の統計的な値で
ある統計関数実行実測時間を求め、 上記実行時間解析部は、上記関数実行時間測定部により
求められた統計関数実行実測時間に基づいてばらつきの
大きい順に提示することを特徴とする請求項5、また
は、8記載のプログラム開発支援システム。
10. The function execution time measurement unit obtains a statistical function execution measurement time, which is a statistical value for each function, based on the collected function execution measurement time for each function, and the execution time analysis unit 9. The program development support system according to claim 5, wherein the program development support system presents the statistical function execution measurement time obtained by the function execution time measurement unit in descending order of variation.
【請求項11】 上記実行実測時間収集部は、収集した
アクション毎の実行実測時間を基にアクション毎の統計
的な値である統計実行実測時間を求め、 上記関数実行時間測定部は、収集した関数毎の関数実行
実測時間を基に関数毎の統計的な値である統計関数実行
実測時間を求め、 上記実行時間解析部は、上記実行実測時間収集部により
求められた統計実行実測時間と上記関数実行時間測定部
により求められた統計関数実行実測時間とに基づいて、
上記関数実行実測時間を、上記アクションの統計実行実
測時間に与える影響の高い順に提示することを特徴とす
る請求項5、または、8記載のプログラム開発支援シス
テム。
11. The actually measured execution time collecting unit obtains a statistically actually measured time, which is a statistical value for each action, based on the collected actually measured execution time for each action, and the function execution time measuring unit collects it. The statistical function execution actual measurement time, which is a statistical value for each function, is calculated based on the function execution actual measurement time for each function, and the execution time analysis unit calculates the statistical execution actual time and the statistical execution actual time acquired by the execution actual time collection unit. Based on the statistical function execution actual measurement time obtained by the function execution time measurement unit,
9. The program development support system according to claim 5, wherein the function execution actually measured time is presented in descending order of influence on the statistical execution actually measured time of the action.
【請求項12】 上記プログラム構成要素は、所定の処
理を行う関数である場合と所定の処理を行う1つ以上の
関数を含む場合とのいずれかであり、 上記状態遷移エディタにより指定される構成要素制限時
間情報は、関数を実行する場合の処理の関数制限時間情
報であり、 上記プログラム生成部は、上記関数を実行する場合の関
数実行実測時間を測定する処理を実行するプログラムを
生成し、 上記プログラム開発支援システムは、さらに、 上記プログラム生成部により生成されたプログラムを実
行して、上記プログラムを実行することにより上記関数
実行実測時間を測定する処理を実行するプログラム実行
部と、 上記プログラム実行部により実行される上記関数実行実
測時間を測定する処理により起動されて、関数毎の関数
実行実測時間を測定して収集する関数実行時間測定部
と、 上記関数実行時間測定部により収集された関数毎の関数
実行実測時間を取得するとともに、上記状態遷移エディ
タにより指定された関数毎の関数制限時間情報を取得し
て、上記関数実行実測時間と上記関数制限時間情報とを
比較して、比較した結果を提示する実行時間解析部とを
備えたことを特徴とする請求項1記載のプログラム開発
支援システム。
12. The configuration specified by the state transition editor, wherein the program component is either a function for performing a predetermined process or a function including one or more functions for performing a predetermined process. The element time limit information is the function time limit information of the process when the function is executed, and the program generation unit generates a program that executes the process of measuring the function execution measured time when the function is executed, The program development support system further executes a program generated by the program generation unit to execute a process of measuring the function execution measurement time by executing the program, and the program execution unit. The function execution actual measurement time for each function is The function execution time measurement unit that collects by setting the function execution time measurement unit for each function collected by the function execution time measurement unit is acquired, and the function time limit information for each function specified by the state transition editor is acquired. 2. The program development support system according to claim 1, further comprising: an execution time analysis unit that acquires and compares the measured function execution time with the function time limit information and presents the comparison result.
【請求項13】 発生するイベントによって複数の状態
の所定の状態間を指定されたアクションを実行して遷移
するコンピュータ上で動作するプログラムを開発するプ
ログラム開発支援方法において、 上記アクションに1つ以上含まれる所定の処理を行うプ
ログラム構成要素を、プログラム構成要素記憶部に記憶
し、 上記プログラムの遷移する複数の状態のそれぞれの状態
を示す状態情報と、上記イベントを示すイベント情報
と、上記アクションを示すアクション情報と、上記アク
ション毎に上記アクションを実行する場合の処理の制限
時間を示す制限時間情報とを、状態遷移情報として指定
するとともに、上記アクション情報に対応させて上記ア
クションに含むプログラム構成要素を構成要素情報とし
て指定し、 上記指定された構成要素情報を基に上記プログラム構成
要素記憶部から該当するプログラム構成要素を選択し
て、選択したプログラム構成要素を含むアクションを実
行するとともに、上記アクションを実行する場合の実行
実測時間を計測する処理と、上記計測した実行実測時間
と上記指定された制限時間とを比較して、比較した結果
を提示する処理とを実行するプログラムを生成すること
を特徴とするプログラム開発支援方法。
13. A program development support method for developing a program operating on a computer, which executes a specified action between a plurality of predetermined states depending on an event to be generated and transitions, wherein at least one of the actions is included. A program component for performing a predetermined process is stored in the program component storage unit, and state information indicating each state of a plurality of transition states of the program, event information indicating the event, and the action are indicated. Action information and time limit information indicating a time limit for processing when executing the action for each action are specified as state transition information, and program components included in the action in association with the action information are specified. It is specified as component information, and the component information specified above is specified. A process of selecting a corresponding program component from the program component storage unit based on a report, executing an action including the selected program component, and measuring an actual measurement time for executing the action; A program development support method comprising: comparing the measured actual measurement time with the specified time limit, and generating a program for executing a process of presenting the comparison result.
【請求項14】 上記プログラム開発支援方法は、 上記生成されたプログラムを実行して、上記プログラム
を実行することにより計測されるアクションの実行実測
時間をアクション毎に通知し、 上記通知されたアクション毎の実行実測時間を受信し
て、アクション毎の実行実測時間を収集し、 上記収集されたアクション毎の実行実測時間を取得する
とともに、上記指定されたアクション毎の制限時間情報
とを取得して、上記制限時間情報と上記実行実測時間と
を比較して、比較した結果を提示することを特徴とする
請求項13記載のプログラム開発支援方法。
14. The program development support method executes the generated program, and notifies, for each action, an actually measured execution time of an action measured by executing the program, and for each of the notified actions. The actual measurement time for each action is received, the actual measurement time for each action is collected, and the actual measurement time for each action is collected and the time limit information for each specified action is acquired. 14. The program development support method according to claim 13, wherein the time limit information is compared with the execution actual measurement time, and the comparison result is presented.
【請求項15】 上記プログラム開発支援方法は、上記
構成要素情報に対応させて、上記構成要素情報の示すプ
ログラム構成要素を実行する場合の処理の制限時間を示
す構成要素制限時間情報を指定し、 上記プログラム構成要素毎に上記プログラム構成要素を
実行する場合の構成要素実行実測時間を計測する処理
と、上記計測した構成要素実行実測時間と上記指定され
た構成要素制限時間情報とを比較して比較した結果を提
示する処理とを実行するプログラムを生成することを特
徴とする請求項13、または、14記載のプログラム開
発支援方法。
15. The program development support method specifies constituent element time limit information indicating a time limit of processing when executing a program constituent element indicated by the constituent element information, in association with the constituent element information, The process of measuring the component execution actual measurement time when the program component is executed for each program component, and the measured component execution actual measurement time and the specified component time limit information are compared and compared. 15. The program development support method according to claim 13 or 14, wherein a program that executes the processing of presenting the result is generated.
【請求項16】 上記プログラム構成要素は、所定の処
理を行う関数である場合と所定の処理を行う1つ以上の
関数を含む場合とのいずれかであり、 上記指定された制限時間情報は、関数を実行する場合の
処理の関数制限時間情報であり、 上記プログラムを生成する場合に、上記関数を実行する
場合の関数実行実測時間を測定する処理を実行するプロ
グラムを生成し、 上記プログラム開発支援方法は、さらに、 上記生成されたプログラムを実行して、上記プログラム
を実行することにより上記関数実行実測時間を測定する
処理を実行して、 上記関数実行実測時間を測定する処理により起動され
て、関数毎の関数実行実測時間を測定して収集し、 上記収集された関数毎の関数実行実測時間を取得すると
ともに、上記指定された関数毎の関数制限時間情報を取
得して、上記関数実行実測時間と上記関数制限時間情報
とを比較して、比較した結果を提示することを特徴とす
る請求項13記載のプログラム開発支援システム。
16. The program component is either a function for performing a predetermined process or a function including one or more functions for performing a predetermined process, and the designated time limit information is: This is the function time limit information of the process when executing the function. When the above program is generated, a program that executes the process of measuring the function execution actual measurement time when executing the above function is generated, and the above program development support is performed. The method further includes executing the generated program, executing the process of measuring the function execution actual measurement time by executing the program, and being activated by the process of measuring the function execution actual measurement time. The measured function execution time for each function is measured and collected, and the collected function execution measured time for each function is acquired and the function control for each specified function is acquired. 14. The program development support system according to claim 13, wherein the time limit information is acquired, the function execution actual measurement time is compared with the function time limit information, and the comparison result is presented.
【請求項17】 上記プログラム開発支援方法は、上記
生成されたプログラムを実行することにより計測される
プログラム構成要素毎の構成要素実行実測時間を通知
し、 上記通知されたプログラム構成要素毎の構成要素実行実
測時間を収集し、 上記収集されたプログラム構成要素毎の構成要素実行実
測時間と上記指定されたプログラム構成要素毎の構成要
素制限時間情報とを比較して、比較した結果を提示する
ことを特徴とする請求項15記載のプログラム開発支援
方法。
17. The program development support method notifies a component execution actual measurement time for each program component measured by executing the generated program, and the notified component for each program component. Collecting the actual measurement time of execution, comparing the collected actual time of execution of the constituent element of each program constituent element with the time limit information of the constituent element of each designated program constituent element, and presenting the result of the comparison. 16. The program development support method according to claim 15, which is characterized in that.
【請求項18】 発生するイベントによって複数の状態
の所定の状態間を指定されたアクションを実行して遷移
するコンピュータ上で動作するプログラムを開発するプ
ログラム開発支援プログラムを記録したコンピュータ読
み取り可能な記録媒体において、 上記アクションに1つ以上含まれる所定の処理を行うプ
ログラム構成要素を、プログラム構成要素記憶部に記憶
するプログラム構成要素記憶工程と、 上記プログラムの遷移する複数の状態のそれぞれの状態
を示す状態情報と、上記イベントを示すイベント情報
と、上記アクションを示すアクション情報と、上記アク
ション毎に上記アクションを実行する場合の処理の制限
時間を示す制限時間情報とを、状態遷移情報として指定
するとともに、上記アクション情報に対応させて上記ア
クションに含むプログラム構成要素を構成要素情報とし
て指定する状態遷移情報指定工程と、 上記状態遷移情報指定工程により指定された構成要素情
報を基に上記プログラム構成要素記憶部から該当するプ
ログラム構成要素を選択して、選択したプログラム構成
要素を含むアクションを実行するとともに、上記アクシ
ョンを実行する場合の実行実測時間を計測する処理と、
上記計測した実行実測時間と上記状態遷移情報指定工程
により指定された制限時間とを比較して比較した結果を
提示する処理とを実行するプログラムを生成するプログ
ラム生成工程とを有することを特徴とするプログラム開
発支援プログラムを記録したコンピュータ読み取り可能
な記録媒体。
18. A computer-readable recording medium recording a program development support program for developing a program operating on a computer, which executes a specified action between a plurality of predetermined states according to an event to be generated and transits. In the program component storage step of storing in the program component storage unit a program component for performing a predetermined process included in one or more of the above actions, and a state indicating each of a plurality of transition states of the program. Information, event information indicating the event, action information indicating the action, and time limit information indicating the time limit of processing when the action is executed for each of the actions, as well as specifying as state transition information, Corresponding to the above action information, the above action State transition information designating step of designating the program constituent elements included in the program as constituent element information, and selecting the corresponding program constituent element from the program constituent element storage unit based on the constituent element information designated by the state transition information specifying step. Then, while performing the action including the selected program component, the process of measuring the actual measurement time when executing the action,
And a program generation step for generating a program for executing a process of presenting the result of comparison by comparing the measured execution measurement time with the time limit specified by the state transition information specifying step. A computer-readable recording medium recording a program development support program.
【請求項19】 上記プログラム開発支援プログラムを
記録したコンピュータ読み取り可能な記録媒体は、さら
に、 上記プログラム生成工程により生成されたプログラムを
実行して、上記プログラムを実行することにより計測さ
れるアクションの実行実測時間をアクション毎に通知す
るプログラム実行工程と、 上記プログラム実行工程により通知されたアクション毎
の実行実測時間を受信して、アクション毎の実行実測時
間を収集する実行実測時間収集工程と、 上記実行実測時間収集工程により収集されたアクション
毎の実行実測時間を取得するとともに、上記状態遷移情
報指定工程により指定されたアクション毎の制限時間情
報とを取得して、上記制限時間情報と上記実行実測時間
とを比較して比較した結果を提示する実行時間解析工程
とを有することを特徴とする請求項18記載のプログラ
ム開発支援プログラムを記録したコンピュータ読み取り
可能な記録媒体。
19. A computer-readable recording medium recording the program development support program, further executing the program generated by the program generating step, and executing an action measured by executing the program. A program execution step for notifying the actual measurement time for each action, an execution actual measurement time collection step for receiving the actual execution time for each action notified by the program execution step, and collecting the actual execution time for each action, and the above execution The actual measurement time for each action collected by the actual measurement time collection step is acquired, and the time limit information for each action specified by the state transition information specification step is acquired, and the time limit information and the actual measurement time for execution are acquired. And an execution time analysis step that presents the results of comparison A computer-readable recording medium having the program development support program according to claim 18 recorded thereon.
【請求項20】 上記状態遷移情報指定工程は、上記構
成要素情報に対応させて、上記構成要素情報の示すプロ
グラム構成要素を実行する場合の処理の制限時間を示す
構成要素制限時間情報を指定し、 上記プログラム生成工程は、上記プログラム構成要素毎
に上記プログラム構成要素を実行する場合の構成要素実
行実測時間を計測する処理と、上記計測した構成要素実
行実測時間と上記状態遷移情報指定工程により指定され
た構成要素制限時間情報とを比較して比較した結果を提
示する処理とを実行するプログラムを生成することを特
徴とする請求項18、または、19記載のプログラム開
発支援プログラムを記録したコンピュータ読み取り可能
な記録媒体。
20. The state transition information designating step designates constituent element time limit information indicating a time limit of processing when executing a program constituent element indicated by the constituent element information, in association with the constituent element information. The program generation step is a process of measuring a component execution actual measurement time when the program component is executed for each of the program components, and the measured component execution actual measurement time and the state transition information designation step. 20. A computer program recording a program development support program according to claim 18, wherein the program is executed to compare the generated component element time limit information and present a result of comparison. Possible recording medium.
【請求項21】 上記プログラム実行工程は、上記プロ
グラム生成工程により生成されたプログラムを実行する
ことにより計測されるプログラム構成要素毎の構成要素
実行実測時間を通知し、 上記実行実測時間収集工程は、上記プログラム実行工程
により通知されたプログラム構成要素毎の構成要素実行
実測時間を収集し、 上記実行時間解析工程は、上記実行実測時間収集工程に
より収集されたプログラム構成要素毎の構成要素実行実
測時間と上記状態遷移情報指定工程により指定されたプ
ログラム構成要素毎の構成要素制限時間情報とを比較し
て、比較した結果を提示することを特徴とする請求項2
0記載のプログラム開発支援プログラムを記録したコン
ピュータ読み取り可能な記録媒体。
21. The program execution step notifies a component element actual measurement time measured for each program component by executing the program generated by the program generation step, and the execution actual measurement time collection step comprises: The component execution actual measurement time for each program component notified by the program execution step is collected, and the execution time analysis step is performed by the component execution actual measurement time for each program component collected by the execution actual time collection step. 3. The comparison result is presented by comparing with the constituent element time limit information for each program constituent element designated by the state transition information designating step.
A computer-readable recording medium in which the program development support program described in 0 is recorded.
【請求項22】 上記プログラム構成要素は、所定の処
理を行う関数である場合と所定の処理を行う1つ以上の
関数を含む場合とのいずれかであり、 上記状態遷移情報指定工程により指定される制限時間情
報は、関数を実行する場合の処理の関数制限時間情報で
あり、 上記プログラム生成工程は、上記関数を実行する場合の
関数実行実測時間を測定する処理を実行するプログラム
を生成し、 上記プログラム開発支援プログラムを記録したコンピュ
ータ読み取り可能な記録媒体は、さらに、 上記プログラム生成工程により生成されたプログラムを
実行して、上記プログラムを実行することにより上記関
数実行実測時間を測定する処理を実行するプログラム実
行工程と、 上記プログラム実行工程により実行される上記関数実行
実測時間を測定する処理により起動されて、関数毎の関
数実行実測時間を測定して収集する関数実行時間測定工
程と、 上記関数実行時間測定工程により収集された関数毎の関
数実行実測時間を取得するとともに、上記状態遷移情報
指定工程により指定された関数毎の関数制限時間情報を
取得して、上記関数実行実測時間と上記関数制限時間情
報とを比較して、比較した結果を提示する実行時間解析
工程とを有することを特徴とする請求項18記載のプロ
グラム開発支援プログラムを記録したコンピュータ読み
取り可能な記録媒体。
22. The program component is either a function for performing a predetermined process or a function including one or more functions for performing a predetermined process, and is designated by the state transition information designating step. The time limit information is the function time limit information of the process when the function is executed, and the program generation step generates a program that executes the process of measuring the function execution measured time when the function is executed, A computer-readable recording medium recording the program development support program further executes the program generated by the program generation step, and executes the process of measuring the function execution measurement time by executing the program. To measure the program execution process and the function execution measurement time executed by the program execution process. The function execution time measurement step that is started by the process and measures and collects the function execution measurement time for each function, and the function execution measurement time for each function collected by the function execution time measurement step is acquired and And a function execution time analysis step of acquiring the function time limit information for each function specified by the transition information specification step, comparing the function execution actual measurement time with the function time limit information, and presenting the comparison result. 19. A computer-readable recording medium having the program development support program according to claim 18 recorded therein.
【請求項23】 発生するイベントによって複数の状態
の所定の状態間を指定されたアクションを実行して遷移
するコンピュータ上で動作するプログラムを開発するプ
ログラム開発支援プログラムにおいて、 上記アクションに1つ以上含まれる所定の処理を行うプ
ログラム構成要素を、プログラム構成要素記憶部に記憶
するプログラム構成要素記憶工程と、 上記プログラムの遷移する複数の状態のそれぞれの状態
を示す状態情報と、上記イベントを示すイベント情報
と、上記アクションを示すアクション情報と、上記アク
ション毎に上記アクションを実行する場合の処理の制限
時間を示す制限時間情報とを、状態遷移情報として指定
するとともに、上記アクション情報に対応させて上記ア
クションに含むプログラム構成要素を構成要素情報とし
て指定する状態遷移情報指定工程と、 上記状態遷移情報指定工程により指定された構成要素情
報を基に上記プログラム構成要素記憶部から該当するプ
ログラム構成要素を選択して、選択したプログラム構成
要素を含むアクションを実行するとともに、上記アクシ
ョンを実行する場合の実行実測時間を計測する処理と、
上記計測した実行実測時間と上記状態遷移情報指定工程
により指定された制限時間とを比較して比較した結果を
提示する処理とを実行するプログラムを生成するプログ
ラム生成工程とを有することを特徴とするプログラム開
発支援プログラム。
23. A program development support program for developing a program operating on a computer, which executes a specified action between a plurality of predetermined states according to an event to be generated and transitions, one or more of the actions being included. Program component storing step of storing a program component for performing a predetermined process in a program component storage unit, state information indicating each of a plurality of transition states of the program, and event information indicating the event And action information indicating the action, and time limit information indicating the time limit of the process for executing the action for each action, as state transition information, and the action corresponding to the action information. The program components included in A state transition information designating step to be designated by the user, and a corresponding program component is selected from the program component storage unit on the basis of the component information designated by the state transition information designating step to include the selected program component. Along with executing the action, the process of measuring the actual measurement time when executing the above action,
And a program generation step for generating a program for executing a process of presenting the result of comparison by comparing the measured execution measurement time with the time limit specified by the state transition information specifying step. Program development support program.
【請求項24】 上記プログラム開発支援プログラム
は、さらに、 上記プログラム生成工程により生成されたプログラムを
実行して、上記プログラムを実行することにより計測さ
れるアクションの実行実測時間をアクション毎に通知す
るプログラム実行工程と、 上記プログラム実行工程により通知されたアクション毎
の実行実測時間を受信して、アクション毎の実行実測時
間を収集する実行実測時間収集工程と、 上記実行実測時間収集工程により収集されたアクション
毎の実行実測時間を取得するとともに、上記状態遷移情
報指定工程により指定されたアクション毎の制限時間情
報とを取得して、上記制限時間情報と上記実行実測時間
とを比較して比較した結果を提示する実行時間解析工程
とを有することを特徴とする請求項23記載のプログラ
ム開発支援プログラム。
24. The program development support program further executes the program generated in the program generating step, and notifies each action of an actually measured execution time of an action measured by executing the program. Execution process, an actual measurement time collection process that receives the actual measurement time for each action notified by the program execution process, and collects the actual measurement time for each action, and the action collected by the actual measurement time collection process While acquiring the actual measurement time for each, also obtain the time limit information for each action designated by the state transition information designating step, and compare the time limit information and the actual measurement time to the result of comparison. 24. The professional program according to claim 23, further comprising a step of analyzing the execution time. Gram development support program.
【請求項25】 上記状態遷移情報指定工程は、上記構
成要素情報に対応させて、上記構成要素情報の示すプロ
グラム構成要素を実行する場合の処理の制限時間を示す
構成要素制限時間情報を指定し、 上記プログラム生成工程は、上記プログラム構成要素毎
に上記プログラム構成要素を実行する場合の構成要素実
行実測時間を計測する処理と、上記計測した構成要素実
行実測時間と上記状態遷移情報指定工程により指定され
た構成要素制限時間情報とを比較して比較した結果を提
示する処理とを実行するプログラムを生成することを特
徴とする請求項23、または、24記載のプログラム開
発支援プログラム。
25. The state transition information designating step designates, in association with the constituent element information, constituent element time limit information indicating a processing time limit when executing a program constituent element indicated by the constituent element information. The program generation step is a process of measuring a component execution actual measurement time when the program component is executed for each of the program components, and the measured component execution actual measurement time and the state transition information designation step. 25. The program development support program according to claim 23, further comprising: a program for executing a process of comparing the generated component element time limit information and presenting a result of the comparison.
【請求項26】 上記プログラム実行工程は、上記プロ
グラム生成工程により生成されたプログラムを実行する
ことにより計測されるプログラム構成要素毎の構成要素
実行実測時間を通知し、 上記実行実測時間収集工程は、上記プログラム実行工程
により通知されたプログラム構成要素毎の構成要素実行
実測時間を収集し、 上記実行時間解析工程は、上記実行実測時間収集工程に
より収集されたプログラム構成要素毎の構成要素実行実
測時間と上記状態遷移情報指定工程により指定されたプ
ログラム構成要素毎の構成要素制限時間情報とを比較し
て、比較した結果を提示することを特徴とする請求項2
5記載のプログラム開発支援プログラム。
26. The program execution step notifies a component element actual measurement time for each program component measured by executing the program generated by the program generation step, and the execution actual measurement time collection step comprises: The component execution actual measurement time for each program component notified by the program execution step is collected, and the execution time analysis step is performed by the component execution actual measurement time for each program component collected by the execution actual time collection step. 3. The comparison result is presented by comparing with the constituent element time limit information for each program constituent element designated by the state transition information designating step.
The program development support program described in 5.
【請求項27】 上記プログラム構成要素は、所定の処
理を行う関数である場合と所定の処理を行う1つ以上の
関数を含む場合とのいずれかであり、 上記状態遷移情報指定工程により指定される制限時間情
報は、関数を実行する場合の処理の関数制限時間情報で
あり、 上記プログラム生成工程は、上記関数を実行する場合の
関数実行実測時間を測定する処理を実行するプログラム
を生成し、 上記プログラム開発支援プログラムは、さらに、 上記プログラム生成工程により生成されたプログラムを
実行して、上記プログラムを実行することにより上記関
数実行実測時間を測定する処理を実行するプログラム実
行工程と、 上記プログラム実行工程により実行される上記関数実行
実測時間を測定する処理により起動されて、関数毎の関
数実行実測時間を測定して収集する関数実行時間測定工
程と、 上記関数実行時間測定工程により収集された関数毎の関
数実行実測時間を取得するとともに、上記状態遷移情報
指定工程により指定された関数毎の関数制限時間情報を
取得して、上記関数実行実測時間と上記関数制限時間情
報とを比較して、比較した結果を提示する実行時間解析
工程とを有することを特徴とする請求項23記載のプロ
グラム開発支援プログラム。
27. The program component is either a function for performing a predetermined process or a function including one or more functions for performing a predetermined process, and is designated by the state transition information designating step. The time limit information is the function time limit information of the process when the function is executed, and the program generation step generates a program that executes the process of measuring the function execution measured time when the function is executed, The program development support program further executes the program generated in the program generation step, and executes the program to execute a process of measuring the function execution measurement time, and the program execution step. It is started by the process of measuring the above-mentioned function execution actual measurement executed by the process, and the function execution actual measurement for each function The function execution time measurement step of measuring and collecting the interval, and the function execution actual measurement time of each function collected by the function execution time measurement step, and the function of each function specified by the state transition information specifying step 24. The program development according to claim 23, further comprising: an execution time analysis step of acquiring time limit information, comparing the function execution actual measurement time with the function time limit information, and presenting a result of the comparison. Support program.
JP2001213482A 2001-07-13 2001-07-13 Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program Pending JP2003030007A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001213482A JP2003030007A (en) 2001-07-13 2001-07-13 Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2001213482A JP2003030007A (en) 2001-07-13 2001-07-13 Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program

Publications (1)

Publication Number Publication Date
JP2003030007A true JP2003030007A (en) 2003-01-31

Family

ID=19048449

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001213482A Pending JP2003030007A (en) 2001-07-13 2001-07-13 Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program

Country Status (1)

Country Link
JP (1) JP2003030007A (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2005093465A1 (en) * 2004-03-29 2008-02-14 Hoya株式会社 Optical member having antireflection film
JP2008077317A (en) * 2006-09-20 2008-04-03 I L C:Kk Verification device, verification program and verification method
JP2009519520A (en) * 2005-12-16 2009-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, system and computer program for measuring usage of software products based on real-time benchmarking of processing power
JP2010211682A (en) * 2009-03-12 2010-09-24 Hitachi Information & Control Solutions Ltd Apparatus and method of supporting program design, and program
JP2013504825A (en) * 2009-09-10 2013-02-07 レベル スリー コミュニケーションズ,エルエルシー Cache server with extensible programming framework
JP2021057061A (en) * 2020-12-08 2021-04-08 三菱電機株式会社 State transition editing device and state transition editing program
JP2021135798A (en) * 2020-02-27 2021-09-13 オムロン株式会社 Information processing device, information processing method, and program
JP2022046890A (en) * 2020-09-11 2022-03-24 三菱電機株式会社 Monitoring control system
JP2023068697A (en) * 2021-11-04 2023-05-18 三菱電機株式会社 Information processing device, information processing method

Cited By (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2005093465A1 (en) * 2004-03-29 2008-02-14 Hoya株式会社 Optical member having antireflection film
JP4707656B2 (en) * 2004-03-29 2011-06-22 Hoya株式会社 Optical member having antireflection film
US8799870B2 (en) 2005-12-16 2014-08-05 International Business Machines Corporation Method system and computer program for metering usage of software products based on real-time benchmarking of processing power
JP2009519520A (en) * 2005-12-16 2009-05-14 インターナショナル・ビジネス・マシーンズ・コーポレーション Method, system and computer program for measuring usage of software products based on real-time benchmarking of processing power
JP2008077317A (en) * 2006-09-20 2008-04-03 I L C:Kk Verification device, verification program and verification method
JP2010211682A (en) * 2009-03-12 2010-09-24 Hitachi Information & Control Solutions Ltd Apparatus and method of supporting program design, and program
JP2013504825A (en) * 2009-09-10 2013-02-07 レベル スリー コミュニケーションズ,エルエルシー Cache server with extensible programming framework
JP2021135798A (en) * 2020-02-27 2021-09-13 オムロン株式会社 Information processing device, information processing method, and program
JP7457281B2 (en) 2020-02-27 2024-03-28 オムロン株式会社 Information processing device, information processing method, and program
JP2022046890A (en) * 2020-09-11 2022-03-24 三菱電機株式会社 Monitoring control system
JP7433173B2 (en) 2020-09-11 2024-02-19 三菱電機株式会社 supervisory control system
JP2021057061A (en) * 2020-12-08 2021-04-08 三菱電機株式会社 State transition editing device and state transition editing program
JP7008780B2 (en) 2020-12-08 2022-01-25 三菱電機株式会社 State transition editing device and state transition editing program
JP2023068697A (en) * 2021-11-04 2023-05-18 三菱電機株式会社 Information processing device, information processing method

Similar Documents

Publication Publication Date Title
Urunuela et al. Storm a simulation tool for real-time multiprocessor scheduling evaluation
CN103140838B (en) Method of converting source code
US8719789B2 (en) Measuring coupling between coverage tasks and use thereof
US20040103396A1 (en) System for verification of enterprise software systems
US8719799B2 (en) Measuring coupling between coverage tasks and use thereof
US20110016452A1 (en) Method and system for identifying regression test cases for a software
US20080033700A1 (en) Apparatus and method for analyzing design change impact on product development process
JP6674459B2 (en) Debug graph
KR101541970B1 (en) Test scenario generating device, allication testing system comprising the same, test scenario generating method, and recordable meduim thereof
KR20170078770A (en) Application testing
US8527254B2 (en) Simulator engine development system and simulator engine development method
Winzinger et al. Model-based analysis of serverless applications
JP2003030007A (en) Program development support system, program development support method, computer-readable recording medium storing program development support program, and program development support program
CN103186463B (en) Determine the method and system of the test specification of software
Samuel et al. A novel test case design technique using dynamic slicing of UML sequence diagrams
JP2009099111A (en) Rule inspection program, rule inspection method, and rule inspection device
KR100808257B1 (en) Apparatus and Method for prototype development of embedded system
Tran-Cao et al. Measuring software functional size: towards an effective measurement of complexity
CN112527312B (en) Test method and test device for embedded system
Fahringer et al. Teuta: Tool support for performance modeling of distributed and parallel applications
Cortellessa et al. Software model refactoring driven by performance antipattern detection
CN112527638B (en) Program monitoring system, method and computer readable storage medium
US20120232880A1 (en) Performance assessment of a program model
US20080276187A1 (en) Iconic Programming System with Disabling and Enabling of Dependent Objects
Abdellatief et al. Component-based software system dependency metrics based on component information flow measurements

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040518

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20041019