JP5846853B2 - 支援システム、支援方法、及び支援プログラム - Google Patents

支援システム、支援方法、及び支援プログラム Download PDF

Info

Publication number
JP5846853B2
JP5846853B2 JP2011237531A JP2011237531A JP5846853B2 JP 5846853 B2 JP5846853 B2 JP 5846853B2 JP 2011237531 A JP2011237531 A JP 2011237531A JP 2011237531 A JP2011237531 A JP 2011237531A JP 5846853 B2 JP5846853 B2 JP 5846853B2
Authority
JP
Japan
Prior art keywords
source code
information
function
model
specified
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.)
Active
Application number
JP2011237531A
Other languages
English (en)
Other versions
JP2013097451A (ja
Inventor
丈瑠 黒岩
丈瑠 黒岩
太一 石阪
太一 石阪
繁樹 鈴木
繁樹 鈴木
山彦 伊藤
山彦 伊藤
紀之 小宮
紀之 小宮
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 JP2011237531A priority Critical patent/JP5846853B2/ja
Publication of JP2013097451A publication Critical patent/JP2013097451A/ja
Application granted granted Critical
Publication of JP5846853B2 publication Critical patent/JP5846853B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明は、支援システム、支援方法、及び支援プログラムに関する。
空調機器や照明機器等及びこれらの設備機器を制御するコントローラの多くは、プログラムに従って動作する。このプログラムを生成するためのソースコードのサイズは、設備機器等の高機能化・高性能化にともなって肥大化の傾向にある。そのため、プログラムの開発者によるコーディング作業は、複雑なものになっている。
そこで、既存のソースコードを再利用することにより、コーディング作業を効率化することが広く行われている。また、この再利用を支援するための技術が提案されている(例えば特許文献1を参照)。
特許文献1に開示された装置は、機器が有する機能を実現するためのソースコードに、その機能を表す振る舞い情報を関連づけて、データベースに記憶する。
そして、ユーザ(開発者)により振る舞い情報が指定されると、この装置は、振る舞い情報に関連づけられたソースコード群を検索して表示する。これにより、例えば複数の機能それぞれが関連性の低い機能名を有するような場合であっても、ユーザは、似通った機能を実現するためのソースコード群を容易に再利用することができる。
特開2011−053755号公報
設備機器等には、多くの場合、組み込みシステムが実装される。そのため、設備機器を動作させるためのソースコードは、開発対象となる設備機器のハードウェア構成に適合するように記述されるため、設備機器の機種に依存する。また、設備機器のコントローラを動作させるためのソースコードは、コントローラによって制御される設備機器の機種に依存する。
このため、所定の機種に依存するソースコードを記述する際には、この機種と異なる機種に依存する既存のソースコードの再利用が困難となるおそれがある。したがって、上記従来技術では、データベース内のソースコードそれぞれが依存している機種が互いに異なる場合に、ユーザが容易に再利用することのできるソースコードが提供されないおそれがあった。
本発明は、上述の事情に鑑みてなされたもので、機種に依存する既存のソースコードの再利用を支援することを目的とする。
上記目的を達成するため、本発明の支援システムは、
複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器の機種を識別するための機種情報と、該ソースコードから生成されるプログラムを実行することにより機器が実現する機能を識別するための機能情報と、を関連づけて記憶する第1記憶手段と、
機種情報と、該機種情報により識別される機種に依存する値を有するパラメータを識別するためのパラメータラベルと、を関連づけて記憶する第2記憶手段と、
機種情報を指定するための機種指定情報と、機能情報を指定するための機能指定情報と、を取得する指定情報取得手段と、
前記第1記憶手段に記憶された複数のソースコードのうち、前記機種指定情報により指定される機種情報に関連づけられかつ前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第1特定手段と、
前記第1記憶手段に記憶された複数のソースコードのうち、前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第2特定手段と、
前記第2特定手段により特定されたソースコードに関連づけられて前記第1記憶手段に記憶されている機種情報を特定し、該特定した機種情報に関連づけられて前記第2記憶手段に記憶されているパラメータラベルを取得し、該取得したパラメータラベルが、前記第2特定手段により特定されたソースコードに含まれるか否かを判定する判定手段と、
前記第1特定手段により特定されたソースコードを出力し、前記判定手段により取得されたパラメータラベルが前記第2特定手段により特定されたソースコードに含まれると判定された場合、そのパラメータラベルの部分を他の部分よりも強調して、前記第2特定手段により特定されたソースコードを提示する出力手段と、
を備える。
本発明によれば、機種に依存する既存のソースコードの再利用を支援することができる。
第1の実施形態に係る支援システムの構成を示す図である。 再利用情報の構成を示す図である。 機種依存情報の構成を示す図である。 支援システムにより実行される処理を示すフロー図である。 生成システムにより実行される再利用情報生成処理を示すフロー図である。 UI部により表示されるファイルパスの入力画面を示す図である。 UI部により表示される機種ID及び機能IDの入力画面を示す図である。 生成システムにより実行される機種依存情報生成処理を示すフロー図である。 UI部により表示されるパラメータラベル及び設定値の入力画面を示す図である。 検索システムにより実行される検索処理を示す図である。 表示部により表示される検索結果の画面を示す図である。 表示部により表示される検索結果の画面を示す図である。 第2の実施形態に係る機種依存情報の構成を示す図である。 UI部により表示される文の入力画面を示す図である。 検索システムにより実行される検索処理を示す図である。 表示部により表示される検索結果の画面を示す図である。 生成システム及び検索システムのハードウェア構成を示す図である。
以下、本発明の実施形態を、図面を参照しつつ詳細に説明する。
(第1の実施形態)
本実施形態に係る支援システム10は、図1に示されるように、外部ストレージ40に接続される。外部ストレージ40には、既存のソースコードが記述された複数のファイル41が記憶されている。
支援システム10は、ファイル41とユーザにより入力された情報とに基づいて、再利用可能なソースコードをユーザに提示する。このユーザは、例えば、支援システム10を利用してプログラムを開発する開発者である。支援システム10は、生成システム20及び検索システム30を有している。
生成システム20は、既存のソースコードとユーザにより入力された情報とに基づいて、後述の再利用情報60及び機種依存情報70を生成する。生成システム20は、UI(User Interface)部21、生成部22、及び送信部23を有している。
UI部21は、ユーザにより入力されたファイルパス51を取得する。このファイルパス51は、外部ストレージ40のファイル41を識別するための情報である。また、UI部21は、生成部22の指示に従って、所定の画面をユーザに対して表示する。そして、UI部21は、ユーザにより入力される機種ID52、機能ID53、パラメータラベル54、及び設定値55を取得する。
機種ID52は、ソースコードから生成されるプログラムを実行する設備機器の機種を識別するためのID(識別子)である。ソースコードから生成されるプログラムは、例えば、オブジェクトプログラムやバイナリコードである。また、機種ID52は、例えば、エアコンのシリーズを示す「Aシリーズ」という識別子である。
機能ID53は、ソースコードから生成されるプログラムを実行することにより設備機器が実現する機能を識別するための識別子である。例えば、エアコンの冷房機能は、「冷房」という機能ID53により識別される。
パラメータラベル54は、機種に依存する値を有するパラメータを識別するためのパラメータ名である。このパラメータラベル54は、例えば、開発者によってファイル41内のソースコードに記述されている。
設定値55は、機種に依存する値を有するパラメータにあらかじめ設定される値である。なお、この設定値55は、数値に限らず、プログラムを実行する機器の内部で2進数により表現される文字列等を含む。
生成部22は、UI部21から通知されたファイルパス51に基づいて、外部ストレージ40に格納されているファイル41を取得し、このファイル41に記述されているソースコードを読み込む。
また、生成部22は、読み込まれたソースコードのうち、設備機器にサブルーチンを実行させるためのソースコードを順次取り出す。このサブルーチンは、設備機器の各機能を実現するための処理(プログラム)である。なお、以下では、サブルーチンを実行するためのソースコードに符号を付して、ソースコード42という。
そして、生成部22は、ソースコード42と、UI部21から出力された機種ID52及び機能ID53とに基づいて、再利用情報60を生成する。また、生成部22は、機種ID52と、UI部21から出力されたパラメータラベル54及び設定値55とに基づいて、機種依存情報70を生成する。
再利用情報60は、図2に示されるように、複数のソースコード42それぞれに機種ID52と機能ID53とが関連づけられたデータである。例えば、「proc1 ( ) { . . . }」というソースコード42に、このソースコード42のコンパイルで生成されるプログラムに従って動作する設備機器の「Aシリーズ」という機種ID52と、このソースコード42により設備機器が実現する機能の「冷房」という機能ID53とが関連づけられる。
また、再利用情報60は、ソースコード42により実行されるサブルーチンのサブルーチン名61を含む。サブルーチン名61は、一般的にソースコード42の先頭付近に記述されている。
機種依存情報70は、図3に示されるように、機種ID52、パラメータラベル54、及び設定値55のそれぞれが相互に関連づけられたデータである。
例えば、「Aシリーズ」という機種ID52、「入力ポート」というパラメータラベル54、及び「77」という設定値55のそれぞれが相互に関連づけられる。このデータは、「入力ポート」というパラメータラベル54を有するパラメータが「Aシリーズ」の機種に依存する値を有し、このパラメータに「77」という値があらかじめ設定されることを示す。
図1に戻り、送信部23は、生成部22によって生成された再利用情報60及び機種依存情報70を検索システム30へ送信する。
検索システム30は、生成システム20により生成された再利用情報60から再利用可能なソースコード42を検索する。検索システム30は、受信部31、記憶部32、キー入力部33、演算部34、及び表示部35を有している。
受信部31は、送信部23から送信された再利用情報60及び機種依存情報70を記憶部32に格納する。
キー入力部33は、第1検索キー56及び第2検索キー57を取得する。第1検索キー56は、ソースコード42に関連づけられた機種ID52を指定するためにユーザにより入力された情報である。また、第2検索キー57は、ソースコード42に関連づけられた機能ID53を指定するためにユーザにより入力された情報である。
演算部34は、第1検索キー56や第2検索キー57に基づいて、再利用情報60から再利用可能なソースコード42を抽出する。演算部34は、例えば、第1検索キー56により示される機種ID52に関連づけられ、かつ第2検索キー57により示される機能ID53に関連づけられたソースコード42を抽出する。また、演算部34は、第2検索キー57により示される機能ID53のみに関連づけられたソースコード42を抽出する。
また、演算部34は、所定の条件を満たすパラメータラベル54や設定値55を、機種依存情報70から取得する。そして、演算部34は、パラメータラベル54や設定値55に関する情報を表示部35へ出力する。
表示部35は、抽出されたソースコード42に関する情報を演算部34から取得して、ユーザに提示する。また、表示部35は、パラメータラベル54及び設定値55に関する情報をユーザに提示する。
続いて、上記の構成を有する支援システム10により実行される処理について説明する。
支援システム10の処理では、図4に示されるように、まず、生成システム20により再利用情報生成処理(ステップS1)及び機種依存情報生成処理(ステップS2)が実行される。
次に、検索システム30が第1検索キー56及び第2検索キー57が入力されたか否かを判定する(ステップS3)。この判定が否定された場合、検索システム30は、検索キーが入力されるまでステップS3を繰り返す。ステップS3の判定が肯定された場合、検索システム30は、検索処理を実行する(ステップS4)。
以下、再利用情報生成処理、機種依存情報生成処理、及び検索処理について詳細に説明する。
ステップS1の再利用情報生成処理では、図5に示されるように、まずUI部21がファイルパス51を取得する(ステップS11)。具体的には、UI部21は、図6に示される画面を表示することにより、ユーザによって入力されるファイルパス51を取得する。なお、図6には、ファイルパス51として「/user/xxx.cpp」が入力される例が示されている。
次に、生成部22は、ファイル41を読み込む(ステップS12)。具体的には、生成部22は、UI部21からファイルパス51を取得し、このファイルパス51により示されるファイル41を、外部ストレージ40から読み込む。
生成部22は、読み込まれたファイル41に記述されているソースコードを解析して、サブルーチンを実行するためのソースコード42を取得する(ステップS13)。また、生成部22は、このソースコード42からサブルーチン名61を取得する。
UI部21は、サブルーチン名61を表示する(ステップS14)。具体的には、UI部21は、図7に示される画面を表示する。これにより、ユーザは、所定のサブルーチンのサブルーチン名61を選択し、このサブルーチンを実行する機種を示す機種ID52と、このサブルーチンにより実現される機能を示す機能ID53とをUI部21に入力する。
生成部22は、選択されたサブルーチン名61と、このサブルーチン名61に対応する機種ID52及び機能ID53を取得する(ステップS15)。すなわち、生成部22は、サブルーチン名61を有するサブルーチンを実行する機種の機種ID52と、このサブルーチンの実行により実現される機能の機能ID53とを取得する。
そして、生成部22は、再利用情報60を生成する(ステップS16)。具体的には、生成部22は、ステップS13にて取得されたソースコード42と、ステップS15にて取得された機種ID52及び機能ID53とに基づいて、再利用情報60を生成する。
そして、送信部23は、生成された再利用情報60を検索システム30へ送信する(ステップS17)。これにより、再利用情報60が検索システム30の記憶部32に記憶される。
続いて、ステップS2の機種依存情報生成処理では、図8に示されるように、まずUI部21が機種ID52を表示する(ステップS21)。具体的には、UI部21は、図9に示される画面を表示する。これにより、表示された機種ID52に対応するパラメータラベル54及び設定値55が、ユーザにより入力される。
なお、表示される機種ID52は、あらかじめ定められた手順でUI部21が決定してもよいし、ユーザが図9に示される画面を操作することにより選択又は入力してもよい。
UI部21は、機種ID52に対応するパラメータラベル54及び設定値55を取得する(ステップS22)。具体的には、UI部21は、機種ID52により示される機種に依存する値を有するパラメータのパラメータラベル54と、このパラメータにあらかじめ設定される設定値55とを取得する。
次に、生成部22は、機種依存情報70を生成する(ステップS23)。具体的には、生成部22は、ステップS21にて表示された機種ID52と、ステップS22にて取得されたパラメータラベル54及び設定値55とに基づいて、機種依存情報70を生成する(ステップS23)。
その後、送信部23は、生成された機種依存情報70を検索システム30へ送信する(ステップS24)。これにより、機種依存情報70が検索システム30の記憶部32に記憶される。
続いて、ステップS4の検索処理では、図10に示されるように、まずキー入力部33が第1検索キー56及び第2検索キー57を取得する(ステップS31)。具体的には、表示部35が、図11に示される画面のうち、ペインP31を表示する。これにより、第1検索キー56及び第2検索キー57がユーザにより入力される。なお、図11には、「Aシリーズ」の設備機器の「冷房」機能を実現するためのプログラムを開発しているユーザにより、検索キーが入力される例が示されている。
次に、演算部34は、第1検索キー56により示される機種ID52に関連づけられ、かつ第2検索キー57により示される機能ID53に関連づけられたソースコード42が再利用情報60に含まれるか否かを判定する(ステップS32)。
ステップS32の判定が肯定された場合(ステップS32;Yes)、演算部34は、再利用情報60に含まれると判定されたソースコード42を特定して抽出する(ステップS33)。
そして、表示部35は、演算部34から出力されたソースコード42を表示する(ステップS34)。具体的には、表示部35は、図11に示されるペインP31の下にペインP32を表示することにより、抽出されたソースコード42をユーザに提示する。その後、検索システム30は、処理を終了する。
ステップS32の判定が否定された場合(ステップS32;No)、演算部34は、第2検索キー57により示される機能ID53に関連づけられたソースコード42が再利用情報60に含まれるか否かを判定する(ステップS35)。ステップS35の判定が否定された場合(ステップS35;No)、検索システム30は処理を終了する。
ステップS35の判定が肯定された場合(ステップS35;Yes)、演算部34は、再利用情報60に含まれると判定されたソースコード42を特定して抽出する(ステップS36)。
そして、表示部35は、演算部34から出力されたソースコード42を表示する(ステップS37)。具体的には、表示部35は、図12に示されるペインP34を表示することにより、ソースコード42をユーザに提示する。
次に、演算部34は、パラメータラベル54を取得する(ステップS38)。具体的には、演算部34は、まずステップS36にて抽出されたソースコード42に関連づけられた機種ID52を、再利用情報60から読み込む。次に、演算部34は、読み込まれた機種ID52と相互に等しい機種ID52に関連づけられたパラメータラベル54を、機種依存情報70から取得する。
演算部34は、ステップS36にて抽出されたソースコード42に、ステップS38にて取得されたパラメータラベル54が含まれて記述されているか否かを判定する(ステップS39)。ステップS39の判定が否定された場合(ステップS39;No)、検索システム30は処理を終了する。
ステップS39の判定が肯定された場合(ステップS39;Yes)、表示部35は、ソースコード42に記述されていると判定されたパラメータラベル54を強調して表示する(ステップS40)。具体的には、表示部35は、ソースコード42のうちパラメータラベル54以外の記述とパラメータラベル54とをユーザが区別可能となるように、パラメータラベル54を表示する。例えば、表示部35は、図12に示されるペインP34のように、ソースコード42のうち、パラメータラベル54が記述されている行に背景色を付加したり、パラメータラベル54であることを示すアイコン・マーク等を描画したりする。
次に、演算部34は、所定の条件を満たす設定値55が機種依存情報70に含まれるか否かを判定する(ステップS41)。具体的には、演算部34は、第1検索キー56により示される機種ID52に関連づけられ、かつステップS38にて取得されたパラメータラベル54に関連づけられた設定値55が機種依存情報70に含まれるか否かを判定する。ステップS41の判定が否定された場合(ステップS41)、検索システム30は、処理を終了する。
ステップS41の判定が肯定された場合(ステップS41;Yes)、演算部34は、機種依存情報70に含まれると判定された設定値55を取得する。そして、表示部35は、この設定値55を表示する(ステップS42)。具体的には、表示部35は、図12に示されるように、ペインP34の下にペインP35を表示することにより、設定値55を表示する。
また、ステップS42にて、演算部34は、設定値55に関連づけられたパラメータラベル54を取得する。そして、表示部35は、図12に示されるように、このパラメータラベル54を設定値55とともに表示する。
その後、検索システム30は処理を終了する。
以上説明したように、本実施形態に係る支援システム10は、再利用情報60を記憶する。また、支援システム10は、第1検索キー56により示される機種ID52、及び第2検索キー57により示される機能ID53の双方に関連づけられたソースコード42を、ユーザに提示する。
これにより、所定の機種に依存し、所定の機能を実現するためのサブルーチンの開発に際して、支援システム10は、外部ストレージ40に記憶された既存のソースコード42のうち、再利用可能なソースコード42をユーザに提示することができる。
また、開発対象の機能と同様の機能を実現するが、開発対象の機種と異なる機種に依存するソースコード42のみが外部ストレージ40に記憶されている場合がある。このような場合に、支援システム10は、ソースコード42をユーザに提示するとともに、このソースコード42に記述されているパラメータラベル54を強調して表示する。
これにより、検索結果を参照するユーザは、開発対象の機種と異なる機種に依存するソースコード42のうち、機種に依存するパラメータラベル54を容易に判別することができる。ひいては、ソースコード42を容易に再利用することができる。
また、支援システム10は、第1検索キー56により示される機種ID52に関連づけられた設定値55を表示する。これにより、ユーザは、開発対象の機種に依存してあらかじめ設定されたパラメータの値を容易に参照することができる。
また、支援システム10は、設定値55とともに、設定値55に関連づけられたパラメータラベル54を表示する。これにより、ユーザは、設定値55が設定されたパラメータのパラメータラベル54を容易に参照することができる。
また、機種ID52及び機能ID53に関連づけられるソースコード42は、サブルーチンに対応する記述である。これにより、ユーザは、既存のソースコード42をサブルーチン単位で検索する。サブルーチンは多くの場合、設備機器等の諸機能それぞれを実現する。また、プログラムの開発は機能単位で行われることが多い。そのため、支援システム10は、再利用に適したソースコード42をユーザに提示することができる。
また、支援システム10は、再利用情報60及び機種依存情報70を生成する生成システム20を含んで構成される。これにより、再利用情報60及び機種依存情報70を必要に応じて拡充することができる。
(第2の実施形態)
続いて、第2の実施形態について、上述の第1の実施形態との相違点を中心に説明する。なお、上記実施形態と同一又は同等の構成については、同等の符号を用いるとともに、その説明を省略又は簡略する。
本実施形態に係る機種依存情報70は、第1の実施形態に係る設定値55を省くとともに、パラメータラベル54に代えて、文を含んで構成される。すなわち、機種依存情報70は、図13に示されるように、機種ID52と、この機種ID52により示される機種に依存する文とが関連づけられた情報である。
UI部21は、ステップS21において図14に示される画面を表示する。これにより、生成部22は、機種ID52と文とを取得し、機種依存情報70を生成する。
その後、検索システム30は、図15に示される検索処理を実行する。この検索処理のうち、ステップS31〜S37の処理は、第1の実施形態に係るものと同様である。
ステップS37に続いて、演算部34は、文を取得する(ステップS51)。具体的には、演算部34は、まずステップS36にて抽出されたソースコード42に関連づけられた機種ID52を、再利用情報60から読み込む。次に、演算部34は、読み込まれた機種ID52と相互に等しい機種ID52に関連づけられた文を、機種依存情報70から取得する。
演算部34は、ステップS36にて抽出されたソースコード42に、ステップS38にて取得された文が記述されているか否かを判定する(ステップS52)。ステップS52の判定が否定された場合(ステップS52;No)、検索システム30は処理を終了する。
ステップS52の判定が肯定された場合(ステップS52;Yes)、表示部35は、ソースコード42に記述されていると判定された文を強調して表示する(ステップS53)。具体的には、表示部35は、図16に示されるペインP36のように、文を強調して表示する。その後、検索システム30は処理を終了する。
以上説明したように、本実施形態に係る支援システム10は、ソースコード42に記述されている文を強調して表示する。これにより、検索結果を参照するユーザは、開発対象の機種と異なる機種に依存するソースコード42のうち、機種に依存する文を容易に判別することができる。
以上、本発明の実施形態について説明したが、本発明は上記実施形態によって限定されるものではない。
例えば、図3において、「Fシリーズ」という機種ID52に「出力ポート」というパラメータラベル54が関連づけられているが、これらのデータに設定値55は関連づけられていない。このように、機種依存情報70は、機種ID52、パラメータラベル54及び設定値55のすべてが関連づけられたデータでなくてもよい。
例えば、ソースコード42に機種ID52と機能ID53とが関連づけられた再利用情報60は、様々な形態で実現することが可能である。例えば、ソースコード42が記述されたファイルと、サブルーチン名61、機種ID52及び機能ID53が記述されたファイルとを関連づけることによって再利用情報60を実現してもよい。また、ソースコード42のコメントとして機種ID52等が記述されてもよい。また、ハッシュテーブルやデータベースにより実現してもよいし、表計算ソフト専用のファイル形式で保存することにより実現してもよい。
例えば、再利用情報60を構成するソースコード42は、サブルーチンに対応する記述としたが、これには限られない。例えば、モジュール、ライブラリ、クラス、メソッド、又はファイルやフォルダに、機種ID52と機能ID53とを関連づけて再利用情報60を構成してもよい。
例えば、上記実施形態においてユーザが開発するプログラムは、設備機器等により実行されるプログラムであったが、その他の機器により実行されるプログラムであってもよい。例えば、家庭用電気製品や携帯電話、自動車の車載システムを動作させるためのプログラム等であってもよい。
例えば、上記実施形態に係る機種ID52は、設備機器の機種を識別するための識別子としたが、その他の設備機器の構成を識別するための識別子としてもよい。例えば、設備機器のシリーズ、モデル、型番又はOSを識別するための識別子としてもよい。また、シリーズ等が同一であっても、設備機器それぞれが備えるセンサ等が異なる場合に、異なる識別子を付してもよい。
例えば、上記実施形態に係るUI部21及びキー入力部33は、GUI(Graphical User Interface)によりユーザから情報の入力を受け付けたが、CUI(Character User Interface)や音声インタフェースを利用してもよい。
例えば、上記実施形態に係る支援システム10は、生成システム20を含んで構成されたが、これに限られず、検索システム30のみから構成されてもよい。この場合、検索システム30が外部ストレージ40を参照し、生成システム20と同様の処理によって再利用情報60及び機種依存情報70を記憶部32に格納すればよい。また、あらかじめ外部記憶装置に記憶された再利用情報60や機種依存情報70を読み込んでもよい。
図17は、上記実施形態に係る生成システム20及び検索システム30をコンピュータに実装する場合のハードウェア構成例を示すブロック図である。生成システム20及び検索システム30は、一般的なコンピュータ装置と同様のハードウェア構成によって実現することができる。生成システム20及び検索システム30それぞれは、プロセッサH1、主記憶部H2、補助記憶部H3、出力部H4、入力部H5及び送受信部H6を備える。主記憶部H2、補助記憶部H3、出力部H4、入力部H5及び送受信部H6はいずれも内部バスH7を介してプロセッサH1に接続されている。
プロセッサH1は、CPU(Central Processing Unit)等から構成され、補助記憶部H3に記憶されるプログラムH8に従って、上記実施形態に係る生成部22、演算部34の処理を実行する。
主記憶部H2は、RAM(Random-Access Memory)等から構成され、補助記憶部H3に記憶されるプログラムH8をロードし、プロセッサH1の作業領域として用いられる。
補助記憶部H3は、フラッシュメモリ、ハードディスク等の不揮発性メモリから構成され、上述の処理をプロセッサH1に実行させるためのプログラムH8や再利用情報60、機種依存情報70等を記憶する。また、補助記憶部H3は、プロセッサH1の指示に従って、プログラムH8が記憶するデータをプロセッサH1に供給し、プロセッサH1から供給されたデータを記憶する。
出力部H4は、LCD(Liquid Crystal Display)等から構成される表示装置、スピーカ等から構成される音響装置又は印刷装置等を有し、種々の情報をユーザに提供する。出力部H4は、UI部21及び表示部35を物理的に実現する。
入力部H5は、キーボード及びマウス等のポインティングデバイス等と、キーボード及びポインティングデバイス等を内部バスH7に接続するインタフェース装置等から構成される。入力部H5は、UI部21及びキー入力部33を物理的に実現する。
送受信部H6は、モデム又は網終端装置、及びそれらと接続するシリアルインタフェース又はLANインタフェース等から構成される。送受信部H6は、送信部23及び受信部31を物理的に実現する。
図1に示されるUI部21、生成部22、送信部23、受信部31、記憶部32、キー入力部33、演算部34、及び表示部35が実行する処理は、プログラムH8が、プロセッサH1、主記憶部H2、補助記憶部H3、出力部H4、入力部H5、送受信部H6等を資源として用いて処理することによって実行される。
上述の実施形態に係る生成システム20及び検索システム30の機能は、専用のハードウェアによっても、また、通常のコンピュータシステムによっても実現することができる。
例えば、補助記憶部H3に記憶されているプログラムH8を、フレキシブルディスク、CD−ROM(Compact Disk Read-Only Memory)、DVD(Digital Versatile Disk)等のコンピュータ読み取り可能な記録媒体に格納して配布し、そのプログラムH8をコンピュータにインストールすることにより、上述の処理を実行する装置を構成することができる。
また、プログラムH8をインターネット等の通信ネットワーク上の所定のサーバ装置が有するディスク装置等に格納しておき、例えば、搬送波に重畳させて、コンピュータにダウンロード等するようにしても良い。
また、通信ネットワークを介してプログラムH8を転送しながら起動実行することによっても、上述の処理を達成することができる。
更に、プログラムH8の全部又は一部をサーバ装置上で実行させ、その処理に関する情報をコンピュータが通信ネットワークを介して送受信しながらプログラムH8を実行することによっても、上述の処理を達成することができる。
なお、上述の機能を、OS(Operating System)が分担して実現する場合又はOSとアプリケーションとの協働により実現する場合等には、OS以外の部分のみを媒体に格納して配布してもよく、また、コンピュータにダウンロード等しても良い。
また、生成システム20及び検索システム30による処理は、同一のプログラムH8により実行されてもよいし、別個のプログラムH8により実行されてもよい。
本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施形態及び変形が可能とされるものである。また、上述した実施形態は、本発明を説明するためのものであり、本発明の範囲を限定するものではない。つまり、本発明の範囲は、実施形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、本発明の範囲内とみなされる。
本発明の支援システム、支援方法、及び支援プログラムは、プログラムの開発者を支援するシステムに適している。
10 支援システム
20 生成システム
21 UI部
22 生成部
23 送信部
30 検索システム
31 受信部
32 記憶部
33 キー入力部
34 演算部
35 表示部
40 外部ストレージ
41 ファイル
42 ソースコード
51 ファイルパス
52 機種ID
53 機能ID
54 パラメータラベル
55 設定値
56 第1検索キー
57 第2検索キー
60 再利用情報
61 サブルーチン名
70 機種依存情報
H1 プロセッサ
H2 主記憶部
H3 補助記憶部
H4 出力部
H5 入力部
H6 送受信部
H7 内部バス
H8 プログラム
P31、P32、P33、P34、P35、P36 ペイン

Claims (14)

  1. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器の機種を識別するための機種情報と、該ソースコードから生成されるプログラムを実行することにより機器が実現する機能を識別するための機能情報と、を関連づけて記憶する第1記憶手段と、
    機種情報と、該機種情報により識別される機種に依存する値を有するパラメータを識別するためのパラメータラベルと、を関連づけて記憶する第2記憶手段と、
    機種情報を指定するための機種指定情報と、機能情報を指定するための機能指定情報と、を取得する指定情報取得手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機種指定情報により指定される機種情報に関連づけられかつ前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第1特定手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第2特定手段と、
    前記第2特定手段により特定されたソースコードに関連づけられて前記第1記憶手段に記憶されている機種情報を特定し、該特定した機種情報に関連づけられて前記第2記憶手段に記憶されているパラメータラベルを取得し、該取得したパラメータラベルが、前記第2特定手段により特定されたソースコードに含まれるか否かを判定する判定手段と、
    前記第1特定手段により特定されたソースコードを出力し、前記判定手段により取得されたパラメータラベルが前記第2特定手段により特定されたソースコードに含まれると判定された場合、そのパラメータラベルの部分を他の部分よりも強調して、前記第2特定手段により特定されたソースコードを提示する出力手段と、
    を備える支援システム。
  2. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器の機種を識別するための機種情報と、該ソースコードから生成されるプログラムを実行することにより機器が実現する機能を識別するための機能情報と、を関連づけて記憶する第1記憶手段と、
    機種情報と、該機種情報により識別される機種に依存する値を有するパラメータにあらかじめ設定された設定値と、を関連づけて記憶する第記憶手段と、
    機種情報を指定するための機種指定情報と、機能情報を指定するための機能指定情報と、を取得する指定情報取得手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機種指定情報により指定される機種情報に関連づけられかつ前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第1特定手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第2特定手段と、
    前記第記憶手段に記憶された設定値のうち、前記機種指定情報により指定される機種情報に関連づけられた設定値を取得する設定値取得手段と、
    前記第1特定手段により特定されたソースコードを出力し、前記第2特定手段により特定されたソースコードと、前記設定値取得手段により取得された設定値とを出力する出力手段と
    を備える支援システム。
  3. 前記第記憶手段は、記憶している各設定値のパラメータを識別するためのパラメータラベルをさらに記憶し、
    前記設定値取得手段は、取得した設定値に関連づけられて前記第記憶手段に記憶されているパラメータラベルを取得し、
    前記出力手段は、前記設定値取得手段により取得されたパラメータラベルを出力する、
    請求項に記載の支援システム。
  4. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器の機種を識別するための機種情報と、該ソースコードから生成されるプログラムを実行することにより機器が実現する機能を識別するための機能情報と、を関連づけて記憶する第1記憶手段と、
    機種情報と、該機種情報により識別される機種に依存する文と、を関連づけて記憶する第記憶手段と、
    機種情報を指定するための機種指定情報と、機能情報を指定するための機能指定情報と、を取得する指定情報取得手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機種指定情報により指定される機種情報に関連づけられかつ前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第1特定手段と、
    前記第1記憶手段に記憶された複数のソースコードのうち、前記機能指定情報により指定される機能情報に関連づけられたソースコードを特定する第特定手段と、
    前記第特定手段により特定されたソースコードに関連づけられて前記第1記憶手段に記憶されている機種情報を特定し、該特定した機種情報に関連づけられて前記第記憶手段に記憶されている文を取得し、該取得した文が、前記第特定手段により特定されたソースコードに含まれるか否かを判定する判定手段と、
    前記第1特定手段により特定されたソースコードを出力し、記判定手段により取得された文が前記第特定手段により特定されたソースコードに含まれると判定された場合、その文の部分を他の部分よりも強調して、前記第特定手段により特定されたソースコードを提示する出力手段と
    を備える支援システム。
  5. ソースコードを識別するためのコード情報と、機種情報と、機能情報と、を受け取る第1受取手段と、
    前記コード情報により識別されるソースコードを取得し、該取得したソースコードに、前記第1受取手段により受け取られた機種情報と機能情報とを関連づけて、前記第1記憶手段に記憶させる第1格納手段と、
    をさらに備える請求項1から4のいずれか1項に記載の支援システム。
  6. 機種情報とパラメータラベルとを受け取る第2受取手段と、
    前記第2受取手段によって受け取られた機種情報とパラメータラベルとを関連づけて前記第2記憶手段に記憶させる第2格納手段と、
    をさらに備える請求項に記載の支援システム。
  7. 機種情報と設定値と受け取る第受取手段と、
    前記第受取手段によって受け取られた機種情報と設定値とを関連づけて前記第記憶手段に記憶させる第格納手段と、
    をさらに備える請求項2又は3に記載の支援システム。
  8. 前記第1記憶手段は、
    機器にサブルーチンを実行させるためのソースコードに、機種情報と機能情報とを関連づけて記憶する、
    請求項1から7のいずれか1項に記載の支援システム。
  9. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連け、
    機器に、該機器に依存する値を有するパラメータを識別するためのパラメータラベルを関連づけ、
    機器と機能とを指定するための情報を受信し、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定し、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定し、
    前記第2のソースコードに機器を介して関連づけられたパラメータラベルが前記第2のソースコードに含まれるか否かを判定し、
    前記第1のソースコードを出力し、パラメータラベルが前記第2のソースコードに含まれると判定した場合、そのパラメータラベルの部分を他の部分よりも強調して、前記第2のソースコードを提示する
    支援方法。
  10. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連づけ、
    機器に、該機器に依存する値を有するパラメータにあらかじめ設定された設定値を関連づけ、
    機器と機能とを指定するための情報を受信し、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定し、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定し、
    受信した情報により指定される機器に関連づけられた設定値を取得し、
    前記第1のソースコードを出力し、前記第2のソースコードと取得した設定値とを出力する、
    支援方法。
  11. 複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連づけ、
    機器に、該機器に依存する文を関連づけ、
    機器と機能とを指定するための情報を受信し、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定し、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定し、
    前記第2のソースコードに機器を介して関連づけられた文が前記第2のソースコードに含まれるか否かを判定し、
    前記第1のソースコードを出力し、文が前記第2のソースコードに含まれると判定した場合、その文の部分を他の部分よりも強調して、前記第2のソースコードを提示する、
    支援方法。
  12. コンピュータに、
    複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連ける手順と、
    機器に、該機器に依存する値を有するパラメータを識別するためのパラメータラベルを関連づける手順と、
    機器と機能とを指定するための情報を受信する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定する手順と、
    前記第2のソースコードに機器を介して関連づけられたパラメータラベルが前記第2のソースコードに含まれるか否かを判定する手順と、
    前記第1のソースコードを出力し、パラメータラベルが前記第2のソースコードに含まれると判定した場合、そのパラメータラベルの部分を他の部分よりも強調して、前記第2のソースコードを提示する手順と、
    を実行させるための支援プログラム。
  13. コンピュータに、
    複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連づける手順と、
    機器に、該機器に依存する値を有するパラメータにあらかじめ設定された設定値を関連づける手順と、
    機器と機能とを指定するための情報を受信する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定する手順と、
    受信した情報により指定される機器に関連づけられた設定値を取得する手順と、
    前記第1のソースコードを出力し、前記第2のソースコードと取得した設定値とを出力する手順と、
    を実行させるための支援プログラム。
  14. コンピュータに、
    複数のソースコードそれぞれに、該ソースコードから生成されるプログラムを実行する機器と該ソースコードから生成されるプログラムが実現する機能とを関連づける手順と、
    機器に、該機器に依存する文を関連づける手順と、
    機器と機能とを指定するための情報を受信する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機器と機能とに関連づけられた第1のソースコードを特定する手順と、
    前記複数のソースコードのうち、受信した情報により指定される機能に関連づけられた第2のソースコードを特定する手順と、
    前記第2のソースコードに機器を介して関連づけられた文が前記第2のソースコードに含まれるか否かを判定する手順、
    前記第1のソースコードを出力し、文が前記第2のソースコードに含まれると判定した場合、その文の部分を他の部分よりも強調して、前記第2のソースコードを提示する手順と、
    を実行させるための支援プログラム。
JP2011237531A 2011-10-28 2011-10-28 支援システム、支援方法、及び支援プログラム Active JP5846853B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2011237531A JP5846853B2 (ja) 2011-10-28 2011-10-28 支援システム、支援方法、及び支援プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2011237531A JP5846853B2 (ja) 2011-10-28 2011-10-28 支援システム、支援方法、及び支援プログラム

Publications (2)

Publication Number Publication Date
JP2013097451A JP2013097451A (ja) 2013-05-20
JP5846853B2 true JP5846853B2 (ja) 2016-01-20

Family

ID=48619359

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2011237531A Active JP5846853B2 (ja) 2011-10-28 2011-10-28 支援システム、支援方法、及び支援プログラム

Country Status (1)

Country Link
JP (1) JP5846853B2 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6694567B1 (ja) * 2020-01-17 2020-05-20 瑞明 飯島 部品用プログラム提供システム及び部品用プログラム提供方法
WO2023281630A1 (ja) * 2021-07-06 2023-01-12 三菱電機株式会社 プログラミング支援装置、プログラミング支援方法、およびプログラミング支援プログラム

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH10254797A (ja) * 1997-03-12 1998-09-25 Omron Corp ソフトウェア送信方法及びソフトウェア送信装置

Also Published As

Publication number Publication date
JP2013097451A (ja) 2013-05-20

Similar Documents

Publication Publication Date Title
CN107729083B (zh) 一种加载驱动程序的方法及嵌入式设备
CN110955416A (zh) 接口文档生成方法、装置、设备和计算机存储介质
US10248537B2 (en) Translation bug prediction classifier
US11409631B2 (en) Verification automation apparatus, verification automation method, and computer-readable recording medium
US8732655B2 (en) Systems and methods for metamodel transformation
JP5846853B2 (ja) 支援システム、支援方法、及び支援プログラム
JP5800657B2 (ja) ソフトウェア再利用支援装置、ソフトウェア再利用支援方法、及び、プログラム
CN112269588B (zh) 算法的升级方法、装置、终端和计算机可读存储介质
JP5426938B2 (ja) 情報処理装置、情報処理方法
JP2010079447A (ja) バグ検出支援プログラム、類似構文識別情報一覧出力プログラム、バグ検出支援装置およびバグ検出支援方法
JP2010282241A (ja) ファイル管理装置、ファイル管理システム、ファイル管理方法、および、プログラム
CN111625221B (zh) 应用于集成开发环境的版本控制方法、装置及设备和介质
CN112015432A (zh) 一种静态项目部署方法及装置
JP5316485B2 (ja) ソフトウェア開発支援装置、ソフトウェア開発支援方法およびソフトウェア開発支援プログラム
CN113495723B (zh) 一种调用功能组件的方法、装置及存储介质
JP2009134445A (ja) ソフトウェア部品抽出支援装置
JP5299625B2 (ja) 操作支援装置、操作支援方法、及びプログラム
JP2009146280A (ja) レガシーマイグレーション支援システム
CN104216706A (zh) Modelica模型的浏览方法
CN109509467B (zh) 代码生成方法及装置
CN111078215A (zh) 软件产品应用方法及装置、存储介质及电子设备
WO2019114133A1 (zh) 编辑页面内容颜色修改方法、装置、终端和存储介质
JP5600826B1 (ja) 非構造化データ処理システム、非構造化データ処理方法およびプログラム
KR102306542B1 (ko) 정보 처리 방법 및 디바이스
JP2007219586A (ja) ソースコード解析装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140911

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20150527

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20150616

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20150811

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20151124

R150 Certificate of patent or registration of utility model

Ref document number: 5846853

Country of ref document: JP

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