JP4714199B2 - Application development support apparatus and program - Google Patents

Application development support apparatus and program Download PDF

Info

Publication number
JP4714199B2
JP4714199B2 JP2007256600A JP2007256600A JP4714199B2 JP 4714199 B2 JP4714199 B2 JP 4714199B2 JP 2007256600 A JP2007256600 A JP 2007256600A JP 2007256600 A JP2007256600 A JP 2007256600A JP 4714199 B2 JP4714199 B2 JP 4714199B2
Authority
JP
Japan
Prior art keywords
program
variable
storage area
user interface
tool
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.)
Expired - Fee Related
Application number
JP2007256600A
Other languages
Japanese (ja)
Other versions
JP2009087093A (en
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.)
MUFG Bank Ltd
Original Assignee
Bank of Tokyo Mitsubishi UFJ Trust Co
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 Bank of Tokyo Mitsubishi UFJ Trust Co filed Critical Bank of Tokyo Mitsubishi UFJ Trust Co
Priority to JP2007256600A priority Critical patent/JP4714199B2/en
Publication of JP2009087093A publication Critical patent/JP2009087093A/en
Application granted granted Critical
Publication of JP4714199B2 publication Critical patent/JP4714199B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Stored Programmes (AREA)

Description

本発明はアプリケーション開発支援装置及びプログラムに係り、特に、複数種のツールを用いて行われるアプリケーション・プログラムの開発を支援するアプリケーション開発支援装置、及び、コンピュータを前記アプリケーション開発支援装置として機能させるためのアプリケーション開発支援プログラムに関する。   The present invention relates to an application development support apparatus and program, and in particular, an application development support apparatus that supports development of an application program performed using a plurality of types of tools, and a function for causing a computer to function as the application development support apparatus. It relates to an application development support program.

最近、ビジネスプロセスをワークフローとして記述可能な規格(言語)としてBPEL(Business Process Execution Language)が普及してきている。BPELに関しては、互いに異なる処理に対応する複数種の部品の中から所望の部品を選択して組み合わせる操作を行うことで所望のワークフローを視覚的に記述可能で、かつ作成されたワークフローからBPELに準拠したプログラムを自動的に生成可能なツールが用意されており、当該ツールによって自動生成されたプログラムをコンピュータによって実行させる実行環境も構築可能とされている。このため、上記ツールを利用することで、所望のワークフロー(ビジネスプロセス)をコンピュータによって実現させるためのプログラムの開発を、プログラミング言語に関する知識が必要なコーディング作業を行うことなく容易かつ短時間で行うことができる。   Recently, BPEL (Business Process Execution Language) has become widespread as a standard (language) that can describe a business process as a workflow. Regarding BPEL, a desired workflow can be visually described by selecting and combining desired parts from multiple types of parts corresponding to different processes, and compliant with BPEL from the created workflow A tool capable of automatically generating the program is prepared, and an execution environment in which the computer automatically generates the program automatically generated by the tool can be constructed. For this reason, by using the above tools, it is possible to easily and quickly develop a program for realizing a desired workflow (business process) by a computer without performing coding work that requires knowledge of a programming language. Can do.

一方、ウェブアプリケーション向けのユーザインタフェースを構築するための規格としてJSF(Java(登録商標) Server Faces) が知られている。このJSFに関しても、ユーザインタフェース画面の構成要素として使用可能な複数種のシンボルの中から所望のシンボルを選択・配置する等の操作を行うことで、ユーザインタフェース画面の設計やユーザインタフェース画面の遷移の定義等のユーザインタフェースの構築が可能で、構築されたユーザインタフェースを実現するプログラムを自動的に生成可能なツールが用意されており、このツールを利用することで、所望のユーザインタフェースを実現するプログラムを、コーディング作業を行うことなく容易かつ短時間で得ることができる。このため、アプリケーションの開発にあたり、当該アプリケーションのうち、ユーザインタフェースの部分のプログラムをJSFのツールを用いて自動生成すると共に、ワークフローの部分のプログラムをBPELのツールを用いて自動生成するようにすれば、一切のコーディング作業が不要となることで開発期間の大幅な短縮を実現できるものと期待される。   On the other hand, JSF (Java (registered trademark) Server Faces) is known as a standard for constructing a user interface for a web application. With regard to this JSF, user interface screen design and user interface screen transitions can be made by performing operations such as selecting and arranging desired symbols from a plurality of types of symbols that can be used as components of the user interface screen. A tool that can construct a user interface such as a definition and can automatically generate a program that realizes the constructed user interface is prepared, and a program that realizes a desired user interface by using this tool Can be obtained easily and in a short time without coding work. Therefore, when developing an application, a user interface program of the application is automatically generated using a JSF tool, and a workflow program is automatically generated using a BPEL tool. It is expected that the development period can be significantly shortened by eliminating the need for any coding work.

しかしながら、JSFの規格は、JSFを用いて自動生成したプログラム(ユーザインタフェースを実現するプログラム)をBPELを用いて自動生成したプログラム(ワークフローを実現するプログラム)と連動させることが考慮されておらず(他のプログラムを呼び出す処理が規格として定義されていない)、例えばユーザインタフェース画面をディスプレイに表示している状態(JSFを用いて自動生成したプログラムが実行されている状態)で、当該ユーザインタフェース画面を介して所定の操作が行われたことを契機として特定のワークフローを実現させる(BPELを用いて自動生成した特定のワークフローを実現する特定プログラムを起動・実行させる)場合、前記所定の操作が行われたことを契機として特定プログラムを起動すると共に、当該特定プログラムに対して入力情報等を引数として引き渡す処理を行うプログラムをコーディング作業によって別途作成する必要がある。従って、開発対象のアプリケーションのうち、ユーザインタフェースの部分のプログラムをJSFのツールを用いて自動生成すると共に、ワークフローの部分のプログラムをBPELのツールを用いて自動生成したとしても、結局はコーディング作業が必要になるために開発期間を大幅に短縮することは困難であった。   However, the JSF standard does not consider linking a program automatically generated using JSF (a program realizing a user interface) with a program automatically generated using BPEL (a program realizing a workflow) ( Processing for calling other programs is not defined as a standard), for example, in a state where a user interface screen is displayed on a display (a program automatically generated using JSF is executed), When a specific workflow is realized when a predetermined operation is performed through the network (when a specific program that realizes a specific workflow automatically generated using BPEL is started and executed), the predetermined operation is performed. Triggered a specific program While, it is necessary to create separate by coding work programs for performing processing to deliver as an argument an input information or the like to the specific program. Therefore, even if the user interface program is automatically generated using the JSF tool and the workflow program is automatically generated using the BPEL tool in the application to be developed, the coding work is ultimately reduced. It was difficult to greatly shorten the development period because it was necessary.

上記に関連して特許文献1には、クライアントとのインタフェースを行う第1の仮想マシンと、各種ビジネスオブジェクトを実行する第2の仮想マシンを有するアプリケーションサーバにおいて、ビジネスオブジェクトの処理に必要なデータの識別名を各ビジネスオブジェクト毎に格納しておき、第1の仮想マシンは、クライアントに任意の画面を表示させて任意のデータ入力を行わせ、フォームデータを含むリクエストを受け取り、受け取ったリクエストに応じたビジネスオブジェクトを呼び出す際に、呼び出すビジネスオブジェクトが必要とする各データの識別名を取得し、フォームデータに含まれる各データのうち識別名が前記取得した識別名と一致するデータのみを第2の仮想マシンへ転送することで、第2の仮想マシン側で必要なデータを抽出する処理のためのコーディングを不要とする技術が開示されている。
特開2006−268121号公報
In relation to the above, Patent Document 1 discloses that an application server having a first virtual machine that interfaces with a client and a second virtual machine that executes various business objects stores data necessary for processing business objects. An identification name is stored for each business object, and the first virtual machine displays an arbitrary screen on the client and inputs an arbitrary data, receives a request including form data, and responds to the received request. When the business object is called, the identification name of each data required by the business object to be called is acquired, and only the data whose identification name matches the acquired identification name among the data included in the form data is the second Necessary on the second virtual machine side by transferring to the virtual machine Coding and unnecessary technology for processing to extract over data is disclosed.
JP 2006-268121 A

しかしながら、上記の特許文献1に記載の技術において、第1の仮想マシンが準拠している規格が、前述したJSFの規格のように他のプログラムを呼び出す処理が定義されていない規格である場合は、第1の仮想マシン側で動作するプログラムの開発にあたり、第2の仮想マシン側で動作するプログラムを呼び出す処理を行うためにコーディング作業を行う必要がある。プログラムの開発にあたって多少なりともコーディング作業が必要とされる場合、開発担当者がプログラミング言語に関する知識を有している人に限られると共に、コーディング作業で作成したプログラムに対してはデバッグ作業も必要となるので、コーディング作業を省略できる場合と比較して開発期間が大幅に長期化するという問題がある。   However, in the technique described in Patent Document 1, the standard that the first virtual machine conforms to is a standard that does not define a process for calling another program, such as the JSF standard described above. In developing a program that operates on the first virtual machine side, it is necessary to perform coding work in order to perform processing for calling a program that operates on the second virtual machine side. If the development of a program requires some coding work, the development staff is limited to those who have knowledge of the programming language, and debugging work is also required for programs created by coding work. Therefore, there is a problem that the development period is significantly prolonged compared to the case where coding work can be omitted.

また、特許文献1に記載の技術は、受け取ったリクエストに応じたビジネスオブジェクトを呼び出す際に、フォームデータに含まれる各データのうち、呼び出すビジネスオブジェクトが必要とするデータと識別名が一致するデータを検索して抽出する処理が行われるので、プログラム実行時の処理に時間が掛るという問題もあり、改善の余地がある。   Moreover, when the technology described in Patent Document 1 calls a business object corresponding to a received request, among the data included in the form data, the data whose identification name matches the data required by the calling business object. Since the process of searching and extracting is performed, there is a problem that it takes time to execute the program, and there is room for improvement.

更に、前述したJSFの規格では、設計したユーザインタフェース画面内に配置した個々のテキストフィールド(テキスト入力欄やテキスト表示欄)を、複数の変数について格納領域を各々設けたマネージド・ビーン(Managed Bean)と称する変数格納領域内の何れかの格納領域と関連付ける(バインドする)ことが可能とされており、バインドされたテキストフィールドと格納領域に対してはプログラム実行時に同期処理が行われる(詳しくは、テキスト入力欄に入力されたデータは当該テキスト入力欄とバインドされた格納領域に格納され、格納領域に格納されたデータは当該格納領域とバインドされたテキスト表示欄に表示される)。このため、JSFのツールを用いて自動生成したユーザインタフェースの部分の第1プログラムと、BPELのツール等を用いて自動生成したワークフローの部分の第2プログラムを連動させる場合、第2プログラムが実行可能な複数種の処理の各々を単位として、各処理における入力変数及び出力変数に対応する格納領域を各々設けた変数格納領域(マネージド・ビーン)を用い、当該変数格納領域を経由して第1プログラムと第2プログラムの間のデータの受け渡しを行うことが考えられる。   Further, according to the JSF standard described above, each managed text field (text entry field and text display field) arranged in the designed user interface screen has a storage area for a plurality of variables. It is possible to associate (bind) with any storage area in the variable storage area called, and the bound text field and storage area are synchronized at the time of program execution (in detail, The data input in the text input field is stored in the storage area bound to the text input field, and the data stored in the storage area is displayed in the text display field bound to the storage area). Therefore, when the first program of the user interface part automatically generated using the JSF tool and the second program of the workflow part automatically generated using the BPEL tool are linked, the second program can be executed. A variable storage area (managed bean) provided with a storage area corresponding to an input variable and an output variable in each process, with each of a plurality of types of processing as a unit, and the first program via the variable storage area It is conceivable to exchange data between the program and the second program.

しかし、JSFの規格では、単一のテキストフィールドと関連付けることが可能な格納領域の数が1個に制限されている。このため、例えば第2プログラムによって行われる第1処理の出力変数をユーザインタフェース画面内の特定テキストフィールドに表示させることは、第1処理の出力変数に対応する格納領域を特定テキストフィールドと関連付けておき、第1処理の出力変数を対応する格納領域に格納する処理を行うことで実現できるものの、更に、特定テキストフィールドに表示されたデータ(第1処理の出力変数)に対し、必要に応じて利用者による変更設定を行わせ、必要に応じて変更設定が行われたデータを第2プログラムによる第2処理の入力変数として用いることは、特定テキストフィールドを、第1処理の出力変数に対応する格納領域に加えて、第2処理の入力変数に対応する格納領域とも関連付けておく必要があるので実現できない。   However, in the JSF standard, the number of storage areas that can be associated with a single text field is limited to one. Therefore, for example, displaying the output variable of the first process performed by the second program in the specific text field in the user interface screen means that the storage area corresponding to the output variable of the first process is associated with the specific text field. Although it can be realized by performing the process of storing the output variable of the first process in the corresponding storage area, the data displayed in the specific text field (the output variable of the first process) is used as necessary. The change setting by the user, and using the changed data as necessary as an input variable of the second process by the second program means that the specific text field is stored corresponding to the output variable of the first process. In addition to the area, since it is necessary to associate with the storage area corresponding to the input variable of the second process, it cannot be realized.

このように、第1の規格に準拠しユーザインタフェースを実現する第1プログラムと、第2の規格に準拠しワークフローを実現する第2プログラムを連動させるにあたり、第1プログラムが準拠する第1の規格に、ユーザインタフェース画面内の個々の情報入力/表示欄と関連付けることが可能な変数の格納領域の数に制限がある場合には、構築可能なユーザインタフェースが制約を受けるという問題もある。なお、特許文献1に記載の技術は上記事項について何ら考慮されていない。   As described above, when the first program that realizes the user interface according to the first standard and the second program that realizes the workflow according to the second standard are linked, the first standard that the first program conforms to In addition, when there is a limit to the number of variable storage areas that can be associated with individual information input / display fields in the user interface screen, there is a problem that the user interface that can be constructed is restricted. In addition, the technique described in Patent Document 1 does not consider the above matters at all.

本発明は上記事実を考慮して成されたもので、第1のツールによって生成可能な第1プログラム及び第2のツールによって生成可能な第2プログラムを含むアプリケーション・プログラムの開発において、第1プログラムから第2プログラムを呼び出すプログラムを作成するコーディング作業を省略可能なアプリケーション開発支援装置及びアプリケーション開発支援プログラムを得ることが目的である。   The present invention has been made in consideration of the above facts. In developing an application program including a first program that can be generated by the first tool and a second program that can be generated by the second tool, the first program It is an object to obtain an application development support apparatus and an application development support program that can omit coding work for creating a program that calls a second program from the program.

上記目的を達成するために請求項1記載の発明に係るアプリケーション開発支援装置は、ユーザインタフェース画面の構成要素として使用可能な、情報の入力及び表示の少なくとも一方が可能な情報入力/表示欄を含む複数種のシンボルを表示画面に表示させると共に、開発者により、前記複数種のシンボルのうちの所望のシンボルを画面内の所望の位置に配置することでユーザインタフェース画面を設計する第1の操作、設計したユーザインタフェース画面内に配置した個々の情報入力/表示欄を、変数格納領域内に格納領域が設けられている複数の変数のうち対応する変数の格納領域と各々関連付ける第2の操作、及び、設計した複数のユーザインタフェース画面の遷移を規定する第3の操作が行われることで構築対象のユーザインタフェースが規定されると、前記ユーザインタフェースを実現するための第1プログラムを生成する第1のツール、及び、所望の処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するための第2プログラムを生成する第2のツールを用いて行われる、前記第1プログラム及び前記第2プログラムを含むアプリケーション・プログラムの開発を支援するアプリケーション開発支援装置であって、前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記第2のツールを用いて生成されたn種類の前記第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、前記変数格納領域として、前記変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ前記変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成する変数格納領域生成手段と、前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記ユーザインタフェース画面の構成要素として使用可能なシンボルとして、前記n種類の前記第2プログラムのうちの何れかを呼び出して前記m種類の処理のうちの互いに異なる処理を行わせるためのm種類の起動シンボルを各々生成するシンボル生成手段と、ユーザインターフェース画面内に表示されている、前記シンボル生成手段によって生成された前記m種類の起動シンボルのうちの特定の起動シンボルが選択された場合に、前記変数格納領域内の各格納領域のうち、前記特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記n種類の前記第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、前記特定の第2プログラムによる前記対応する処理の実行が完了すると、前記特定の第2プログラムから引き渡された出力変数を、前記変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを前記特定の起動シンボルに付加することを、前記m種類の起動シンボルに対して各々行うプログラム付加手段と、を備えたことを特徴としている。   In order to achieve the above object, an application development support apparatus according to the invention described in claim 1 includes an information input / display field that can be used as a component of a user interface screen and at least one of information input and display is possible. A first operation of designing a user interface screen by causing a developer to display a plurality of types of symbols on a display screen and arranging a desired symbol of the plurality of types of symbols at a desired position in the screen; A second operation for associating each information input / display field arranged in the designed user interface screen with a corresponding variable storage area among a plurality of variables having a storage area in the variable storage area; and The third operation that defines the transition of the designed user interface screens is performed, so that the user interface to be constructed is When a developer creates a first tool for generating a first program for realizing the user interface and a flowchart defining a desired process, the created flowchart is An application development support apparatus for supporting development of an application program including the first program and the second program, which is performed by using a second tool for generating a second program for executing processing to be represented, M (m ≧ n) executable by the n types of the second programs generated using the second tool before the first to third operations are performed on the first tool. Based on the variable definition information that defines the input variable and output variable in each type of processing, the variable definition information is defined as the variable storage area. A variable storage area generating means for generating a variable storage area in which a storage area for each defined variable is provided and a variable storage area defined in duplicate in the variable definition information is shared; Before the first to third operations are performed on the tool, a symbol usable as a component of the user interface screen is called to call any one of the n types of the second programs. Symbol generation means for generating m kinds of activation symbols for performing different processes from among the m kinds of processes, and the m kinds generated by the symbol generation means displayed in the user interface screen When a specific activation symbol is selected from among the activation symbols, the specific activation symbol among the storage areas in the variable storage area is selected. Starting a specific second program capable of executing the corresponding process among the n types of the second programs, using as an argument the data stored in the storage area of the variable corresponding to the input variable in the process corresponding to When the corresponding second program is executed and the execution of the corresponding process by the specific second program is completed, the output variable delivered from the specific second program is stored in each storage area in the variable storage area. Generating a third program for performing processing for storing in a storage area of a variable corresponding to the delivered output variable, and adding the generated third program to the specific activation symbol. And a program adding means for each of the symbols.

請求項1記載の発明において、第1のツールは、ユーザインタフェース画面の構成要素として使用可能な、情報の入力及び表示の少なくとも一方が可能な情報入力/表示欄を含む複数種のシンボルを表示画面に表示させると共に、開発者により、複数種のシンボルのうちの所望のシンボルを画面内の所望の位置に配置することでユーザインタフェース画面を設計する第1の操作、設計したユーザインタフェース画面内に配置した個々の情報入力/表示欄を、変数格納領域内に格納領域が設けられている複数の変数のうち対応する変数の格納領域と各々関連付ける第2の操作、及び、設計した複数のユーザインタフェース画面の遷移を規定する第3の操作が行われることで構築対象のユーザインタフェースが規定されると、前記ユーザインタフェースを実現するための第1プログラムを生成する。また第2のツールは、所望の処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するための第2プログラムを生成する。なお、請求項4に記載したように、第1のツールとしては第1の規格に準拠したツールを、第2のツールとしては第2の規格に準拠したツールを適用することができ、より詳しくは、例えば請求項5に記載したように、第1の規格としてはJSFを、第2の規格としてはBPELを適用することができる。   2. The display device according to claim 1, wherein the first tool displays a plurality of types of symbols including an information input / display field capable of at least one of inputting and displaying information, which can be used as a component of the user interface screen. The first operation for designing a user interface screen by placing a desired symbol of a plurality of types of symbols at a desired position in the screen by the developer, and placing it in the designed user interface screen A second operation for associating each individual information input / display field with a corresponding variable storage area among a plurality of variables having a storage area in the variable storage area, and a plurality of designed user interface screens When the user interface to be constructed is defined by performing the third operation that defines the transition of the user interface, the user interface Generating a first program for realizing the over scan. In addition, when the developer creates a flowchart that defines a desired process, the second tool generates a second program for executing the process represented by the created flowchart. As described in claim 4, a tool compliant with the first standard can be applied as the first tool, and a tool compliant with the second standard can be applied as the second tool. For example, as described in claim 5, JSF can be applied as the first standard and BPEL can be applied as the second standard.

なお、請求項1記載の発明において、第1のツールによって生成される第1プログラムとしては、例えば請求項3に記載したように、第1プログラムを実行するためのプラットフォームとして機能する所定のプログラムを実行しているコンピュータ上で実行され、当該コンピュータによる第1プログラムの実行時には、所定のプログラムにより、表示画面内に表示されているユーザインタフェース画面内に配置され情報の入力が可能な特定の情報入力/表示欄内に新たに情報が入力された場合には、入力された情報を、変数格納領域内の各格納領域のうち特定の情報入力/表示欄と関連付けられた特定の格納領域にも格納し、変数格納領域内の特定の格納領域に新たに情報が格納された場合には、格納された情報を、表示画面内に表示されているユーザインタフェース画面内に配置され特定の格納領域と関連付けられかつ情報の表示が可能な特定の情報入力/表示欄内にも表示させる同期処理が行われるプログラムが好適である。   In the first aspect of the present invention, the first program generated by the first tool is, for example, a predetermined program that functions as a platform for executing the first program as described in the third aspect. Specific information input that is executed on the computer that is being executed and can be input by the predetermined program arranged in the user interface screen displayed in the display screen when the first program is executed by the computer / When information is newly input in the display field, the input information is stored in a specific storage area associated with the specific information input / display field among the storage areas in the variable storage area. When information is newly stored in a specific storage area in the variable storage area, the stored information is displayed on the display screen. That program synchronization processing of displaying to a user interface disposed within the screen associated with a particular storage area and the specific information input / display space capable of displaying information is are preferred.

ここで、請求項1記載の発明に係るアプリケーション開発支援装置は、上記の第1のツール及び第2のツールを用いて行われる、第1プログラム及び第2プログラムを含むアプリケーション・プログラムの開発を支援する装置であり、変数格納領域生成手段は、第1のツールに対して第1〜第3の操作が行われる前に、第2のツールを用いて生成されたn種類の第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、変数格納領域として、変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成する。これにより、変数定義情報に重複定義されている変数を含め、変数定義情報に定義されている変数に対応する格納領域が1つずつ設けられた変数格納領域(m種類の処理の実行に共通に用いられる変数格納領域)が生成される。   Here, the application development support apparatus according to the first aspect of the invention supports development of an application program including the first program and the second program, which is performed using the first tool and the second tool. The variable storage area generation means is executed by n types of second programs generated using the second tool before the first to third operations are performed on the first tool. Based on variable definition information that defines input variables and output variables in m (m ≧ n) types of processing that can be performed, a storage area for each variable defined in the variable definition information is provided as a variable storage area. In addition, a variable storage area is created in which the storage areas of the variables defined in the variable definition information are made common. As a result, the variable definition information includes the variable defined in the variable definition information and includes one storage area corresponding to the variable defined in the variable definition information (common to the execution of m types of processes). A variable storage area to be used) is generated.

また、請求項1記載の発明において、シンボル生成手段は、第1のツールに対して第1〜第3の操作が行われる前に、ユーザインタフェース画面の構成要素として使用可能なシンボルとして、n種類の第2プログラムのうちの何れかを呼び出してm種類の処理のうちの互いに異なる処理を行わせるためのm種類の起動シンボルを各々生成し、プログラム付加手段は、ユーザインターフェース画面内に表示されている、シンボル生成手段によって生成されたm種類の起動シンボルのうちの特定の起動シンボルが選択された場合に、変数格納領域内の各格納領域のうち、特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、n種類の前記第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、特定の第2プログラムによる前記対応する処理の実行が完了すると、特定の第2プログラムから引き渡された出力変数を、変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを特定の起動シンボルに付加することを、m種類の起動シンボルに対して各々行う。   In the first aspect of the present invention, the symbol generating means includes n types of symbols that can be used as components of the user interface screen before the first to third operations are performed on the first tool. Each of the second programs is called to generate m kinds of activation symbols for performing different processes among the m kinds of processes, and the program addition means is displayed on the user interface screen. When a specific activation symbol is selected from the m types of activation symbols generated by the symbol generation means, the input variable in the process corresponding to the specific activation symbol in each storage area in the variable storage area The corresponding processing among the n types of the second programs is performed using the data stored in the storage area of the variable corresponding to A specific second program that can be executed is started to execute the corresponding process, and when the execution of the corresponding process by the specific second program is completed, the output variable delivered from the specific second program is Generating a third program for performing processing for storing in a storage area of a variable corresponding to the delivered output variable among the storage areas in the variable storage area, and adding the generated third program to a specific activation symbol; Is performed for each of m types of activation symbols.

これにより、開発者が第1のツールを用いて第1〜第3の操作を行うことで構築対象のユーザインタフェースを規定する作業を行う際には、シンボル生成手段によって生成されたm種類の起動シンボルも、第1のツールにより、ユーザインタフェース画面の構成要素として使用可能なシンボルとして表示画面に表示され、第1の操作を行うことで、m種類の起動シンボルのうちの所望の起動シンボル(m種類の処理のうち実行を所望している処理に対応する起動シンボル)を、設計中のユーザインタフェース画面内に配置することが可能となる。また、上記のユーザインタフェース画面が表示されている状態で、利用者が上記の起動シンボルを選択すると、当該起動シンボルに付加されている第3プログラムが実行され、変数格納領域内の各格納領域のうち、前記起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、特定の第2プログラムによる前記対応する処理の実行が完了すると、特定の第2プログラムから引き渡された出力変数を、変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理が行われる。   Thus, when the developer performs the first to third operations using the first tool to specify the user interface to be constructed, m types of activations generated by the symbol generation unit The symbol is also displayed on the display screen as a symbol that can be used as a component of the user interface screen by the first tool. By performing the first operation, a desired activation symbol (m It is possible to arrange a startup symbol corresponding to a process desired to be executed among the types of processes in the user interface screen under design. When the user selects the activation symbol while the user interface screen is displayed, the third program attached to the activation symbol is executed, and each storage area in the variable storage area is executed. Among these, the data corresponding to the input variable in the process corresponding to the startup symbol is used as an argument to start a specific second program that can execute the corresponding process and execute the corresponding process. And when the execution of the corresponding process by the specific second program is completed, the output variable delivered from the specific second program is used as the output variable delivered among the storage areas in the variable storage area. Is stored in the storage area of the variable corresponding to.

このように、請求項1記載の発明では、第1のツールに対して第1〜第3の操作が行われる前に、プログラム付加手段により、第1プログラムから第2プログラムを呼び出す第3プログラムが生成されて起動シンボルに付加されるので、第1のツールによって生成可能な第1プログラム及び第2のツールによって生成可能な第2プログラムを含むアプリケーション・プログラムの開発において、第1プログラムから第2プログラムを呼び出すプログラムを作成するコーディング作業を省略することができる。また、開発者は、第1のツールによって表示画面に表示されている起動シンボルを画面内の所望の位置に配置する第1の操作を行うのみで、第2プログラムを起動可能なユーザインタフェース画面を設計することができるので、上記のコーディング作業を行う必要が無くなったことと相俟って、構築対象のユーザインタフェースを規定する作業に要する期間、ひいてはアプリケーション・プログラムの開発期間を短縮することが可能となる。   Thus, according to the first aspect of the present invention, before the first to third operations are performed on the first tool, the third program for calling the second program from the first program by the program adding means is provided. In the development of the application program including the first program that can be generated by the first tool and the second program that can be generated by the second tool, the second program is generated from the first program. The coding work for creating a program that calls can be omitted. In addition, the developer only needs to perform a first operation to place the activation symbol displayed on the display screen by the first tool at a desired position in the screen, and a user interface screen that can activate the second program is displayed. Since it can be designed, it is possible to shorten the time required for the work to specify the user interface to be built, and thus the development period of the application program, in combination with the necessity of performing the above coding work. It becomes.

また、請求項1記載の発明において、第1のツールに対して第1〜第3の操作が行われる前にプログラム付加手段によって生成される第3プログラムは、ユーザインターフェース画面内に表示されている特定の起動シンボルが選択された場合に、変数格納領域内の各格納領域のうち、特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、n種類の第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、特定の第2プログラムによる前記対応する処理の実行が完了すると、特定の第2プログラムから引き渡された出力変数を、変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行うプログラムであり、第3プログラムによる処理における処理対象の格納領域(格納されているデータを引数として用いたり、引き渡された出力変数を格納する格納領域)は第3プログラムの生成時に設定されている。従って、請求項1記載の発明では、第3プログラムの実行時に処理対象の格納領域を検索・抽出する処理を行う必要が無いので、第3プログラムが実行される際の処理時間を短縮することができる。   In the first aspect of the present invention, the third program generated by the program adding means before the first to third operations are performed on the first tool is displayed in the user interface screen. When a specific activation symbol is selected, out of each storage area in the variable storage area, the data stored in the storage area of the variable corresponding to the input variable in the process corresponding to the specific activation symbol is used as an argument. When a specific second program capable of executing the corresponding process is started from the n types of second programs to execute the corresponding process, and the execution of the corresponding process by the specific second program is completed, The output variable delivered from the specific second program is a variable corresponding to the delivered output variable in each storage area in the variable storage area. A program for performing processing to be stored in the storage area, and a storage area to be processed in the processing by the third program (a storage area in which stored data is used as an argument or a stored output variable is stored) is a third program It is set when generating. Therefore, according to the first aspect of the present invention, there is no need to perform processing for searching / extracting the storage area to be processed when the third program is executed, so that the processing time when the third program is executed can be shortened. it can.

更に、請求項1記載の発明は、変数格納領域生成手段により、変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域が生成されるので、一例として、第2プログラムによって実行される第1処理の出力変数をユーザインタフェース画面内の特定の情報入力/表示欄に表示させると共に、特定の情報入力/表示欄に表示されたデータ(第1処理の出力変数)に対し、必要に応じて利用者による変更設定を行わせ、必要に応じて変更設定が行われた特定の情報入力/表示欄内のデータを第2プログラムによって第2処理の入力変数として用いるユーザインタフェースを構築する等の場合にも、上記の特定の情報入力/表示欄と関連付ける必要の有る変数格納領域内の格納領域の数は1個で済む。これにより、例えば請求項2に記載したように、第1のツールにおいて、個々の情報入力/表示欄と関連付けることが可能な変数格納領域内の格納領域の数が各々1個に制限されている場合にも、上記のようなユーザインタフェースを構築することが可能となり、第1プログラムによって実現されるユーザインタフェースの設計の自由度を向上させることができる。   Furthermore, in the invention described in claim 1, the variable storage area generating means is provided with a storage area for each variable defined in the variable definition information, and a storage area for the variable defined in the variable definition information is provided. Since the common variable storage area is generated, for example, the output variable of the first process executed by the second program is displayed in the specific information input / display field in the user interface screen, and the specific information is displayed. A specific information input / display field in which change setting is performed by the user as necessary for the data (output variable of the first process) displayed in the input / display field, and the change setting is performed as necessary. When building a user interface that uses the data in it as an input variable for the second process by the second program, it is necessary to associate it with the specific information input / display field. The number of storage areas of a few storage region requires only one. As a result, for example, as described in claim 2, in the first tool, the number of storage areas in the variable storage area that can be associated with each information input / display field is limited to one each. Even in this case, the user interface as described above can be constructed, and the degree of freedom in designing the user interface realized by the first program can be improved.

請求項6記載の発明に係るアプリケーション開発支援プログラムは、コンピュータを、ユーザインタフェース画面の構成要素として使用可能な、情報の入力及び表示の少なくとも一方が可能な情報入力/表示欄を含む複数種のシンボルを表示画面に表示させると共に、開発者により、前記複数種のシンボルのうちの所望のシンボルを画面内の所望の位置に配置することでユーザインタフェース画面を設計する第1の操作、設計したユーザインタフェース画面内に配置した個々の情報入力/表示欄を、変数格納領域内に格納領域が設けられている複数の変数のうち対応する変数の格納領域と各々関連付ける第2の操作、及び、設計した複数のユーザインタフェース画面の遷移を規定する第3の操作が行われることで構築対象のユーザインタフェースが規定されると、前記ユーザインタフェースを実現するための第1プログラムを生成する第1のツール、及び、所望の処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するための第2プログラムを生成する第2のツールを用いて行われる、前記第1プログラム及び前記第2プログラムを含むアプリケーション・プログラムの開発を支援するアプリケーション開発支援装置として機能させるためのアプリケーション開発支援プログラムであって、前記コンピュータを、前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記第2のツールを用いて生成されたn種類の前記第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、前記変数格納領域として、前記変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ前記変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成する変数格納領域生成手段、前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記ユーザインタフェース画面の構成要素として使用可能なシンボルとして、前記n種類の前記第2プログラムのうちの何れかを呼び出して前記m種類の処理のうちの互いに異なる処理を行わせるためのm種類のシンボルを各々生成するシンボル生成手段、及び、ユーザインターフェース画面内に表示されている、前記シンボル生成手段によって生成された前記m種類の起動シンボルのうちの特定の起動シンボルが選択された場合に、前記変数格納領域内の各格納領域のうち、前記特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記n種類の前記第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、前記特定の第2プログラムによる前記対応する処理の実行が完了すると、前記特定の第2プログラムから引き渡された出力変数を、前記変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを前記特定の起動シンボルに付加することを、前記m種類の起動シンボルに対して各々行うプログラム付加手段として機能させることを特徴としている。   The application development support program according to the invention of claim 6 is capable of using a computer as a component of a user interface screen, and a plurality of types of symbols including an information input / display field capable of at least one of information input and display Is displayed on the display screen, and the developer arranges a desired symbol of the plurality of types of symbols at a desired position in the screen to design a user interface screen. A second operation for associating each information input / display field arranged in the screen with a corresponding variable storage area among a plurality of variables provided with a storage area in the variable storage area; The third interface that defines the transition of the user interface screen of If a developer creates a first tool that generates a first program for realizing the user interface and a flowchart that defines a desired process, the created flowchart represents To function as an application development support apparatus that supports development of an application program including the first program and the second program, which is performed using a second tool that generates a second program for executing processing. An application development support program, wherein the computer causes the n types of the first types generated using the second tool before the first to third operations are performed on the first tool. Each of input variables and output variables in m (m ≧ n) types of processing that can be executed by two programs Based on the variable definition information to be defined, a storage area for each variable defined in the variable definition information is provided as the variable storage area, and a variable storage area defined in duplicate in the variable definition information is common. Variable storage area generation means for generating a variable storage area, and symbols that can be used as components of the user interface screen before the first to third operations are performed on the first tool. A symbol generating means for generating each of m types of symbols for calling one of the n types of the second programs and performing different processing among the m types of processing, and a user interface screen A specific activation symbol is selected from the m types of activation symbols generated by the symbol generation means. The n types of the storage areas in the variable storage area using the data stored in the storage area of the variable corresponding to the input variable in the process corresponding to the specific activation symbol as an argument. When starting the specific second program capable of executing the corresponding process in the second program and executing the corresponding process, and when the execution of the corresponding process by the specific second program is completed, Generating a third program for performing processing for storing the output variable delivered from the specific second program in the storage area of the variable corresponding to the delivered output variable among the storage areas in the variable storage area; Program adding means for adding the generated third program to the specific activation symbol for each of the m types of activation symbols; It is characterized in that to function Te.

請求項6記載の発明に係るアプリケーション開発支援プログラムは、コンピュータを、上記の変数格納領域生成手段、シンボル生成手段及びプログラム付加手段として機能させるためのプログラムであるので、コンピュータが請求項6記載の発明に係るアプリケーション開発支援プログラムを実行することで、コンピュータが請求項1に記載のアプリケーション開発支援装置として機能することになり、請求項1記載の発明と同様に、第1のツールによって生成可能な第1プログラム及び第2のツールによって生成可能な第2プログラムを含むアプリケーション・プログラムの開発において、第1プログラムから第2プログラムを呼び出すプログラムを作成するコーディング作業を省略することができる。   The application development support program according to the invention described in claim 6 is a program for causing a computer to function as the variable storage area generating means, the symbol generating means, and the program adding means. By executing the application development support program according to the above, the computer functions as the application development support apparatus according to claim 1, and, similar to the invention according to claim 1, the computer can be generated by the first tool. In the development of an application program including one program and a second program that can be generated by the second tool, a coding operation for creating a program that calls the second program from the first program can be omitted.

以上説明したように本発明は、開発者によって構築対象のユーザインタフェースが規定され、当該ユーザインタフェースを実現するための第1プログラムが第1のツールによって生成される前に、開発者によって作成されたフローチャートに基づき第2のツールによって生成されたn種類の第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、当該変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成し、ユーザインタフェース画面の構成要素として使用可能なシンボルとして、n種類の第2プログラムのうちの何れかを呼び出してm種類の処理のうちの互いに異なる処理を行わせるためのm種類の起動シンボルを各々生成し、ユーザインターフェース画面内に表示されている特定の起動シンボルが選択された場合に、特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、特定の第2プログラムによる前記対応する処理の実行が完了すると、特定の第2プログラムから引き渡された出力変数を当該出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを特定の起動シンボルに付加することを、m種類の起動シンボルに対して各々行うので、第1のツールによって生成可能な第1プログラム及び第2のツールによって生成可能な第2プログラムを含むアプリケーション・プログラムの開発において、第1プログラムから第2プログラムを呼び出すプログラムを作成するコーディング作業を省略できる、という優れた効果を有する。   As described above, the present invention is created by the developer before the user interface to be constructed is defined by the developer and the first program for realizing the user interface is generated by the first tool. Based on variable definition information that defines input variables and output variables in m (m ≧ n) types of processing executable by n types of second programs generated by the second tool based on the flowchart, the variable definition information A storage area for each variable defined in is provided, and a variable storage area with a common variable storage area defined in the variable definition information can be generated and used as a component of the user interface screen. As a simple symbol, one of the n types of second programs is called and M types of activation symbols are generated to perform the following process, and when a specific activation symbol displayed in the user interface screen is selected, it corresponds to the input variable in the processing corresponding to the specific activation symbol Using the data stored in the storage area of the variable to be executed as an argument, the specific second program capable of executing the corresponding processing is started to execute the corresponding processing, and the corresponding second program is executed by the specific second program When the execution of the process is completed, a third program for generating a process for storing the output variable delivered from the specific second program in the storage area of the variable corresponding to the output variable is generated, and the generated third program is specified. Since the addition to the activation symbol is performed for each of the m types of activation symbols, the first symbol that can be generated by the first tool is used. In the development of an application program including one program and a second program that can be generated by the second tool, the present invention has an excellent effect that the coding work for creating a program that calls the second program from the first program can be omitted.

以下、図面を参照して本発明の実施形態の一例を詳細に説明する。図1には本実施形態に係る第1のコンピュータ・システム10が示されている。本実施形態に係る第1のコンピュータ・システム10は、所定のウェブサイトにアクセスした利用者に対して所定のサービス(ウェブサービス)を提供するためのアプリケーション・プログラムを開発する際に使用されるコンピュータ・システムであり、サーバ・コンピュータ12がイントラネット14を介して多数台のクライアント端末16と各々接続されて構成されている。個々のクライアント端末16は、上記のアプリケーション・プログラムを開発する開発者によって操作される端末であり、例えばパーソナル・コンピュータ(PC)等から成り、CPU16A、RAM等から成るメモリ16B、HDD(Hard Disk Drive)等から成る記憶部16C、ネットワークインタフェース(I/F)部16Dを備えている。個々のクライアント端末16には、表示手段としてのディスプレイ18、入力手段としてのキーボード20及びマウス22が各々接続されており、ネットワークI/F部16Dを介してイントラネット14に接続されている。   Hereinafter, an example of an embodiment of the present invention will be described in detail with reference to the drawings. FIG. 1 shows a first computer system 10 according to this embodiment. The first computer system 10 according to the present embodiment is a computer used when developing an application program for providing a predetermined service (web service) to a user who accesses a predetermined website. A system, in which a server computer 12 is connected to each of a large number of client terminals 16 via an intranet 14. Each client terminal 16 is a terminal operated by a developer who develops the above-described application program. For example, the client terminal 16 includes a personal computer (PC) and the like. ) And the like, and a network interface (I / F) unit 16D. Each client terminal 16 is connected to a display 18 as display means, a keyboard 20 and mouse 22 as input means, and is connected to the intranet 14 via a network I / F unit 16D.

また、上記のアプリケーション・プログラムは、所定のウェブサイトにおけるユーザインタフェース(UI)の部分を実現するための画面制御プログラム(本発明における第1プログラム)と、利用者に所定のウェブサービスを提供するためのウェブサービス提供プログラム(本発明における第2プログラム)に大別される。クライアント端末16の記憶部16Cには、上記の画面制御プログラムを開発するためのUI構築ツールのプログラムと、上記のウェブサービス提供プログラムを開発するためのウェブサービス作成ツールのプログラムが各々インストールされており、更に、クライアント端末16で後述するボタン生成処理を行うためのボタン生成プログラムもインストールされている。このボタン生成プログラムは請求項6に記載のアプリケーション開発支援プログラムに対応しており、クライアント端末16は、CPU16Aが上記のボタン生成プログラムを実行することで、本発明に係るアプリケーション開発支援装置として機能する。   In addition, the application program described above is for providing a predetermined web service to a user and a screen control program (first program in the present invention) for realizing a user interface (UI) portion in a predetermined website. Web service providing programs (second program in the present invention). The storage unit 16C of the client terminal 16 is installed with a UI construction tool program for developing the screen control program and a web service creation tool program for developing the web service providing program. Further, a button generation program for performing button generation processing described later on the client terminal 16 is also installed. This button generation program corresponds to the application development support program according to claim 6, and the client terminal 16 functions as an application development support device according to the present invention by the CPU 16 </ b> A executing the button generation program. .

なお、UI構築ツールは本発明に係る第1のツールに、ウェブサービス作成ツールは本発明に係る第2のツールに各々対応している。UI構築ツールとしてはJSF(Java(登録商標) Server Faces)の規格に準拠したツールが好適であるが、他の規格に準拠したツールであってもよい。また、ウェブサービス作成ツールとしてはBPEL(Business Process Execution Language)の規格に準拠したツールが好適であるが、他の規格に準拠したツールであってもよい。   The UI construction tool corresponds to the first tool according to the present invention, and the web service creation tool corresponds to the second tool according to the present invention. As the UI construction tool, a tool conforming to the standard of JSF (Java (registered trademark) Server Faces) is suitable, but a tool conforming to another standard may be used. Further, as the web service creation tool, a tool compliant with the BPEL (Business Process Execution Language) standard is suitable, but a tool compliant with another standard may be used.

一方、サーバ・コンピュータ12は、CPU12A、RAM等から成るメモリ12B、HDD等から成る記憶部12C、ネットワークI/F部12Dを備えており、ネットワークI/F部12Dを介してイントラネット14に接続されている。前述のウェブサービス作成ツールを用いたウェブサービス提供プログラムの開発では、個々のウェブサービス(例えば、後述する「書籍検索」や「書籍購入」等)を単位としてプログラムが開発されるが、開発されたウェブサービス提供プログラムは、他のウェブサイトにおける同一ウェブサービスの提供にも利用可能である。このため、サーバ・コンピュータ12の記憶部12Cには、開発されたウェブサービス提供プログラムを登録するためのウェブサービス・ライブラリが記憶されており、このウェブサービス・ライブラリに登録されたウェブサービス提供プログラムは、互いに異なるクライアント端末16を操作する複数の開発者が各々使用可能とされている。   On the other hand, the server computer 12 includes a CPU 12A, a memory 12B including a RAM, a storage unit 12C including an HDD, and a network I / F unit 12D, and is connected to the intranet 14 via the network I / F unit 12D. ing. In the development of a web service providing program using the web service creation tool described above, a program is developed in units of individual web services (for example, “book search” and “book purchase” described later). The web service providing program can also be used to provide the same web service on other websites. Therefore, the storage unit 12C of the server computer 12 stores a web service library for registering the developed web service providing program. The web service providing program registered in the web service library is stored in the storage unit 12C. A plurality of developers operating different client terminals 16 can be used.

次に図7を参照し、第1のコンピュータ・システム10によって開発されたアプリケーション・プログラムの実行環境としての第2のコンピュータ・システム30の構成について説明する。第2のコンピュータ・システム30は特定ウェブサイトを運営するためのウェブサイト運営システム32を備えている。ウェブサイト運営システム32は、アプリケーション・サーバ34、ウェブサービス提供サーバ36及びDB(データベース)サーバ38を備え、ウェブサービス提供サーバ36及びDBサーバ38が通信回線を介してアプリケーション・サーバ34に各々接続されて構成されている。   Next, the configuration of the second computer system 30 as an execution environment of the application program developed by the first computer system 10 will be described with reference to FIG. The second computer system 30 includes a website management system 32 for operating a specific website. The website management system 32 includes an application server 34, a web service providing server 36, and a DB (database) server 38. The web service providing server 36 and the DB server 38 are connected to the application server 34 via communication lines, respectively. Configured.

アプリケーション・サーバ34は、CPU34A、RAM等から成るメモリ34B、HDD等から成る記憶部34C、ネットワークI/F部34Dを備えており、記憶部34Cには、先に説明した第1のコンピュータ・システム10を利用して開発されたアプリケーション・プログラムのうち前述の画面制御プログラムがインストールされている。アプリケーション・サーバ34のネットワークI/F部34Dは、多数台のウェブサーバが通信回線を介して相互に接続されて成るコンピュータ・ネットワーク(インターネット)40に接続されており、インターネット40には、CPU42A、RAM等から成るメモリ42B、HDD等から成る記憶部42C、ネットワークI/F部42Dを備え、記憶部34Cにブラウザ(ウェブ閲覧ソフト)のプログラムがインストールされていると共に、表示手段としてのディスプレイ44、入力手段としてのキーボード46及びマウス48が各々接続されたクライアント端末42が多数台接続されている。   The application server 34 includes a CPU 34A, a memory 34B including a RAM, a storage unit 34C including an HDD, and a network I / F unit 34D. The storage unit 34C includes the first computer system described above. The above-described screen control program is installed among the application programs developed using 10. The network I / F unit 34D of the application server 34 is connected to a computer network (Internet) 40 in which a large number of web servers are connected to each other via a communication line. The Internet 40 includes a CPU 42A, A memory 42B composed of a RAM or the like, a storage unit 42C composed of an HDD or the like, and a network I / F unit 42D. A browser (web browsing software) program is installed in the storage unit 34C, and a display 44 as a display means, A large number of client terminals 42 to which a keyboard 46 and a mouse 48 as input means are respectively connected are connected.

また、ウェブサービス提供サーバ36はCPU36A、RAM等から成るメモリ36B、HDD等から成る記憶部36C、ネットワークI/F部36Dを備えており、HDD36Cには、先に説明した第1のコンピュータ・システム10を利用して開発されたアプリケーション・プログラムのうち前述のウェブサービス提供プログラムがインストールされている。   The web service providing server 36 includes a CPU 36A, a memory 36B including a RAM, a storage unit 36C including an HDD, and a network I / F unit 36D. The HDD 36C includes the first computer system described above. The above-described web service providing program is installed among the application programs developed using 10.

次に本実施形態の作用として、まず、ウェブサービス作成ツールを用いて行われるウェブサービス提供プログラムの開発について説明する。ウェブサービス提供プログラムを開発するために、開発者がクライアント端末16上でウェブサービス作成ツールのプログラムを起動すると、クライアント端末16のディスプレイ18には、例として図2(A)に示すような作成画面が表示される。ウェブサービス作成ツールは、提供対象のウェブサービスを実現する処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するためのウェブサービス提供プログラムを生成する機能を備えたツールであり、図2(A)に示す作成画面には、開発者がフローチャートを作成するための作業領域と、フローチャートの作成に利用可能で互いに異なる処理を表す複数種の部品(シンボル)が表示されたパレットが設けられている。   Next, as an operation of this embodiment, first, development of a web service providing program performed using a web service creation tool will be described. When a developer starts a web service creation tool program on the client terminal 16 in order to develop a web service providing program, a creation screen as shown in FIG. 2A is displayed on the display 18 of the client terminal 16 as an example. Is displayed. The web service creation tool has a function of generating a web service providing program for executing the process represented by the created flowchart when the flowchart defining the process for realizing the web service to be provided is created by the developer. The creation screen shown in FIG. 2A includes a work area for developers to create flowcharts and multiple types of parts (symbols) that can be used to create flowcharts and represent different processes. A displayed palette is provided.

上記の作成画面が表示されると、開発者は、マウス22やキーボード20を介し、パレット内に表示されている複数の部品の中から所望の部品を選択して作業領域に配置し、必要に応じて、配置した部品が表す処理の内容を規定する情報を入力すると共に、配置した部品と作業領域に既に配置した部品との接続関係(各部品が表す処理の実行順序)を規定する操作を繰り返すことで、例として図2(B)に示すように、提供対象のウェブサービスを実現する処理を規定するフローチャートを作成する。フローチャートの作成が完了すると、開発者は、作成したフローチャートに対応するプログラムの生成を指示する操作を行う。パレット内に表示されている個々の部品には、個々の部品が表す処理を実現するためのプログラムが付加されており、ウェブサービス作成ツールは、プログラムの生成が指示されると、作成されたフローチャートを構成する個々の部品に付加されているプログラムを、開発者によって入力された処理内容を規定する情報に基づいて修正し、作成されたフローチャートにおける個々の部品の接続関係に応じて並べ替える等の処理を行うことで、作成されたフローチャートが表す処理を実行するためのプログラム(ウェブサービス提供プログラム)を生成する。これにより開発者は、コーディング作業を行うことなく、所望のウェブサービスを提供するウェブサービス提供プログラムを得ることができる。   When the creation screen is displayed, the developer selects a desired part from a plurality of parts displayed in the pallet via the mouse 22 or the keyboard 20 and places it in the work area. Correspondingly, input information specifying the contents of the process represented by the arranged parts, and an operation for defining the connection relation (execution order of the process represented by each part) between the arranged parts and the parts already arranged in the work area. By repeating, as shown in FIG. 2B as an example, a flowchart defining a process for realizing the Web service to be provided is created. When the creation of the flowchart is completed, the developer performs an operation for instructing generation of a program corresponding to the created flowchart. A program for realizing the processing represented by each part is added to each part displayed in the pallet, and the web service creation tool creates a flowchart when the program generation is instructed. The program added to the individual components that make up the software is modified based on the information that defines the processing content input by the developer, and rearranged according to the connection relationship of the individual components in the created flowchart. By performing the process, a program (web service providing program) for executing the process represented by the created flowchart is generated. As a result, the developer can obtain a web service providing program that provides a desired web service without performing coding work.

また、ウェブサービス作成ツールは、生成したウェブサービス提供プログラムを実行する際の入力変数及び出力変数の名称等を記述した変数定義情報も生成する。この変数定義情報は、より詳しくはウェブサービス提供プログラムによって実現されるウェブサービスを単位として生成され、例えば個々のウェブサービスを実現するための処理に共通部分が多い等の理由で、複数種のウェブサービスを実現するフローチャートが作成され、当該フローチャートに基づいて複数種のウェブサービスを実現するウェブサービス提供プログラムが生成された場合、ウェブサービス作成ツールにより、前記複数種のウェブサービスのうちの互いに異なるウェブサービスに対応する複数の変数定義情報が各々生成される。
複数種のウェブサービスを実現するウェブサービス提供プログラムが生成された場合、ウェブサービス提供プログラムの種類数nは提供可能なウェブサービスの種類数mよりも少なくなる(n<m)が、個々のウェブサービス提供プログラムが各々ウェブサービスを実現するプログラムである場合は、ウェブサービス提供プログラムの種類数nは提供可能なウェブサービスの種類数mと同数(n=m)となる。なお、上記の変数定義情報は、例えばBPELの規格ではWSDL(Web Service Description Language)と称される。また本実施形態では「個々の変数に一定の名称を用いる」という開発ルールが存在しており、同一の変数を用いるウェブサービスは、当該ウェブサービスの内容に拘わらず、対応する変数定義情報に規定されている前記変数の名称が同一とされている。
The web service creation tool also generates variable definition information describing the names of input variables and output variables when the generated web service providing program is executed. More specifically, this variable definition information is generated in units of web services realized by the web service providing program. For example, there are many common parts in processing for realizing individual web services, and so on. When a flowchart for realizing a service is created, and a web service providing program for realizing a plurality of types of web services is generated based on the flowchart, different webs of the plurality of types of web services are generated by a web service creation tool. A plurality of variable definition information corresponding to the service is generated.
When a web service providing program for realizing a plurality of types of web services is generated, the number n of web service providing programs is smaller than the number m of web services that can be provided (n <m). When each service providing program is a program that implements a web service, the number n of web service providing programs is the same as the number m of web services that can be provided (n = m). The above variable definition information is referred to as WSDL (Web Service Description Language) in the BPEL standard, for example. Further, in this embodiment, there is a development rule that “a constant name is used for each variable”, and a web service that uses the same variable is defined in the corresponding variable definition information regardless of the content of the web service. The names of the variables are the same.

上記のようにしてウェブサービス作成ツールによるウェブサービス提供プログラム及び変数定義情報の生成が完了すると、開発者は、生成されたウェブサービス提供プログラム及び変数定義情報をクライアント端末16からサーバ・コンピュータ12へアップロードさせる。サーバ・コンピュータ12へアップロードされたウェブサービス提供プログラム及び変数定義情報はウェブサービス・ライブラリに登録され、他の開発者が使用することが可能となる。   When the generation of the web service providing program and variable definition information by the web service creation tool is completed as described above, the developer uploads the generated web service providing program and variable definition information from the client terminal 16 to the server computer 12. Let The web service providing program and variable definition information uploaded to the server computer 12 are registered in the web service library and can be used by other developers.

次に、UI構築ツールを用いて画面制御プログラムの開発を行うに先立って開発者が行う準備作業について説明する。UI構築ツールを用いて画面制御プログラムの開発を行う場合、開発者は、これから開発する画面制御プログラムによって実現されるUIを通じて利用者への提供を予定しているウェブサービスを全てリストアップし、リストアップした個々のウェブサービスに対応するウェブサービス提供プログラム及び変数定義情報を、例えばサーバ・コンピュータ12のウェブサービス・ライブラリからダウンロードしたり、必要に応じてウェブサービス作成ツールを起動し、前述のフローチャート作成作業を行った後にウェブサービス作成ツールによってウェブサービス提供プログラム及び変数定義情報を生成させる等によって取得する(メモリ16A又は記憶部16Aに記憶させる)。そして、利用者への提供を予定している全てのウェブサービスについて、対応するウェブサービス提供プログラム及び変数定義情報を取得すると、クライアント端末16上でボタン生成プログラムを起動させる。   Next, preparation work performed by the developer prior to the development of the screen control program using the UI construction tool will be described. When developing a screen control program using a UI construction tool, the developer lists all the web services that are scheduled to be provided to the user through the UI realized by the screen control program to be developed. The web service providing program and variable definition information corresponding to each uploaded web service are downloaded from, for example, the web service library of the server computer 12, or the web service creation tool is started as necessary, and the above-described flowchart creation is performed. After the work is performed, the web service creation tool and variable definition information are generated by the web service creation tool (stored in the memory 16A or the storage unit 16A). When the corresponding web service providing program and variable definition information are acquired for all web services scheduled to be provided to the user, the button generation program is activated on the client terminal 16.

以下、起動されたボタン生成プログラムがCPU16Aによって実行されることでクライアント端末16によって行われるボタン生成処理について、図3を参照して説明する。ボタン生成処理では、まずステップ50において、メモリ16A又は記憶部16Aに記憶されている、利用者への提供を予定している個々のウェブサービスに対応する変数定義情報(例えばBPELの規格ではWSDL)を各々参照し、個々の変数定義情報に記述されている入力変数及び出力変数を全て抽出する。例えば利用者への提供を予定しているウェブサービスの種類数がmである場合、m個の変数定義情報から入力変数及び出力変数が各々抽出される。次のステップ52では、ステップ50で抽出した入力変数及び出力変数のうち重複している変数(名称が同一、すなわち同一の変数)を1つに纏め、各変数の格納領域が設けられた変数格納領域(例えばJSFの規格ではマネージドビーン)を生成する。   Hereinafter, a button generation process performed by the client terminal 16 when the activated button generation program is executed by the CPU 16A will be described with reference to FIG. In the button generation process, first, in step 50, variable definition information (for example, WSDL in the BPEL standard) stored in the memory 16A or the storage unit 16A and corresponding to each web service scheduled to be provided to the user. Are extracted, and all input variables and output variables described in the individual variable definition information are extracted. For example, when the number of types of web services scheduled to be provided to users is m, input variables and output variables are respectively extracted from m variable definition information. In the next step 52, the variables stored in the input variable and the output variable extracted in step 50 are combined into one variable (name is the same, that is, the same variable), and each variable storage area is provided. An area (for example, a managed bean in the JSF standard) is generated.

例として図5(A)に示すように、利用者への提供を予定しているウェブサービスが「書籍検索サービス」及び「書籍購入サービス」であり、「書籍検索サービス」の入力変数が「書籍名」、出力変数が「書籍ID」であり、「書籍購入サービス」の入力変数が「書籍ID」及び「購入者」、出力変数が「結果」である場合、重複している「書籍ID」が1つに纏められることで、「書籍名」「書籍ID」「購入者」及び「結果」の各変数の格納領域が1個ずつ設けられた変数格納領域が生成されることになる。なお、ステップ50,52は本発明に係る変数格納領域生成手段に対応している。   As an example, as shown in FIG. 5A, web services scheduled to be provided to users are “book search service” and “book purchase service”, and the input variable of “book search service” is “book”. Name ”, the output variable is“ Book ID ”, the input variable of“ Book Purchase Service ”is“ Book ID ”and“ Purchaser ”, and the output variable is“ Result ”, the duplicate“ Book ID ” Are combined into one, a variable storage area is generated in which one storage area for each variable of “book name”, “book ID”, “purchaser”, and “result” is provided. Steps 50 and 52 correspond to the variable storage area generating means according to the present invention.

ステップ54では利用者への提供を予定しているウェブサービスの中から単一のウェブサービスを処理対象として選択し、次のステップ56では、処理対象のウェブサービスをウェブページ上で呼び出すためのボタン(の情報)を生成する。詳細は後述するが、UI構築ツールでは、UI画面の構成要素として使用可能な情報入力/表示欄や各種のボタン等のシンボルが作成画面(図4も参照)のパレット内に表示され、開発者により、所望のシンボルを選択して所望の位置に配置する操作が繰り返されることでUI画面の設計が行われる。ステップ56では、処理対象のウェブサービスをウェブページ上で呼び出すためのボタンとして、UI構築ツールと同一の規格(例えばJSF)に準拠したボタン(の情報)を生成する。これにより、生成したボタンはUI構築ツールの作成画面のパレット内に表示することが可能となる。なお、ステップ56は本発明に係るシンボル生成手段に対応している。   In step 54, a single web service is selected as a processing target from the web services scheduled to be provided to the user. In the next step 56, a button for calling the processing target web service on the web page is selected. (Information). As will be described in detail later, in the UI construction tool, symbols such as information input / display fields and various buttons that can be used as components of the UI screen are displayed in the palette of the creation screen (see also FIG. 4). Thus, the UI screen is designed by repeating the operation of selecting a desired symbol and placing it at a desired position. In step 56, a button (information) conforming to the same standard (for example, JSF) as the UI construction tool is generated as a button for calling the web service to be processed on the web page. As a result, the generated button can be displayed in the palette of the UI construction tool creation screen. Step 56 corresponds to the symbol generation means according to the present invention.

次のステップ58以降の処理は本発明に係るプログラム付加手段に対応しており、まずステップ58では、処理対象のウェブサービスに対応する変数定義情報に記述されてる入力変数及び出力変数の中から単一の変数を選択し、次のステップ60では、ステップ52で生成した変数格納領域をステップ58で選択した変数の名称をキーとして検索することで、ステップ58で選択した変数に対応する格納領域を変数格納領域から抽出する。ステップ62では、ステップ58で選択した変数が入力変数か否か判定する。判定が肯定された場合はステップ64へ移行し、変数格納領域からステップ60で抽出した格納領域に格納されているデータを、ステップ58で選択した変数(入力変数)として処理対象のウェブサービスへ引き渡す代入文(プログラム)を作成する。また、ステップ58で選択した変数が出力変数であれば、ステップ62の判定が否定されてステップ66へ移行し、処理対象のウェブサービスによる処理終了時に処理対象のウェブサービスから引き渡される出力変数のうち、ステップ58で選択した出力変数を、変数格納領域からステップ60で抽出した格納領域内に格納させる代入文(プログラム)を作成する。   The processing after the next step 58 corresponds to the program adding means according to the present invention. First, at step 58, the input variable and the output variable described in the variable definition information corresponding to the web service to be processed are simply selected. In the next step 60, the variable storage area generated in step 52 is searched using the name of the variable selected in step 58 as a key, so that the storage area corresponding to the variable selected in step 58 is selected. Extract from the variable storage area. In step 62, it is determined whether or not the variable selected in step 58 is an input variable. If the determination is affirmative, the process proceeds to step 64, and the data stored in the storage area extracted in step 60 from the variable storage area is delivered to the processing target web service as the variable (input variable) selected in step 58. Create an assignment statement (program). Also, if the variable selected in step 58 is an output variable, the determination in step 62 is denied and the process proceeds to step 66, out of the output variables delivered from the processing target web service when the processing by the processing target web service ends. Then, an assignment statement (program) is created for storing the output variable selected in step 58 in the storage area extracted in step 60 from the variable storage area.

次のステップ68では、処理対象のウェブサービスに対応する変数定義情報に記述されてる全ての変数に対して上記の処理を行ったか否か判定する。判定が否定された場合はステップ58に戻り、ステップ68の判定が肯定される迄ステップ58〜ステップ68を繰り返す。これにより、処理対象のウェブサービス(を提供するプログラム)の起動時には、処理対象のウェブサービスにおける入力変数に対応するデータを変数格納領域から処理対象のウェブサービスへ入力変数として引き渡す処理を行い(例として図5(B)に破線で示す右向きの矢印を参照)、処理対象のウェブサービス(を提供するプログラム)の終了時には、処理対象のウェブサービスから引き渡された出力変数を変数格納領域に格納する処理を行う(例として図5(B)に破線で示す左向きの矢印を参照)プログラムが自動的に生成されることになる。   In the next step 68, it is determined whether or not the above processing has been performed for all the variables described in the variable definition information corresponding to the web service to be processed. If the determination is negative, the process returns to step 58, and step 58 to step 68 are repeated until the determination of step 68 is affirmed. As a result, at the time of starting the processing target web service (the program that provides the processing), the processing corresponding to the input variable in the processing target web service is transferred from the variable storage area to the processing target web service as an input variable (example) As shown in FIG. 5B, see the arrow pointing to the right indicated by a broken line), and at the end of the processing target web service (the program that provides it), the output variable delivered from the processing target web service is stored in the variable storage area A program that performs processing (see, for example, the left-pointing arrow indicated by a broken line in FIG. 5B) is automatically generated.

ステップ68の判定が肯定されるとステップ70へ移行し、処理対象のウェブサービスを呼び出す呼出文(プログラム)を作成する。そしてステップ72では、上述した処理で作成した呼出プログラム(ステップ64、66で作成した代入文とステップ70で作成した呼出文を含むプログラム:本発明に係る第3プログラムに相当)を、先のステップ56で生成した処理対象のウェブサービスに対応するボタン(の情報)に付加し、メモリ16B又は記憶部16Cの所定の記憶領域に記憶させる。次のステップ74では、利用者への提供を予定している全てのウェブサービスに対して上記の処理を行ったか否か判定する。判定が否定された場合はステップ54に戻り、ステップ74の判定が肯定される迄ステップ54〜ステップ74を繰り返す。これにより、利用者への提供を予定している全てのウェブサービスについて、上記の呼出プログラムが付加されたボタン(の情報)が各々生成される。そしてステップ74の判定が肯定されるとボタン生成処理を終了する。   If the determination in step 68 is affirmative, the process proceeds to step 70 to create a call statement (program) for calling the web service to be processed. In step 72, the calling program created in the above-described processing (the program including the assignment statement created in steps 64 and 66 and the calling statement created in step 70: equivalent to the third program according to the present invention) It is added to the button (information) corresponding to the web service to be processed generated in 56 and stored in a predetermined storage area of the memory 16B or the storage unit 16C. In the next step 74, it is determined whether or not the above processing has been performed on all the web services scheduled to be provided to the user. If the determination is negative, the process returns to step 54, and steps 54 to 74 are repeated until the determination of step 74 is affirmed. As a result, buttons (information) to which the calling program is added are generated for all web services scheduled to be provided to the user. If the determination in step 74 is affirmative, the button generation process is terminated.

このボタン生成処理の終了により準備作業は完了し、続いて開発者は、ウェブサービスを提供する所定のウェブサイトにおけるUIの構築(画面制御プログラムの開発)を行うためにクライアント端末16上でUI構築ツールのプログラムを起動する。これにより、クライアント端末16のディスプレイ18には、例として図4に示すような作成画面が表示される。   Upon completion of this button generation processing, the preparation work is completed, and the developer then constructs a UI on the client terminal 16 in order to construct a UI (development of a screen control program) in a predetermined website that provides the web service. Start the tool program. As a result, a creation screen as shown in FIG. 4 is displayed on the display 18 of the client terminal 16 as an example.

UI構築ツールは、UIを構築するための操作を開発者に行わせ、開発者による操作が完了すると、構築されたUIを実現する画面制御プログラムを生成する機能を備えたツールであり、図4に示す作成画面には、開発者がUI画面(ウェブページ)を作成するためのUI画面作成領域と、UI画面の構成要素として使用可能な情報入力/表示欄や各種のボタン等のシンボルが表示されたパレットと、UI画面作成領域で作成された複数のUI画面の間の遷移を定義するための画面遷移定義領域が各々設けられている。本実施形態では、UI構築ツールの起動に先立って前述のボタン生成処理が実行されるので、UI構築ツールの起動時には、ボタン生成処理によって生成されて所定の記憶領域に記憶されているボタンの情報も読み込まれ、例として図4にハッチングで示すように、ボタン生成処理によって生成されたボタン(利用者への提供を予定している個々のウェブサービスを呼び出すためのボタン)もUI画面の作成に使用可能なシンボルの1つとしてパレット内に表示される。   The UI construction tool is a tool having a function of generating a screen control program that realizes the constructed UI when the developer performs an operation for constructing the UI and the operation by the developer is completed. The creation screen shown in Fig. 2 displays a UI screen creation area for developers to create UI screens (web pages), symbols such as information input / display fields and various buttons that can be used as components of the UI screen. A screen transition definition area for defining transitions between the created palette and a plurality of UI screens created in the UI screen creation area is provided. In the present embodiment, since the above-described button generation processing is executed prior to the activation of the UI construction tool, information on buttons generated by the button generation processing and stored in a predetermined storage area when the UI construction tool is activated. As shown in FIG. 4 by hatching as an example, the buttons generated by the button generation process (buttons for calling individual web services scheduled to be provided to the user) are also used to create UI screens. It is displayed in the palette as one of the usable symbols.

UI構築ツールの作成画面が表示されると、開発者は構築対象のUIを規定するための操作を行う。すなわち開発者は、マウス22やキーボード20を介し、パレット内に表示されている複数のシンボルの中から所望のシンボルを選択してUI画面作成領域内の所望の位置に配置し、必要に応じて、UI画面内に表示すべきテキスト情報を入力する操作(第1の操作)を繰り返すことで、所定のウェブサイトを構成する複数のUI画面(ウェブページ)を順に作成(設計)する。なお、個々のUI画面の作成において、作成しているUI画面が、利用者へ特定のウェブサービスを提供する契機となる画面である場合、開発者は、パレット内に表示されているシンボルの中から特定のウェブサービスを呼び出すためのボタンも選択し、当該ボタンもUI画面内に配置する操作を行う。また、作成したUI画面が、利用者による情報の入力又は情報の表示を行うための情報入力/表示欄が設けられている画面である場合、開発者は、画面内の個々の情報入力/表示欄を、先のボタン生成処理によって生成された変数格納領域のうち、情報入力/表示欄を介して入力される情報又は情報入力/表示欄に表示する情報に対応する格納領域と関連付ける(UIバインドともいう)操作(第2の操作)を行う。更に、ウェブサイトを構成する全てのUI画面(ウェブページ)を作成すると、開発者は、作成した各UI画面の遷移を画面遷移定義領域内で規定する操作(第3の操作)を行う。   When the UI construction tool creation screen is displayed, the developer performs an operation for defining the UI to be constructed. That is, the developer selects a desired symbol from a plurality of symbols displayed in the palette via the mouse 22 or the keyboard 20 and places it at a desired position in the UI screen creation area. By repeating the operation (first operation) for inputting text information to be displayed in the UI screen, a plurality of UI screens (web pages) constituting a predetermined website are sequentially created (designed). In the creation of individual UI screens, if the UI screen being created is a screen that provides a user with a specific web service, the developer must select one of the symbols displayed in the palette. A button for invoking a specific web service is also selected, and an operation for arranging the button in the UI screen is also performed. Further, when the created UI screen is a screen provided with an information input / display field for inputting information or displaying information by the user, the developer can input / display individual information in the screen. The field is associated with the storage area corresponding to the information input via the information input / display field or the information displayed in the information input / display field among the variable storage areas generated by the previous button generation process (UI binding) (Also called) operation (second operation). Furthermore, when all the UI screens (web pages) constituting the website are created, the developer performs an operation (third operation) for defining the transition of each created UI screen within the screen transition definition area.

開発者による操作について具体例を挙げて説明すると、図5(B)に示すように、開発対象のウェブサイトを通じて利用者への提供を予定しているウェブサービスのプログラムとして、書籍検索サービス及び書籍購入サービスのプログラムが既に開発されており、上記ウェブサイトのUIとして、利用者が検索対象の書籍名を入力して検索を指示するための書籍検索画面、上記検索によって抽出された書籍IDを利用者が確認し、必要に応じて書籍IDを変更した後、購入者情報を入力して購入を指示するための書籍購入画面、及び、利用者が購入処理の結果を確認するための結果表示画面へ順に遷移するUIを構築する場合、開発者は、書籍検索画面については、書籍名を入力するための情報入力/表示欄及び書籍検索サービスを呼び出すためのボタンを画面内に各々配置する操作を行うことで書籍検索画面を作成し、当該書籍検索画面内の情報入力/表示欄を、変数格納領域のうち書籍名の格納領域と関連付ける操作を行う。   The operation by the developer will be described with a specific example. As shown in FIG. 5B, as a web service program scheduled to be provided to the user through the development target website, a book search service and a book are provided. A purchase service program has already been developed, and the UI of the website uses a book search screen for a user to input a search target book name and instruct a search, and a book ID extracted by the search. After the user confirms and changes the book ID as necessary, the book purchase screen for inputting the purchaser information and instructing the purchase, and the result display screen for the user confirming the result of the purchase process When building a UI that transitions in order, the developer calls an information input / display field for inputting a book name and a book search service for the book search screen. Button to create the book search screen by performing operations to respectively disposed to the screen, an information input / display space in the book search screen, performs an operation associated with storage areas of the book title of the variable storage region.

また開発者は、書籍購入画面については、書籍IDの表示及び入力を行うための情報入力/表示欄、購入者の情報を入力するための情報入力/表示欄及び書籍購入サービスを呼び出すためのボタンを画面内に各々配置する操作を行うことで書籍購入画面を作成し、当該書籍購入画面内のうち書籍IDの表示及び入力を行うための情報入力/表示欄を、変数格納領域のうち書籍IDの格納領域と関連付けると共に、購入者情報を入力するための情報入力/表示欄を、変数格納領域のうち購入者情報の格納領域と関連付ける操作を行う。また開発者は、結果表示画面については、結果情報を表示するための情報入力/表示欄及び画面の消去を指示するためのボタン(図5(B)に示す「OK」と表記したボタン)を画面内に各々配置する操作を行うことで結果表示画面を作成し、当該結果表示画面内の情報入力/表示欄を、変数格納領域のうち結果情報の格納領域と関連付ける操作を行う。   In addition, for the book purchase screen, the developer inputs an information input / display field for displaying and inputting a book ID, an information input / display field for inputting buyer information, and a button for calling a book purchase service. The book purchase screen is created by performing an operation of arranging each in the screen, and the information input / display field for displaying and inputting the book ID in the book purchase screen is displayed in the variable storage area. The information input / display field for inputting the purchaser information is associated with the storage area for the purchaser information in the variable storage area. Further, for the result display screen, the developer includes an information input / display field for displaying the result information and a button for instructing to delete the screen (a button labeled “OK” shown in FIG. 5B). A result display screen is created by performing an operation of arranging each in the screen, and an operation for associating the information input / display field in the result display screen with the result information storage area in the variable storage area is performed.

更に開発者は、書籍検索画面が表示されている状態で当該画面内のボタンが選択されると書籍検索画面から書籍購入画面へ遷移し、書籍購入画面が表示されている状態で当該画面内のボタンが選択されると書籍購入画面から結果表示画面へ遷移するように、各画面の遷移を規定する操作を行う。以上の操作により図5(B)に示すUIを規定することができる。   Further, the developer transitions from the book search screen to the book purchase screen when the button in the screen is selected in a state where the book search screen is displayed, and in the state where the book purchase screen is displayed, When the button is selected, an operation for defining the transition of each screen is performed so that the book purchase screen transitions to the result display screen. Through the above operation, the UI shown in FIG. 5B can be defined.

なお、利用者への提供を予定している個々のウェブサービスを単位として変数格納領域を設ける従来方式で上記のUIを構築しようとした場合、例として図6に示すように、書籍購入画面内に設けられ書籍IDの表示及び入力を行うための情報入力/表示欄を、書籍検索サービスに対応する変数格納領域内の書籍IDの格納領域、及び、書籍購入サービスに対応する変数格納領域内の書籍IDの格納領域と各々関連付ける必要がある。しかしながら、UI構築ツールが準拠しているJSF等の規格では、個々の情報入力/表示欄と関連付けることが可能な変数格納領域内の格納領域の数が各々1個に制限されており、上記のように書籍IDの表示及び入力のための書籍購入画面内の情報入力/表示欄を複数の格納領域と関連付けることができないので、図5(B)に示すようなUIは構築できない。これに対して本実施形態では、先に説明したボタン生成処理において、変数定義情報に重複定義されている変数の格納領域を共通化した変数格納領域を生成しているので、図5(B)に示すように、書籍IDの表示及び入力のための書籍購入画面内の情報入力/表示欄を単一の格納領域と関連付けるのみで図5(B)に示すUIを構築することができ、実現可能なUIの設計の自由度を向上させることができる。   In addition, when trying to construct the above-described UI by a conventional method in which a variable storage area is provided in units of individual web services scheduled to be provided to users, as shown in FIG. An information input / display field for displaying and inputting a book ID provided in the book ID storage area in the variable storage area corresponding to the book search service, and in the variable storage area corresponding to the book purchase service Each needs to be associated with a storage area for book IDs. However, in standards such as JSF that the UI construction tool complies with, the number of storage areas in the variable storage area that can be associated with each information input / display field is limited to one each. Thus, since the information input / display field in the book purchase screen for displaying and inputting the book ID cannot be associated with a plurality of storage areas, a UI as shown in FIG. 5B cannot be constructed. On the other hand, in the present embodiment, in the button generation processing described above, a variable storage area is generated by sharing the storage area of the variable defined in the variable definition information. As shown in FIG. 5B, the UI shown in FIG. 5B can be constructed and realized simply by associating the information input / display field in the book purchase screen for displaying and inputting the book ID with a single storage area. It is possible to improve the degree of freedom of UI design possible.

UIを規定する操作が完了すると、開発者はUI構築ツールに対し、前記UIを実現するプログラムの生成を指示する。これによりUI構築ツールは、開発者によって構築されたUIを実現する(クライアント端末42(図7参照)からの要求に応じて、クライアント端末42のディスプレイ44に各UI画面を順に表示させる)画面制御プログラムを生成する。この画面制御プログラムは、個々のUI画面を規定するデータと、利用者により個々のUI画面を介して各種の操作が行われた場合の処理を規定するプログラムを含んで構成されるが、各種のウェブサービスを呼び出すためのボタンが設けられたUI画面については、先に説明したボタン生成処理によって生成されて前記ボタンに付加されている呼出プログラムが読み出され、読み出された呼出プログラムが、前記ボタンが利用者によって選択された場合の処理を規定するプログラムとして用いられる(画面制御プログラムに組み込まれる)。   When the operation for defining the UI is completed, the developer instructs the UI construction tool to generate a program that realizes the UI. Thereby, the UI construction tool realizes the UI constructed by the developer (displays each UI screen in order on the display 44 of the client terminal 42 in response to a request from the client terminal 42 (see FIG. 7)). Generate a program. This screen control program includes data that defines individual UI screens and a program that defines processing when various operations are performed by the user via individual UI screens. For a UI screen provided with a button for calling a web service, the call program generated by the button generation process described above and added to the button is read, and the read call program is Used as a program that defines the processing when the button is selected by the user (incorporated into the screen control program).

以上の操作・処理により、画面制御プログラム及びウェブサービス提供プログラムを含むアプリケーション・プログラムの開発が完了する。このように、本実施形態では、ウェブサービス提供プログラムについては、ウェブサービス作成ツールを利用することでコーディング作業を行うことなく開発することができ、画面制御プログラムについても、事前にボタン生成処理を行い、利用者への提供を予定している個々のウェブサービスの変数定義情報に重複定義されている変数の格納領域を共通化した変数格納領域を生成しておくと共に、利用者への提供を予定している個々のウェブサービスを呼び出す呼出プログラムを付加したボタンを生成しておくことで、開発者は、UI構築ツールを利用し、UI構築ツールの作成画面のパレット内に表示される前記ボタンを画面内に配置する操作を含む各種の操作を行うことで、コーディング作業を行うことなく所望のUIの構築(画面制御プログラムの開発)を行うことができる。従って、画面制御プログラム及びウェブサービス提供プログラムを含むアプリケーション・プログラムを非常に短い期間で開発することが可能となる。   With the operations and processes described above, the development of the application program including the screen control program and the web service providing program is completed. As described above, in this embodiment, the web service providing program can be developed without performing coding work by using the web service creation tool, and the button generation process is also performed in advance for the screen control program. , Create a variable storage area that shares the variable storage area defined in the variable definition information of each web service that is scheduled to be provided to the user, and plan to provide it to the user By generating a button to which a calling program for calling individual web services is added, the developer can use the UI construction tool to display the button displayed in the palette of the UI construction tool creation screen. By performing various operations including operations to place in the screen, it is possible to construct a desired UI (screen control) without coding work. It is possible to carry out the program development). Therefore, it is possible to develop application programs including a screen control program and a web service providing program in a very short period of time.

次に、アプリケーション・プログラムの実行時(ウェブサイトの稼働時)の動作について説明する。アプリケーション・プログラムの実行時には、図7に示すように、開発したアプリケーション・プログラムのうち、画面制御プログラムがアプリケーション・サーバ34の記憶部34Cにインストールされ、ウェブサービス提供プログラムがウェブサービス提供サーバ36の記憶部36Cにインストールされる。   Next, the operation when the application program is executed (when the website is operating) will be described. At the time of execution of the application program, as shown in FIG. 7, among the developed application programs, the screen control program is installed in the storage unit 34C of the application server 34, and the web service providing program is stored in the web service providing server 36. Installed in the unit 36C.

なお、図示は省略するが、アプリケーション・サーバ34では画面制御プログラムを実行するためのプラットフォームとして機能する所定のプログラム(以下、プラットフォーム・プログラムと称する)が実行されており、画面制御プログラムは上記のプラットフォーム上で実行される(例えばUI構築ツールがJSFの規格に準拠している場合、UI構築ツールによって生成された画面制御プログラムはJSFエンジンと称されるプラットフォーム上で実行される)。また、ウェブサービス提供サーバ36ではウェブサービス提供プログラムを実行するためのプラットフォームとして機能する所定のプログラムが実行されており、ウェブサービス提供プログラムは上記のプラットフォーム上で実行される(例えばウェブサービス作成ツールがBPELの規格に準拠している場合、ウェブサービス作成ツールによって生成されたウェブサービス提供プログラムはBPELエンジンと称されるプラットフォーム上で実行される)。   Although not shown, the application server 34 executes a predetermined program (hereinafter referred to as a platform program) that functions as a platform for executing the screen control program. (For example, when the UI construction tool conforms to the JSF standard, the screen control program generated by the UI construction tool is executed on a platform called a JSF engine). The web service providing server 36 executes a predetermined program that functions as a platform for executing the web service providing program, and the web service providing program is executed on the platform (for example, a web service creation tool is provided). In the case of conforming to the BPEL standard, the web service providing program generated by the web service creation tool is executed on a platform called a BPEL engine).

アプリケーション・サーバ34で実行される画面制御プログラムは、クライアント端末42を介して利用者からUI画面の配信が要求される毎に、配信が要求されたUI画面のデータを要求元のクライアント端末42へ送信することで、配信が要求されたUI画面を要求元のクライアント端末42のディスプレイ44に表示させる。また、利用者がキーボード46等を操作することでディスプレイ44に表示されたUI画面内の情報入力/表示欄内に入力された情報は、クライアント端末42のメモリ42B等に一旦記憶された後に、所定のタイミング(例えば次のUI画面への遷移のトリガとなるボタンが選択された等のタイミング)でアプリケーション・サーバ34へ転送される。   The screen control program executed by the application server 34 sends the UI screen data requested for distribution to the requesting client terminal 42 every time a user requests distribution of the UI screen via the client terminal 42. By transmitting, the UI screen requested to be distributed is displayed on the display 44 of the requesting client terminal 42. The information input in the information input / display field in the UI screen displayed on the display 44 by the user operating the keyboard 46 or the like is temporarily stored in the memory 42B or the like of the client terminal 42. It is transferred to the application server 34 at a predetermined timing (for example, when a button that triggers a transition to the next UI screen is selected).

アプリケーション・サーバ34上で動作しているプラットフォーム・プログラムは、利用者によってUI画面内の情報入力/表示欄内に入力された情報をアプリケーション・サーバ34がクライアント端末42から受信すると、受信した情報を、アプリケーション・サーバ34のメモリ34B上に設けられた変数格納領域のうち、情報が入力された情報入力/表示欄と予め関連付けされた格納領域に格納させる(図5(B)に「バインドによる自動代入」と表記した実線の矢印のうち右向きの矢印に相当する処理:請求項3に記載の同期処理に相当)。   When the application program 34 receives from the client terminal 42 the information entered in the information input / display field in the UI screen by the user, the platform program operating on the application server 34 receives the received information. In the variable storage area provided on the memory 34B of the application server 34, the information is stored in a storage area pre-associated with the information input / display field in which information is input (see FIG. The processing corresponding to the arrow pointing to the right among the solid arrows indicated as “substitution”: corresponding to the synchronization processing according to claim 3).

また、UI画面内のうち任意のウェブサービスを呼び出すためのボタンが利用者によって選択された場合には、前記ボタンに付加されている呼出プログラムにより、対応するウェブサービスのプログラムがウェブサービス提供サーバ36上で起動されると共に、変数格納領域のうち起動されたプログラムにおける入力変数に対応する格納領域(予め設定された格納領域)内のデータが変数格納領域から読み出され、読み出されたデータが起動されたプログラムへ入力変数として引き渡される(図5(B)に「呼出プログラムによる代入」と表記した破線の矢印のうち右向きの矢印に相当する処理)。これにより、利用者によって選択されたボタンに対応するウェブサービスを実現するための処理がウェブサービス提供サーバ36上で実行される。なお、ウェブサービスを実現するための処理がDBへのアクセスを含んでいる場合、アプリケーション・サーバ34経由でウェブサービス提供サーバ36からDBサーバ38へDBへのアクセスが指示されることでDBへのアクセスが実現される。   When a button for calling an arbitrary web service in the UI screen is selected by the user, the corresponding web service program is loaded into the web service providing server 36 by the calling program added to the button. The data stored in the storage area corresponding to the input variable in the started program in the variable storage area is read out from the variable storage area. It is handed over as an input variable to the activated program (a process corresponding to a right-pointing arrow among the broken-line arrows labeled “assignment by calling program” in FIG. 5B). As a result, processing for realizing the web service corresponding to the button selected by the user is executed on the web service providing server 36. In addition, when the process for realizing the web service includes access to the DB, the web service providing server 36 instructs the DB server 38 to access the DB via the application server 34, so that the DB is accessed. Access is realized.

また、ウェブサービス提供サーバ36上で起動されたプログラムによる処理が終了すると、ウェブサービス提供サーバ36からアプリケーション・サーバ34へ出力変数に相当するデータが引き渡され、呼出プログラムにより、引き渡されたデータを変数格納領域のうちの出力変数に対応する格納領域(予め設定された格納領域)内に格納する処理(図5(B)に「呼出プログラムによる代入」と表記した破線の矢印のうち左向きの矢印に相当する処理)がアプリケーション・サーバ34上で行われる。また、上記処理によって新たにデータが格納された格納領域が何れかのUI画面内の情報入力/表示欄と関連付けられている場合には、アプリケーション・サーバ34上で動作しているプラットフォーム・プログラムにより、上記格納領域に新たに格納されたデータをUI画面内の関連付けられた情報入力/表示欄に表示させる処理が行われる(図5(B)に「バインドによる自動代入」と表記した実線の矢印のうち左向きの矢印に相当する処理:請求項3に記載の同期処理に相当)。これにより、ウェブサイトを通じて各種のウェブサービスが利用者に提供されることになる。   Further, when the processing by the program started on the web service providing server 36 is finished, data corresponding to the output variable is delivered from the web service providing server 36 to the application server 34, and the delivered data is changed to the variable by the calling program. Processing stored in the storage area (preset storage area) corresponding to the output variable in the storage area (in FIG. 5 (B), the arrow pointing to the left among the broken arrows indicated as “assignment by calling program”) Corresponding processing) is performed on the application server 34. Further, when the storage area in which data is newly stored by the above processing is associated with an information input / display field in any UI screen, it is determined by the platform program operating on the application server 34. Then, a process of displaying the data newly stored in the storage area in the associated information input / display field in the UI screen is performed (the solid line arrow indicated as “automatic assignment by binding” in FIG. 5B) Among these, the processing corresponding to the leftward arrow: equivalent to the synchronization processing according to claim 3). As a result, various web services are provided to the user through the website.

一例として、図5(B)に示す各UI画面から成るウェブサイトが利用者によってアクセスされた場合、まず利用者が操作しているクライアント端末42のディスプレイ44に書籍検索画面が表示される。また、利用者が書籍検索画面内の書籍名の入力/表示欄内に検索対象の書籍名を入力した後に、「検索」と表記されたボタン(書籍検索サービスを呼び出すためのボタン)を選択すると、書籍名の入力/表示欄内に入力された書籍名は、プラットフォーム・プログラムによって変数格納領域の書籍名の格納領域に一旦格納された後に、呼出プログラムによって起動された書籍検索サービスのプログラムに入力変数として引き渡される。また、クライアント端末42のディスプレイ44に表示されているUI画面は、「検索」と表記されたボタンが選択されたことに伴って書籍購入画面に切り替わるが、書籍検索サービスの出力変数としての書籍IDは呼出プログラムによって変数格納領域の書籍IDの格納領域に一旦格納された後に、プラットフォーム・プログラムによって書籍購入画面内の書籍IDの入力/表示欄に表示される。   As an example, when a website including UI screens shown in FIG. 5B is accessed by a user, a book search screen is first displayed on the display 44 of the client terminal 42 operated by the user. In addition, when the user inputs a book name to be searched in the book name input / display field on the book search screen and then selects a button labeled “Search” (a button for calling a book search service). The book name entered in the book name input / display field is temporarily stored in the book name storage area of the variable storage area by the platform program and then input to the book search service program started by the calling program. Passed as a variable. Further, the UI screen displayed on the display 44 of the client terminal 42 is switched to the book purchase screen when the button labeled “Search” is selected, but the book ID as an output variable of the book search service. Is stored once in the book ID storage area of the variable storage area by the calling program and then displayed in the book ID input / display field in the book purchase screen by the platform program.

また利用者は、ディスプレイ44に書籍購入画面が表示されると、当該画面内の書籍IDの入力/表示欄に表示された書籍IDを確認し、必要に応じて書籍IDを上書き入力すると共に、購入者情報の入力/表示欄内に購入者情報を入力した後に、「購入」と表記されたボタン(書籍購入サービスを呼び出すためのボタン)を選択する。これにより、購入者情報の入力/表示欄内に入力された購入者情報は、プラットフォーム・プログラムによって変数格納領域の購入者情報の格納領域に格納され(利用者によって書籍IDの上書き入力が行われた場合は、上書き入力後の書籍IDも対応する格納領域に格納される)、その後、変数格納領域内に格納されている書籍ID及び購入者情報は、呼出プログラムによって起動された書籍購入サービスのプログラムに入力変数として引き渡される。更に、クライアント端末42のディスプレイ44に表示されているUI画面は、「購入」と表記されたボタンが選択されたことに伴って結果表示画面に切り替わるが、書籍購入サービスの出力変数としての結果情報は呼出プログラムによって変数格納領域の結果情報の格納領域に一旦格納された後に、プラットフォーム・プログラムによって結果表示画面内の結果情報の情報入力/表示欄に表示される。   In addition, when the book purchase screen is displayed on the display 44, the user confirms the book ID displayed in the input / display field of the book ID in the screen and overwrites the book ID as necessary. After the purchaser information is entered in the purchaser information input / display field, a button labeled “purchase” (a button for calling a book purchase service) is selected. As a result, the purchaser information entered in the purchaser information input / display field is stored in the purchaser information storage area of the variable storage area by the platform program (the book ID is overwritten by the user). The book ID after overwriting is also stored in the corresponding storage area), and then the book ID and purchaser information stored in the variable storage area are stored in the book purchase service activated by the calling program. Passed to the program as an input variable. Furthermore, the UI screen displayed on the display 44 of the client terminal 42 is switched to the result display screen in response to the selection of the button labeled “Purchase”, but the result information as an output variable of the book purchase service Is stored once in the result information storage area of the variable storage area by the calling program and then displayed in the information input / display field of the result information in the result display screen by the platform program.

なお、上記では本発明に係る第1プログラムに相当する画面制御プログラムと、本発明に係る第2プログラムに相当するウェブサービス提供プログラムが、異なるコンピュータ(アプリケーション・サーバ34及びウェブサービス提供サーバ36)で実行される態様を説明したが、これに限定されるものではなく、第1プログラム及び第2プログラムを同一のコンピュータで実行させるようにしてもよい。   In the above, the screen control program corresponding to the first program according to the present invention and the web service providing program corresponding to the second program according to the present invention are different computers (application server 34 and web service providing server 36). Although the mode to be executed has been described, the present invention is not limited to this, and the first program and the second program may be executed by the same computer.

また、上記ではインターネット40を通じてウェブサイト(アプリケーション・サーバ34)へアクセスした利用者に対して所定のウェブサービスを提供する態様を説明したが、これに限定されるものではなく、インターネット40に代えてイントラネットを用い、当該イントラネットに接続可能な利用者(例えば特定企業の従業員)に所定のウェブサービスを提供する等の態様にも適用可能である。   In the above description, a mode in which a predetermined web service is provided to a user who accesses a website (application server 34) through the Internet 40 has been described. However, the present invention is not limited to this. The present invention is also applicable to a mode in which a predetermined web service is provided to a user (for example, an employee of a specific company) who can connect to the intranet using an intranet.

また、上記では本発明に係るアプリケーション開発支援プログラムに対応するボタン生成プログラムがクライアント端末16の記憶部16Cに予め記憶(インストール)されている態様を説明したが、本発明に係るアプリケーション開発支援プログラムは、CD−ROMやDVD−ROM等の記録媒体に記録されている形態で提供することも可能である。   In the above description, the button generation program corresponding to the application development support program according to the present invention has been stored (installed) in advance in the storage unit 16C of the client terminal 16, but the application development support program according to the present invention is It is also possible to provide the information recorded in a recording medium such as a CD-ROM or a DVD-ROM.

本実施形態においてアプリケーション・プログラムの開発環境としての第1のコンピュータ・システムの概略構成を示すブロック図である。1 is a block diagram showing a schematic configuration of a first computer system as an application program development environment in the present embodiment. FIG. (A)はウェブサービス作成ツールの作成画面の一例、(B)は当該ツールを用いて作成画面上で作成されたフローの一例を各々示すイメージ図である。(A) is an example of a creation screen of a web service creation tool, and (B) is an image diagram showing an example of a flow created on the creation screen using the tool. ボタン生成処理の内容を示すフローチャートである。It is a flowchart which shows the content of the button production | generation process. UI構築ツールの作成画面の一例を示すイメージ図である。It is an image figure which shows an example of the creation screen of UI construction tool. (A)は変数定義情報からの変数格納領域の生成、(B)は画面内の情報入力/表示欄と格納領域のバインド、稼働時のデータ(変数)の代入を説明する概念図である。(A) is a conceptual diagram illustrating generation of a variable storage area from variable definition information, and (B) is a conceptual diagram for explaining binding of information input / display fields and storage areas in a screen and substitution of data (variables) during operation. 従来方式で図5(B)と同一処理を行う場合の問題点を示す概念図である。It is a conceptual diagram which shows the problem in the case of performing the same process as FIG. 5 (B) by a conventional system. アプリケーション・プログラムの実行環境としての第2のコンピュータ・システムの概略構成を示すブロック図である。It is a block diagram which shows schematic structure of the 2nd computer system as an execution environment of an application program.

符号の説明Explanation of symbols

10 コンピュータ・システム
12 サーバ・コンピュータ
16 クライアント端末
30 コンピュータ・システム
34 アプリケーション・サーバ
36 ウェブサービス提供サーバ
42 クライアント端末
DESCRIPTION OF SYMBOLS 10 Computer system 12 Server computer 16 Client terminal 30 Computer system 34 Application server 36 Web service provision server 42 Client terminal

Claims (6)

ユーザインタフェース画面の構成要素として使用可能な、情報の入力及び表示の少なくとも一方が可能な情報入力/表示欄を含む複数種のシンボルを表示画面に表示させると共に、開発者により、前記複数種のシンボルのうちの所望のシンボルを画面内の所望の位置に配置することでユーザインタフェース画面を設計する第1の操作、設計したユーザインタフェース画面内に配置した個々の情報入力/表示欄を、変数格納領域内に格納領域が設けられている複数の変数のうち対応する変数の格納領域と各々関連付ける第2の操作、及び、設計した複数のユーザインタフェース画面の遷移を規定する第3の操作が行われることで構築対象のユーザインタフェースが規定されると、前記ユーザインタフェースを実現するための第1プログラムを生成する第1のツール、及び、所望の処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するための第2プログラムを生成する第2のツールを用いて行われる、前記第1プログラム及び前記第2プログラムを含むアプリケーション・プログラムの開発を支援するアプリケーション開発支援装置であって、
前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記第2のツールを用いて生成されたn種類の前記第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、前記変数格納領域として、前記変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ前記変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成する変数格納領域生成手段と、
前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記ユーザインタフェース画面の構成要素として使用可能なシンボルとして、前記n種類の前記第2プログラムのうちの何れかを呼び出して前記m種類の処理のうちの互いに異なる処理を行わせるためのm種類の起動シンボルを各々生成するシンボル生成手段と、
ユーザインターフェース画面内に表示されている、前記シンボル生成手段によって生成された前記m種類の起動シンボルのうちの特定の起動シンボルが選択された場合に、前記変数格納領域内の各格納領域のうち、前記特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記n種類の前記第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、前記特定の第2プログラムによる前記対応する処理の実行が完了すると、前記特定の第2プログラムから引き渡された出力変数を、前記変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを前記特定の起動シンボルに付加することを、前記m種類の起動シンボルに対して各々行うプログラム付加手段と、
を備えたことを特徴とするアプリケーション開発支援装置。
A plurality of types of symbols including an information input / display field in which at least one of information can be input and displayed, which can be used as a component of the user interface screen, is displayed on the display screen. A first operation for designing a user interface screen by placing a desired symbol in a desired position in the screen, and individual information input / display fields arranged in the designed user interface screen in a variable storage area A second operation for associating with a corresponding variable storage area among a plurality of variables provided with a storage area, and a third operation for defining a transition of a plurality of designed user interface screens. When the user interface to be constructed is defined in step 1, the first program for realizing the user interface is generated. When a developer creates a flowchart that defines a desired process and a flowchart that defines a desired process, the second tool generates a second program for executing the process represented by the created flowchart. An application development support apparatus that supports development of an application program including the first program and the second program,
M (m ≧ n) executable by the n types of the second programs generated using the second tool before the first to third operations are performed on the first tool. Based on variable definition information that defines input variables and output variables in each type of processing, a storage area for each variable defined in the variable definition information is provided as the variable storage area, and the variable definition information includes A variable storage area generating means for generating a variable storage area in which the storage areas of the variables defined in duplicate are made common;
Before the first to third operations are performed on the first tool, any one of the n types of the second programs is used as a symbol that can be used as a component of the user interface screen. Symbol generation means for generating m types of activation symbols for calling and causing different types of processing among the m types of processing;
When a specific activation symbol is selected from the m types of activation symbols generated by the symbol generation means displayed in the user interface screen, among the storage areas in the variable storage area, A specific second that can execute the corresponding process among the n types of the second programs, using as an argument the data stored in the storage area of the variable corresponding to the input variable in the process corresponding to the specific activation symbol. When two programs are activated to execute the corresponding process, and when the execution of the corresponding process by the specific second program is completed, an output variable delivered from the specific second program is stored in the variable storage area. A third program that performs processing for storing in the storage area of the variable corresponding to the delivered output variable among the storage areas in Generates a ram, a third program that generated the addition to the specific starting symbol, and program addition means for performing each to the m types of starting symbol,
An application development support apparatus characterized by comprising:
前記第1のツールでは、個々の前記情報入力/表示欄と関連付けることが可能な前記変数格納領域内の格納領域の数が各々1個に制限されていることを特徴とする請求項1記載のアプリケーション開発支援装置。   The number of storage areas in the variable storage area that can be associated with each of the information input / display fields is limited to one each in the first tool. Application development support device. 前記第1プログラムは、前記第1プログラムを実行するためのプラットフォームとして機能する所定のプログラムを実行しているコンピュータ上で実行され、当該コンピュータによる前記第1プログラムの実行時には、前記所定のプログラムにより、表示画面内に表示されているユーザインタフェース画面内に配置され情報の入力が可能な特定の情報入力/表示欄内に新たに情報が入力された場合には、入力された情報を、前記変数格納領域内の各格納領域のうち前記特定の情報入力/表示欄と関連付けられた特定の格納領域にも格納し、前記変数格納領域内の特定の格納領域に新たに情報が格納された場合には、格納された情報を、表示画面内に表示されているユーザインタフェース画面内に配置され前記特定の格納領域と関連付けられかつ情報の表示が可能な特定の情報入力/表示欄内にも表示させる同期処理が行われることを特徴とする請求項1記載のアプリケーション開発支援装置。   The first program is executed on a computer executing a predetermined program that functions as a platform for executing the first program, and when the first program is executed by the computer, the predetermined program When information is newly input in a specific information input / display field that is arranged in the user interface screen displayed in the display screen and can input information, the input information is stored in the variable. When the information is also stored in a specific storage area associated with the specific information input / display field among the storage areas in the area, and information is newly stored in the specific storage area in the variable storage area Whether the stored information is arranged in the user interface screen displayed in the display screen and associated with the specific storage area. Application development support apparatus according to claim 1, wherein the synchronization processing is performed also be displayed on the display specific information input / display section capable of information. 前記第1のツールは第1の規格に準拠したツールであり、前記第2のツールは第2の規格に準拠したツールであることを特徴とする請求項1記載のアプリケーション開発支援装置。   2. The application development support apparatus according to claim 1, wherein the first tool is a tool compliant with a first standard, and the second tool is a tool compliant with a second standard. 前記第1の規格はJSFであり、前記第2の規格はBPELであることを特徴とする請求項4記載のアプリケーション開発支援装置。   5. The application development support apparatus according to claim 4, wherein the first standard is JSF, and the second standard is BPEL. コンピュータを、
ユーザインタフェース画面の構成要素として使用可能な、情報の入力及び表示の少なくとも一方が可能な情報入力/表示欄を含む複数種のシンボルを表示画面に表示させると共に、開発者により、前記複数種のシンボルのうちの所望のシンボルを画面内の所望の位置に配置することでユーザインタフェース画面を設計する第1の操作、設計したユーザインタフェース画面内に配置した個々の情報入力/表示欄を、変数格納領域内に格納領域が設けられている複数の変数のうち対応する変数の格納領域と各々関連付ける第2の操作、及び、設計した複数のユーザインタフェース画面の遷移を規定する第3の操作が行われることで構築対象のユーザインタフェースが規定されると、前記ユーザインタフェースを実現するための第1プログラムを生成する第1のツール、及び、所望の処理を規定するフローチャートが開発者によって作成されると、作成されたフローチャートが表す処理を実行するための第2プログラムを生成する第2のツールを用いて行われる、前記第1プログラム及び前記第2プログラムを含むアプリケーション・プログラムの開発を支援するアプリケーション開発支援装置として機能させるためのアプリケーション開発支援プログラムであって、
前記コンピュータを、
前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記第2のツールを用いて生成されたn種類の前記第2プログラムによって実行可能なm(m≧n)種類の処理における入力変数及び出力変数を各々定義する変数定義情報に基づき、前記変数格納領域として、前記変数定義情報に定義されている各変数の格納領域が各々設けられ、かつ前記変数定義情報に重複定義されている変数の格納領域が共通化された変数格納領域を生成する変数格納領域生成手段、
前記第1のツールに対して前記第1〜第3の操作が行われる前に、前記ユーザインタフェース画面の構成要素として使用可能なシンボルとして、前記n種類の前記第2プログラムのうちの何れかを呼び出して前記m種類の処理のうちの互いに異なる処理を行わせるためのm種類の起動シンボルを各々生成するシンボル生成手段、
及び、ユーザインターフェース画面内に表示されている、前記シンボル生成手段によって生成された前記m種類の起動シンボルのうちの特定の起動シンボルが選択された場合に、前記変数格納領域内の各格納領域のうち、前記特定の起動シンボルに対応する処理における入力変数に対応する変数の格納領域に格納されているデータを引数として、前記n種類の前記第2プログラムのうち前記対応する処理を実行可能な特定の第2プログラムを起動させて前記対応する処理を実行させると共に、前記特定の第2プログラムによる前記対応する処理の実行が完了すると、前記特定の第2プログラムから引き渡された出力変数を、前記変数格納領域内の各格納領域のうち前記引き渡された出力変数に対応する変数の格納領域に格納する処理を行う第3プログラムを生成し、生成した第3プログラムを前記特定の起動シンボルに付加することを、前記m種類の起動シンボルに対して各々行うプログラム付加手段
として機能させることを特徴とするアプリケーション開発支援プログラム。
Computer
A plurality of types of symbols including an information input / display field in which at least one of information can be input and displayed, which can be used as a component of the user interface screen, is displayed on the display screen. A first operation for designing a user interface screen by placing a desired symbol in a desired position in the screen, and individual information input / display fields arranged in the designed user interface screen in a variable storage area A second operation for associating with a corresponding variable storage area among a plurality of variables provided with a storage area, and a third operation for defining a transition of a plurality of designed user interface screens. When the user interface to be constructed is defined in step 1, the first program for realizing the user interface is generated. When a developer creates a flowchart that defines a desired process and a flowchart that defines a desired process, the second tool generates a second program for executing the process represented by the created flowchart. An application development support program for functioning as an application development support apparatus that supports development of an application program including the first program and the second program,
The computer,
M (m ≧ n) executable by the n types of the second programs generated using the second tool before the first to third operations are performed on the first tool. Based on variable definition information that defines input variables and output variables in each type of processing, a storage area for each variable defined in the variable definition information is provided as the variable storage area, and the variable definition information includes A variable storage area generating means for generating a variable storage area in which the storage areas of the variables defined in duplicate are made common;
Before the first to third operations are performed on the first tool, any one of the n types of the second programs is used as a symbol that can be used as a component of the user interface screen. Symbol generating means for generating m types of activation symbols for calling and causing different types of processing among the m types of processing,
And, when a specific activation symbol is selected from the m types of activation symbols generated by the symbol generation means and displayed in the user interface screen, each storage area in the variable storage area Among the n types of the second programs, the specific process capable of executing the corresponding process, using as an argument the data stored in the storage area of the variable corresponding to the input variable in the process corresponding to the specific activation symbol The second program is started to execute the corresponding process, and when the execution of the corresponding process by the specific second program is completed, the output variable delivered from the specific second program is changed to the variable A process of storing in the storage area of the variable corresponding to the delivered output variable among the storage areas in the storage area is performed. It generates a program, the third program that generated the addition to the specific starting symbol, the application development support program for causing to function as each performing a program adding means to the m types of starting symbol.
JP2007256600A 2007-09-28 2007-09-28 Application development support apparatus and program Expired - Fee Related JP4714199B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2007256600A JP4714199B2 (en) 2007-09-28 2007-09-28 Application development support apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2007256600A JP4714199B2 (en) 2007-09-28 2007-09-28 Application development support apparatus and program

Publications (2)

Publication Number Publication Date
JP2009087093A JP2009087093A (en) 2009-04-23
JP4714199B2 true JP4714199B2 (en) 2011-06-29

Family

ID=40660423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007256600A Expired - Fee Related JP4714199B2 (en) 2007-09-28 2007-09-28 Application development support apparatus and program

Country Status (1)

Country Link
JP (1) JP4714199B2 (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120005603A1 (en) * 2009-09-17 2012-01-05 The Bank Of Tokyo-Mitsubishi Ufj, Ltd. Application development supporting apparatus, program, and recording medium
JP2012164177A (en) * 2011-02-08 2012-08-30 Root42 Inc Program automatic generation system
US10055202B2 (en) * 2013-02-13 2018-08-21 Sandhills Publishing Co. Business process workflow system
JP2015095134A (en) * 2013-11-13 2015-05-18 株式会社エクサ Screen coordination program and screen coordination system
US9575639B2 (en) * 2014-02-27 2017-02-21 Ab Initio Technology Llc Compound controls

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005149332A (en) * 2003-11-19 2005-06-09 Hitachi Ltd Workflow management system and program therefor
JP4582701B2 (en) * 2004-11-12 2010-11-17 日立ソフトウエアエンジニアリング株式会社 Screen creation method, apparatus, and program
JP2006163855A (en) * 2004-12-08 2006-06-22 Hitachi Software Eng Co Ltd Web application development support device, and development support method
JP4695903B2 (en) * 2005-03-22 2011-06-08 富士電機システムズ株式会社 Web application system and program thereof

Also Published As

Publication number Publication date
JP2009087093A (en) 2009-04-23

Similar Documents

Publication Publication Date Title
JP5087133B2 (en) Application development support apparatus, program, and recording medium
JP4185159B1 (en) Application development support apparatus and program
JP5128673B2 (en) Application development support apparatus, program, and recording medium
US20050240857A1 (en) Methods and systems of information portal construction
JP5069794B2 (en) Application development support apparatus, program, and recording medium
JP4714199B2 (en) Application development support apparatus and program
JP2007048009A (en) Operation support system, its database server, preparation management device and program
JP5716108B2 (en) ONLINE SYSTEM, PROGRAM GENERATION DEVICE, AND SCREEN CONTROL PROGRAM GENERATION DEVICE
JP2013164861A (en) Online system, program creation device and screen control program creation device
JP4927041B2 (en) Application development support apparatus and program
JP5318977B2 (en) ONLINE SYSTEM, PROGRAM GENERATION DEVICE, AND SCREEN CONTROL PROGRAM GENERATION DEVICE
JP2010055559A (en) Document management device, document management method, and program
JP4220507B2 (en) Website update support apparatus, method and program
JP2021015336A (en) Information processing device, control method of information processing device, and program
JP6572679B2 (en) Information processing apparatus and program
JP6264399B2 (en) Information processing apparatus, processing method thereof, and program
JP6256535B2 (en) Information processing apparatus, processing method thereof, and program
JP2018005311A (en) Information processing device, information processing system, method for controlling the same, and program
JP2013228958A (en) Workflow system, control method for workflow system, program, and recording medium
JP6697168B2 (en) Information processing apparatus, processing method thereof, and program
JP2011123820A (en) Information processor, information processing method and computer program
JP2008015600A (en) Object management system and object management method and computer program
JP2008097150A (en) Book data production apparatus, control method therefor, and program
JP2019028680A (en) Information processor and method and program therefor
JP2017097480A (en) Information processing system, information processing device, control method thereof, and program

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20101228

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110322

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110325

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees