(57)【要約】【課題】１つの表示画面内に自然言語で表現された命令文を選択又は入力することで、容易にソースコードを作成できるソースコード作成支援装置を提供する。【解決手段】ソースコード作成支援装置１内の表示部３に表示されたテンプレートＴＭｎ内の必要な命令項目を選択し、必要なパラメータを記述エリアに入力すると、テンプレートＴＭｎは、ユーザが作成したいソースコードを自然言語で表示する。判断部５で、テンプレートＴＭｎ内で必要な命令項目が選択され、必要なパラメータが入力されたと判断した場合、作成部６がテンプレートＴＭｎに表示された自然言語の内容に相当するソースコードを作成する。作成されたソースコードは表示部３に表示される。【選択図】図１
2004199660.tif 000002
【特許請求の範囲】
【請求項１】
複数の命令文で構成されるソースコードの作成を支援するソースコード作成支援装置であって、
前記複数の命令文に対応した複数のテンプレートを記憶する記憶手段を備え、
前記複数のテンプレートの各々は、前記命令文を作成するための複数の命令項目が自然言語で表示された選択エリアと、前記命令文を作成するためのパラメータが入力される複数の記述エリアと、前記命令文のソースコードを作成するときにユーザにより選択される指令ボタンとを含み、
前記ソースコード作成支援装置はさらに、
前記複数のテンプレートの中からユーザにより選択されたテンプレートを表示する表示手段と、
前記表示されたテンプレートの前記指令ボタンを前記ユーザにより選択されたとき、前記選択エリアの中から、所望の命令文を作成するためにに必要な命令項目が前記ユーザにより選択され、かつ前記所望の命令文を作成するために必要なパラメータが前記ユーザにより前記記述エリアに入力されたか否かを判断する判断手段と、
前記必要な命令項目が選択され、かつ前記必要なパラメータが入力されたと判断したとき、前記選択された命令項目及び入力されたパラメータに基づいて前記所望の命令文のソースコードを作成する作成手段とを備え、
前記作成手段が前記ソースコードを作成後、前記表示手段は前記作成されたソースコードを表示することを特徴とするソースコード作成支援装置。
【請求項２】
請求項１に記載のソースコード作成支援装置であって、
前記複数の記述エリアは前記複数の命令項目に対応し、
前記判断手段は、前記選択された命令項目に対応する前記記述エリアにパラメータが入力されたか否かを判断することを特徴とするソースコード作成支援装置。
【請求項３】
請求項２に記載のソースコード作成支援装置であってさらに、
前記選択エリアの複数の命令項目の中から命令項目が選択されたとき、前記選択された命令項目に対応する前記記述エリアにパラメータを入力するよう前記ユーザに通知する通知手段を備えたことを特徴とするソースコード作成支援装置。
【請求項４】
請求項２に記載のソースコード作成支援装置であって、
前記複数の命令文は複数の命令コードを含み、
前記複数の命令項目は複数の命令コードに対応し、
前記記憶手段はさらに、前記複数の命令コードを前記複数のテンプレートと対応づけて記録する翻訳テーブルを記憶し、
前記ソースコード作成支援装置はさらに、
前記表示手段に表示された前記ソースコードの中から選択された命令文中の前記命令コードに対応する前記テンプレートを、前記翻訳テーブルに基づいて選択するテンプレート選択手段と、
前記選択されたテンプレートの前記選択エリアの中から、前記命令コードに対応する命令項目を選択する項目選択手段と、
前記選択された命令項目に対応する前記記述エリアに、前記選択された命令文中のパラメータを入力するパラメータ記述手段とを備え、
前記項目選択手段が前記命令項目を選択し、前記パラメータ記述手段が前記パラメータを入力した後、前記表示手段は前記テンプレート選択手段により選択されたテンプレートを表示することを特徴とするソースコード作成支援装置。
【請求項５】
複数の命令文で構成されるソースコードの作成を支援する、コンピュータで実現可能なソースコード作成支援プログラムであって、
前記コンピュータは、前記複数の命令文に対応した複数のテンプレートを記憶する記憶手段を備え、
前記複数のテンプレートの各々は、前記命令文を作成するための複数の命令項目が自然言語で表示された選択エリアと、前記命令文を作成するためのパラメータが入力される複数の記述エリアと、前記命令文のソースコードを前記コンピュータに作成させるときにユーザが選択する指令ボタンとを含み、
前記ソースコード作成支援プログラムは、
前記複数のテンプレートの中から選択されたテンプレートを前記コンピュータのディスプレイに表示するステップと、
前記表示されたテンプレートの前記指令ボタンが選択されたとき、前記選択エリアの中から、所望の命令文を作成するのに必要な命令項目が選択され、かつ前記所望の命令文を作成するために必要なパラメータが前記記述エリアに入力されたか否かを判断するステップと、
前記必要な命令項目が選択され、かつ前記必要なパラメータが入力されたと判断したとき、前記選択された命令項目及び入力されたパラメータに基づいて前記所望の命令文のソースコードを作成するステップと、
前記作成されたソースコードを前記ディスプレイに表示するステップとを備えることを特徴とするソースコード作成支援プログラム。
【請求項６】
複数の命令文で構成されるソースコードを自然言語に翻訳するソースコード作成支援装置であって、
前記複数の命令文は複数の命令コードを含み、
前記ソースコード作成支援装置は、
複数のテンプレートと、前記複数のテンプレートを前記複数の命令コードと対応づけて記録する翻訳テーブルとを記憶する記憶手段を備え、
前記複数のテンプレートの各々は、自然言語で表示され、前記複数の命令コードに対応した複数の命令項目を表示した選択エリアと、前記複数の命令項目に対応したパラメータが表示される複数の記述エリアとを含み、
前記ソースコード作成支援装置はさらに、
前記ソースコードを表示する表示手段と、
前記ソースコードの中から選択された命令文中の命令コードに対応する前記テンプレートを、前記翻訳テーブルに基づいて選択するテンプレート選択手段と、
前記選択されたテンプレートの前記選択エリアの中から前記命令コードに対応する命令項目を選択する項目選択手段と、
前記選択された命令項目に対応する前記記述エリアに、前記選択された命令文中のパラメータを入力するパラメータ記述手段とを備え、
前記項目選択手段が前記命令項目を選択し、前記パラメータ記述手段が前記パラメータを入力した後、前記表示手段は前記テンプレート選択手段により選択されたテンプレートを表示することを特徴とするソースコード作成支援装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、プログラムの作成を支援するソースコード作成支援装置及びそのプログラムに関し、さらに詳しくは、シーケンス制御プログラムの作成を支援するソースコード作成支援装置及びそのプログラムに関する。
【背景技術】
【０００２】
工場等で利用される機械設備の制御にプログラマブルロジックコントローラ(Programmable Logic Controller：ＰＬＣ)が利用されている。機械設備のユーザ（オペレータや保守担当者）は、機械設備の作業手順を記述したシーケンス制御プログラムを作成し、そのシーケンス制御プログラムをＰＬＣに記憶させる。機械設備はＰＬＣ内のシーケンス制御プログラムに従って動作する。
【０００３】
ＰＬＣのプログラム作成方法としては、ラダー（はしご）図を使用してプログラムを作成するラダー方式が多く使用されている。しかしながら、ラダー方式は、シーケンス制御についての知識及び経験のある者を対象として開発された方式であるため、シーケンス制御の専門家でない機械設備のユーザは、ラダー方式で自分の思い通りのプログラムを作成できない。
【０００４】
このような問題を解決すべく、フローチャートを使用してプログラムを作成する発明が下記特許文献１に記載されている。下記特許文献１では、コンピュータのディスプレイ画面に表示される案内に従ってフローチャートのステップ（命令処理）を順次作成することで、ＰＬＣのプログラムを作成できる。そのため、ラダー方式に比べて専門的知識を必要としない。
【０００５】
しかしながら、特許文献１の発明では、１つのステップを作成するためにディスプレイの表示画面を複数回変更して、各々の表示画面でステップを作成するための条件を選択又は入力する必要があり、操作が煩雑である。また、フローチャートについてのある程度の知識も必要とする。よって、ユーザにとっては、自然言語からプログラム（ソースコード）を作成できる方が好ましい。
【０００６】
さらに、ラダー方式やフローチャート方式により作成されたソースコードの意味内容をユーザが理解しようとする場合、ユーザは、ソースコードを構成する複数の命令の意味内容が記載された専門の辞書等を用いて、作成されたソースコードの意味内容を調べなければならず、煩雑である。そのため、ユーザはソースコードに関する知識を習得しにくい。
【０００７】
【特許文献１】特開２０００−１６３１０７号公報
【非特許文献１】ビジュアル・ロジック・コントローラ，「Electronics & Mechatronics 新製品情報」日刊工業新聞発行，２００１年９月１日，第１９巻第９号，通巻２２３号，ｐ．４３
【発明の開示】
【発明が解決しようとする課題】
【０００８】
本発明の目的は、１つの表示画面内に自然言語で表現された命令文を選択又は入力することで、容易にソースコードを作成できるソースコード作成支援装置及びそのプログラムを提供することである。
【０００９】
本発明の他の目的は、ソースコードの意味内容が容易にわかるソースコード作成支援装置及びそのプログラムを提供することである。
【課題を解決するための手段】
【００１０】
本発明によるソースコード作成支援装置は、複数の命令文で構成されるソースコードの作成を支援するソースコード作成支援装置であって、複数の命令文に対応した複数のテンプレートを記憶する記憶手段を備える。複数のテンプレートの各々は、選択エリアと、複数の記述エリアと、指令ボタンとを含む。選択エリアは、命令文を作成するための複数の命令項目が自然言語で表示される。記述エリアは、命令文を作成するためのパラメータが入力される。指令ボタンは、命令文のソースコードを作成するときにユーザにより選択される。ソースコード作成支援装置はさらに、表示手段と、判断手段と、作成手段とを備える。表示手段は、複数のテンプレートの中からユーザにより選択されたテンプレートを表示する。判断手段は、表示されたテンプレートの指令ボタンをユーザにより選択されたとき、選択エリアの中から、所望の命令文を作成するために必要な命令項目がユーザにより選択され、かつ所望の命令文を作成するために必要なパラメータがユーザにより記述エリアに入力されたか否かを判断する。作成手段は、必要な命令項目が選択され、かつ必要なパラメータが入力されたと判断したとき、選択された命令項目及び入力されたパラメータに基づいて所望の命令文のソースコードを作成する。作成手段がソースコードを作成後、表示手段は作成されたソースコードを表示する。
【００１１】
本発明によるソースコード作成支援装置は、複数のテンプレートを有し、各テンプレートは、選択エリア内の複数の命令項目を自然言語で表示する。ユーザは所望の命令文のソースコードを作成したいとき、テンプレートを用いて、自然言語の複数の命令項目から所望の命令文に該当する命令項目を容易に選択できる。よって、ユーザがソースコードの知識を持たない場合であっても、ソースコード作成支援装置を用いて容易にソースコードを作成できる。さらに、表示手段に表示されるテンプレートでユーザは所望の命令文を作成でき、１つの命令文を作成するために表示手段に表示される画面を複数回変更する必要がない。
【００１２】
また、ソースコード作成支援装置は、所望の命令文を作成するために必要な命令項目がユーザにより選択され、かつ所望の命令文を作成するために必要なパラメータがユーザにより記述エリアに入力されたか否かを判断し、必要な命令項目が選択されていない場合、又は、必要なパラメータが記述エリアに入力されてない場合は、ソースコードを作成しない。これにより、ユーザは命令文を作成するために必要な事項を選択したか否か、又は必要な入力を行ったか否かを容易に確認できる。
【００１３】
好ましくは、複数の記述エリアは複数の命令項目に対応し、判断手段は、選択された命令項目に対応する記述エリアにパラメータが入力されたか否かを判断することを特徴とする。
【００１４】
この場合、判断手段は命令文を作成するために必要なパラメータが記述部に入力されたか否かを判断できる。
【００１５】
好ましくはさらに、ソースコード作成支援装置は、通知手段を備える。通知手段は、選択エリアの複数の命令項目の中から命令項目が選択されたとき、選択された命令項目に対応する記述エリアにパラメータを入力するようユーザに通知する。
【００１６】
これにより、ユーザは命令文を作成するのに入力が必要な記述エリアを容易に認識できる。
【００１７】
好ましくは、複数の命令文は複数の命令コードを含み、複数の命令項目は複数の命令コードに対応し、記憶手段はさらに、複数の命令コードを複数のテンプレートと対応づけて記録する翻訳テーブルを記憶する。ソースコード作成支援装置はさらに、テンプレート選択手段と、項目選択手段と、パラメータ記述手段とを備える。テンプレート選択手段は、表示手段に表示されたソースコードの中から選択された命令文中の命令コードに対応するテンプレートを、翻訳テーブルに基づいて選択する。項目選択手段は、選択されたテンプレートの選択エリアの中から、命令コードに対応する命令項目を選択する。パラメータ記述手段は、選択された命令項目に対応する記述エリアに、選択された命令文中のパラメータを入力する。項目選択手段が命令項目を選択し、パラメータ記述手段がパラメータを入力した後、表示手段はテンプレート選択手段により選択されたテンプレートを表示する。
【００１８】
この場合、ソースコード作成支援装置は、選択された命令文の命令コードに対応するテンプレートを選択する。ソースコード作成支援装置はさらに、選択したテンプレート内の命令コードに対応する命令項目を選択し、選択した命令項目に対応する記述エリアに命令文中のパラメータを入力した後、テンプレートを表示部に表示する。表示されたテンプレートには、命令文（ソースコード）に対応した自然言語が表示された状態となる。その結果、ユーザはソースコードの意味内容を自然言語で把握できる。
【発明を実施するための最良の形態】
【００１９】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【００２０】
１．第１の実施の形態
１．１．ソースコード作成支援装置の構成
図１を参照して、ソースコード作成支援装置１は、記憶部２と、表示部３と、通知部４と、翻訳部５０とを備える。
【００２１】
記憶部２は、複数のテンプレートＴＭ１〜ＴＭｎ（ｎは自然数）を記憶する。複数のテンプレートＴＭ１〜ＴＭｎはソースコードを構成する複数の命令文を作成するためのものである。テンプレートＴＭｎの一例を図２に示す。
【００２２】
図２を参照して、テンプレートＴＭｎはラベルエリア(Label Area)ＬＡと、複数の選択エリア(Select Area)ＳＡ１〜ＳＡ６と、複数の記述エリア(Input Area)ＩＡ１〜ＩＡ６と、指令ボタン(Command bottom)ＣＢとを含む。
【００２３】
ラベエリアＬＡには、テンプレートＴＭｎで作成される命令文のラベル名が入力される。複数の選択エリアＳＡ１〜ＳＡ６の各々は、ユーザ所望の命令文を作成するのに必要な命令項目ＣＴ(Command Term)を含む。たとえば、図２中の選択エリアＳＡ１は「オーバタイムチェック無し」の命令項目ＣＴ１１と、「オーバタイムチェック有り」の命令項目ＣＴ１２と、「オーバタイムチェック継続」の命令項目ＣＴ１３とを含む。各命令項目ＣＴはオプションボタンを有し、命令項目ＣＴを選択する場合は命令項目ＣＴに対応するオプションボタンが選択される。
【００２４】
複数の記述エリアＩＡ１〜ＩＡ６の各々には、ユーザが所望の命令文を作成するために必要なパラメータが入力される。複数の記述エリアＩＡ１〜ＩＡ６は複数の選択エリアＳＡ１〜ＳＡ６内の複数の命令項目ＣＴに対応している。つまり、選択した命令項目ＣＴによってパラメータが入力される記述エリアＩＡが決まる。たとえば、選択エリアＳＡ１内の命令項目ＣＴ１２である「オーバタイムチェック有り」を選択すれば、記述エリアＩＡ１及びＩＡ３がパラメータを入力する記述エリアとなる。なお、記述エリアＩＡ１は、チェックされる時間（タイム）がパラメータとして入力される。また、記述エリアＩＡ３は、オーバタイムチェックの結果、タイムオーバした場合の他のプログラムのラベルがパラメータとして入力される。
【００２５】
また、選択エリアＳＡ４内の命令項目ＣＴ４２である「遅延をおいて」を選択すれば、記述エリアＩＡ４がパラメータを入力する記述エリアと決定される。記述エリアＩＡ４には遅延時間がパラメータとして入力される。
【００２６】
ユーザは、テンプレートＴＭｎ内の必要な命令項目ＣＴを選択し、選択した命令項目ＣＴに対応する記述エリアＩＡに必要なパラメータを入力した後、指令ボタンＣＢを選択する。その結果、ソースコード作成支援装置は、テンプレートＴＭｎの内容に基づいてソースコードを作成する。
【００２７】
再び図１に戻って、表示部３は複数のテンプレートＴＭ１〜ＴＭｎの中からユーザにより選択されたテンプレートＴＭｎを表示する。また、表示部３はユーザにより選択されたテンプレートＴＭｎに基づいて作成されたソースコードを表示する。
【００２８】
通知部４は、ユーザにより選択されたテンプレートＴＭｎ内で選択エリアＳＡの中から所定の命令項目ＣＴが選択されたとき、その選択された命令項目ＣＴに対応する記述エリアＩＡにパラメータを入力するようユーザに通知する。通知の方法としては、音声による通知や、入力すべき記述エリアを点滅させる等がある。たとえば、図２中の選択エリアＳＡ４内の命令項目ＣＴ４２を選択したとき、通知部４は記述エリアＩＡ４を点滅させる。また、通知部４はユーザが命令項目ＣＴを選択すべき選択エリアＳＡも通知する。
【００２９】
翻訳部５０は、判断部５と、作成部６とを備える。判断部５は、表示部３に表示されたテンプレートＴＭｎの指令ボタンＣＢがユーザに選択されたとき、テンプレートＴＭｎ内の複数の選択エリアＳＡ１〜ＳＡ６の中から、所望の命令文を作成するために必要な命令項目ＣＴが選択され、かつ所望の命令文を作成するために必要なパラメータがユーザにより記述エリアＩＡに入力されたか否かを判断する。
【００３０】
必要な命令項目ＣＴが選択され、かつ必要なパラメータが入力されたと判断部５が判断したとき、作成部６は選択された命令項目ＣＴ及び入力されたパラメータに基づいてソースコードを作成する。
【００３１】
図３は一般的なコンピュータの全体構成を示す機能ブロック図である。図３を参照して、コンピュータ１０は、メモリ１１と、ＣＰＵ(Central Processing Unit)１２と、ハードディスク１３と、操作部１４と、ディスプレイ１５と、記憶媒体ドライブ１６とを含む。これらは、バス１８で相互に接続される。
【００３２】
メモリ１１は揮発性半導体記憶装置又は不揮発性半導体記憶装置であり、たとえばＲＯＭ(Read Only Memory)、ＲＡＭ(Random Access Memory)、フラッシュメモリがこれにあたる。操作部１４はたとえばキーボードやマウスである。記憶媒体ドライブ１６はフレキシブルディスクやＣＤ−ＲＯＭ、ＭＯといった記憶媒体１７を読み書きする。記憶媒体１７はソースコード作成支援プログラムを記憶している。図３では記憶媒体１７の代表例としてＣＤ−ＲＯＭが示されているが、フレキシブルディスクやＭＯであってもよい。コンピュータ１０は記憶媒体１７に記憶されたソースコード作成プログラムをインストールすることで、ソースコード作成支援装置１となる。
【００３３】
なお、図１を図３と対比して、図１における記憶部２は、図３におけるメモリ１１及びハードディスク１３に相当する。また、図１における表示部３は図３におけるディスプレイ１５に相当する。また、図１における通知部４と翻訳部５０とは図３におけるＣＰＵ１２に相当する。
【００３４】
１．２．翻訳動作
図４を参照して、ソースコード作成支援装置１の表示部３には、初期画面が表示される（Ｓ１）。初期画面の一例を図５に示す。画面１００はソースコード表示エリア１０１と、テンプレート選択エリア１０２とを含む。テンプレート選択エリア１０２は複数のテンプレートＴＭ１〜ＴＭｎに対応した複数のテンプレート選択ボタンＴＭＢ１〜ＴＭＢｎを含む。各テンプレート選択ボタンＴＭＢｎには項目が表示されている。たとえば、テンプレート選択ボタンＴＭＢ２には「ジャンプ」の項目が表示される。テンプレート選択ボタンＴＭＢ２は、条件に応じてプログラムフローを所定のラベルのタスクにジャンプさせる内容の命令文を作成するためのテンプレートＴＭ２に対応している。また、テンプレート選択ボタンＴＭＢ３には「ステップ動作」が表示される。テンプレート選択ボタンＴＭＢ３は、一連のステップの命令文を一度に作成するテンプレートＴＭ３に対応している。ユーザはテンプレート選択ボタンＴＭＢｎの項目を参照して、所望のテンプレートＴＭｎに対応したテンプレート選択ボタンＴＭＢｎを選択する。
【００３５】
ユーザがテンプレート選択ボタンＴＭＢ３を選択したとき、ソースコード作成支援装置１は表示部３にテンプレートＴＭ３を表示する（Ｓ２）。ステップＳ２で表示部３に表示される画面を図６に示す。画面１００の下部にテンプレートＴＭ３が表示される。テンプレートＴＭ３は図２と同じである。
【００３６】
続いて、ユーザはソースコードを構成する命令文を作成するために必要な命令項目ＣＴを選択し、パラメータを入力する。このとき、通知部４は通知処理を実行する（Ｓ３）。具体的には、通知部４は、ユーザが選択した命令項目ＣＴに基づいて、入力が必要な記述エリアＩＡを点滅させ、ユーザに入力を促す（Ｓ３）。なお、このとき、通知部４は、ユーザが選択する必要のある選択エリアＳＡも点滅させる。
【００３７】
ユーザが必要な命令項目ＣＴを選択し、パラメータを入力したテンプレートＴＭ３には、ユーザが作成したい命令文が自然言語で表示される。ユーザが必要な命令項目ＣＴを選択し、パラメータを入力したテンプレートＴＭ３の一例を図７に示す。図７内の領域１０３では、ユーザが作成したい命令文が、「入力信号ｓｉｇ１」の「立ち上がり」で「１００×１０ｍｓ」の「遅延をおいて」「出力信号ｓｉｇ２」を「ＯＮして２００×１０ｍｓ遅延後ＯＦＦする」という内容であることがわかる。よって、テンプレートＴＭｎを用いることで、ラダー図やフローチャートの知識のないユーザでも、自然言語からソースコードを容易に作成できる。
【００３８】
通知部４による通知に促されて必要な命令項目ＣＴを選択し、必要なパラメータを入力した後、ユーザにより指令ボタンＣＢが選択される（Ｓ４）。このとき、判断部５は判断処理を実行する（Ｓ５）。判断部５は、テンプレートＴＭ３内の複数の選択エリアＳＡ１〜ＳＡ６の中から、所望の命令文を作成するために必要な命令項目ＣＴがユーザにより選択され、かつ所望の命令文を作成するために必要なパラメータがユーザにより記述エリアＩＡに入力されたか否かを判断する。
【００３９】
必要な命令項目ＣＴがユーザにより選択され、かつ、必要なパラメータがユーザにより記述エリアＩＡに入力されたと判断部５が判断したとき、作成部６はテンプレートＴＭ３の内容から命令文のソースコードＳＣを作成する（Ｓ６）。具体的には、判断部５により選択された命令項目ＣＴが特定され、記述エリアＩＡに入力されたパラメータも特定されるため、作成部６は特定された命令項目ＣＴに対応する命令コードと、特定されたパラメータとを用いてソースコードを作成する。作成されたソースコードＳＣは図８に示すように表示部３のソースコード表示エリア１０１に表示される（Ｓ７）。なお、図８中のテンプレートＴＭ３は図７と同じである。
【００４０】
ユーザは表示部３に表示されるテンプレートＴＭ３で所望の命令文を作成できる。つまり、テンプレートＴＭ３内で複数の命令項目ＣＴを選択し、かつ必要なパラメータを入力することで、ユーザは自然言語の命令文をテンプレートＴＭ３に作成できる。ソースコード作成支援装置１は、テンプレートＴＭ３に表示された自然言語の命令文をソースコードに翻訳する。その結果、ユーザがソースコードの知識を持っていなくても、自然言語の命令文を作成すれば、容易にソースコードを作成できる。
【００４１】
また、１つのソースコードを作成するために内容の異なるテンプレートＴＭｎを表示部３に複数回表示する必要がない。よって、ソースコードを作成する操作は容易であり、煩雑にならない。
【００４２】
以上の動作により、ソースコード作成支援装置１は翻訳動作を行う。以下、ステップＳ３の通知処理とステップＳ５の判断処理の詳細を説明する。
【００４３】
［通知処理］
図９を参照して、ユーザがテンプレートＴＭ３内の選択エリアＳＡ１の命令項目ＣＴ１１〜ＣＴ１３のいずれかを選択したとき（Ｓ３０１）、通知部４はテンプレートＴＭ３内でユーザの選択が必要な選択エリアＳＡとユーザの入力が必要な記述エリアＩＡとを点滅させる。
【００４４】
具体的には、通知部４は、選択エリアＳＡ２〜ＳＡ６と、記述エリアＩＡ２と、記述エリアＩＡ５とを点滅させる（Ｓ３０２）。記述エリアＩＡ２を点滅させるのは、記述エリアＩＡ２に対応する選択エリアＳＡ２内のいずれの命令項目ＣＴ（ＣＴ２１又はＣＴ２２）を選択しても、ユーザは記述エリアＩＡ２にパラメータを記述する必要があるからである。記述エリアＩＡ５も同様の理由によりステップＳ３０２で点滅させる。
【００４５】
次に、ユーザが選択エリアＳＡ１内のどの命令項目ＣＴを選択したか判断する（Ｓ３０３，Ｓ３０５）。ユーザが命令項目ＣＴ１２を選択した場合（Ｓ３０３）、通知部４はパラメータの入力が必要な（すなわち、命令項目ＣＴ１２に対応する）記述エリアＩＡ１及びＩＡ３を点滅させる（Ｓ３０４）。また、ユーザが命令項目ＣＴ１３を選択した場合（Ｓ３０５）、通知部４は、命令項目ＣＴ１３に対応する記述エリアＩＡ３を点滅させる（Ｓ３０６）。ユーザが命令項目ＳＡ１２もＳＡ１３も選択せず、命令項目ＣＴ１１を選択した場合、記述エリアＩＡ１及びＩＡ３にパラメータを入力する必要はないため、通知部４は記述エリアＩＡ１及びＩＡ３を点滅させない。
【００４６】
次に、ユーザが選択エリアＳＡ４内の命令項目ＣＴ４２を選択したか判断する（Ｓ３０７）。ユーザが命令項目ＣＴ４２を選択した場合、通知部４は命令項目ＣＴ４２に対応する記述エリアＩＡ４を点滅させる（Ｓ３０８）。同様に、ユーザが選択エリアＳＡ６内の命令項目ＣＴ６３又は命令項目ＣＴ６４を選択した場合（Ｓ３０９）、通知部４は記述エリアＩＡ６を点滅させる（Ｓ３１０）。
【００４７】
以上の動作により、通知部はユーザにより選択された命令項目に対応する記述エリアＩＡを点滅させ、ユーザにパラメータを入力するように通知する。これにより、ユーザが必要なパラメータを入力し忘れるのを防止できる。
【００４８】
［判断処理］
図１０を参照して、判断部５は、テンプレートＴＭ３内の複数の選択エリアＳＡ１〜ＳＡ６の中から、必要な命令項目ＣＴがユーザにより選択されたか否かを判断する（確認処理：Ｓ５２〜Ｓ５７）。命令項目ＣＴが選択されている場合、選択された命令項目を特定し、命令項目ＣＴを特定後、特定した命令項目ＣＴに対応した記述エリアＩＡが存在する場合、その記述エリアＩＡにパラメータが入力されているか否かを判断する。（特定処理：Ｓ５２０，Ｓ５３０，Ｓ５４０，Ｓ５５０，Ｓ５６０，Ｓ５７０）。
【００４９】
以下、判断処理の詳細を説明する。なお、ユーザが命令項目ＣＴを選択し、パラメータを入力したテンプレートＴＭ３が図７と同じとする。
【００５０】
初めに、判断部５は、テンプレートＴＭ３内の選択エリアＳＡ１について確認処理を実行し、命令項目ＣＴが選択されたか否かを判断する（Ｓ５２）。命令項目ＣＴが選択されていない場合、翻訳処理は終了する（Ｓ５８）。
【００５１】
一方、ステップＳ５２での判断の結果、命令項目ＣＴが選択されている場合、判断部５は特定処理を実行する（Ｓ５２０）。具体的には、判断部５は選択された命令項目ＣＴが命令項目ＣＴ１１〜ＣＴ１３のいずれであるか特定する（Ｓ５２１〜Ｓ５２３）。判断部５は命令項目ＣＴ１２を特定するため（Ｓ５２２）、命令項目ＣＴ１２に対応した記述エリアＩＡ１及びＩＡ３にパラメータが記述されているか否かを判断する（Ｓ５２４，Ｓ５２５）。記述エリアＩＡ１に「１０００」が入力され、記述エリアＩＡ３に「ｅｒｒ１」が入力されているため、判断部５は、いずれの記述エリアＩＡにもパラメータが記述されていると判断し、ステップＳ５３に進む。パラメータが入力されていない場合は翻訳処理を終了する（Ｓ５８）。
【００５２】
続いて、判断部５は選択エリアＳＡ２について確認処理を実行し（Ｓ５３）、確認後、さらに特定処理を実行する（Ｓ５３０）。特定処理を実行した結果、判断部５は命令項目ＣＴ２１を特定し（Ｓ５３１）、かつ、命令項目ＣＴ２１に対応する記述部ＩＡ２にパラメータ「ｓｉｇ１」が入力されていると判断する（Ｓ５３３）。なお、命令項目ＣＴ２１を特定しない場合、判断部５は、選択された命令項目をＣＴ２２と特定する（Ｓ５３２）。
【００５３】
同様に、判断部５は選択エリアＳＡ３について確認処理を実行し（Ｓ５４）、特定処理を実行する（Ｓ５４０）。具体的には、判断部５は命令項目ＣＴ３１を特定する（Ｓ５４１）。なお、命令項目ＣＴ３２を特定しない場合、判断部５は選択された命令項目をＣＴ３２と特定する（Ｓ５４２）。
【００５４】
続いて、判断部５は選択エリアＳＡ４について確認処理を実行し（Ｓ５５）、特定処理を実行する（Ｓ５５０）。その結果、判断部５は、命令項目ＣＴ４２を特定し（Ｓ５５２）、さらに、対応する記述エリアＩＡ４にパラメータが登録されているか否か判断する。図７より、記述エリアＩＡ４にパラメータ「１００」が入力されているため（Ｓ５５３）、ステップＳ５６へ進む。なお、ステップＳ５５０の特定処理で、判断部５が命令項目ＣＴ４１を特定した場合（Ｓ５５１）、そのままステップＳ５６へ進む。
【００５５】
ステップＳ５６で判断部５は、選択エリアＳＡ５について確認処理を実行し（Ｓ５６）、さらに特定処理を実行する（Ｓ５６０）。判断部５は、命令項目ＣＴ５１を特定し（Ｓ５６１）、記述エリアＩＡ５にパラメータ「ｓｉｇ２」が入力されていると判断する（Ｓ５６３）。なお、命令項目ＣＴ５２を特定した場合（Ｓ５６２）も同様に、判断部５は、記述エリアＩＡ５にパラメータが入力されているか否か判断する（Ｓ５６３）。
【００５６】
続いて、判断部５は、選択エリアＳＡ６について確認処理を実行し（Ｓ５７）、さらに特定処理を実行する（Ｓ５７０）。このとき、判断部５は、選択された命令項目ＣＴが命令項目ＣＴ６１〜ＣＴ６４のいずれであるか特定する（Ｓ５７１〜Ｓ５７４）。判断部５は命令項目ＣＴ６３を特定し（Ｓ５７３）、命令項目ＣＴ６３に対応する記述エリアＩＡ６に「２００」が入力されていると判断する（Ｓ５７５）。なお、判断部５が命令項目ＣＴ６１又はＣＴ６２を特定した場合（Ｓ５７１，Ｓ５７２）、そのまま判断処理を終了する。また、命令項目ＣＴ６４を選択した場合（Ｓ５７４）、対応する記述エリアＩＡ６にパラメータが入力されているか否かを判断する（Ｓ５７５）。
【００５７】
以上の動作により、判断部５は選択された命令項目ＣＴを特定し、特定した命令項目ＣＴに対応する記述エリアＩＡが存在する場合、その記述エリアＩＡにパラメータが入力されているか判断する。必要な命令項目ＣＴが選択されていなかったり、必要なパラメータが入力されていない場合、翻訳処理は終了する（Ｓ５８）。そのため、ユーザは命令文を作成するために必要な命令項目を選択したか否か、又は必要なパラメータの入力を行ったか否かを容易に確認できる。
【００５８】
２．第２の実施の形態
２．１．全体構成
図１１を参照して、本実施の形態によるソースコード作成支援装置６０は、図１のソースコード作成支援装置１と比較して、記憶部２に新たに表１に示すリンクテーブルＬＴを記憶する。
【００５９】
【表１】
2004199660.tif 000003
表１を参照して、リンクテーブルＬＴはテンプレートを特定するテンプレートＮＯ（ＴＭ１〜ＴＭｎ）に対応した命令コードを登録する。テンプレートＮＯである「ＴＭ１」〜「ＴＭｎ」はテンプレートＴＭ１〜ＴＭｎに対応する。
【００６０】
ソースコード作成支援装置６０はさらに、逆翻訳部７０を備える。逆翻訳部７０は、ソースコードの命令文を自然言語へ逆翻訳する。逆翻訳部７０は、テンプレート選択部７と、項目選択部８とパラメータ記述部９とを備える。
【００６１】
テンプレート選択部７は、表示部３に表示されたソースコードの中から選択された命令文中の命令コードに対応するテンプレートＴＭｎを、リンクテーブルＬＴに基づいて選択する。項目選択部８は、テンプレート選択部７により選択されたテンプレートＴＭｎ内の選択エリアＳＡの中から、選択された命令文中の命令コードに対応する命令項目ＣＴを選択する。パラメータ記述部９は、項目選択部８により選択された命令項目ＣＴに対応する記述エリアＩＡに選択された命令文のパラメータを入力する。
【００６２】
その他の構成については、図１のソースコード作成支援装置１と同じである。
【００６３】
２．２．逆翻訳動作
図１２中のソースコード表示エリア１０１に表示されるソースコードのうち、命令文「Ｄｌｙｗ＿１００」をユーザが選択し、この命令文を逆翻訳する場合のソースコード作成支援装置６０の動作について説明する。
【００６４】
図１３を参照して、ソースコード作成支援装置６０は、選択された命令文から、命令コードを抽出する（Ｓ４０１）。具体的には、命令文「Ｄｌｙｗ＿１００」から命令コード「Ｄｌｙｗ＿」を抽出する。続いて、テンプレート選択部７は、命令コード「Ｄｌｙｗ＿に対応するテンプレートＴＭｎを、リンクテーブルＬＴに基づいて選択する（Ｓ４０２）。表１より、命令コード「Ｄｌｙｗ＿」に対応するのはテンプレートＴＭ４であるため、テンプレート選択部７は図１４に示すテンプレートＴＭ４を選択する。なお、ステップＳ４０２において、テンプレート選択部７が命令コードに対応したテンプレートＴＭｎを選択できない場合、ソースコード作成支援装置６０はユーザにエラーを通知する（Ｓ４０７）。エラー通知は音声であってもよいし、エラーが発生した旨を表示部３に表示してもよい。
【００６５】
ステップＳ４０２でテンプレート選択部５０２によりテンプレートＴＭ４を選択後、項目選択部８は、テンプレートＴＭ４内の選択エリアＳＡ４００の中から、命令コード「Ｄｌｙｗ＿」に対応する命令項目ＣＴ４０１を選択する（Ｓ４０３）。なお、命令コードと命令項目とは対応しており、予め記憶部２に登録されているため、項目選択部８は命令項目ＣＴ４０１を選択できる。
【００６６】
続いて、ソースコード作成支援装置６０は、命令文「Ｄｌｙｗ＿１００」からパラメータ「１００」を抽出する（Ｓ４０４）。パラメータ記述部９は、項目選択部８により選択された命令項目ＣＴ４０１に対応する記述エリアＩＡ４０１に抽出したパラメータ「１００」を入力する（Ｓ４０５）。なお、命令項目ＣＴ４０１に記述エリアＩＡ４０１が対応することは予め記憶部２に登録されている。
【００６７】
テンプレートＴＭ４内の命令項目ＣＴ４０１が選択され、かつ、記述エリアＩＡ４０１にパラメータ「１００」が入力された後、ソースコード作成支援装置６０は、テンプレートＴＭ４を表示部３に表示する（Ｓ４０６）。ステップＳ４０６で表示された画面例を図１５に示す。テンプレートＴＭ４は、命令項目ＣＴ４０１が選択され、対応する記述エリアＩＡ４０１に「１００」が記述された状態で表示される。
【００６８】
以上の動作により、ソースコード作成支援装置６０はソースコードから自然言語の命令文へ逆翻訳できる。逆翻訳動作により、ソースコードの命令文「Ｄｌｙｗ＿１００」をテンプレートＴＭ４内で「１００×１０ｍｓの定数だけ、本命令のところで遅延します」と自然言語で表示する。その結果、ユーザはソースコードの意味内容を自然言語で容易に把握できる。
【００６９】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【図面の簡単な説明】
【００７０】
【図１】本発明の第１の実施の形態によるソースコード作成支援装置の構成を示す機能ブロック図である。
【図２】図１に示した記憶部に記憶されたテンプレートの一例を示す図である。
【図３】一般的なコンピュータの構成を示す機能ブロック図である。
【図４】図１に示したソースコード作成支援装置の翻訳動作を示すフロー図である。
【図５】図４中のステップＳ１で表示部に表示される画面を示す図である。
【図６】図４中のステップＳ２で表示部に表示される画面を示す図である。
【図７】ユーザが命令項目を選択し、パラメータを入力した後のテンプレートの一例を示す図である。
【図８】図４中のステップＳ７で表示部に表示される画面を示す図である。
【図９】図４中のステップＳ３の動作の詳細を示すフロー図である。
【図１０】図４中のステップＳ５の動作の詳細を示すフロー図である。
【図１１】本発明の第２の実施の形態によるソースコード作成支援装置の構成を示す図である。
【図１２】逆翻訳処理を行うソースコードが表示された画面を示す図である。
【図１３】図１０に示したソースコード作成支援装置の逆翻訳動作のフロー図である。
【図１４】図１３中のステップＳ４０２で選択されたテンプレートの一例を示す図である。
【図１５】図１３中のステップＳ４０６で表示部に表示された画面を示す図である。
【符号の説明】
【００７１】
１，６０  ソースコード作成支援装置
２  記憶部
３  表示部
４  通知部
５  判断部
６  作成部
７  テンプレート選択部
８  項目選択部
９  パラメータ記述部
５０  翻訳部
７０  逆翻訳部
ＣＢ  指令ボタン
ＣＴ  命令項目
ＩＡ  記述エリア
ＬＡ  ラベルエリア
ＬＴ  リンクテーブル
ＴＭｎ  テンプレート
【図１】
2004199660.tif 000004
【図２】
2004199660.tif 000005
【図３】
2004199660.tif 000006
【図４】
2004199660.tif 000007
【図５】
2004199660.tif 000008
【図６】
2004199660.tif 000009
【図７】
2004199660.tif 000010
【図８】
2004199660.tif 000011
【図９】
2004199660.tif 000012
【図１０】
2004199660.tif 000013
【図１１】
2004199660.tif 000014
【図１２】
2004199660.tif 000015
【図１３】
2004199660.tif 000016
【図１４】
2004199660.tif 000017
【図１５】
2004199660.tif 000018