JP2011022682A - プログラム自動生成装置およびプログラム自動生成方法 - Google Patents

プログラム自動生成装置およびプログラム自動生成方法 Download PDF

Info

Publication number
JP2011022682A
JP2011022682A JP2009165312A JP2009165312A JP2011022682A JP 2011022682 A JP2011022682 A JP 2011022682A JP 2009165312 A JP2009165312 A JP 2009165312A JP 2009165312 A JP2009165312 A JP 2009165312A JP 2011022682 A JP2011022682 A JP 2011022682A
Authority
JP
Japan
Prior art keywords
program
data
version number
code generation
user interface
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.)
Granted
Application number
JP2009165312A
Other languages
English (en)
Other versions
JP5316273B2 (ja
Inventor
Hirokazu Tokuda
寛和 徳田
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.)
Fuji Electric Co Ltd
Original Assignee
Fuji Electric Holdings Ltd
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 Fuji Electric Holdings Ltd filed Critical Fuji Electric Holdings Ltd
Priority to JP2009165312A priority Critical patent/JP5316273B2/ja
Publication of JP2011022682A publication Critical patent/JP2011022682A/ja
Application granted granted Critical
Publication of JP5316273B2 publication Critical patent/JP5316273B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Abstract

【課題】ユーザインターフェースを扱う機能と図形式のプログラムをテキスト形式のプログラムに変換する機能をそれぞれ独立して管理して、ユーザインターフェースを扱う機能に変更があった場合でも、必要に応じて変更前のプログラムを生成すること。
【解決手段】論理素子シンボルに対応する機能または論理素子シンボル間の接続関係をプログラム生成処理の処理単位ごとに各処理単位の識別情報である項目を付して図形式データとして記憶装置に保存するユーザインターフェース手段4と、図形式データをもとに処理単位ごとにプログラムの生成処理を実行するコード生成手段5とを備え、ユーザインターフェース手段およびコード生成手段はそれぞれ独立して差し替え可能にする。
【選択図】 図2

Description

本発明は、図形によってプログラムを記述し、その図形情報をもとにコンピュータが実行あるいは翻訳可能なプログラムを自動生成するプログラム自動生成装置およびプログラム自動生成方法に関する。
通常、プログラムの製作に際しては、C言語などの高級言語を利用して原始プログラムを記述し、コンパイラを用いてコンピュータが実行可能な形式に変換するという方法が採られている。近年、プログラムの品質や生産性向上のために、図形を用いて原始プログラムを記述し、これをコンピュータが直接実行可能な形式に変換したり、あるいは、C言語などの従来のプログラム開発環境を用いればコンピュータが実行可能な形式に変換できるような中間的な形式(多くはテキスト形式)に変換したりする技術が提案されている。この方法は、設計者が記述するプログラムを図形で表現するため、視認性が良く生産性が向上すると共に、プログラムの不具合が容易に発見できるようになるため品質の向上も期待できる。
従来の図形式のプログラミング技術の例として、特許文献1には、アセンブラのライブラリに対応した図形情報で記述される機能ブロック図によりプログラムを自動生成する技術が開示されている。特許文献2には、図形式で記述したプログラム(モデル)を演算周期ごとに分割し重複メモリを削除するプログラム自動生成装置の技術が開示されている。特許文献3には、定数データ領域を効率的に扱い組み込みマイコンで扱えるプログラムを自動生成するための技術が開示されている。特許文献4には、プログラム記憶手段、プログラム表示手段、プログラム配置手段、履歴テーブル作成手段、操作シミュレーション手段により構成される、プログラム自動生成装置の技術が、開示されている。特許文献5には、グラフィックシンボルを画面上でつなぎ合わせて制御ソフトウェアを設計するプログラム自動生成装置の技術が開示されている。特許文献6には、論理素子シンボルとその間の接続関係から自動的に実行順序を決定するプログラム自動生成装置の技術が開示されている。特許文献7には、属性情報が付記されて図示された制御プログラム仕様に基づいて制御用プログラムを自動生成する装置の技術が開示されている。特許文献8には、グラフィカル・オブジェクトの特性や関係を定義してグラフィカル・エディタによりプログラムの動作を記述するビジュアル・プログラミング方法の技術が開示されている。特許文献9には、絵情報により表現された、標準モジュールを組み合わせて作成される非標準モジュールにより制御用プログラムを記述するプログラム自動生成装置の技術が開示されている。
このような図形式プログラムからコンピュータが実行/翻訳可能なプログラムを生成するプログラム自動生成装置を構成するには、図形の入力・検索・管理などのユーザインターフェース(CADインターフェース)を扱う機能と、図形式のプログラムをテキスト形式のプログラムに変換する機能が必要となる。
特許文献11には、CADインターフェース機能によって構造化プログラムを扱うための技術が開示されている。また、特許文献12には、図形式のプログラムをテキスト形式のプログラムに変換する機能に関する技術が開示されている。従来は、例えば特許文献6の図1に記載されているように、これらの機能が一体として実装されていた。これは、プログラム自動生成装置のユーザインターフェース機能が改良されることに伴って、コード生成機能により生成されるコードも改良されることがあり得るからである。
特開2007−128345号公報 特開2006−201841号公報 特開2002−91762号公報 特開平7−200277号公報 特開平6−301548号公報 特開平5−88869号公報 特開平5−265734号公報 WO98/40817 特開平2−277126号公報 特開昭64−76278号公報 特開2007−11507号公報 特開2006−285480号公報
しかしながら、特に組み込みの分野では、特許文献2で指摘されているように、実行タイミングが厳しいという事情がある。これは、特許文献7にも、ハードウェアの情報への言及があるとおり、組み込み分野では、ハードウェアと協調動作をするようにプログラムが製作される必要があることが一因となっている。
プログラム自動生成装置の更新によりユーザインターフェース等の機能が変更された場合、同時に図形式プログラムをもとに生成されるプログラムにも変更が生じると、実行タイミングが変化する可能性がある。このため、既存のプログラムの再利用を考えた場合、変新されたプログラム自動生成装置によって生成されたプログラムを使用するのが難しくなり、更新されたプログラム自動生成装置自体の使用が難しくなるという問題があった。
また、特許文献2や特許文献3で指摘されているように、メモリについても組み込みソフトでは余裕がない場合が多く、メモリの利用状況が変化した場合も、同様に互換性がないとみなされ、新しいプログラム自動生成装置の適用が難しくなるという問題もあった。
さらに、プログラム自動生成装置に図形式プログラムの記述からコンピュータが実行/翻訳可能なプログラムを自動生成するまでの一連の機能を一体として実装しようとすると、図形の入力などのユーザインターフェースを扱う機能と、図形式のプログラムをテキスト形式のプログラムに変換する機能のように、異なる性質のプログラムを同時に製作する必要があり、効率的に製作することができないという問題もあった。
本発明は、上述のかかる事情に鑑みてなされたものであり、ユーザインターフェースを扱う機能、および図形式のプログラムをテキスト形式のプログラムに変換する機能をそれぞれ独立して管理でき、ユーザインターフェースを扱う機能に変更があった場合でも、必要に応じて変更前のコードを生成することのできるプログラム自動生成装置およびプログラム自動生成方法を提供することを目的とする。
上記目的を達成するため、本発明に係わるプログラム自動生成装置は、論理素子シンボルと該論理素子シンボル間の接続関係によって表される図形情報に基づいてプログラムを生成するプログラム自動生成装置であって、論理素子シンボルに対応する機能または論理素子シンボル間の接続関係をプログラム生成処理の処理単位ごとに各処理単位の識別情報である項目を付して図形式データ(2)として記憶装置(12)に保存するユーザインターフェース手段(4)と、図形式データをもとに処理単位ごとにプログラムの生成処理を実行するコード生成手段(5)と、を備え、ユーザインターフェース手段およびコード生成手段はそれぞれ独立して差し替え可能であることを特徴とする。
本発明のユーザインターフェース手段は、コード生成手段に渡す図形式データをコード生成手段の処理単位ごとに作成するので、ユーザインターフェース手段とコード生成手段を別々に構成することが可能となり、これにより、コード生成手段のみを差し替えて動作させることができるようになる。
好ましくは、この図形式データは、ユーザインターフェース手段の版数(バージョン)データを含み、コード生成手段は、版数データを取得して図形式データを処理可能か否かを判定し、処理可能でないと判定した場合は異常処理を実行するようにすると良い。
これにより、コード生成手段は起動時にまず図形式データ中の版数データのみを検索すればよく、迅速に処理の可否の判定をすることができる。ここで、版数データとは、プログラム等の更新履歴を表すいわゆるバージョン情報のほか、更新によってデータ形式を識別できるデータを追加するなど実質的に版数として管理可能な情報も含む。
本発明によるプログラム自動生成装置は、さらに、ユーザインターフェース手段とコード生成手段が正常に機能するように該両手段の版数データの組み合わせ情報を保存する版数管理テーブル(8)を備え、コード生成手段は、起動時に組み合わせ情報に基づいて、該ユーザインターフェース手段の版数データと該コード生成手段の版数データの組み合わせが正当か否かを判定し、正当であると判定された場合にのみ該ユーザインターフェース手段によって保存された図形式データをもとにプログラムの生成処理を実行することを特徴とする。
本発明では、正常に機能する組み合わせとなるユーザインターフェース手段とコード生成手段の版数を管理するようにする一方、ユーザインターフェース手段は、自己の版数データをコード生成手段に渡すことによって、コード生成手段は正当な組み合わせか否かを正確に判定することができる。
なお、版数データの異なる複数のコード生成手段と、複数のコード生成手段のうち起動すべきコード生成手段を特定するコード生成指定手段とを設け、ユーザインターフェース手段は、コード生成指定手段によって特定されたコード生成手段を起動するようにしてもよい。
また、本発明に係わるプログラム自動生成装置は、さらに項目ごとにユーザインターフェース手段の版数データを特定する項目別版数管理テーブル(7)を備え、コード生成手段は、処理すべきか否かの基準となる版数データを起動時に取得し、図形式データの項目ごとに項目別版数管理テーブルを参照して、項目の版数データと取得した版数データとに基づいて処理を実行すべきか否かを判定し、処理すべきであると判定された項目についてのみ所定の処理を実行することを特徴とする。
本発明では、処理単位の項目ごとにその機能を追加・更新したときのユーザインターフェース手段の版数データを関連付けて管理して、コード生成手段は、起動時に入力した版数データを基準に処理すべきか否かを判定して処理すべき項目についてのみ生成処理を実行する。これにより、ユーザインターフェース手段の版数が更新されても、既存の組み込みシステムのプログラムと同じ版数のプログラムを生成することができる。
好ましくは、コード生成手段は、処理を行った各項目の版数データのうち、最大の版数データを演算して生成したプログラムに関連付けて出力するようにすると良い。これにより、その生成プログラムの版数の管理ができ、新たにプログラムを生成するような場合に、その版数を指定すれば同等の機能・性能を有するプログラムを生成することができる。また、版数データ指定をしないことによって最新の版数データでプログラムを生成することもできる。
本発明に係わるプログラム自動生成装置のコード生成手段は、項目の版数データと入力した版数データとに基づいて処理を実行すべきか否かを判定した結果、処理すべきでないと判定した項目と、項目別版数管理テーブルで該項目に関連付けられた版数データとを記録しておき、プログラムの生成処理の終了後に、記録した内容を出力することを特徴とする。
本発明では、処理されなかった項目を履歴として記録するので、生成されたプログラムをシステムに組み込む上で問題が無いかどうかを確認ができ、また、必ずしもユーザインターフェース手段のバージョンアップに合わせてコード生成手段をバージョンアップしなくても、既設のシステム対応のプログラムを生成することが可能となる。
好ましくは、コード生成手段は、図形式データがユーザインターフェース手段の版数データ変更その他の要因により拡張され、コード生成手段の処理不可能な項目を含む場合であっても、処理可能な項目のみを実行してプログラムを生成するようにするとよい。
コード生成手段の処理不可能な項目を含む場合に異常終了しないことによって、その版数にあったプログラムの生成が可能になる。
さらに、本発明に係わるプログラム自動生成装置のユーザインターフェース手段は、図形式データにアクセスするための記憶装置内の位置関係を表すルート情報をコード生成手段に渡し、コード生成手段は、該ルート情報をもとに図形式データを取得し、該図形式データに基づいてプログラムを生成することを特徴とする。
このルート情報によって確実にユーザインターフェース手段とコード生成手段の版数のマッチングをとることができる。なお、ルート情報に基づいてユーザインターフェース手段の実行プログラムからもっとも近い位置に存在するコード生成手段が起動されるようにしても良い。
本発明に係わるプログラム自動生成方法は、コンピュータ装置を用いて、図形情報をもとにプログラムを生成するプログラム自動生成方法であって、論理素子シンボルと該論理素子シンボル間の接続関係によって表される図形情報の入力を受け付ける段階と、論理素子シンボルに対応する機能または論理素子シンボル間の接続関係をプログラム生成処理の処理単位ごとに各処理単位の識別情報である項目を付して図形式データを生成する段階と、図形式データの項目ごとに版数データ付してコンピュータ装置の記憶装置に保存する段階と、処理すべきか否かの基準となる版数データを入力し、処理対象の図形式データの項目ごとに記憶装置に保存されている該当する項目の版数データと比較して、処理すべきであると判定された項目についてのみプログラムの生成処理を行い、処理すべきであると判定されなかった項目は該項目に関連付けられた版数データを付して記録する段階と、プログラムの生成処理の終了後に、記録した内容を出力する段階と、を含むことを特徴とする。
本発明では、図形式データをプログラムの処理単位ごとに版数データを付し、入力装置等を介して入力された版数データと比較して、この版数データに基づいて図形式データの項目ごとに処理をするかどうかを決定する。
本発明によれば、ユーザインターフェースを扱う機能と、コード生成機能を別々に構成することができるようになり、その結果、コード生成機能のみを差し替えて動作させることができるようになる。これにより、このような図形式プログラムのシステムの版数を更新し、ユーザインターフェースのみならず、コード生成機能により生成されるプログラムに変更が生じる場合にも、必要に応じてコード生成機能を旧版に差し替えて利用することが可能になる。
また、コードの互換性を維持するために、改良されたユーザインターフェースが利用できないという不具合が解消され、より効率的にこのような図形式プログラムのシステムを運用できるようになる。特に、組み込み分野において、プログラムの品質や開発時の生産性の向上を図ることができる。
本発明の実施の形態によるプログラム自動生成装置の装置構成図である。 本発明の第1の実施の形態によるプログラム自動生成装置の機能構成図である。 図1の補助記憶装置に記憶されるデータの構成例である。 図2の図形式データの例である。 本発明の第1の実施の形態によるユーザインターフェース手段4の版数を図形式データ2に記録するようにした例の説明図である。 コード生成手段5が図形式データについて処理可能な形式であるか否かを判定するときの処理手順を示すフローチャートである。 第1の実施の形態の一実施例によるプログラム自動生成装置の装置構成図である。 図7の版数管理テーブル8のデータ構成図である。 図7のユーザインターフェース手段4の版数データ管理処理手順を示すフローチャートである。 図7のコード生成手段5の版数判定処理手順を示すフローチャートである。 図4の他の実施例であり、データ形式の拡張の例である。 複数のコード生成手段を識別するための機能の説明図である。 図12の他の実施例であり、複数のコード生成手段があるときに切り替えて使用する別の構成例である。 図1のコード生成手段5による拡張されたタグのデータを無視する読み込み処理の手順を示すフローチャートである。 他の実施例2による版数データ管理処理で用いられる各テーブルの説明図であり、図15(a)はデータ形式の変更等があったか否かを判定するための判定テーブル21のデータ構成例、図15(b)は判定テーブル21の内容をもとに作成されたコード生成手段の更新要否を判定するためのインストーラ用判定テーブル22のデータ構成例、図15(c)はインストーラ用判定テーブル22に基づいてインストーラによって生成される版数管理テーブル8のデータ構成例である。 他の実施例2による版数データ管理処理の手順を示すフローチャートである。 他の実施例3による版数データ管理処理で用いられる各テーブルの説明図であり、図17(a)はデータ形式の変更等があったか否かを判定するための判定テーブル21のデータ構成例、図17(b)判定テーブル21に基づいてインストーラによって生成される版数管理テーブル8のデータ構成例である。 他の実施例3による版数データ管理処理の手順を示すフローチャートである。 本発明の第2の実施の形態によるプログラム自動生成装置の機能構成図である。 図19の図形式データ2の構造の説明図である。 図19の項目別版数管理テーブル7のデータ構造図である。 図19のコード生成手段5の処理手順を示すフローチャートである。
以下、本発明の実施の形態を説明する。図1は、本実施の形態によるプログラム自動生成装置1の装置構成図である。この図に示すように、プログラム自動生成装置1は、データを入力する入力装置13、種々の演算処理を実行する演算装置10、演算装置10のプログラム実行等に用いられる主記憶装置11、データやプログラムを保存する補助記憶装置12、および、演算結果を表示するディスプレイ装置14から構成されている。
図2は、本発明の第1の実施の形態によるプログラム自動生成装置1の機能構成図である。図1との関連において説明すると、ユーザインターフェース手段4とコード生成手段5は、実行ファイル形式で、プログラム自動生成装置1の補助記憶装置12に記憶されており、動作時には、主記憶装置11に読み込まれて、演算装置10によって実行される。ユーザインターフェース手段4は、入力装置13やディスプレイ装置14を介して図形式プログラム6を対話的に入力し、入力された図形式プログラム6をもとに図形式データ2を作成する機能である。また、コード生成手段5は、この図形式データ2を読み込んで、組み込みシステム用の生成プログラム3を自動生成する機能である。なお、生成プログラムは、コンパイラ入力用の中間プログラムを含む概念である。
このユーザインターフェース手段4とコード生成手段5は演算装置10の機能としてプログラムによって実現可能である。また、両手段4,5は、別々に補助記憶装置12に実装されるので、それぞれを独立して差し替えることができる。
ユーザインターフェース手段4を介して作成される図形式データ2やコード生成手段5から出力される生成プログラム3は補助記憶装置12に記憶される。
補助記憶装置12は、例えばハードディスクにより構成することができる。図3は、補助記憶装置12に記憶されるデータの構成例を示したものである。図3では階層ディレクトリ構造のファイルシステムが採用されており、ルートディレクトリの下位に実行ファイルを入れるサブディレクトリとデータファイルを入れるサブディレクトリが別々に設けられている。ユーザインターフェース手段4、および、コード生成手段5は、実行形式のファイルとして実行ファイルを入れるサブディレクトリに格納されている。また、図形式データ2と生成プログラム3は、ファイルとしてデータファイル保存用のサブディレクトリに格納されている。これらのファイルは、単一のファイルであっても良いが、規模が大きいときには、複数のファイル(ファイル群)で構成するようにしても良い。
次に、上記の構成を有するプログラム自動生成装置1の動作を説明する。
設計者は、ユーザインターフェース手段4により、図形式プログラム6をディスプレイ装置14に表示させながら対話的に入力し、ユーザインターフェース手段4は、その入力されたデータを図形式データ2として保存する。
次に、設計者は、ユーザインターフェース手段4を操作して、コード生成手段5を起動する。このとき、ユーザインターフェース手段4は、同手段4が保存した図形式データ2を識別可能な情報をコード生成手段5に渡す。コード生成手段5はこの情報を取得し、これをもとに、図形式データ2を読み出し、生成プログラム3に変換する。補助記憶装置12が例えば図3のように管理されているとき、「識別可能な情報」として、図形式データが格納されているファイルのファイル名やパスなど、ファイルを特定できる名称の文字列情報とすることができる。
図4は図形式プログラムの例であり、図4(A)はディスプレイ装置14に表示されたところを示したものである。また、図4(B)は、図4(A)に対応する図形式プログラムを図形式データ2に格納する場合のデータの一例を表したものである。ここでは、XML形式のデータとしている。このXML形式は、コード生成手段5が処理単位ごとにデータを記述するのに適している。
ところで、本システムのようにユーザインターフェース手段4とコード生成手段5を分離して実行させるようにすると、整合性が問題となる場合がある。そのため、本実施の形態では、ユーザインターフェース手段4の版数を識別データとして図形式データ2に記録するようにする。このときのデータの例を図5に示す。図4(B)と比べて、<Ver val="5"> のデータが追加になっている。なお、図形式データ2に記録する識別データは、ユーザインターフェース手段4の版数ではなく、図形式データ2のデータ形式の版数でもあっても良い。この場合も、具体的なデータの形としては図5と同様となる。
このようにすれば、コード生成手段5は生成プログラム3を生成するにあたり、図5に示したような識別データを取得し、コード生成手段5が処理不可能な形式であると判定されたときに、異常処理を行うようにし、ユーザインターフェース手段4とコード生成手段5の不整合を防ぐことができる。
コード生成手段5が処理可能な形式であるか否かを判定するフローチャートの例を図6に示す。コード生成手段5には予め取り扱うことのできる版数の有効範囲が設定されており、コード生成手段5が版数データを読み出した後(S101)、版数データが有効範囲であるか否かを判定し(S102)、有効範囲でなかったときには、異常表示をして終了する(S104)。有効範囲であったときは、通常通り、図形式データ2を生成プログラム3に変換して終了する(S103)。
なお、版数データが有効範囲であるか否かを判定するためには、ユーザインターフェース手段4と整合する(すなわち、組み合わせて動作可能な)コード生成手段5の版数を如何に管理するかが重要になる。これについては、図形式データ2のうち実行可能な部分のみを読み取るようにコード生成手段5を構築することにより、以下の構成およびアルゴリズムによって、ユーザインターフェース手段4と整合するコード生成手段5の版数を効率的に管理することができる。
図7は、版数管理を行うための一実施例によるプログラム自動生成装置1の機能構成図である。図2の構成に対して、ユーザインターフェース手段4とコード生成手段5の版数の組み合わせを管理するための版数管理テーブル8を追加している。
図8は、版数管理テーブル8のデータ構成例である。ユーザインターフェース手段4の版数ごとに、データ形式の縮小あるいは変更の有無を表すデータ形式変更等フラグとコード生成手段の版数が関連付けられて保存されている。
次に、図9、図10を用いて、版数データの管理処理の手順を説明する。
設計者は、ユーザインターフェース手段4のバージョンアップ作業後、その実行ファイルを補助記憶装置12に登録する際に、バージョンアップの元となった一世代前の版数に対してデータ形式の縮小あるいは変更(以下、変更等という。)があったか否かを入力装置13を介して入力する。ユーザインターフェース手段4は、その入力情報に基づいて、データ形式の変更等があった場合は(S401で「Yes」)、版数管理テーブル8のデータ形式変更等フラグを「1」に設定する(S402)。一方、データ形式の変更等が無かった場合は(S401で「No」)、版数管理テーブル8のデータ形式変更等フラグを「0」に設定すると共に、対応するコード生成手段5の版数として、一世代前のユーザインターフェース手段4の版数に対応しているコード生成手段5の版数をセットする(S403,S404)。
その後、設計者がコード生成手段5を起動すると、コード生成手段5は、ユーザインターフェース手段4が生成した図形式データ2の中から版数データを抽出する(S501)。この版数データは、上述したようにユーザインターフェース手段4の識別データとしての版数である。
次に、コード生成手段5は、版数管理テーブル8にアクセスして、当該テーブルに、ステップS501で抽出した版数に対応するコード生成手段の版数が登録されているか否かを判定し(S503)、登録されている場合は、そのコード生成手段の版数を抽出する(S504)。そして、コード生成手段5は、ステップS504で抽出した版数が自己の版数と一致しているか否かを判定して、一致している場合は、図形式データ2のプログラム生成処理を実行する(S506)。
一方、コード生成手段5は、ステップS503またはステップS505で「No」の場合は、注意メッセージを出力して終了する (S507)。
設計者は、この注意メッセージによって、コード生成手段5をバージョンアップし、版数管理テーブル8のそのユーザインターフェース手段4の版数に関連付けて、バージョンアップしたコード生成手段5の版数を登録する。
以上の処理により、ユーザインターフェース手段4とコード生成手段5の正しい組み合わせを管理することができる。
図8のデータ例に基づいて具体的に説明すると、版数が[5]のユーザインターフェース手段4と整合している版数を有するコード生成手段5の版数は[3]となっている。いま、ユーザインターフェース手段4のデータ形式の変更等を伴わないバージョンアップが行われ、その版数が、[6]、[7]、[8]、となった場合、上記図9の処理によって、これらの版数のユーザインターフェース手段4と整合するコード生成手段5の版数は[3]となる。すなわち、版数[6]、[7]、[8]のユーザインターフェース手段4のバージョンアップの元となった版数[5]のユーザインターフェース手段4と整合するコード生成手段4の版数である[3]が対応付けられることになる。
また、データ形式の変更等のあった版数[9]のユーザインターフェース手段4は、設計者によってバージョンアップされたコード生成手段5の版数[4]がセットされる。このように、データ形式の変更等の有無を判定基準とした版数管理が可能となる。
次に、図形式データ2のうち実行可能な部分のみを読み取るようにコード生成手段5を構築する手法について説明する。
図11は、データ形式を拡張した例を示したものである。元のデータは、図4に示したものであるが、図4(A)から図11(A)に拡張されているのは、各ブロックの下に表示されているブロックのコメントである。これにともない、図形式データ2についても、図4(B)から図11(B)に拡張されている。この例では、コメントは、<Blocks>というブロックに記録されるように拡張されている。
このときコード生成手段5は図14の処理手順でコード生成処理を実行する。図14において、コード生成手段5は起動されると、全ての下位ノードについて(S201a,S201b)、所定のノード名(項目)が存在するか否かを判定する(S202)。次いでコード生成手段4は、ステップS202で所定のノード名(項目)が存在する場合と判定した場合、さらにそのすべての下位ノードについて(S203a,S203b)、サブ項目であるノード名が存在するか否かを判定する(S204)。そしてコード生成手段4は、ステップS204でサブ項目であるノード名が存在すると判定した場合は、そのノードの属性、すなわち図形の論理素子シンボルに対応する機能や論理素子シンボル間の接続関係を読み込んで、これに基づいて組み込みシステムのプログラムを生成する(S205)。
いま、ユーザインターフェース手段4の版数が[4]に対応するデータ形式が、図4の形式であり、ユーザインターフェース手段4の版数[5]に対応するデータが、図11の形式であったとした場合、図14に示したような処理手順をとることにより、版数[4]に対応するコード生成手段5は、図11(B)のデータが入力されたときにも、拡張されたタグのデータを無視することが可能となり、不整合なく処理をすることが可能となる。
ところで、データ形式の縮小・変更があるような場合でも、データ形式の版数を記録する方式では、対応が可能である。すなわち、ユーザインターフェース手段4の版数が、[5、6、7]と変更されたとしても、それぞれが扱うデータ形式が同じ場合には、データ形式の版数として例えば、版数[2]を記録するものとすると、コード生成手段5は、版数が[2]であればコード生成可能と判定できる。そして、ユーザインターフェース手段4の版数が[8]になったときに、データの追加または削除があって、互換性が取れなくなったとすると、データ形式の版数として、新たに、版数[3]を記録するようにすれば、不整合を防ぐことができる。
(ルート情報の管理)
図12は、複数のコード生成手段5があるときに、それを識別するための機能を説明した例である。図12(A)に示した、実行ファイルのディレクトリには、コード生成A、コード生成Bの2つの版数のコード生成手段5が格納されている。また、コード生成指定というファイル(コード生成指定手段)が追加されている。コード生成指定というファイルには図12(B)に記載した内容が記述されている。この図12(B)の記述により、実際に起動されるコード生成手段5はコード生成Bであることを指定している。ユーザインターフェース手段4は起動時にこのコード生成指定というファイルを読み出し、コード生成Bを選択する。
また、この方法は、コード生成手段5が別のディレクトリに格納されているときにも、使用することができる。その場合、図12(B)のパスの記述は、ファイル名だけでなく、相対パス、もしくは、絶対パスでの記述とする。
以上、本実施の形態によれば、ユーザインターフェース手段4とコード生成手段5とを独立して起動可能にし、ユーザインターフェース手段4またはその出力である図形式データに版数を設定して、その版数に対応して動作をするようにしたので、ユーザインターフェース手段4とコード生成手段5を別々に管理することが可能となる。
(他の実施例1)
図13は、複数のコード生成手段5があるときに、それを切り替えて使用する際の別の構成例である。この場合は、所定の位置に有る、所定の名称のファイルを選択するもので、この例では、実行ファイルのあるフォルダに格納されている「コード生成」で始まるファイルをコード生成手段5として起動するものである。図13(A)では、コード生成Aが、図13(B)では、コード生成Bが起動される。
この方法は、図13の方法に比べて簡便であるが、同時にディレクトリに格納されているコード生成手段5を切り替えて利用することはできない。
また、コード生成手段5自身は同じファイル名としておき、同じファイル名で、内容(版数)が異なるものを差し替えて利用するような方法を取ることも可能である。
このように、コード生成手段5を実行するファイルを切り替える場合には、やはり不整合が生じる可能性がある。そのため、上述の図形式データに版数を記録し、確認する方法をとっても良いが、起動時に、呼び出し側のユーザインターフェース手段4がコード生成手段5の版数を取得して整合性を判定するか、ユーザインターフェース手段4から、コード生成手段5へ実行可能な版数を渡すことにより、コード生成側で整合性を確認する方法を取ることもできる。なお、そのときの処理フローは図6と同じものが適用可能である。
(他の実施例2)
次に、図9、図10に示した版数データ管理処理の他の実施例として、インストーラによって版数データの管理処理を行う際の手順を図15、図16を用いて説明する。
ユーザインターフェース手段4のバージョンアップがあったときは、設計者は、まずデータ形式の変更等があったか否かを判定するための判定テーブル21を更新する。設計者は一世代前の版数のユーザインターフェース手段4に対してデータ形式の変更等があった場合は入力装置13を介して補助記憶装置12に保存されている判定テーブル21にアクセスして、バージョンアップ後の版数のデータ形式変更等フラグを「1」に設定し、データ形式の変更等が無かった場合はこのフラグを「0」に設定する。
図15(a)に判定テーブル21のデータ構成例を示す。ユーザインターフェース手段の版数[5]の欄のデータ形式変更等フラグ「1」に設定されているのは、一世代前の版数[4]に対してデータ形式の変更等があったからである。それ以外の版数については、それぞれ一世代前の版数に対してデータ形式の変更等が無く、データ形式変更等フラグ「0」が設定されている。
さらに、設計者は、この判定テーブル21のデータに基づいて、コード生成手段の更新要否を判定するためのインストーラ用判定テーブル22をあらかじめ作成する。このインストーラ用判定テーブル22は、ユーザインターフェース手段4の一世代前の版数とバージョンアップ作業後の版数との間でデータ形式の変更等があったか否かを判定するためのものである。
インストーラ用判定テーブル22のデータ構成例を図15(b)に示す。図15(b)データは図15(a)のデータと関連しており、導入前のユーザインターフェース手段4の各版数から導入後のユーザインターフェース手段4の版数[6]へのバージョンアップの際のデータ形式変更等の有無に対応してデータ形式変更等フラグ「1」または「0」がセットされている。図15(a)では、ユーザインターフェース手段4が版数[4]から[5]にバージョンアップしたときにデータ形式の変更等があったので、図15(b)では、必然的に[4]から[6]に対してもデータ形式の変更等があり、さらに導入前のユーザインターフェース手段4の版数が[4]より小さい版数から版数[6]へバージョンアップする場合も、データ形式の変更等があるのでこれらのデータ形式変更等フラグは「1」にセットされる。
一方、版数[5]から版数[6]へのバージョンアップは、データ形式の変更等を伴わないので、図15(b)において、最下欄のデータ形式変更等フラグは「0」にセットされる。なお、図15(b)おいて、「導入後のユーザインターフェース手段の版数」の列は、すべて同じ値になるので、テーブルごとのデータとして保持するようにしても良い。また、「データ形式変更等フラグ」の列では、最下欄から遡っていき、一度フラグが「1」になれば、それよりも古いデータは「1」になるのは自明であるため省略するようにしても良い。
上記のように判定テーブル21とインストーラ用判定テーブル22が準備され、インストーラが起動されると、バージョンアップされた版数[6]のユーザインターフェース手段4の実行ファイルが補助記憶装置12に登録される(S601)。次に、インストーラは、版数管理テーブル8の末尾に今回登録したユーザインターフェース手段4の版数の行を追加する(S602)。
そして、インストーラは、インストーラ用判定テーブル22を参照して、前回インストールしたユーザインターフェース手段4の版数と今回インストールしたユーザインターフェース手段の版数によって定まる行のデータ形式変更等フラグが「1」であるか否かを判定し、「1」の場合は(S603で「YES」)、版数管理テーブル8の追加行のデータ形式変更等フラグ欄に「1」を書き込む(S604)。次に、インストーラは、版数管理テーブル8の追加行の「コード生成手段の版数」欄に最新世代の版数をセットすると共に(S605)、その版数のコード生成手段5の実行ファイルを補助記憶装置12に登録する(S606)。
一方、ステップS603でデータ形式変更等フラグが「0」の場合は(S603で「NO」)、版数管理テーブル8のデータ形式変更等フラグを「0」に設定すると共に(S607)、コード生成手段5の版数として、一世代前のユーザインターフェース手段4の版数に対応しているコード生成手段5の版数をセットする。
以上のバージョンアップ処理は、インストーラによって自動的に実行される。インストーラには、ユーザインターフェース手段4の最新版、コード生成手段5の最新版と共に、インストーラ用判定テーブル22を含めておくようにする。
上記の処理で、ユーザインターフェース手段4の版数が[4]から[6]へバージョンアップされたときの版数管理テーブル8の例を図15(c)に示す。この例では、新たに追加された最下欄のユーザインターフェース手段の版数[6]の行のデータ形式変更等フラグが「1」にセットされている。これは、図15(b)の導入前のユーザインターフェース手段の版数[4]の行のデータ形式変更等フラグ「1」に対応している。また、版数管理テーブル8のコード゛生成手段の版数欄には最新の版数「3」がセットされている。
以上の如く、版数データの管理処理が実行される。本実施例によれば、インストール作業に連動して、効率的な版数管理が可能になる。
(他の実施例3)
次に、他の実施例2で説明した版数データ管理処理のさらに他の実施例を図17、図18を用いて説明する。本実施例は、図15(b)のインストーラ用判定テーブル22による管理を省略したものである。
まず、上記の他の実施例2で説明したように、設計者は入力装置13を介して、一世代前の版数とバージョンアップ作業後の版数をもとに判定テーブル21のデータ形式変更等フラグを設定する。
そして、設計者によるインストーラの起動により、ユーザインターフェース手段4のバージョンアップ作業後(S701)、インストーラは、版数管理テーブル8の末尾に今回登録するユーザインターフェース手段4の版数の行を追加する(S702)。
次に、インストーラは、その版数管理テーブル8の情報に基づいて、既に導入されている一世代前のユーザインターフェース手段4の版数を抽出する。続いて、判定テーブル21を参照して、図17(a)に示すようにバージョンアップ作業後の版数から、当該抽出した版数へと判定テーブル21の版数を遡って検索して、その間にデータ形式変更等フラグ「1」が存在するか否かを判定する(S703)。
その判定の結果、データ形式変更等フラグ「1」が存在する場合は(S703で「YES」)、版数管理テーブル8にアクセスして、今回登録したユーザインターフェース手段4の版数のデータ形式変更等フラグ欄に「1」を書き込む(S704)。次に、インストーラは、コード生成手段の版数として、最新世代の版数をセットすると共に(S705)、その版数のコード生成手段5の実行ファイルを補助記憶装置12に登録する(S706)。
一方、ステップS703でデータ形式変更等フラグ「1」が存在しない場合は(S703で「NO」)、版数管理テーブル8のデータ形式変更等フラグを「0」に設定すると共に(S707)、コード生成手段の版数として、一世代前のユーザインターフェース手段4の版数に対応しているコード生成手段5の版数をセットする。
これによって、他の実施例2と同様に版数データの効率的な管理が可能となる。
次に本発明の第2の実施の形態を説明する。
本実施の形態は、図形式データの項目ごとに版数管理を行い、コード生成手段5によって、同手段15あるいは入力装置13等を介して指定された版数に対応した処理のみを実行させるようにしたものである。基本的な装置構成は図2と同様である。
図19は、第2の実施の形態によるプログラム自動生成装置の機能構成図である。図1に対して、後述する項目別版数管理テーブル7が追加になっている。
また、本実施の形態による図形式データを図20に示す。本例では<Connections>,<Blocks>などの項目ごとにデータが生成され、項目ごとに版数管理されている。図21は本実施の形態による項目別版数管理テーブル7のデータ構成例である。項目ごとにその機能を追加・更新したときのユーザインターフェース手段4の版数が関連付けられて保存されている。例えば、ユーザインターフェース手段4の機能が追加になったとき、この項目別版数管理テーブル7に当該追加になった項目が存在するか否かを判定し、存在しない場合は、その項目とそのときのユーザインターフェース手段4の版数を関連付けて登録する。機能が更新になったときも同様に、既に登録になっている項目の版数をそのときのユーザインターフェース手段4の版数に設定変更する。
この項目別版数管理テーブル7の保存場所はコード生成手段5からアクセス可能であれば特に限定されない。コード生成手段5は、この項目を処理の単位としてプログラム生成処理を実行する。
以下、図22に基づいて、コード生成手段5の動作を説明する。
まず、設計者は、入力装置13を介して、どの版数の生成プログラムを作成するかを指定して、コード生成手段5の起動を行う。コード生成手段5は、入力装置からの起動要求によって起動されると、版数データを入力して(S301)、版数の指定の有無を判定する(S302)。そして、版数指定が無い場合は(S302で「NO」)、最新の版数で生成プログラムを生成するものとして、指定された版数として予め定められた所定の最大値(例えば、999)をセットする(S303)。
また、コード生成手段5は、版数変数として、版数の最低値(例えば、0)をセットする(S304)。そして、図形式データから最初の項目を入力して(S305)、項目別版数管理テーブル7を参照して入力した項目に関連付けられた版数を抽出する(S306)。
次に、コード生成手段5は、抽出された版数と指定された版数とを比較して(S307)、当該項目の登録があって(S308)、その項目について指定された版数が抽出された版数以上の場合は(S309)、その項目の処理を実行する(S310)。
続いて、コード生成手段5は、抽出された版数が版数変数よりも大きいか否かを判定して(S311)、大きい場合は(S311で「YES」)、抽出された版数を新たな版数変数としてセットする(S312)。
以上の処理の後、コード生成手段5は、図形式データから全ての項目を抽出済みか否かを判定し(S314)、「否」の場合は、次の項目を抽出して(S315)、再びステップS306以降の処理を繰り返す。なお、ステップS308またはステップS309で「NO」の場合は、通知テーブルにその処理項目と版数を記録する(S313)。
コード生成手段5は、全ての項目について抽出を完了した場合は(S314で「YES」)、最終的な生成プログラムと版数変数にセットされている版数とを関連付けて出力する(S316)。また、通知テーブルの内容を出力する(S317)。
上記の処理によれば、コード生成手段5は、図形式データの版数によらず、指定された版数で生成プログラム3を作成することができる。また、版数指定を行わないことによって最新版数でプログラムを生成する。これにより、同じ図形式データから、既設のシステムについては、その版数のプログラムが生成でき、新規に設置するシステムについては最新の版数のプログラムを生成することができる。
なお、上記の各実施の形態の説明において、ユーザインターフェース手段4やコード生成手段5のバージョンアップを行う設計者が、プログラム自動生成装置1を利用して図形式データを入力してプログラムを生成することを前提に説明したが、上記インストーラ用判定テーブル22等を用いたインストーラを用意することによって、設計者以外のユーザがプログラム自動生成装置1を利用して、ユーザインターフェース手段4の版数とコード生成手段5の版数の適切な組み合わせによってプログラムを生成することができることは明白である。
本発明は上記の実施の形態に限定されずその要旨を逸脱しない範囲で、種々変形して実施をすることができる。例えば、コード生成手段5は、項目別管理テーブルで項目の版数を確認するのに替えて、ユーザインターフェース手段4が項目ごとに版数を付加して図形式データを生成し、この版数によって確認するようにしても良い。
1……プログラム自動生成装置
2……図形式データ
3……生成プログラム
4……ユーザインターフェース手段(機能)
5……コード生成手段(機能)
6……図形式プログラム
7……項目別版数管理テーブル
8……版数管理テーブル
10……演算装置
11……主記憶装置
12……補助記憶装置
13……入力装置
14……ディスプレイ装置
21……判定テーブル
22……インストーラ用判定テーブル

Claims (11)

  1. 論理素子シンボルと該論理素子シンボル間の接続関係によって表される図形情報に基づいてプログラムを生成するプログラム自動生成装置であって、
    前記論理素子シンボルに対応する機能または前記論理素子シンボル間の接続関係をプログラム生成処理の処理単位ごとに各処理単位の識別情報である項目を付して図形式データとして記憶装置に保存するユーザインターフェース手段と、
    前記図形式データをもとに前記処理単位ごとにプログラムの生成処理を実行するコード生成手段と、を備え、
    前記ユーザインターフェース手段および前記コード生成手段はそれぞれ独立して差し替え可能であることを特徴とするプログラム自動生成装置。
  2. 前記図形式データは、前記ユーザインターフェース手段の版数データを含み、
    前記コード生成手段は、前記版数データを取得して前記図形式データを処理可能か否かを判定し、処理可能でないと判定した場合は異常処理を実行することを特徴とする請求項1に記載のプログラム自動生成装置。
  3. 請求項1に記載のプログラム自動生成装置であって、
    さらに、前記ユーザインターフェース手段と前記コード生成手段が正常に機能するように該両手段の版数データの組み合わせ情報を保存する版数管理テーブルを備え、
    前記コード生成手段は、起動時に前記組み合わせ情報に基づいて、該ユーザインターフェース手段の版数データと該コード生成手段の版数データの組み合わせが正当か否かを判定し、正当であると判定された場合にのみ該ユーザインターフェース手段によって保存された前記図形式データをもとにプログラムの生成処理を実行することを特徴とするプログラム自動生成装置。
  4. 請求項1に記載のプログラム自動生成装置であって、
    さらに版数データの異なる複数のコード生成手段と、
    前記複数のコード生成手段のうち起動すべきコード生成手段を特定するコード生成指定手段と、を備え、
    前記ユーザインターフェース手段は、前記コード生成指定手段によって特定されたコード生成手段を起動することを特徴とするプログラム自動生成装置。
  5. 請求項1に記載のプログラム自動生成装置であって、
    さらに項目ごとにユーザインターフェース手段の版数データを特定する項目別版数管理テーブルを備え、
    前記コード生成手段は、処理すべきか否かの基準となる版数データを起動時に取得し、 前記図形式データの項目ごとに前記項目別版数管理テーブルを参照して、前記項目の版数データと前記取得した版数データとに基づいて処理を実行すべきか否かを判定し、処理すべきであると判定された項目についてのみ所定の処理を実行することを特徴とするプログラム自動生成装置。
  6. 前記コード生成手段は、処理を行った各項目の版数データのうち、最大の版数データを演算して生成したプログラムに関連付けて出力することを特徴とする請求項5に記載のプログラム自動生成装置。
  7. 前記コード生成手段は、前記項目の版数データと前記入力した版数データとに基づいて処理を実行すべきか否かを判定した結果、処理すべきでないと判定した項目と、前記項目別版数管理テーブルで該項目に関連付けられた版数データとを記録しておき、プログラムの生成処理の終了後に、前記記録した内容を出力することを特徴とする請求項5または6に記載のプログラム自動生成装置。
  8. 前記コード生成手段は、前記図形式データが前記ユーザインターフェース手段の版数データ変更その他の要因により拡張され、前記コード生成手段が処理不可能な項目を含む場合であっても処理可能な項目のみを実行してプログラムを生成することを特徴とする請求項1乃至7のいずれか一に記載のプログラム自動生成装置。
  9. 前記ユーザインターフェース手段は、図形式データにアクセスするための前記記憶装置内の位置関係を表すルート情報を前記コード生成手段に渡し、
    前記コード生成手段は、該ルート情報をもとに前記図形式データを取得し、該図形式データに基づいてプログラムを生成することを特徴とする請求項1乃至8のいずれか一に記載のプログラム自動生成装置。
  10. 前記コード生成手段は、ルート情報に基づいて前記ユーザインターフェース手段の実行プログラムから最も近い位置に存在するコード生成手段が起動されることを特徴請求項9に記載のプログラム自動生成装置。
  11. コンピュータ装置を用いて、図形情報をもとにプログラムを生成するプログラム自動生成方法であって、
    論理素子シンボルと該論理素子シンボル間の接続関係によって表される図形情報の入力を受け付ける段階と、
    前記論理素子シンボルに対応する機能または論理素子シンボル間の接続関係をプログラム生成処理の処理単位ごとに各処理単位の識別情報である項目を付して図形式データを生成する段階と、
    図形式データの項目ごとに版数データ付して前記コンピュータ装置の記憶装置に保存する段階と、
    処理すべきか否かの基準となる版数データを入力し、処理対象の前記図形式データの項目ごとに前記記憶装置に保存されている該当する項目の版数データと比較して、処理すべきであると判定された項目についてのみプログラムの生成処理を行い、処理すべきであると判定されなかった項目は該項目に関連付けられた版数データを付して記録する段階と、
    プログラムの生成処理の終了後に、前記記録した内容を出力する段階と、
    を含むことを特徴とするプログラム自動生成方法。
JP2009165312A 2009-07-14 2009-07-14 プログラム自動生成装置およびプログラム自動生成方法 Active JP5316273B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2009165312A JP5316273B2 (ja) 2009-07-14 2009-07-14 プログラム自動生成装置およびプログラム自動生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2009165312A JP5316273B2 (ja) 2009-07-14 2009-07-14 プログラム自動生成装置およびプログラム自動生成方法

Publications (2)

Publication Number Publication Date
JP2011022682A true JP2011022682A (ja) 2011-02-03
JP5316273B2 JP5316273B2 (ja) 2013-10-16

Family

ID=43632722

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2009165312A Active JP5316273B2 (ja) 2009-07-14 2009-07-14 プログラム自動生成装置およびプログラム自動生成方法

Country Status (1)

Country Link
JP (1) JP5316273B2 (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109955266B (zh) * 2019-04-01 2020-12-15 珠海市一微半导体有限公司 机器人回座代码的自动生成设备和自动生成系统

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250151A (ja) * 1991-04-09 1993-09-28 Kobe Nippon Denki Software Kk プログラム生成情報管理方式
JPH11288368A (ja) * 1998-04-02 1999-10-19 Yamatake Corp 制御設計用コンフィギュレーションツール
JPH11296357A (ja) * 1998-04-08 1999-10-29 Oki Electric Ind Co Ltd フローチャート入力装置
JP2002189506A (ja) * 2000-12-22 2002-07-05 Fuji Electric Co Ltd Pcサポート装置
JP2004234202A (ja) * 2003-01-29 2004-08-19 Toshiba Corp 分散型連動処理システムのプログラムバージョン管理方法

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH05250151A (ja) * 1991-04-09 1993-09-28 Kobe Nippon Denki Software Kk プログラム生成情報管理方式
JPH11288368A (ja) * 1998-04-02 1999-10-19 Yamatake Corp 制御設計用コンフィギュレーションツール
JPH11296357A (ja) * 1998-04-08 1999-10-29 Oki Electric Ind Co Ltd フローチャート入力装置
JP2002189506A (ja) * 2000-12-22 2002-07-05 Fuji Electric Co Ltd Pcサポート装置
JP2004234202A (ja) * 2003-01-29 2004-08-19 Toshiba Corp 分散型連動処理システムのプログラムバージョン管理方法

Also Published As

Publication number Publication date
JP5316273B2 (ja) 2013-10-16

Similar Documents

Publication Publication Date Title
US8826224B2 (en) Apparatus and method for supporting model-driven development
JP4396994B2 (ja) リソース・ファイルの翻訳検証方法、装置、およびプログラム
JPWO2020008991A1 (ja) 検証自動化装置、検証自動化方法、およびプログラム
JP5555550B2 (ja) データ変換方法、その装置およびそのプログラム
JP2008040943A (ja) Hmi開発支援装置、hmi開発支援方法およびプログラム
JP5426938B2 (ja) 情報処理装置、情報処理方法
JP2011248852A (ja) システム連携装置
JP4888790B2 (ja) 契約定義関数検証装置、その方法及びそのプログラム
JP5316273B2 (ja) プログラム自動生成装置およびプログラム自動生成方法
JP2007011507A (ja) プログラムツリーの表示方法、およびプログラム生成システム
JP2005222221A (ja) 組込コントローラ開発ツール、組込コントローラ、及び組込コントローラ開発プロセス
JP4977681B2 (ja) データパターン/テストデータ生成・蓄積方法及びシステム
JP5532811B2 (ja) パーツカタログ作成支援装置、プログラム、およびパーツカタログ作成支援方法
JP4906424B2 (ja) Webサービス設計方法及び装置
JP2019079165A (ja) 編集プログラム、編集装置、及び、編集方法
JP5119765B2 (ja) 仕様書作成支援装置および支援方法
JP2010128776A (ja) 携帯端末自動メンテナンス装置および携帯端末自動メンテナンス方法
JP2000047861A (ja) 影響範囲検出装置および影響範囲の検出方法
JPS62197826A (ja) システムフロ−仕様生成方式
JP4484148B2 (ja) Si対象ファイルおよびsi関連ファイル管理システム
JP2009163566A (ja) ジョブ解析支援装置
JP2008117051A (ja) 文書作成システム
JP2006268764A (ja) モデル編集システム、モデル編集装置、モデル編集方法及びモデル編集プログラム
EP4261678A1 (en) Generation of a technical instruction
JP2009134342A (ja) 機能仕様書自動生成装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20120416

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20130227

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20130305

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20130426

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: 20130611

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130624

R150 Certificate of patent or registration of utility model

Ref document number: 5316273

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250