JP5118660B2 - プログラム設計支援装置、プログラム設計支援方法、およびプログラム - Google Patents
プログラム設計支援装置、プログラム設計支援方法、およびプログラム Download PDFInfo
- Publication number
- JP5118660B2 JP5118660B2 JP2009059207A JP2009059207A JP5118660B2 JP 5118660 B2 JP5118660 B2 JP 5118660B2 JP 2009059207 A JP2009059207 A JP 2009059207A JP 2009059207 A JP2009059207 A JP 2009059207A JP 5118660 B2 JP5118660 B2 JP 5118660B2
- Authority
- JP
- Japan
- Prior art keywords
- function
- state transition
- program
- design support
- unit
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Debugging And Monitoring (AREA)
Description
また、特許文献1に記載された技術においては、状態遷移図(状態遷移情報)に実行制限時間が記載されたアクションについて、実際の処理の実行に要する時間と実行制限時間との比較結果を利用者に通知する方法が明確化されていないという問題があった。
図1に示すように、プログラム設計支援装置1は、制御部10と、表示部20と、入力部30と、記憶部40と、メモリ部50とを含んで構成される。
このような状態遷移の制御を、状態・イベント制御部110が行い、また、後記する表示制御部160を介して、この状態遷移表200を表示部20に表示させる。
図3は、本実施形態に係るファンクション定義部202により定義される個々の関数の処理を示すシーケンス図である。図3に示す処理シーケンス図においては、処理情報定義セル201のファンクション定義部202で定義されたファンクションにおいて、実行される個々の関数の処理が時系列に示される。この図3の例では、「Function A」の実行処理において、具体的には、関数「Function a1」をコールした後、関数「Function a2」をコールする処理を行う。なお、状態・イベント制御部110は、表示制御部160を介して、この処理シーケンス図を表示部20に表示させる。
図5は、本実施形態に係るタイマ情報データベース42に記憶されるタイマ情報300の一例を示す図である。タイマ情報300には、図4で示した閾値設定画面1000においてユーザが関数ごとに設定した閾値301が記憶される。このタイマ情報300には、タイマID(Identification)、タスク名、処理情報定義セル番号、関数名(Function)、および閾値301が記憶される。
このようにすることで、ボトルネック検出条件設定部130は、ファンクションをさらに細分化した各関数ごとの実行制限時間を閾値301として設定することができる。
トレース情報生成部140は、各関数が処理されるごとに、タイムスタンプ401を記憶し、その処理内容を含めたトレース情報400を生成し、記憶部40に記憶する処理を行う。
具体的には、ボトルネック検出部150は、タイマ情報300において閾値301が設定された関数について、トレース情報400の解析を行う。つまり、ボトルネック検出部150は、閾値301が設定されている関数の状態が「Enter」、並びに「Exit」となるタイムスタンプ401を検索して、その関数の実行時間(実測値)の算出を行う。
そして、ボトルネック検出部150は、算出した実行時間とタイマ情報300に記憶された閾値301とを比較し、実行時間が閾値301を超えているか否かを判定する。そして、ボトルネック検出部150は、実行時間が閾値301を超えていた場合には、表示制御部160にその情報を通知する。
図7に示す状態遷移表200´に基づき、パワーオフ状態(図2の状態遷移表200のS1に相当)時の電源オン(図2の状態遷移表200のE1に相当)のイベント発生で、セル1−1の処理情報定義セル201が、状態・イベント制御部110により実行される。そして、ファンクション定義部202に基づき、「PowerOn」(ファンクション)が、ファンクション実行部120により実行され、この処理が所定時間内に完了すれば、パワーオン状態に遷移する。一方所定時間内に完了しなければ、パワーオフ状態に遷移する。
ここで、状態遷移表200´のセル1−2,2−1の処理情報定義セル201には、何も定義されていない。
なお、図8の処理シーケンス図は、表示部20に表示された図7で示される状態遷移表200´のセル1−1の処理情報定義セル201が、キーボードやタッチパネル等の入力部30を介してユーザにより選択されることで、状態・イベント制御部110が表示制御部160を介して表示部20に表示させる。
図9は、本実施形態に係るプログラム設計支援装置1が行う処理の流れを示すフローチャートである。
図10は、本実施形態に係る閾値設定画面1000´の具体例を示す図である。図10に示すように、関数「Initial_FuncA」について閾値「100ms」、関数「Initial_FuncB」について閾値「200ms」が、ユーザにより設定される。
なお、この閾値設定画面1000´は、ユーザが表示部20に表示された図7に示す状態遷移表200´のセル1−1の処理情報定義セル201を入力部30を介して選択し、図8に示す処理シーケンス図が表示された画面において、例えば、閾値設定釦を画面内に設け、ユーザによりその閾値設定釦が押下されることで、この閾値設定画面1000´を表示させるようにすることができる。
図11は、本実施形態に係る閾値設定画面1000´に閾値301が入力された場合のタイマ情報300´の例を示した図である。図11に示すように、各関数名に対応して閾値301が記憶される。
図12は、本実施形態に係るトレース情報生成部140が生成するトレース情報400´の具体例を示す図である。図12に示すように、例えば、関数「Initial_FuncA」の状態「Enter」の処理時間がタイムスタンプ「00001000」と記憶され、関数「Initial_FuncA」の状態「Exit」の処理時間がタイムスタンプ「00001050」と記憶される。
具体的には、図12のトレース情報400´のタイムスタンプ401において、タスクαについての処理情報定義セル番号1−1の関数「Initial_FuncA」の状態「Enter」のタイムスタンプ「00001000」と、同じく関数「Initial_FuncA」の状態「Exit」のタイムスタンプ「00001050」を検出することで、同関数の処理時間が「50」msと算出される。
また、関数Initial_FuncB」の状態「Enter」のタイムスタンプ「00001051」と、同じく関数「Initial_FuncB」の状態「Exit」のタイムスタンプ「00001301」を検出することで、同関数の処理時間が「250」msと算出される。
実測値が閾値301を超えていない場合は(ステップS906→No)、次のステップS908へ進む。一方、実測値が閾値301を超えている場合は(ステップS906→Yes)、ボトルネック検出部150は、表示制御部160にその情報を通知(ステップS907)した上で、ステップS908へ進む。
図13は、本実施形態に係る状態遷移表200´(図7参照)に警告表示を加えた図である。また、図14は、本実施形態に係る閾値設定画面1000´(図10参照)に警告表示を加えたプログラム設計支援画面2000を示す図である。図13に示すように、状態遷移表200´のセル1−1の処理情報定義セル201を例えばハッチング表示し、表示形式を視覚的に変更することで、表示形式が変更された処理情報定義セル201内の関数の中に、実測値が閾値301を超えている関数が存在することを示す。また、図14に示すように閾値設定画面1000´においてユーザが設定した閾値301に加え実測値を表示し、実測値が閾値301を超えた関数について表示形式を視覚的に変更したハッチング処理等を行う。このように、表示形式を変更することで、ユーザに、その関数が閾値301を超えた処理時間を要することを認識させる。
10 制御部
20 表示部
30 入力部
40 記憶部
41 状態遷移情報DB
42 タイマ情報DB
43 トレース情報DB
50 メモリ部
110 状態・イベント制御部
120 ファンクション実行部
130 ボトルネック検出条件設定部
140 トレース情報生成部
150 ボトルネック検出部
160 表示制御部
200 状態遷移情報(状態遷移表)
201 処理情報定義セル
202 ファンクション定義部
203 遷移先定義部
300 タイマ情報
400 トレース情報
1000 閾値設定画面
2000 プログラム設計支援画面
Claims (3)
- プログラムにおける状態の遷移と、前記状態の遷移の際に実行される前記プログラムの処理であるファンクションとを含む状態遷移に関する情報を表示部に表示することにより、プログラム設計を支援するプログラム設計支援装置であって、
複数の状態間の遷移、前記遷移の際に実行されるファンクション、および前記ファンクションを構成する1つ以上の関数、を含む状態遷移情報が記憶される記憶部と、
前記記憶部に記憶された状態遷移情報に基づいて、前記ファンクションを構成する前記関数を時系列に表示する閾値設定画面を前記表示部に表示させ、前記関数の処理ごとに許容される処理時間である所定の閾値を設定させるボトルネック検出条件設定部と、
前記ファンクションの処理を実行するファンクション実行部と、
前記実行されたファンクションを構成する各関数ごとの処理時間である実測値を検出するトレース情報生成部と、
前記検出された実測値と、前記関数ごとに設定された閾値とを比較するボトルネック検出部と、
前記比較した結果、前記関数の処理時間である実測値が前記閾値を超えている場合に、前記閾値設定画面における当該関数の表現形式を視覚的に変更し、かつ、当該関数の前記閾値および前記実測値を表示したプログラム設計支援画面を前記表示部に表示させる表示制御部と、
を備えることを特徴とするプログラム設計支援装置。 - プログラムにおける状態の遷移と、前記状態の遷移の際に実行される前記プログラムの処理であるファンクションとを含む状態遷移に関する情報を表示部に表示することにより、プログラム設計を支援するプログラム設計支援装置のプログラム設計支援方法であって、
前記プログラム設計支援装置は、
複数の状態間の遷移、前記遷移の際に実行されるファンクション、および前記ファンクションを構成する1つ以上の関数、を含む状態遷移情報が記憶される記憶部を備え、
前記記憶部に記憶された状態遷移情報に基づいて、前記ファンクションを構成する前記関数を時系列に表示する閾値設定画面を前記表示部に表示させ、前記関数の処理ごとに許容される処理時間である所定の閾値を設定させるステップと、
前記ファンクションの処理を実行するステップと、
前記実行されたファンクションを構成する各関数ごとの処理時間である実測値を検出するステップと、
前記検出された実測値と、前記関数ごとに設定された閾値とを比較するステップと、
前記比較した結果、前記関数の処理時間である実測値が前記閾値を超えている場合に、前記閾値設定画面における当該関数の表現形式を視覚的に変更し、かつ、当該関数の前記閾値および前記実測値を表示したプログラム設計支援画面を前記表示部に表示させるステップと、
を実行することを特徴とするプログラム設計支援方法。 - 請求項2に記載のプログラム設計支援方法をコンピュータに実行させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009059207A JP5118660B2 (ja) | 2009-03-12 | 2009-03-12 | プログラム設計支援装置、プログラム設計支援方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2009059207A JP5118660B2 (ja) | 2009-03-12 | 2009-03-12 | プログラム設計支援装置、プログラム設計支援方法、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010211682A JP2010211682A (ja) | 2010-09-24 |
JP5118660B2 true JP5118660B2 (ja) | 2013-01-16 |
Family
ID=42971736
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2009059207A Expired - Fee Related JP5118660B2 (ja) | 2009-03-12 | 2009-03-12 | プログラム設計支援装置、プログラム設計支援方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5118660B2 (ja) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0756723A (ja) * | 1993-08-11 | 1995-03-03 | Fujitsu Ltd | コンパイラ装置 |
JP2002244882A (ja) * | 2001-02-19 | 2002-08-30 | Nec Soft Ltd | プログラムテスト監視システム、プログラムテスト監視方法、および、プログラムテスト監視プログラム |
JP2003030007A (ja) * | 2001-07-13 | 2003-01-31 | Mitsubishi Electric Corp | プログラム開発支援システム及び、プログラム開発支援方法及び、プログラム開発支援プログラムを記録したコンピュータ読み取り可能な記録媒体及び、プログラム開発支援プログラム |
JP2004252585A (ja) * | 2003-02-18 | 2004-09-09 | Matsushita Electric Ind Co Ltd | プログラム検証システム |
-
2009
- 2009-03-12 JP JP2009059207A patent/JP5118660B2/ja not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010211682A (ja) | 2010-09-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7917558B2 (en) | Easily graspable numerical expression display apparatus | |
JP6221323B2 (ja) | グラフ表示装置およびその制御プログラム | |
JP3853827B1 (ja) | スプレッドシートのセル内範囲グラフ表示方法 | |
JP2010211281A (ja) | グラフ表示制御装置およびプログラム | |
US20180136832A1 (en) | Circular user interface | |
JP2012230652A (ja) | 可読性評価方法、可読性評価装置及び可読性評価プログラム | |
JP2015095219A (ja) | 情報処理装置、情報処理方法および記憶媒体 | |
JP2008305339A (ja) | 操作時間測定装置及び方法、習熟度判定装置及び方法、プログラム | |
JP5118660B2 (ja) | プログラム設計支援装置、プログラム設計支援方法、およびプログラム | |
KR101372197B1 (ko) | Plc 설계 장치 | |
JP5866957B2 (ja) | 情報処理装置、表示制御方法及びプログラム | |
EP3432148A1 (en) | Simulation reproduction device and simulation reproduction program | |
JP2014134921A (ja) | ユーザインタフェース設計装置及びユーザインタフェース装置 | |
JPH04114266A (ja) | 文書処理装置 | |
JP2006331184A (ja) | 電子機器およびその制御プログラム | |
JP7477027B1 (ja) | 情報処理装置、情報処理方法、及びプログラム | |
JP6342236B2 (ja) | 入力支援装置、入力支援システムおよびプログラム | |
JP2011248679A (ja) | グラフ表示装置およびプログラム | |
JP2012003656A (ja) | 情報端末装置 | |
JP5446312B2 (ja) | 電子式計算機およびプログラム | |
JP2016149141A (ja) | ヒストグラム表示装置、ヒストグラム表示方法およびプログラム | |
CN116501233A (zh) | 软键盘交互方法、设备及存储介质 | |
JP5659760B2 (ja) | 電子計算機およびプログラム | |
JP5510253B2 (ja) | 図形表示装置およびプログラム | |
JP2000347840A (ja) | ソースプログラム自動生成装置、ソースプログラム自動生成方法およびその方法を記録した記録媒体 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110117 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111024 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120619 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120820 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121009 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121019 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20151026 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |