TOP特許意匠商標
特許ウォッチ Twitter
10個以上の画像は省略されています。
公開番号2025114344
公報種別公開特許公報(A)
公開日2025-08-05
出願番号2024008986
出願日2024-01-24
発明の名称プログラム検証支援システム
出願人株式会社日立製作所
代理人弁理士法人一色国際特許事務所
主分類G06F 11/36 20060101AFI20250729BHJP(計算;計数)
要約【課題】ループ部を含むプログラムに対してそのテストを効率良く行う。
【解決手段】所定の処理を繰り返すループ部を有する第1プログラム100と、第1プログラム100における変数の初期値及び第1プログラム100の実行終了後の変数の値とを記憶し、第1プログラム100に変数の初期値を入力することにより、ループ部の実行開始直前の変数の値からの、ループ部の実行終了直後における変数の値の変更部分を特定し、特定した変数の値の変更部分をスタブデータとして生成し、第1プログラム100に対応する第2プログラム200におけるループ部をスタブデータが示す変更部分で置換して第2プログラム200を実行し、第2プログラム200の実行結果と、第1プログラム100の実行終了後の変数の値との比較結果を示すデータを出力する、プログラム検証支援システム1。
【選択図】図1
特許請求の範囲【請求項1】
所定の処理を繰り返すループ部を有する第1プログラムと、前記第1プログラムにおける変数の初期値及び前記第1プログラムの実行終了後の前記変数の値とを記憶する記憶装置、及び、
前記第1プログラムに前記変数の初期値を入力することにより、前記ループ部の実行開始直前の変数の値からの、前記ループ部の実行終了直後における変数の値の変更部分を特定し、特定した変数の値の変更部分をスタブデータとして生成するループ部置換スタブ生成処理と、
前記第1プログラムに対応する第2プログラムにおけるループ部を前記スタブデータが示す変更部分で置換して前記第2プログラムを実行し、前記第2プログラムの実行結果と、前記第1プログラムの実行終了後の変数の値との比較結果を示すデータを出力する置換テスト実行処理とを実行する制御装置
を備える、プログラム検証支援システム。
続きを表示(約 1,600 文字)【請求項2】
前記制御装置は、
前記ループ部置換スタブ生成処理において、前記第1プログラムのループ部の処理負荷が所定の条件を満たすか否かを判定し、前記ループ部の処理負荷が前記所定の条件を満たすと判定した場合に、前記スタブデータを生成する、
請求項1に記載のプログラム検証支援システム。
【請求項3】
前記制御装置は、
前記ループ部置換スタブ生成処理において、前記第1プログラムのループ部で実行される処理の合計ステップ数が所定数以上であるか否かを判定し、前記第1プログラムのループ部で実行される処理の合計ステップ数が前記所定数以上であると判定した場合に、前記スタブデータを生成する、
請求項2に記載のプログラム検証支援システム。
【請求項4】
前記制御装置は、
前記ループ部置換スタブ生成処理において、前記第1プログラムのループ部で実行される処理の合計ステップ数が不定又は不明であるか否かを判定し、前記第1プログラムのループ部で実行される処理の合計ステップ数が不定又は不明であると判定した場合に、前記スタブデータを生成するか否かの指定を受け付け、前記スタブデータを生成する指定を受け付けた場合に前記スタブデータを生成する、
請求項2に記載のプログラム検証支援システム。
【請求項5】
前記制御装置は、
前記ループ部置換スタブ生成処理において、前記第1プログラムのループ部で実行される処理の合計ステップ数が不定又は不明であるか否かを判定し、前記第1プログラムのループ部で実行される処理の合計ステップ数が不定若しくは不明であると判定した場合にのみ、又は、前記第1プログラムのループ部で実行される処理の合計ステップ数が不定でも不明でもないと判定した場合にのみ、前記スタブデータを生成する、
請求項2に記載のプログラム検証支援システム。
【請求項6】
前記制御装置は、
前記第1プログラムの各命令を解析することにより、第1の処理を繰り返す第1のループ部と、第2の処理を繰り返す、前記第1の処理内の第2のループ部とを特定して各処理を解析する構文解析処理を実行し、
前記ループ部置換スタブ生成処理において、前記第1プログラムの第2のループ部の処理負荷が所定の条件を満たすか否かを、前記第2のループ部の各処理の解析結果に基づき判定し、前記第2のループ部の処理負荷が前記所定の条件を満たすと判定した場合に、前記第2のループ部に係るスタブデータを生成し、
前記ループ部置換スタブ生成処理において、前記第1プログラムの第1のループ部の処理負荷が所定の条件を満たすか否かを、前記第2のループ部及び前記第1のループ部の各処理の解析結果に基づき判定し、前記第1のループ部の処理負荷が前記所定の条件を満たすと判定した場合に、前記第1のループ部に係るスタブデータを生成する、
請求項1に記載のプログラム検証支援システム。
【請求項7】
前記制御装置は、
前記ループ部置換スタブ生成処理において、前記第1プログラムに前記変数の初期値を入力することにより、前記ループ部の実行開始直前及び実行終了直後における変数の値を特定し、特定した変数の値を変数値セットデータとして生成し、
前記第2プログラムにおけるループ部の実行直前に前記変数値セットデータの実行開始直前における変数の値を設定して前記ループ部を実行することにより、前記ループ部の実行終了直後の変数の値を取得し、取得した変数の値と、前記変数値セットデータの実行開始直後における変数の値との比較結果を示すデータを出力するループ部テスト実行処理を実行する、
請求項1に記載のプログラム検証支援システム。

発明の詳細な説明【技術分野】
【0001】
本発明は、プログラム検証支援システムに関する。
続きを表示(約 2,400 文字)【背景技術】
【0002】
時代の変化や実行環境の変化などにより、ある言語で記述されたプログラムのソースコードを他の言語に変更する(変換する)必要がある場合がある。そして変換後は、変換後のプログラムが変換前のプログラムと同様に動作するかをテストする必要がある(現新一致の確認)。
【0003】
このようなテストを行う際は、プログラムに入力するデータを定義したテストケースを作成することがある。このような例として、例えば特許文献1には、情報システムの開発工程におけるテスト仕様書を基にテストケースである生成テストケースを生成する仕様ベーステストケース生成部と、情報システムの開発工程におけるテストケースと生成テストケースとを比較して相違を出力するテストケース妥当性検証部とを備え、情報システムの開発工程におけるテストケースを基に自然文のテスト仕様書である生成テスト仕様書を生成する自然文生成部と、情報システムの開発工程におけるテスト仕様書と生成テスト仕様書とを比較して相違を出力するテスト仕様妥当性検証部とを備えるテストケース作成支援装置が開示されている。
【先行技術文献】
【特許文献】
【0004】
特開2023-120879号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
ところで、ソースコードにループ部(繰り返し処理)が含まれていると、そのループの繰り返し回数又は処理内容によっては、テストケースを用いたテスト実行時間が非常に長くなる場合がある。このような場合であってもテストケースを減らすことは難しいため、ループ部のテストをより効率良く(より短い時間で)行うニーズが存在する。
【0006】
本発明は、このような事情に鑑みてなされたものであり、その目的は、ループ部を含むプログラムに対してそのテストを効率良く行うことが可能なプログラム検証支援システムを提供することにある。
【課題を解決するための手段】
【0007】
上記課題を解決するための本発明の一つは、所定の処理を繰り返すループ部を有する第1プログラムと、前記第1プログラムにおける変数の初期値及び前記第1プログラムの実行終了後の前記変数の値とを記憶する記憶装置、及び、前記第1プログラムに前記変数の初期値を入力することにより、前記ループ部の実行開始直前の変数の値からの、前記ループ部の実行終了直後における変数の値の変更部分を特定し、特定した変数の値の変更部分をスタブデータとして生成するループ部置換スタブ生成処理と、前記第1プログラムに対応する第2プログラムにおけるループ部を前記スタブデータが示す変更部分で置換して前記第2プログラムを実行し、前記第2プログラムの実行結果と、前記第1プログラムの実行終了後の変数の値との比較結果を示すデータを出力する置換テスト実行処理とを実行する制御装置を備える、プログラム検証支援システムである。
【発明の効果】
【0008】
本発明によれば、ループ部を含むプログラムに対してそのテストを効率良く行うことができる。
上記した以外の構成及び効果等は、以下の実施形態の説明により明らかにされる。
【図面の簡単な説明】
【0009】
本実施形態に係るプログラム検証支援システムの構成の一例を示す図である。
第1プログラムのソースコードの一例である。
言語変換支援装置が備える主な機能部(プログラム)の一例を説明するブロック図である。
プログラム検証支援システムにおける各情報処理装置が備えるハードウェア構成の一例を示す図である。
プログラム検証支援処理の一例を示すフロー図である。
スタブ生成処理の一例を説明するフロー図である。
生成されるループ部位置情報の一例を示す図である。
ループ部スタブ化判定処理の詳細を説明するフロー図である。
ループ部置換スタブ生成処理の詳細を説明するフロー図である。
生成されるループ部突入前全変数値セットの一例を示す図である。
生成されるループ部突入後全変数値セットの一例を示す図である。
生成されるループ部置換スタブの一例を示す図である。
テスト実行処理の一例を説明するフロー図である。
ループ部テスト実行処理の詳細を説明するフロー図である。
テスト実行処理の他の一例を説明するフロー図である。
【発明を実施するための形態】
【0010】
図面を参照して、本発明の実施形態について詳細に説明する。
図1は、本実施形態に係るプログラム検証支援システム1の構成の一例を示す図である。プログラム検証支援システム1は、第1の言語で記述されたプログラム(第1プログラム100)を記憶するユーザ端末10と、第1プログラム100を、第2の言語で記述されたプログラム(第2プログラム200)に変換すると共にテストケースデータ300を生成する言語変換装置20と、第1プログラム100に基づきループ部置換スタブ400を生成する言語変換支援装置40と、テストケースデータ300及びループ部置換スタブ400等に基づき第2プログラム200に対するテストの内容を定義したテストコード500を生成するテストコード生成装置30と、第2プログラム200及びテストコード500に基づき、言語変換装置20が実行した第1プログラム100から第2プログラム200への変換が正しく行われた否かを検証する検証装置50とを含んで構成される。
(【0011】以降は省略されています)

この特許をJ-PlatPat(特許庁公式サイト)で参照する

関連特許

株式会社日立製作所
欠陥知識循環システム
今日
株式会社日立製作所
直動接点および巻線切替装置
8日前
株式会社日立製作所
人物特性推定システム及び方法
1日前
株式会社日立製作所
情報処理システム、情報処理方法
8日前
株式会社日立製作所
再エネ調達手段選定支援システム
8日前
株式会社日立製作所
ログ抽出方法及びログ抽出システム
2日前
株式会社日立製作所
障害対応システム及び障害対応方法
今日
株式会社日立製作所
図面整合システムおよび図面整合方法
3日前
株式会社日立製作所
鉄道システムおよび鉄道車両の制御方法
2日前
株式会社日立製作所
水素製造計画装置および水素製造システム
8日前
株式会社日立製作所
寸法計測管理システム及び寸法計測管理方法
6日前
株式会社日立製作所
根本原因分析システム、方法およびプログラム
8日前
株式会社日立製作所
健康施策支援システム、方法、およびプログラム
9日前
株式会社日立製作所
低次元モデル生成装置および低次元モデル生成方法
1日前
株式会社日立製作所
生産計画・運用立案支援システムおよびその制御方法
今日
株式会社日立製作所
情報処理システム、情報処理方法及び情報処理プログラム
8日前
株式会社日立製作所
システム構築情報修正支援システム、方法、およびプログラム
今日
株式会社日立製作所
コード生成装置、コード生成システム、および、コード生成方法
2日前
株式会社日立製作所
エレべーター装置、及びエレベーター装置のコンテンツ放送制御方法
2日前
株式会社日立製作所
電力変換装置の制御装置および制御方法、並びに3レベルインバータ
8日前
株式会社日立製作所
赤外透過性部材並びにこれを用いた筐体、鉄道車両、変圧器及びエンジン
今日
株式会社日立製作所
ストリーミングデータを入力とする機械学習モデルの学習システム及び学習方法
3日前
株式会社日立製作所
内部裏面構造検出方法、内部裏面構造検出システム、及び接合構造物の製造方法
8日前
株式会社日立製作所
アセットモデル生成装置、セキュリティ評価システムおよびアセットモデル生成方法
今日
株式会社日立製作所
サービストークン化を使用する資産ライフサイクルアカウンティングおよび利害関係者の価値付加によるサプライチェーンの説明責任の構築
6日前
株式会社日立製作所
使用済み吸着剤の再活性化方法、再活性化装置、再活性化された吸着剤、再活性化された吸着剤を充填した吸着処理部を有する油再生装置、再活性化装置を備えた油再生装置
2日前
個人
裁判のAI化
1か月前
個人
情報処理システム
2か月前
個人
工程設計支援装置
27日前
個人
フラワーコートA
1か月前
個人
冷凍食品輸出支援構造
7日前
個人
介護情報提供システム
1か月前
個人
為替ポイント伊達夢貯
7日前
個人
設計支援システム
1か月前
個人
表変換編集支援システム
今日
個人
携帯情報端末装置
28日前
続きを見る