JPH0438522A - ソフトウェアプログラムシミュレータ - Google Patents

ソフトウェアプログラムシミュレータ

Info

Publication number
JPH0438522A
JPH0438522A JP2145271A JP14527190A JPH0438522A JP H0438522 A JPH0438522 A JP H0438522A JP 2145271 A JP2145271 A JP 2145271A JP 14527190 A JP14527190 A JP 14527190A JP H0438522 A JPH0438522 A JP H0438522A
Authority
JP
Japan
Prior art keywords
module
program
function
design
software program
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
JP2145271A
Other languages
English (en)
Inventor
Yasuhiro Ueki
植木 泰博
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 JP2145271A priority Critical patent/JPH0438522A/ja
Publication of JPH0438522A publication Critical patent/JPH0438522A/ja
Pending legal-status Critical Current

Links

Landscapes

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

Abstract

(57)【要約】本公報は電子出願前の出願データであるた
め要約のデータは記録されません。

Description

【発明の詳細な説明】 [産業上の利用分野] この発明は、ソフトウェアプログラムシミュレータ、特
に、ソフトウェアプログラム論理設計およびソフトウラ
エアプログラム実行シミュレーションに関するものであ
る。
[従来の技術] 第10図は、例えば従来の、ソフトウェアプログラムを
作成するためのフローチャート図である。
この第10図において、(1)はシステム要件を定義す
るステップ、(2)は、定義されたシステム要件に基づ
いてシステムの概要を決定する外部設計ステップ、(3
)は、更にシステムの詳細を決定する内部設計ステップ
、(4)は、設計されたシステムに基づいて、プログラ
ムを具体化するためのプログラム構造化設計ステップ、
(5)は、プログラム記述言語や疑似言語を用いたモジ
ュール・関数などを設計する論理設計ステップ、(9)
は、論理設計されたモジュール・関数のコーディングを
行うステップである。
従来、ソフトウェアプログラムの作成は、上記のように
、システム要件の定義ステップ(1)、外部設計ステッ
プ(2)、内部設計ステップ(3)、構造化設計ステッ
プ(4)、論理設計ステップ(5)、そしてコーディン
グステップ(9)の過程を経て行われており、コーディ
ングステップ(9)の後に、デバッガ、カバレッジなど
のツールが繰り返されてソフトウェアプログラムが完成
されていた。
[発明が解決しようとする課題] 上記のような従来のソフトウェアプログラム作成フロー
では、コーディングを行った後でないと実行時間の予測
ができないので、作成されたソフトウェアプログラムの
処理スピードに時間がかかるところや論理などを、作り
直すのに手間がかかっていたという問題点があった。
この発明は、上記のような問題点を解決するためになさ
れたものであり、コーディング前に、シミュレーション
を行うことによって、デバッガ、カバレッジなどにかか
る手間や時間を軽減することを目的とする。
[課題を解決するための手段] この発明に係るソフトウェアプログラムシミュレータは
、モジュール・関数の論理設計を行うステップとコーデ
ィングを行うステップとの間に、論理設計されたモジュ
ール・関数の内容をプログラム記述言語や疑似言語で記
述するステラップ、および、記述されたモジュール 関
数の論理内容をプログラム構造から展開してシミュレー
トすることによってプログラムの実行時間の算出を行う
ステップを備え、シミュレーションの結果が、期待通り
であればコーディングを行い、期待通りでなければ、プ
ログラムの構造設計化ステップまたは論理設計ステップ
からやり直すようにしたものである。
[作用] この発明においては、モジュール 関数の論理がプログ
ラム記述言語や疑似言語で記述されてプログラム構造図
が画面上に表示され、このプログラム構造図の中の特定
のモジュール 関数が指定されると、当該モジュール・
関数についてシミュレーションが行われることによって
そのモジュール・関数の実行時間が算出されてその内容
が表示される。
[実施例コ 以下、この発明の一実施例を図に基づいて説明する。
第1図は、この発明の一実施例を示す、ソフトウェアプ
ログラムシミュレータによるプログラムを作成するため
のフローチャート図である。この第1図において、ステ
ップ(1)〜(5)およびステップ(9)は従来例にお
けるものと同等であるので、ここではその説明を省略す
る。(6)は、モジュール・関数の論理をプログラム記
述言語や疑似言語で記述するステップ、(7)は、モジ
ュール・関数の論理をプログラム構造から展開してシミ
ュレートするステップ、(8)は、得られたシミュレー
ション結果が期待通りであるかどうかを判断するステッ
プ、(10)はシミュレーション結果が期待通りでない
場合にモジュール・関数・プログラム構造などの設計を
やり直すためのステップである。
第2図は、ソフトウェアプログラムをシミュレートする
ときの実行過程を示すフローチャート図、第3図は、例
えば、トップモジュールの論理内容をプログラム記述言
語で記述したものである。第4図は、上記第3図のトッ
プモジュール内で宣言されたモジュールメモリクリアの
論理内容をプログラム記述言語で記述した例である。第
5図は。
上記第3図のトップモジュール内で宣言されたモジュー
ルファイルの読み込みの論理をプログラム記述言語で記
述した例である。第6図は、上記第3図で宣言されたト
ップモジュール内で宣言されたモジュールデータ変換の
論理をプログラム記述言語で記述した例である。第7図
は、上記第6図におけるモジュールデータ変換Aの論理
をプログラム記述言語で記述した例である。第8図は、
上記第3〜7図に示されているモジュールで構成された
プログラム構造図である。
次に、上述のように構成されているソフトウェアプログ
ラムシミュレータによるソフトウェアプログラムの作成
について、第1〜8図を適宜に参照しながら説明する。
モジュール・関数などの論理設計を行った後に、モジュ
ール・関数の論理内容をプログラム記述言語や疑似言語
で記述する。このプログラム記述言語や疑似言語で記述
されたモジュール・関数に基づいて、第8図に示したよ
うなプログタム構造図を作成して、これをコンピュータ
の画面上に表示する。この画面表示されたプログラム構
造図上のモジュール・関数名の中の1点が指定されるこ
とによって、その指定されたモジュール・関数の内容が
、第2図に示されているようなフローに従って展開され
る。
例えば、画面表示された第8図のプログラム構造図の中
のモジュール「データ変換」を指定すると、そのモジュ
ール「データ変換」の論理データが読み取られて、その
内容が第6図に示されているように、「データ変換A」
および「データ変換B」というように展開される。更に
、第7図に示されているように、下位のモジュールの論
理データの内容が、「テーブルAのデータを取り出す」
、実行される関数であるrsprintf」、「テーブ
ルCに書き込む」というように展開されている。第8図
に示されているデータ変換Bについても、上述のデータ
変換Aと同様にしてその論理内容が展開される。
次に、上述のように展開されたモジュール「データ変換
」の実行時間の算出が行われる。
第9図は、モジュール・間数の実行時間データ。
ループの回数データなどを記述したファイル例である。
このファイルは、BASICFUNCTIONとして備
えられている基本的な関数の実行時間が記述された部分
、MODULEとしてモジュールの最下位レベルの実行
時間が記述された部分、そして、FUNCTIONとし
て関数の最下位レベルの実行時間が記述された部分とで
構成されており、モジュール・関数の中にループがある
場合は、 MODULE :モジュール・関数名 :ループ文字名 ループの回数 というように記述される。
実行時間の算出は、この第9図のファイルの内容を参照
しながらなされる。
ここでは「データ変換A」を例にとってプログラム実行
時間の算出について説明する。
第9図のファイルの内容によると、第7図のモジュール
「テーブルAのデータを取り出す」ために要する時間は
1、データ変換Aに使用される関数rsprintf」
の実行時間が0.001、モジュール「テーブルCに書
き込む」ために要する時間が1である。また、これらの
3関数を実行するループが500回であるので、モジュ
ール「データ変換A」の実行時間は、 (1+O,OO1+1)ホ500 として算出される。
尚、上記実施例では、実行時間の算出は、各モジュール
・関数を展開してからなされているが、各モジュール・
関数が実行されるときにその都度なされてもよく、この
場合も同様の効果を奏するものである。
[発明の効果] 以上説明したとおり、この発明によれば、そのモジュー
ル・関数の論理設計を行うステップとコーディングを行
うステップとの間に、論理設計されたモジュール・関数
の内容をプログラム記述言語や疑似言語で記述するステ
ップ、および、上記記述されたモジュール・関数の論理
内容をプログラム構造から展開してシミュレートするこ
とによってプログラムの実行時間の算出を行うステップ
を備え、上記シミュレーションの結果が期待通りであれ
ばコーディングステップに移り、期待通りでなければ、
プログラムの構造化設計ステップまたは論理設計ステッ
プからやり直すようにしたことから、ソフトウェアプロ
グラムをコーディングする前に各モジュール・関数の実
行予想時間が算出できるので、ソフトウェアプログラム
の実行に時間のかかるところや論理が把握でき、また、
ソフトウェアプログラムを作成して実行を行った後で、
処理スピードが遅いときなどにソフトウェアプログラム
を作り直す手間が省けてソフトウェアプログラム開発の
期間短縮につながるという効果がある。
【図面の簡単な説明】
第1図は、この発明の一実施例による、ソフトウェアプ
ログラムシミュレータによってソフトウェアプログラム
を作成するためのフローチャート図、第2図は、ソフト
ウェアプログラムをシミュレートするためのフローチャ
ート図、第3図は、トップモジュールをプログラム記述
言語で記述した例示図、第4図は、上記第3図のトップ
モジュール内で宣言されたモジュール「メモリクリア」
の論理内容をプログラム記述言語で記述した例示図、第
5図は、上記第3図のトップモジュール内で宣言された
モジュール「ファイルの読み込み」の論理内容をプログ
ラム記述言語で記述した例示図、第6図は、上記第3図
のトップモジュール内で宣言されたモジュール「データ
変換」の論理内容をプロスラム記述言語で記述した例示
図、第7図は、上記第6図のモジュール内で宣言された
モジュール「データ変換A」の論理内容をプログラム記
述言語で記述した例示図、第8図は、上記第3〜7図ま
でのモジュールで構成されたプログラム構造図、第9図
は、モジュール・関数の実行時間データおよびループの
回数データを記述したファイルの例示図、第1O図は、
従来の、ソフトウェアプログラムを作成するためのフロ
ーチャート図である。 図中で、 (1)はシステム要件を定義するステップ、(2)はシ
ステムの外部設計を行うステップ、(3)はシステムの
内部設計を行うステップ、(4)はプログラムの構造化
設計を行うステップ (5)はモジュール 関数の論理設計ステップ、(6)
はモジュール・関数の論理内容をプログラム記述言語や
疑似言語で記述するステップ (7)はモジュール・関数の論理をプログラム構造から
展開してシミュレートするステップ (8)は期待通りのシミュレーション結果が得られたが
どうがを判断するステップ、 (9)はコーディングを行うステップ、(lO)はモジ
ュール・関数・プログラム構造などの設計のやり直しを
するステップ、である。 尚、図中の同一符号は同一または相当部分を示す。

Claims (1)

  1. 【特許請求の範囲】  システム要件を定義するステップ、 システム要件に基づいてシステムの外部設計を行うステ
    ップ、 システムの内部設計を行うステップ、 上記設計内容に基づいてプログラムの構造化設計を行う
    ステップ、 モジュール・関数の論理設計を行うステップ、および、 上記論理設計された、モジュール・関数の内容をコーデ
    ィングするステップ、 を備えたソフトウェアプログラムシミュレータであって
    、 上記モジュール・関数の論理設計を行うステップとコー
    ディングを行うステップとの間に、上記論理設計された
    モジュール・関数の内容をプログラム記述言語や疑似言
    語で記述するステップ、および、 上記記述されたモジュール・関数の論理内容をプログラ
    ム構造から展開してシミュレートすることによってプロ
    グラムの実行時間の算出を行うステップ、 を備え、 該シミュレーションの結果が、期待通りであればコーデ
    ィングステップに移り、期待通りでなければ、上記プロ
    グラムの構造化設計ステップまたはモジュール・関数の
    論理設計ステップからやり直すこと、 を特徴とするソフトウェアプログラムシミュレータ。
JP2145271A 1990-06-05 1990-06-05 ソフトウェアプログラムシミュレータ Pending JPH0438522A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2145271A JPH0438522A (ja) 1990-06-05 1990-06-05 ソフトウェアプログラムシミュレータ

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2145271A JPH0438522A (ja) 1990-06-05 1990-06-05 ソフトウェアプログラムシミュレータ

Publications (1)

Publication Number Publication Date
JPH0438522A true JPH0438522A (ja) 1992-02-07

Family

ID=15381278

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2145271A Pending JPH0438522A (ja) 1990-06-05 1990-06-05 ソフトウェアプログラムシミュレータ

Country Status (1)

Country Link
JP (1) JPH0438522A (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07168709A (ja) * 1993-12-15 1995-07-04 Nec Corp プログラムジェネレータ利用仕様シミュレーション方法およびその装置
WO2009044589A1 (ja) * 2007-10-03 2009-04-09 Nec Corporation 階層型負荷推定システム、方法およびプログラム
US7716447B2 (en) 2006-03-29 2010-05-11 Nec Corporation System, method and program for supporting a computer sizing having N level hierarchical resources
JP5536892B2 (ja) * 2010-08-16 2014-07-02 三菱電機株式会社 制御プログラム生成装置、制御プログラム生成プログラム、及び制御プログラム生成方法

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07168709A (ja) * 1993-12-15 1995-07-04 Nec Corp プログラムジェネレータ利用仕様シミュレーション方法およびその装置
US7716447B2 (en) 2006-03-29 2010-05-11 Nec Corporation System, method and program for supporting a computer sizing having N level hierarchical resources
WO2009044589A1 (ja) * 2007-10-03 2009-04-09 Nec Corporation 階層型負荷推定システム、方法およびプログラム
JP5282908B2 (ja) * 2007-10-03 2013-09-04 日本電気株式会社 階層型負荷推定システム、方法およびプログラム
US8583698B2 (en) 2007-10-03 2013-11-12 Nec Corporation Hierarchical load estimation system, method and program
JP5536892B2 (ja) * 2010-08-16 2014-07-02 三菱電機株式会社 制御プログラム生成装置、制御プログラム生成プログラム、及び制御プログラム生成方法

Similar Documents

Publication Publication Date Title
Holland et al. A new instructional operating system
JPH11513512A (ja) ディジタル信号プロセッサの製造方法
JPS6116100B2 (ja)
Stahl GPSS-40 years of development
JPH0438522A (ja) ソフトウェアプログラムシミュレータ
JPH08314760A (ja) プログラム開発支援装置
JP2828590B2 (ja) マイクロプログラム検証方法
Ludewig Espreso—A system for process control software specification
JP2007018313A (ja) 回路設計プログラム、回路設計装置、回路設計方法
JP3424548B2 (ja) 組み込み機器用ソフトウエア論理シミュレータ
Sun et al. Quatros: a preemptive multithreaded embedded OS for education
JP2943590B2 (ja) インタプリタ型シミュレーション方法
JP3728368B2 (ja) リソース競合チェック装置、アセンブル装置、リンク装置、命令パイプラインシミュレーション装置、リソース競合チェック方法、およびリソース競合チェックプログラムを記録した媒体
JP2919406B2 (ja) 性能評価方法
JP2001256079A (ja) ソフトウェアのデバッグ方法および論理回路のデバッグ方法
JP2000276344A (ja) オブジェクトを利用したプログラム作成システムおよびそのプログラム作成方法
Caci Testing object-oriented systems
JPS59151247A (ja) 情報処理装置の試験装置
Weber A tool for computer design
Berry Towards ISMs for OPSs
JPH08212103A (ja) マルチスレッド・プロセッサのテスト・データ作成方法
Yu Software synthesis for System-on-Chip
Peters et al. GPSS-40 Years of development
JPH0576660B2 (ja)
JPH04358232A (ja) 情報処理装置の機能試験方法