JP2001184200A - Method and device for generating application framework and computer readable recording medium storing application framework generation program - Google Patents

Method and device for generating application framework and computer readable recording medium storing application framework generation program

Info

Publication number
JP2001184200A
JP2001184200A JP36980999A JP36980999A JP2001184200A JP 2001184200 A JP2001184200 A JP 2001184200A JP 36980999 A JP36980999 A JP 36980999A JP 36980999 A JP36980999 A JP 36980999A JP 2001184200 A JP2001184200 A JP 2001184200A
Authority
JP
Japan
Prior art keywords
value
definition
argument
business process
program
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.)
Pending
Application number
JP36980999A
Other languages
Japanese (ja)
Inventor
Shoichi Murase
彰一 村瀬
Hiroshi Kanegae
博 鐘ヶ江
Mitsunobu Tasaka
光伸 田坂
Osami Tsuchida
修己 土田
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.)
Hitachi Ltd
Original Assignee
Hitachi Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hitachi Ltd filed Critical Hitachi Ltd
Priority to JP36980999A priority Critical patent/JP2001184200A/en
Publication of JP2001184200A publication Critical patent/JP2001184200A/en
Pending legal-status Critical Current

Links

Abstract

PROBLEM TO BE SOLVED: To provide a development environment suitable for developing an application program to work with a workflow function by a programmer. SOLUTION: A basic processing program 14 (BP14) is called, for example, by an interface based on work processing interface definition 10 (definition 10) including types and the number of arguments from a program of a client 16, to include a processing part to call the workflow function 17 (function 17) of the application program 13 (AP 13) to call the workflow function 17 to change the state of work based on business process definition 11 (definition 11) including rules of state change, a value of the argument when the function 17 is called by the BP 14 is defined as a value of the argument selected from the arguments defined by the definition 10 among the values of arguments in the case of calling of the AP 13 and a value of an attribute selected among attributes to be included in the definition 11 and the BP 14 is generated by using the selected value of the argument and the selected value of the attribute as the value of the argument in each step of the BP 14.

Description

【発明の詳細な説明】DETAILED DESCRIPTION OF THE INVENTION

【0001】[0001]

【発明の属する技術分野】アプリケーションプログラム
の作成を容易にするため、基本的な処理に関するプログ
ラムの一部分を生成するフレームワーク生成に係わり、
特に、各種業務を案件や作業として表現し、それらの状
態を管理するワークフロー機能を呼出すアプリケーショ
ンプログラム向けのフレームワーク生成方法および装置
に関する。
BACKGROUND OF THE INVENTION The present invention relates to the generation of a framework for generating a part of a program relating to basic processing in order to facilitate the creation of an application program.
In particular, the present invention relates to a method and an apparatus for generating a framework for an application program which calls various workflows as work items and tasks and calls a workflow function for managing their states.

【0002】[0002]

【従来の技術】従来より、基幹業務等に利用させる大規
模システムを開発する際には、多くのアプリケーション
プログラムを開発する必要がある。そして、これら多く
のアプリケーションプログラムを容易に開発できるよう
にするツールとしてフレームワーク生成ツールが存在す
る。アプリケーションプログラムが行う処理のうち、業
務に関連する主な処理はデータベース(以下「DB」と表
記)の操作であり、フレームワーク生成ツールはそれ以
外の処理部分のプログラムを自動生成する。フレームワ
ーク生成ツールが自動生成する処理としては、他プログ
ラムとの通信を制御する処理や、DB等のトランザクショ
ンを制御する処理等がある。
2. Description of the Related Art Conventionally, when developing a large-scale system to be used for mission-critical business or the like, it is necessary to develop many application programs. A framework generation tool exists as a tool for easily developing many of these application programs. Of the processing performed by the application program, the main processing related to work is the operation of a database (hereinafter, referred to as “DB”), and the framework generation tool automatically generates programs for other processing parts. The process automatically generated by the framework generation tool includes a process for controlling communication with another program, a process for controlling a transaction such as a DB, and the like.

【0003】以上の様なフレームワーク生成ツールとし
て、具体的にはCORBAのIDLコンパイラやEJBのEJBコンテ
ナ生成ツール等がある。CORBAはオブジェクト指向プロ
グラミングにおけるオブジェクト間インタフェースの標
準仕様であり、Object Management Group, Inc. が標準
化し、一般に公開されている。そして多くの企業がこの
仕様に従って、IDLコンパイラを製品化している。CORBA
及びIDLコンパイラに関する詳細な情報はインターネッ
ト上のページ(http://www.omg.org/)等から取得でき
る。また、EJBはサーバアプリケーションの開発を容易
にするアーキテクチャ等を定義した仕様であり、Sun Mi
crosystems, Inc. が開発し、一般に公開されている。
そして多くの企業がこの仕様に従って、EJBコンテナ生
成ツールを持つEJBサーバを製品化している。EJB及びEJ
Bコンテナ生成ツールに関する詳細な情報はインターネ
ット上のページ(http://www.javasoft.com/products/ej
b/index.html)等から取得できる。なおアプリケーショ
ンプログラムの業務に関連するDB操作のプログラミング
は、DB操作のための標準的なプログラミング言語である
SQL等で行う。SQLはANSI(American National Standards
Institute)やISO(International Standards Organiza
tion),JIS(日本工業規格)で仕様が定義され、公開さ
れている。
[0003] Specific examples of such a framework generation tool include a CORBA IDL compiler and an EJB container generation tool. CORBA is a standard specification of an interface between objects in object-oriented programming, and is standardized by the Object Management Group, Inc. and publicly available. And many companies have commercialized IDL compilers according to this specification. CORBA
Detailed information on the IDL compiler can be obtained from a page on the Internet (http://www.omg.org/). EJB is a specification that defines an architecture that facilitates the development of server applications.
Developed by crosystems, Inc. and publicly available.
Many companies have commercialized an EJB server with an EJB container generation tool according to this specification. EJB and EJ
BFor detailed information on the container generation tool, see the web page (http://www.javasoft.com/products/ej
b / index.html). DB operation programming related to application program duties is a standard programming language for DB operation
Perform with SQL etc. SQL is ANSI (American National Standards
Institute) or ISO (International Standards Organiza)
specification) and JIS (Japanese Industrial Standards) have been defined and published.

【0004】ところで近年、このような大規模システム
において、ワークフロー機能を利用してシステムを構築
する動きが出てきた。ワークフロー機能は従来より、電
子的に書類等を回覧するシステムとして発達してきたも
ので、「日経コンピュータ 97年9月1日号p204-p207
基礎講座 ワークフロー・ソフトの基本原理」等で概要
を知ることができる。ワークフロー機能は、各種業務に
おいて仕事の要求が発生してからそれが完了するまで
を、1件の要求毎に1つのビジネスプロセス(以下「案
件」と表記)の状態遷移として表現し、記憶・管理す
る。また、一般的には1つの仕事を完了させるためには
幾つかの工程を経る必要があり、これらの各工程をワー
クアイテム(以下「作業」と表記)の状態遷移として表
現し、記憶・管理する。そしてワークフロー機能は、そ
れぞれの作業が何を意味するのか、また、ある作業が完
了した場合に、次に行うべき作業がどれであるか、どの
作業が完了したら案件も完了するのか、等を定義したビ
ジネスプロセス定義にもとづいて、案件や作業の状態を
変更する。
In recent years, in such a large-scale system, there has been a movement to construct a system using a workflow function. The workflow function has been developed as a system for circulating documents and the like electronically. "Nikkei Computer September 1, 1997, p204-p207
You can get an overview with "Basic course Basic principles of workflow software". The workflow function expresses the state transition of one business process (hereinafter referred to as "item") for each request from the time a job request is generated in various tasks until it is completed, and stores and manages it. I do. In general, it is necessary to go through several steps in order to complete one task, and each of these steps is expressed as a state transition of a work item (hereinafter referred to as “work”), and stored / managed. I do. And the workflow function defines what each work means, what work should be done next when one work is completed, what work is completed when the work is completed, etc. Change the status of Items and work based on the defined business process definition.

【0005】ワークフロー機能を標準化する団体として
WfMC(Workflow Management Coalition)があり、ビジネ
スプロセス定義の標準モデル等を定義している。これら
の仕様の詳細な情報はWfMCのインターネット上のページ
(http://www.aiim.org/wfmc/)等から取得できる。大
規模システムの開発では、ワークフロー機能の各々の作
業を遂行するためのアプリケーションプログラムを作業
毎にそれぞれ開発することになる。これらのアプリケー
ションプログラムはワークフロー機能を適宜呼出してワ
ークフロー機能と連携する。そしてこれらの複数アプリ
ケーションプログラムはワークフロー機能を介して連携
され、大規模システムを実現する。
[0005] As an organization that standardizes workflow functions
There is WfMC (Workflow Management Coalition), which defines standard models for business process definition. Detailed information on these specifications can be obtained from the WfMC Internet page (http://www.aiim.org/wfmc/). In the development of a large-scale system, an application program for performing each work of the workflow function is developed for each work. These application programs appropriately call the workflow function and cooperate with the workflow function. These multiple application programs are linked via a workflow function to realize a large-scale system.

【0006】[0006]

【発明が解決しようとする課題】従来のフレームワーク
生成ツールはワークフロー機能を呼出し、ワークフロー
機能と連携する処理に関するプログラムは自動生成しな
い。このため、プログラマは自身でワークフロー機能を
呼出すプログラムを書く必要がある。しかし、従来、大
規模システムのアプリケーションプログラムを開発して
きたプログラマは、DBの操作に関するプログラミング
には長けているが、ワークフロー機能についての知識は
少ない。このため、これらのプログラマがワークフロー
機能を呼出し、ワークフロー機能と連携する処理のプロ
グラミングを行うことは困難である。また、従来のフレ
ームワーク生成ツールを、ワークフロー機能を呼出す処
理を自動生成できるように拡張することも困難である。
これは、フレームワーク生成ツールがワークフロー機能
を呼出す処理を自動生成する際、引数に設定すべき値を
得る方法が分からず、引数を設定する処理を自動生成で
きないためである。本発明の目的は、プログラマがワー
クフロー機能と連携するアプリケーションプログラムを
開発するために好適な開発環境を提供することにある。
A conventional framework generation tool calls a workflow function and does not automatically generate a program relating to a process cooperating with the workflow function. Therefore, the programmer needs to write a program that calls the workflow function by himself. However, programmers who have conventionally developed application programs for large-scale systems are good at programming for DB operations, but have little knowledge of workflow functions. For this reason, it is difficult for these programmers to call up the workflow function and to perform the programming of the process cooperating with the workflow function. It is also difficult to extend a conventional framework generation tool so that a process for calling a workflow function can be automatically generated.
This is because, when the framework generation tool automatically generates the process for calling the workflow function, it does not know how to obtain the value to be set for the argument, and cannot automatically generate the process for setting the argument. An object of the present invention is to provide a development environment suitable for a programmer to develop an application program that cooperates with a workflow function.

【0007】[0007]

【課題を解決するための手段】上記目的を達成するた
め、本発明は、他のプログラムから引数の型や数を含む
業務処理インタフェース定義に基づいたインタフェース
で呼出され、業務の状態を状態変更の規則を含むビジネ
スプロセス定義に基づいて変更するワークフロー機能を
呼出すアプリケーションプログラムの、ワークフロー機
能を呼出す処理部分を含む基本処理プログラムを生成す
るアプリケーションフレームワーク生成方法であり、該
業務処理インタフェース定義と該ビジネスプロセス定義
の情報を利用して、該基本処理プログラムを生成するよ
うにしている。
In order to achieve the above object, the present invention provides a method for calling a program from another program based on a task processing interface definition including the type and number of arguments to change the task state. An application framework generation method for generating a basic processing program including a processing part for calling a workflow function of an application program for calling a workflow function for changing based on a business process definition including rules, the business processing interface definition and the business process The basic processing program is generated using the information of the definition.

【0008】また、他のプログラムから引数の型や数を
含む業務処理インタフェース定義に基づいたインタフェ
ースで呼出され、業務の状態を状態変更の規則を含むビ
ジネスプロセス定義に基づいて変更するワークフロー機
能を呼出すアプリケーションプログラムの、ワークフロ
ー機能を呼出す処理部分を含む基本処理プログラムを生
成するアプリケーションフレームワーク生成方法であ
り、該基本処理プログラムが該ワークフロー機能を呼出
す際の引数の値を、該アプリケーションプログラム呼出
し時の引数の値のうち該業務処理インタフェース定義で
定義されている引数から選択された引数の値と、該ビジ
ネスプロセス定義に含まれる属性から選択された属性の
値とし、基本処理プログラムの各ステップにおける引数
の値として前記選択された引数の値と選択された属性の
値を用いて基本処理プログラムを生成するようにしてい
る。
[0008] In addition, it is called from another program by an interface based on a business process interface definition including types and numbers of arguments, and calls a workflow function for changing a business state based on a business process definition including a state change rule. An application framework generating method for generating a basic processing program including a processing portion for calling a workflow function of an application program, wherein the basic processing program calls an argument value when calling the workflow function by using an argument when calling the application program. Of the arguments selected from the arguments defined in the business process interface definition and the values of the attributes selected from the attributes included in the business process definition. Select the value as above And so as to generate a basic processing program by using the value of the selected attribute and the value of the argument.

【0009】また、業務における1つの要求の発生から
該要求への対応までを1つの案件の状態遷移として表現
し、1つの前記ビジネスプロセス定義が、1つの業務に
関する案件の状態変更の規則を含み、前記ワークフロー
機能が、該案件の状態と該案件に対応する該ビジネスプ
ロセス定義を識別するビジネスプロセス定義IDを記憶
して、該案件の状態を該ビジネスプロセス定義に基づい
て変更し、前記基本処理プログラムが、該ワークフロー
機能の新規案件を登録する手続きを呼出す際の引数に関
して、新規登録する案件を識別する案件IDを指定する
引数の値として、前記アプリケーションプログラム呼出
し時の引数のうち前記業務処理インタフェース定義で定
義されている引数から選択された引数の値を用い、新規
登録する該案件に対応する該ビジネスプロセス定義を識
別するビジネスプロセス定義IDを指定する引数の値と
して、前記ビジネスプロセス定義に含まれるビジネスプ
ロセス定義IDの値を用いるようにしている。
[0009] The process from the generation of one request in the business to the response to the request is expressed as a state transition of one case, and one business process definition includes a rule for changing the state of the case for one business. The workflow function stores a status of the case and a business process definition ID for identifying the business process definition corresponding to the case, and changes the status of the case based on the business process definition; Regarding an argument when the program calls a procedure for registering a new matter of the workflow function, the business processing interface of the argument at the time of calling the application program is used as an argument value for designating a matter ID for identifying a newly registered matter. Using the value of the argument selected from the arguments defined in the definition, As the value of the argument that specifies the business process definition ID for identifying the business process definition to respond, it is to use a value of the business process definition ID included in the business process definition.

【0010】また、業務における1つの要求の発生から
該要求への対応までを1つの案件の状態遷移として表現
し、該業務が複数の人やプログラムの連携で遂行される
場合に、各人やプログラム毎の処理を該案件に含まれる
作業の状態遷移として表現し、前記ビジネスプロセス定
義が、業務に関する該案件及び該作業の状態変更の規則
を含み、前記ワークフロー機能が、該案件及び1つの案
件に含まれる複数の該作業の状態を記憶して、これらの
状態を該ビジネスプロセス定義にもとづいて変更し、前
記基本処理プログラムが、該ワークフロー機能の作業状
態を変更する手続きを呼出す際の引数に関して、状態変
更する作業を含む案件を識別する案件IDを指定する引
数の値として、前記アプリケーションプログラム呼出し
時の引数のうち前記業務処理インタフェース定義で定義
されている引数から選択された引数の値を用い、状態変
更する作業を識別する作業定義IDを指定する引数の値
として、前記ビジネスプロセス定義に含まれる作業定義
IDの値を用いるようにしている。
[0010] In addition, from the generation of one request in a business to the response to the request is expressed as a state transition of one case, and when the business is performed in cooperation with a plurality of persons or programs, each person or program is executed. The process for each program is expressed as a state transition of the work included in the case, the business process definition includes the case related to the work and a rule for changing the state of the work, and the workflow function includes the case and one case. Are stored based on the business process definition, and the basic processing program executes the procedure for changing the work state of the workflow function. As the value of the argument that specifies the matter ID that identifies the matter that includes the work whose status is to be changed, Using the value of the argument selected from the arguments defined in the business process interface definition, the value of the work definition ID included in the business process definition as the value of the argument specifying the work definition ID for identifying the work whose status is to be changed Is used.

【0011】また、他のプログラムから引数の型や数を
含む業務処理インタフェース定義に基づいたインタフェ
ースで呼出され、業務の状態を状態変更の規則を含むビ
ジネスプロセス定義に基づいて変更するワークフロー機
能を呼出すアプリケーションプログラムの、ワークフロ
ー機能を呼出す処理部分を含む基本処理プログラムを生
成するアプリケーションフレームワーク生成装置であ
り、該基本処理プログラムが該ワークフロー機能を呼出
す際の引数の値として、該アプリケーションプログラム
呼出し時の引数の値のうち該業務処理インタフェース定
義で定義されている引数から利用者により引数の値を選
択させ、該ビジネスプロセス定義に含まれる属性から利
用者により属性の値を選択させる手段と、基本処理プロ
グラムの各ステップにおける引数の値として前記選択さ
れた引数の値と選択された属性の値を設定する手段を有
するようにしている。
[0011] Further, the workflow function is called from another program based on a business process interface definition including the type and number of arguments, and changes a business state based on a business process definition including a state change rule. An application framework generation device for generating a basic processing program including a processing portion for calling a workflow function of an application program, wherein the basic processing program calls the application program as an argument value when calling the application program. Means for allowing the user to select the value of the argument from among the values defined in the business process interface definition, and for allowing the user to select the attribute value from the attributes included in the business process definition, and a basic processing program Each step And to have a means for setting the value of the selected values and the selected attributes of the argument as the value of the definitive argument.

【0012】また、アプリケーションフレームワーク生
成プログラムを記録したコンピュータ読み取り可能な記
録媒体であり、該プログラムは、他のプログラムから引
数の型や数を含む業務処理インタフェース定義に基づい
たインタフェースで呼出され、業務の状態を状態変更の
規則を含むビジネスプロセス定義に基づいて変更するワ
ークフロー機能を呼出すアプリケーションプログラム
の、ワークフロー機能を呼出す処理部分を含む基本処理
プログラムを生成するアプリケーションフレームワーク
生成プログラムであり、該基本処理プログラムが該ワー
クフロー機能を呼出す際の引数の値として、該アプリケ
ーションプログラム呼出し時の引数の値のうち該業務処
理インタフェース定義で定義されている引数から利用者
により引数の値を選択させ、該ビジネスプロセス定義に
含まれる属性から利用者により属性の値を選択させる手
順と、基本処理プログラムの各ステップにおける引数の
値として前記選択された引数の値と選択された属性の値
を設定する手順を有するようにしている。
Also, the present invention is a computer-readable recording medium on which an application framework generating program is recorded. The computer-readable recording medium is called from another program by an interface based on a business processing interface definition including types and numbers of arguments. An application framework generating program for generating a basic processing program including a processing portion for calling a workflow function of an application program for calling a workflow function for changing a state of the application program based on a business process definition including a rule for state change, As a parameter value when the program calls the workflow function, the user selects an argument value from the argument values defined in the business processing interface definition among the argument values at the time of calling the application program. Causing the user to select an attribute value from the attributes included in the business process definition, and setting the value of the selected argument and the value of the selected attribute as the value of the argument in each step of the basic processing program Have a procedure to do.

【0013】[0013]

【発明の実施の形態】まず、本発明のフレームワーク生
成方法を適用したフレームワーク生成ツールの概要を述
べる。図1はフレームワーク生成ツールの概念図を示
す。まず最初に、フレームワーク生成ツールとは関係無
く、ワークフロー機能を利用する一般的なアプリケーシ
ョンプログラムについて述べる。アプリケーションプロ
グラム13はサービス要求端末16(以下、クライアントと
いう)から呼出され、適宜ワークフロー機能17を呼出し
て、各種処理を実行する。業務処理インタフェース定義
10はこの時のアプリケーションプログラム13とクライア
ント16間のインタフェースを定義するものである。この
定義に基づいてクライアント16側の呼出し処理、アプリ
ケーションプログラム13側の呼出される処理が記述され
る。またビジネスプロセス定義11はワークフロー機能17
が参照する情報であり、業務の状態を表現した案件等
を、どのようなルールで状態変更するかを記述したもの
である。ワークフロー機能17は適宜ビジネスプロセス定
義11を参照して、案件等の状態を変更するように動く。
DESCRIPTION OF THE PREFERRED EMBODIMENTS First, an outline of a framework generation tool to which a framework generation method of the present invention is applied will be described. FIG. 1 shows a conceptual diagram of the framework generation tool. First, a general application program that uses the workflow function regardless of the framework generation tool will be described. The application program 13 is called from a service request terminal 16 (hereinafter, referred to as a client), and appropriately calls a workflow function 17 to execute various processes. Business process interface definition
Reference numeral 10 defines an interface between the application program 13 and the client 16 at this time. Based on this definition, the calling process on the client 16 side and the called process on the application program 13 side are described. Business process definition 11 is workflow function 17
Is information to be referred to, and describes what rules are used to change the status of a case or the like expressing the status of business. The workflow function 17 operates so as to change the state of the matter or the like with reference to the business process definition 11 as appropriate.

【0014】次に、本発明のフレームワーク生成ツール
について述べる。フレームワーク生成ツール12は、アプ
リケーションプログラム13の中で、ワークフロー機能17
を呼出す処理部分を含む基本処理プログラム14を生成す
る。これによってプログラマは、それ以外の業務処理プ
ログラム15だけをプログラミングすればよく、ワークフ
ロー機能17を呼出す方法を知らなくてもアプリケーショ
ンプログラム13を開発できる。フレームワーク生成ツー
ル12の特長は、ワークフロー機能17を呼出す処理部分を
生成するのに必要な情報を、先の業務処理インタフェー
ス定義10と、ビジネスプロセス定義11から取得すること
である。ワークフロー機能17を呼出す際に必要な情報
は、クライアント16がアプリケーションプログラム13を
呼出す際に指定した引数に含まれるものと、ビジネスプ
ロセス定義11の中の属性値として含まれるものがある。
前者の場合は、業務処理インタフェース定義10からどの
引数にその情報が含まれているかをプログラマが指定す
ることで、その引数の値を用いてワークフロー機能17を
呼出す処理を生成する。後者の場合は、ビジネスプロセ
ス定義11から必要な属性値をフレームワーク生成ツール
12が判断し、その値を引数にしてワークフロー機能17を
呼出す処理を生成する。
Next, a framework generation tool according to the present invention will be described. The framework generation tool 12 includes a workflow function 17 in the application program 13.
A basic processing program 14 including a processing part for calling is generated. This allows the programmer to program only the other business processing programs 15 and develop the application program 13 without knowing how to call the workflow function 17. The feature of the framework generation tool 12 is that information necessary for generating a processing part for calling the workflow function 17 is obtained from the business process interface definition 10 and the business process definition 11. Information required when calling the workflow function 17 includes information included in an argument specified when the client 16 calls the application program 13 and information included as an attribute value in the business process definition 11.
In the former case, the programmer specifies which argument contains the information from the business process interface definition 10, and generates a process for calling the workflow function 17 using the value of the argument. In the latter case, the required attribute values from business process definition 11 are
12 determines and generates a process for calling the workflow function 17 using the value as an argument.

【0015】次に、本発明のフレームワーク生成ツール
について、より具体的な実施の形態について述べる。ま
ず、本発明のフレームワーク生成ツールを含む、システ
ム全体の構成について述べる。図2はフレームワーク生
成ツールを含む、大規模システムの全体構成図を示す。
本システムはサービス提供計算機100(以下、サーバ計
算機という)と複数のサービス要求計算機101(以下、
クライアント計算機という)がネットワーク102を介し
て接続されたものである。
Next, a more specific embodiment of the framework generation tool of the present invention will be described. First, the configuration of the entire system including the framework generation tool of the present invention will be described. FIG. 2 shows an overall configuration diagram of a large-scale system including a framework generation tool.
The system includes a service providing computer 100 (hereinafter, referred to as a server computer) and a plurality of service request computers 101 (hereinafter, referred to as server computers).
Client computer) is connected via the network 102.

【0016】図3はサーバ計算機100の構成図を示す。
サーバ計算機100には本発明のフレームワーク生成ツー
ル136が記憶されている。サーバ計算機100はCPU 120、
記憶装置126、ディスプレイ121、キーボード122、マウ
ス123、リムーバブルメディア装置124、ネットワークイ
ンタフェース125からなる。これらの構成要素はバス127
を介して相互接続され、さらにネットワークインタフェ
ース125はネットワーク102を介して他の計算機に接続さ
れる。記憶装置126には本発明に関するフレームワーク
生成ツール136及びワークフロー機能130、ワークフロー
機能130が参照する複数のビジネスプロセス定義131、ワ
ークフロー機能130が更新するワークフローデータ132、
クライアント計算機101からの要求に応じてワークフロ
ー機能130を呼出すアプリケーションプログラム133、ア
プリケーションプログラム133の呼出しインターフェー
スを定義した複数の業務処理インタフェース定義135、
アプリケーションプログラム133が更新する業務データ1
34、OS(オペレーティングシステム)128が記憶される。
FIG. 3 shows a configuration diagram of the server computer 100.
The server computer 100 stores the framework generation tool 136 of the present invention. The server computer 100 has a CPU 120,
It comprises a storage device 126, a display 121, a keyboard 122, a mouse 123, a removable media device 124, and a network interface 125. These components are bus 127
, And the network interface 125 is connected to another computer via the network 102. The storage device 126 includes a framework generation tool 136 and a workflow function 130 relating to the present invention, a plurality of business process definitions 131 referred to by the workflow function 130, workflow data 132 updated by the workflow function 130,
An application program 133 that calls the workflow function 130 in response to a request from the client computer 101, a plurality of business processing interface definitions 135 defining a call interface of the application program 133,
Business data 1 updated by application program 133
34, an OS (Operating System) 128 is stored.

【0017】アプリケーションプログラム133は、クラ
イアント計算機101から業務処理インタフェース定義135
に従ったインタフェースで呼出され、要求に応じて業務
データ134を更新し、ワークフロー機能130を呼出す。ワ
ークフロー機能130は、アプリケーションプログラム133
から呼出され、要求に応じてビジネスプロセス定義131
を参照しながらワークフローデータ132を更新する。フ
レームワーク生成ツール136は、業務処理インタフェー
ス定義135とビジネスプロセス定義131を読み込み、アプ
リケーションプログラム133のうち、ワークフロー機能1
30を呼出す処理を含む、基本処理プログラムを生成す
る。
The application program 133 is transmitted from the client computer 101 to the business process interface definition 135
, The business data 134 is updated as required, and the workflow function 130 is called. The workflow function 130 includes an application program 133
Called from the business process definition 131 on demand
And updates the workflow data 132. The framework generation tool 136 reads the business processing interface definition 135 and the business process definition 131, and, among the application programs 133, the workflow function 1
A basic processing program including a process for calling 30 is generated.

【0018】次に本発明のフレームワーク生成ツールを
用いて作成されるアプリケーションプログラムと、該ア
プリケーションプログラムと連携するワークフロー機能
について述べる。図4はワークフロー機能130の構成を
示す。ワークフロー機能130は案件登録手続き150、作業
状態変更手続き151等からなる。これらの手続きはビジ
ネスプロセス定義131を参照しながらワークフローデー
タ132を更新するが、詳細については後述する。
Next, an application program created by using the framework generation tool of the present invention and a workflow function cooperating with the application program will be described. FIG. 4 shows the configuration of the workflow function 130. The workflow function 130 includes a case registration procedure 150, a work state change procedure 151, and the like. These procedures update the workflow data 132 with reference to the business process definition 131, which will be described later in detail.

【0019】図5はビジネスプロセス定義131のデータ
形式を示す。ビジネスプロセス定義131はBP定義識別子1
70、複数の作業定義171、遷移定義172からなり、1つの
ビジネスプロセス定義131が1種類の仕事を定義する。
ここで、BPはBusiness Processの略である。BP定義識別
子170は、複数のビジネスプロセス定義131から1つのビ
ジネスプロセス定義131を特定するための属性として、B
P定義名173とBP定義ID 174を含む。BP定義名173には仕
事の種類を示し、人間が覚えやすい名前を設定し、BP定
義ID 174にはプログラムで指定する際に効率のよい整数
型の値を設定する。BP定義名173とBP定義ID 174は全ビ
ジネスプロセス定義131間で異なる値を設定する必要が
ある。
FIG. 5 shows the data format of the business process definition 131. Business process definition 131 is BP definition identifier 1
70, a plurality of work definitions 171, and transition definitions 172, one business process definition 131 defines one type of work.
Here, BP is an abbreviation for Business Process. The BP definition identifier 170 is an attribute for specifying one business process definition 131 from a plurality of business process definitions 131,
Contains P definition name 173 and BP definition ID 174. The BP definition name 173 indicates the type of work and a name that is easy for humans to remember is set, and the BP definition ID 174 is set to an efficient integer type value when specified by a program. It is necessary to set different values for the BP definition name 173 and the BP definition ID 174 between all the business process definitions 131.

【0020】作業定義171は仕事を完了させるために必
要な複数の工程の1つ1つを定義し、属性として作業定
義名175、作業定義ID 176、作業状態遷移モデル177、未
実行状態名178、実行中状態名179、実行済状態名180を
含む。作業定義名175と作業定義ID 176は共に、複数の
作業定義171から1つの作業定義171を特定するための値
を設定する。作業定義名175は作業の内容を表し、人間
が覚えやすい名前を設定し、作業定義ID 176にはプログ
ラムで指定する際に効率のよい整数型の値を設定する。
作業定義名175と作業定義ID 176は1つのビジネスプロ
セス定義131内の全作業定義171間で異なる値を設定する
必要がある。作業状態遷移モデル177は「2状態遷移」
と「3状態遷移」のいずれかの値を設定する。
The work definition 171 defines each of a plurality of processes required to complete the work, and has, as attributes, a work definition name 175, a work definition ID 176, a work state transition model 177, and an unexecuted state name 178. , The running state name 179 and the executed state name 180. The work definition name 175 and the work definition ID 176 both set a value for specifying one work definition 171 from the plurality of work definitions 171. The work definition name 175 indicates the contents of the work, and a name that can be easily remembered by a human is set. The work definition ID 176 is set to an efficient integer type value when specified by a program.
The work definition name 175 and the work definition ID 176 need to have different values between all the work definitions 171 in one business process definition 131. Work state transition model 177 is "two state transition"
And any value of “3 state transition”.

【0021】ワークフロー機能130はこの値を参照し、
「2状態遷移」と設定された作業定義171に関連した作
業は、状態として未実行状態と実行済状態の2状態間を
遷移するように、「3状態遷移」と設定された作業定義
171に関連した作業は、状態として未実行状態と実行中
状態、実行済状態の3状態間を遷移するように、作業の
状態を変更する。未実行状態名178、実行中状態名179、
実行済状態名180はそれぞれ、作業が未実行状態、実行
中状態、実行済状態の場合に何を意味するかを表し、人
間が覚えやすい名前を設定する。なお作業状態遷移モデ
ル177の値が「2状態遷移」の場合、実行中状態名179の
値は使用しない。
The workflow function 130 refers to this value,
Work related to the work definition 171 set as “two-state transition” is set as “three-state transition” so that the work transitions between two states, ie, an unexecuted state and an executed state.
The work related to 171 changes the state of the work so that the state transitions among three states of an unexecuted state, an executing state, and an executed state. Unexecuted state name 178, running state name 179,
Each of the executed state names 180 indicates what the work means when the work is in an unexecuted state, an executing state, or an executed state, and is set to a name that can be easily remembered by humans. When the value of the work state transition model 177 is “two-state transition”, the value of the executing state name 179 is not used.

【0022】遷移定義172は最初に実行すべき作業が何
であるか、ある作業が完了した場合に次に実行すべき作
業が何であるか、どの作業が完了したら仕事全体が完了
したことになるのかを設定する。遷移1 181は最初に実
行すべき作業が、作業定義ID 176が「1001」の作業であ
ることを示す。遷移2 182は作業定義ID 176が「1001」
の作業が完了した場合、次に作業定義ID 176が「1002」
の作業を実行すべきであることを示す。そして遷移N 1
83は作業定義ID 176が「1003」の作業が完了した場合、
仕事全体が完了したことになることを示す。ビジネスプ
ロセス定義131の作成は、専用のプログラムを利用する
場合もあるが、ここではOS 128が提供するテキスト編集
機能で作成し、OS 128のファイル管理機能を用いてテキ
ストファイルとして記憶装置126に記憶する。
The transition definition 172 indicates what work is to be executed first, what work is to be executed next when a certain work is completed, and which work is completed when the entire work is completed. Set. Transition 1 181 indicates that the work to be executed first is the work whose work definition ID 176 is “1001”. For transition 2 182, the work definition ID 176 is "1001"
Work is completed, then the work definition ID 176 is "1002"
Indicates that the task should be performed. And transition N 1
83 indicates that the work with work definition ID 176 "1003" is completed
Indicates that the entire task has been completed. In some cases, a dedicated program is used to create the business process definition 131.Here, however, the business process definition 131 is created using the text editing function provided by the OS 128, and stored in the storage device 126 as a text file using the file management function of the OS 128. I do.

【0023】図6はワークフローデータ132を示す。ワ
ークフローデータ132はテーブルとして管理され、案件I
D 200、BP定義ID 201、作業定義ID 202、作業状態コー
ド203等のカラムからなる。そして1つの案件を1レコ
ードとして記憶する。案件ID 200は案件を特定する識別
子であり、ワークフローデータ132内で一意な値を設定
する。BP定義ID 201は案件が関連するビジネスプロセス
定義131を示す。この値はビジネスプロセス定義131で指
定したBP定義ID 174を設定する。作業定義ID 202はその
時点で実行すべき作業もしくは実行中の作業を示す。こ
の値はビジネスプロセス定義131で指定した作業定義ID
176を設定する。作業状態コード203には「N」か「R」か
「C」の値を設定する。これらは図7の作業状態コード
対応表で示すように、それぞれ未実行状態、実行中状
態、実行済状態を示す。ワークフローデータ132に作業
状態221でなく作業状態コード222を記憶する理由は、ワ
ークフローデータ132の大きさを小さくするためと、後
述するワークフロー機能インタフェース240において、
プログラムが指定しやすい型で作業状態を指定できるよ
うにするためである。また、作業定義ID 202が最後に実
行する作業を示し、作業状態コード203が「C」すなわち
作業完了状態である場合、その案件自身が完了している
ことを表す。
FIG. 6 shows the workflow data 132. Workflow data 132 is managed as a table, and Item I
D 200, BP definition ID 201, work definition ID 202, work status code 203, and other columns. Then, one case is stored as one record. The matter ID 200 is an identifier for identifying the matter, and sets a unique value in the workflow data 132. The BP definition ID 201 indicates the business process definition 131 related to the matter. This value sets the BP definition ID 174 specified in the business process definition 131. The work definition ID 202 indicates the work to be executed or the work being executed at that time. This value is the work definition ID specified in the business process definition 131
Set 176. The work state code 203 is set to a value of “N”, “R”, or “C”. These indicate an unexecuted state, an executing state, and an executed state, respectively, as shown in the work state code correspondence table of FIG. The reason for storing the work state code 222 instead of the work state 221 in the work flow data 132 is to reduce the size of the work flow data 132 and in the work flow function interface 240 described later.
This is so that the work state can be specified in a type that the program can easily specify. Further, the work definition ID 202 indicates the work to be executed last, and when the work state code 203 is “C”, that is, the work completed state, it indicates that the case itself has been completed.

【0024】図8はアプリケーションプログラム133が
ワークフロー機能130を呼出す際のインタフェースを示
す。ワークフロー機能インタフェース240の形式はCORBA
のIDLインタフェースに準じている。CORBA及びIDLコン
パイラに関する詳細な情報は前述したようにインターネ
ット上のページ(http://www.omg.org/)等から取得で
きる。ワークフロー機能インタフェース240は、案件の
新規登録を行う案件登録API 241、作業の状態変更を行
う作業状態変更API 244等からなる。案件登録API 241は
入力引数としてBP定義ID引数242と、案件ID引数243を持
つ。ワークフロー機能130は、案件登録API 241が呼出さ
れると、案件登録手続き150を実行する。作業状態変更A
PI 244は入力引数として案件ID引数245と、作業定義ID
引数246、作業状態コード引数247を持つ。ワークフロー
機能130は、作業状態変更API 244が呼出されると、作業
状態変更手続き151を実行する。
FIG. 8 shows an interface when the application program 133 calls the workflow function 130. The format of the workflow function interface 240 is CORBA
It conforms to the IDL interface. Detailed information on the CORBA and IDL compilers can be obtained from a page on the Internet (http://www.omg.org/) as described above. The workflow function interface 240 includes a case registration API 241 for newly registering a case, a work state change API 244 for changing a work state, and the like. The matter registration API 241 has a BP definition ID argument 242 and a matter ID argument 243 as input arguments. When the matter registration API 241 is called, the workflow function 130 executes a matter registration procedure 150. Work state change A
PI 244 has the Item ID argument 245 and the work definition ID as input arguments
It has an argument 246 and a work status code argument 247. When the work state change API 244 is called, the work flow function 130 executes the work state change procedure 151.

【0025】図9はワークフロー機能130の案件登録手
続き150の処理フローを示す。まず、BP定義ID引数242の
値を元に、該当するビジネスプロセス定義131を選択す
る(ステップ260)。次に、選択したビジネスプロセス定
義131に含まれる遷移定義172を元に、最初に実行すべき
作業の作業定義ID 176を取得する(ステップ261)。次い
で、BP定義ID引数242と、案件ID引数243、取得した作業
定義ID 176の値を用いて、ワークフローデータ132に新
規レコードを追加する(ステップ262)。この際、作業状
態コード203には未実行状態を示す値「N」を設定する。
FIG. 9 shows a processing flow of the case registration procedure 150 of the workflow function 130. First, the corresponding business process definition 131 is selected based on the value of the BP definition ID argument 242 (step 260). Next, based on the transition definition 172 included in the selected business process definition 131, the work definition ID 176 of the work to be executed first is acquired (step 261). Next, a new record is added to the workflow data 132 using the values of the BP definition ID argument 242, the matter ID argument 243, and the acquired work definition ID 176 (step 262). At this time, a value “N” indicating an unexecuted state is set in the work state code 203.

【0026】図10はワークフロー機能130の作業状態
変更手続き151の処理フローを示す。まず、案件ID引数2
45と作業定義ID引数246の値を条件にしてワークフロー
データ132を検索する(ステップ280)。この結果、該当す
るレコードが存在しなければ(ステップ281)引数の設定
値が誤りであることを示すエラーを呼出し元に返す(ス
テップ282)。検索の結果、該当するレコードが存在すれ
ば(ステップ281)、次に該当レコードの作業状態コード2
03を作業状態コード引数247の値に更新する(ステップ28
3)。変更後の作業状態コード203が実行済状態を示す
「C」という値でなければ(ステップ284)作業状態変更手
続き151を終了する。作業状態コードが実行済状態を示
す「C」という値の場合は(ステップ284)、更に該当レコ
ードのBP定義ID 201の値から対応するビジネスプロセス
定義131を選択する(ステップ285)。そして、選択したビ
ジネスプロセス定義131の遷移定義172を参照し、次に実
行すべき作業が存在するか否かを調べる(ステップ28
6)。次に実行すべき作業が存在しなければ作業状態変更
手続き151を終了する。次に実行すべき作業が存在する
場合は、その作業の作業定義ID 176を遷移定義172から
取得し、ワークフローデータ132の該当レコードの作業
定義ID 202を更新する。また、この時同時に、作業状態
コード203を未実行状態を示す「N」に更新する。
FIG. 10 shows a processing flow of the work state change procedure 151 of the workflow function 130. First, matter ID argument 2
The workflow data 132 is searched based on the value of 45 and the value of the work definition ID argument 246 (step 280). As a result, if the corresponding record does not exist (step 281), an error indicating that the set value of the argument is incorrect is returned to the calling source (step 282). As a result of the search, if the corresponding record exists (step 281), then the work status code 2 of the corresponding record
03 is updated to the value of the work status code argument 247 (step 28
3). If the changed work state code 203 is not a value of “C” indicating the executed state (step 284), the work state change procedure 151 ends. If the work status code has a value of “C” indicating the executed status (step 284), the corresponding business process definition 131 is further selected from the value of the BP definition ID 201 of the record (step 285). Then, referring to the transition definition 172 of the selected business process definition 131, it is checked whether or not there is work to be executed next (step 28).
6). If there is no work to be executed next, the work state change procedure 151 ends. If there is work to be executed next, the work definition ID 176 of the work is acquired from the transition definition 172, and the work definition ID 202 of the corresponding record of the workflow data 132 is updated. At the same time, the work status code 203 is updated to “N” indicating an unexecuted status.

【0027】図11はアプリケーションプログラム133
の構成を示す。アプリケーションプログラム133はフレ
ームワーク生成ツール136が自動生成する基本処理プロ
グラム300とプログラマがプログラミングする業務処理
プログラム303からなる。基本処理プログラム300は、ク
ライアント計算機101から後述する業務処理インタフェ
ース定義135に従って呼出され、ワークフロー機能130を
呼出す際に必要な引数をクライアント計算機からの引数
情報から取得した後、基本処理プログラム300が呼出さ
れたインタフェースの定義と同じインタフェースの定義
で業務処理プログラム303を呼出す。そしてその後、ワ
ークフロー機能インタフェース240の適切なAPIを呼出
す。業務処理プログラム303は、基本処理プログラム300
から後述する業務処理インタフェース定義135に従って
呼出され、適宜業務データ134を更新する。本アプリケ
ーションプログラム133は購買システムを例にしてお
り、基本処理プログラム300は新規発注基本処理手続き3
01と見積り完了基本処理手続き302からなる。また業務
処理プログラム303は新規発注業務処理手続き304と見積
り完了業務処理手続き305からなる。これらの手続きの
詳細については後述する。
FIG. 11 shows an application program 133.
Is shown. The application program 133 includes a basic processing program 300 automatically generated by the framework generation tool 136 and a business processing program 303 programmed by a programmer. The basic processing program 300 is called from the client computer 101 in accordance with a business processing interface definition 135 described later, and after acquiring arguments required for calling the workflow function 130 from the argument information from the client computer, the basic processing program 300 is called. The business process program 303 is called with the same interface definition as the interface definition. Then, the appropriate API of the workflow function interface 240 is called. The business processing program 303 is a basic processing program 300
And updates the business data 134 as appropriate. The application program 133 is an example of a purchasing system, and the basic processing program 300 is a new order basic processing procedure 3
It consists of 01 and an estimation completion basic processing procedure 302. The business processing program 303 includes a new order business processing procedure 304 and an estimation completion business processing procedure 305. Details of these procedures will be described later.

【0028】図12は業務処理プログラム303が参照、
更新する業務データ134を示す。業務データ134はテーブ
ルとして管理され、注文番号340、品目341、承認結果34
2、購入先343、見積り価格344、購入価格345等のカラム
からなる。そして1件の発注を1レコードとして記憶す
る。注文番号340は1件の発注毎に付ける番号で、発注
の状況を問合わせる時等に使用する。本購買システムで
は注文番号340はワークフローデータ132の案件ID 200と
同じ値とする。品目341は発注した品物を示す。承認結
果342は承認者が発注を許可したか否かを示し、許可し
た場合は「可」、許可しなかった場合は「不可」という
値を設定する。購入先343は品物の購入先を示し、見積
り価格344は見積り結果の価格、購入価格345は最終的に
購入した際の価格を示す。
FIG. 12 is referred to by the business processing program 303.
The business data 134 to be updated is shown. The business data 134 is managed as a table, and the order number 340, the item 341 and the approval result 34
2. It consists of columns such as 343 for purchase, 344 for estimated price, and 345 for purchase price. Then, one order is stored as one record. The order number 340 is a number assigned to each order and is used when inquiring the order status. In this purchase system, the order number 340 has the same value as the case ID 200 of the workflow data 132. The item 341 indicates the ordered item. The approval result 342 indicates whether the approver has permitted the order, and sets a value of “permitted” when the order is permitted, and “impossible” when not permitted. The purchase destination 343 indicates the purchase destination of the item, the estimated price 344 indicates the price of the estimation result, and the purchase price 345 indicates the price at the time of the final purchase.

【0029】図13はアプリケーションプログラム133
のインタフェースである業務処理インタフェースの定義
を示す。業務処理インタフェース定義135の形式はワー
クフロー機能インタフェース240と同様、CORBAのIDLイ
ンタフェースに準じている。業務処理インタフェース定
義135は、新規に品物を発注する新規発注API 360、見積
り結果を入力する見積り完了API 363等からなる。新規
発注API 360は入力引数として発注する品物を示す品目
引数361等を持ち、出力引数として発注毎に付けられた
番号を返す注文番号引数362等を持つ。アプリケーショ
ンプログラム133の基本処理プログラム300は、クライア
ント計算機101から新規発注API 360が呼出されると、新
規発注基本処理手続き301を実行する。また、新規発注
基本処理手続き301は、同じインタフェースで業務処理
プログラム303を呼出し、新規発注業務処理手続き304を
実行する。
FIG. 13 shows an application program 133.
Here is the definition of the business process interface which is the interface of The format of the business process interface definition 135 conforms to the CORBA IDL interface, similarly to the workflow function interface 240. The business process interface definition 135 includes a new order API 360 for ordering a new product, an estimate completion API 363 for inputting an estimate result, and the like. The new order API 360 has an item argument 361 indicating an item to be ordered as an input argument, and an order number argument 362 returning a number assigned to each order as an output argument. The basic processing program 300 of the application program 133 executes a new order basic processing procedure 301 when the client computer 101 calls the new order API 360. The new order basic processing procedure 301 calls the business processing program 303 with the same interface and executes the new order business processing procedure 304.

【0030】見積り完了API 363は入力引数として発注
毎に付けられた番号を示す注文番号引数364、見積り結
果の価格を示す見積り結果価格引数365等を持つ。アプ
リケーションプログラム133の基本処理プログラム300
は、クライアント計算機101から見積り完了API 363が呼
出されると、見積り完了基本処理手続き302を実行す
る。また、見積り完了基本処理手続き302は、同じイン
タフェースで業務処理プログラム303を呼出し、見積り
完了業務処理手続き305を実行する。業務処理インタフ
ェース定義135はOS 128が提供するテキスト編集機能で
作成し、OS 128のファイル管理機能を用いてテキストフ
ァイルとして記憶領域126に記憶する。
The estimation completion API 363 has as input arguments an order number argument 364 indicating a number assigned to each order, an estimation result price argument 365 indicating a price of the estimation result, and the like. Basic processing program 300 of application program 133
Executes the estimation completion basic processing procedure 302 when the estimation completion API 363 is called from the client computer 101. The estimation completion basic processing procedure 302 calls the business processing program 303 with the same interface, and executes the estimation completion business processing procedure 305. The business processing interface definition 135 is created by the text editing function provided by the OS 128, and is stored in the storage area 126 as a text file using the file management function of the OS 128.

【0031】図14はアプリケーションプログラム133
の新規発注基本処理手続き301の処理フローを示す。こ
の手続きはフレームワーク生成ツール136によって自動
生成されたものである。処理フローはまず、基本処理プ
ログラム300の新規発注API 360が呼出された際の引数の
値をそのまま用いて、業務処理プログラム303の新規発
注API 360を呼出す(ステップ380)。次に呼出した新規発
注API 360の出力引数である注文番号引数362の値を案件
ID変数に記憶する(ステップ381)。次にBP定義ID引数242
の値を「100」、案件ID引数243の値を案件ID変数の値に
設定してワークフロー機能130の案件登録API 241を呼出
す(ステップ382)。最後に、業務処理プログラム303の新
規発注API 360を呼出した際の出力引数の値を、そのま
ま基本処理プログラム300の新規発注API 360の出力引数
の値として、呼出し元に戻る(ステップ383)。
FIG. 14 shows an application program 133.
2 shows a processing flow of the new order basic processing procedure 301. This procedure is automatically generated by the framework generation tool 136. The processing flow first calls the new order API 360 of the business processing program 303 using the value of the argument when the new order API 360 of the basic processing program 300 is called (step 380). Next, the value of the order number argument 362, which is the output argument of the new order API 360, called
It is stored in an ID variable (step 381). Next, BP definition ID argument 242
Is set to “100”, the value of the matter ID argument 243 is set to the value of the matter ID variable, and the matter registration API 241 of the workflow function 130 is called (step 382). Finally, the value of the output argument at the time of calling the new order API 360 of the business processing program 303 is directly returned to the calling source as the value of the output argument of the new order API 360 of the basic processing program 300 (step 383).

【0032】図15はアプリケーションプログラム133
の新規発注基本処理手続き301から呼出される新規発注
業務処理手続き304の処理フローを示す。この手続きは
プログラマが作成する。処理フローはまず、1件毎の発
注を識別する業務データ134内で一意になる注文番号を
生成する(ステップ400)。これは最初の値を1とし、新規
発注の度に1ずつ足した値を注文番号の値とすることで
実現できる。次に生成した注文番号と品目引数361等の
値を用いて業務データ134に新規レコードを追加する(ス
テップ401)。最後に注文番号を出力引数である注文番号
引数362に設定して呼出し元に戻る(ステップ402)。
FIG. 15 shows an application program 133.
7 shows a processing flow of a new order business processing procedure 304 called from the new order basic processing procedure 301. This procedure is created by the programmer. The processing flow first generates an order number that is unique in the business data 134 for identifying an order for each case (step 400). This can be realized by setting the initial value to 1 and adding a value of 1 each time a new order is placed to the value of the order number. Next, a new record is added to the business data 134 using the generated order number and the value of the item argument 361 and the like (step 401). Finally, the order number is set in the order number argument 362 which is an output argument, and the process returns to the calling source (step 402).

【0033】図16はアプリケーションプログラム133
の見積り完了基本処理手続き302の処理フローを示す。
この手続きはフレームワーク生成ツール136によって自
動生成されたものである。処理フローはまず、注文番号
引数364の値を案件IDの値とし、案件ID変数に記憶する
(ステップ420)。次に基本処理プログラム300の見積り完
了API 363が呼出された際の引数の値をそのまま用い
て、業務処理プログラム303の見積り完了API 363を呼出
す(ステップ421)。最後に、案件ID引数245の値を案件ID
変数の値、作業定義ID引数246の値を「1002」、作業状
態コード引数247の値を「C」に設定してワークフロー機
能130の作業状態変更API 244を呼出した後、本手続きの
呼出し元に戻る(ステップ422)。
FIG. 16 shows an application program 133.
Of the estimation completion basic processing procedure 302 of FIG.
This procedure is automatically generated by the framework generation tool 136. The processing flow first sets the value of the order number argument 364 as the value of the case ID and stores it in the case ID variable
(Step 420). Next, the estimation completion API 363 of the business processing program 303 is called using the value of the argument when the estimation completion API 363 of the basic processing program 300 is called (step 421). Finally, the value of the Matter ID argument 245 is
After calling the work state change API 244 of the workflow function 130 by setting the value of the variable and the value of the work definition ID argument 246 to “1002” and the value of the work state code argument 247 to “C”, the caller of this procedure Return to (Step 422).

【0034】図17はアプリケーションプログラム133
の見積り完了基本処理手続き302から呼出される見積り
完了業務処理手続き305の処理フローを示す。この手続
きはプログラマが作成する。処理フローはまず、注文番
号引数363の値を条件に業務データ134を検索する(ステ
ップ440)。そして該当するレコードが存在しなければ
(ステップ441)呼出し元にエラーを返答する(ステップ44
2)。検索の結果、該当するレコードが存在すれば(ステ
ップ441)、次に該当レコードの見積り価格344を見積も
り価格引数365の値に更新して呼出し元に戻る(ステップ
443)。
FIG. 17 shows an application program 133.
3 shows a processing flow of an estimation completion business processing procedure 305 called from the estimation completion basic processing procedure 302. This procedure is created by the programmer. The processing flow first searches the business data 134 based on the value of the order number argument 363 (step 440). And if there is no corresponding record
(Step 441) Return an error to the caller (Step 44
2). As a result of the search, if the corresponding record exists (step 441), the estimated price 344 of the corresponding record is updated to the value of the estimated price argument 365, and the process returns to the calling source (step 441).
443).

【0035】次に、本発明のフレームワーク生成方法に
ついて、該方法を適用したフレームワーク生成ツールの
実施例を述べる。図18はフレームワーク生成ツール13
5の構成を示す。フレームワーク生成ツール135はフレー
ムワーク生成手続き500と、フレームワーク生成手続き5
00から呼出されるプログラムタイプ選択手続き501、ビ
ジネスプロセス定義情報取得手続き502、業務処理イン
タフェース定義情報取得手続き503、基本処理プログラ
ム生成手続き504からなる。これらの手続きは業務処理
インタフェース定義135とビジネスプロセス定義131を参
照して必要な情報を取得し、アプリケーションプログラ
ム133の基本処理プログラム300を生成する。
Next, with regard to the framework generation method of the present invention, an embodiment of a framework generation tool to which the method is applied will be described. FIG. 18 shows the framework generation tool 13
5 shows the configuration. The framework generation tool 135 includes a framework generation procedure 500 and a framework generation procedure 5
It comprises a program type selection procedure 501 called from 00, a business process definition information acquisition procedure 502, a business processing interface definition information acquisition procedure 503, and a basic processing program generation procedure 504. These procedures acquire necessary information with reference to the business processing interface definition 135 and the business process definition 131, and generate the basic processing program 300 of the application program 133.

【0036】図19はフレームワーク生成手続き500の
処理フローを示す。まず生成するプログラムの種類を決
めるプログラムタイプを選択する。この処理はプログラ
ムタイプ選択手続き501を呼出して行う(ステップ520)。
次にビジネスプロセス定義131からプログラム生成に必
要な情報を取得する。この処理はビジネスプロセス定義
情報取得手続き502を呼出して行う(ステップ521)。次に
業務処理インタフェース定義135からプログラム生成に
必要な情報を取得する。この処理は業務処理インタフェ
ース定義情報取得手続き503を呼出して行う(ステップ52
2)。最後に基本処理プログラム300を生成する。この処
理は基本処理プログラム生成手続き504を呼出して行う
(ステップ523)。
FIG. 19 shows a processing flow of the framework generation procedure 500. First, a program type that determines the type of program to be generated is selected. This process is performed by calling a program type selection procedure 501 (step 520).
Next, information necessary for generating a program is acquired from the business process definition 131. This process is performed by calling the business process definition information acquisition procedure 502 (step 521). Next, information necessary for generating a program is acquired from the business processing interface definition 135. This process is performed by calling the business process interface definition information acquisition procedure 503 (step 52).
2). Finally, the basic processing program 300 is generated. This processing is performed by calling the basic processing program generation procedure 504.
(Step 523).

【0037】図20はプログラムタイプ選択手続き501
の処理フローを示す。まず、図21に示すプログラムタ
イプ選択画面560を表示し、プログラムタイプの選択を
待つ(ステップ540)。プログラムタイプ選択画面560は、
プログラムタイプ一覧561と選択ボタン562からなる。プ
ログラムタイプ一覧561にはフレームワーク生成ツール1
36が生成できるプログラムの種類を一覧表示する。プロ
グラマは一覧から作成するプログラムのプログラムタイ
プを選択し、選択ボタン562をクリックする。プログラ
マがプログラムタイプを選択すると、その値をプログラ
ムタイプ変数に記憶する(ステップ541)。
FIG. 20 shows a program type selection procedure 501.
3 shows a processing flow. First, a program type selection screen 560 shown in FIG. 21 is displayed, and the selection of a program type is waited (step 540). The program type selection screen 560
It consists of a program type list 561 and a selection button 562. Framework generation tool 1 in program type list 561
Lists the types of programs that 36 can generate. The programmer selects the program type of the program to be created from the list, and clicks the select button 562. When the programmer selects a program type, the value is stored in a program type variable (step 541).

【0038】図22はビジネスプロセス定義情報取得手
続き502の処理フローを示す。最初にプログラムタイプ
変数の値によって処理を選択する(ステップ600)。以下
ではまず、プログラムタイプ変数の値が案件登録の場合
について述べる。案件登録の場合はまず、図23に示す
ビジネスプロセス定義選択画面640を表示し、ビジネス
プロセス定義131の選択を待つ(ステップ601)。ビジネス
プロセス定義選択画面640は、ビジネスプロセス定義一
覧641と選択ボタン642からなる。ビジネスプロセス定義
一覧641には記憶装置126に記憶されている全ビジネスプ
ロセス定義131のBP定義名173を一覧表示する。プログラ
マは一覧から対象とするビジネスプロセス定義131を選
択し、選択ボタン642をクリックする。プログラマがビ
ジネスプロセス定義131を選択すると、選択されたビジ
ネスプロセス定義131のBP定義ID 174の値をBP定義ID変
数に記憶する(ステップ602)。
FIG. 22 shows a processing flow of the business process definition information acquisition procedure 502. First, a process is selected according to the value of the program type variable (step 600). First, the case where the value of the program type variable is the case registration will be described below. In the case of matter registration, first, the business process definition selection screen 640 shown in FIG. 23 is displayed, and the selection of the business process definition 131 is waited (step 601). The business process definition selection screen 640 includes a business process definition list 641 and a selection button 642. The business process definition list 641 displays a list of BP definition names 173 of all the business process definitions 131 stored in the storage device 126. The programmer selects the target business process definition 131 from the list and clicks the select button 642. When the programmer selects the business process definition 131, the value of the BP definition ID 174 of the selected business process definition 131 is stored in a BP definition ID variable (step 602).

【0039】次に、プログラムタイプ変数の値が作業状
態変更の場合について述べる。作業状態変更の場合はま
ず、案件登録の場合と同様に図23に示すビジネスプロ
セス定義選択画面640を表示し、プログラマによるビジ
ネスプロセス定義131の選択を待つ(ステップ603)。プロ
グラマがビジネスプロセス定義131を選択すると、次
に、選択されたビジネスプロセス定義131に含まれる複
数作業定義171から、処理対象とする作業定義171を選択
するために、図24に示す作業定義選択画面660を表示
する(ステップ604)。作業定義選択画面660は、複数の作
業定義171が遷移定義172に従った矢印で接続された図66
1と、選択ボタン662からなる。各作業定義171を表す四
角形には作業定義名175を表示する。プログラマは対象
とする作業定義171を表す四角形を選択し、選択ボタン6
62をクリックする。プログラマが作業定義171を選択す
ると、作業定義171の作業定義ID 176を作業定義ID変数
に記憶する(ステップ605)。
Next, a case where the value of the program type variable is a change in the work state will be described. In the case of the work state change, first, the business process definition selection screen 640 shown in FIG. 23 is displayed as in the case of the case registration, and the programmer waits for the selection of the business process definition 131 (step 603). When the programmer selects the business process definition 131, a work definition selection screen shown in FIG. 24 is next displayed in order to select a work definition 171 to be processed from a plurality of work definitions 171 included in the selected business process definition 131. 660 is displayed (step 604). The work definition selection screen 660 is shown in FIG. 66 in which a plurality of work definitions 171 are connected by arrows according to the transition definition 172.
1 and a select button 662. A work definition name 175 is displayed in a square representing each work definition 171. The programmer selects the rectangle representing the target work definition 171 and presses the select button 6
Click 62. When the programmer selects the work definition 171, the work definition ID 176 of the work definition 171 is stored in a work definition ID variable (step 605).

【0040】次に、どのように作業の状態を変更するか
を指定するために、図25に示す変更先状態選択画面68
0を表示する(ステップ606)。変更先状態選択画面680
は、変更先状態一覧681と選択ボタン682からなる。変更
先状態一覧681には先に選択された作業定義171に対応し
た値を一覧表示する。具体的には作業定義171に含まれ
る未実行状態名178、実行中状態名179(但し作業状態遷
移モデル177が3状態遷移の場合のみ)、実行済状態名18
0を表示する。プログラマは例えば、見積りを完了する
アプリケーションプログラム133を作成したい場合は一
覧から「見積り完了」を選択し、選択ボタン682をクリ
ックする。プログラマが変更先状態を選択すると、その
値が未実行状態名178の値であれば「N」を、実行中状態
名179の値であれば「R」を、その値が完了済状態名180
の値であれば「C」を変更後作業状態変数に記憶する(ス
テップ607〜610)。
Next, a change destination state selection screen 68 shown in FIG. 25 is designated to specify how to change the work state.
0 is displayed (step 606). Change destination status selection screen 680
Consists of a change destination status list 681 and a selection button 682. The change destination status list 681 displays a list of values corresponding to the work definition 171 selected earlier. Specifically, the unexecuted state name 178 and the executing state name 179 included in the work definition 171 (however, only when the work state transition model 177 is a three-state transition), the executed state name 18
Displays 0. For example, when the programmer wants to create the application program 133 for completing the estimation, the user selects “estimation completed” from the list and clicks the selection button 682. When the programmer selects the change destination state, the value is “N” if the value is the value of the unexecuted state name 178, “R” if the value is the value of the executing state name 179, and the value is the completed state name 180.
If the value is “C”, “C” is stored in the changed work state variable (steps 607 to 610).

【0041】図26は業務処理インタフェース定義情報
取得手続き503の処理フローを示す。最初にプログラム
タイプ変数の値によって処理を選択する(ステップ70
0)。以下では、プログラムタイプ変数の値が案件登録も
しくは作業状態変更の場合について述べる。案件登録も
しくは作業状態変更の場合はまず、図27に示す業務処
理API選択画面720を表示し、プログラマによる業務処理
APIの選択を待つ(ステップ701)。業務処理API選択画面7
20は、業務処理API一覧721と選択ボタン722からなる。
業務処理API一覧721には記憶領域126に記憶されている
全業務処理インタフェース定義135に含まれるAPIの一覧
を表示する。プログラマは一覧から作成するアプリケー
ションプログラム133のAPIを選択し、選択ボタン722を
クリックする。プログラマが業務処理APIを選択する
と、次に、選択されたAPIからワークフロー機能130を呼
出す際に必要な値を持つ引数を指定するために、図28
に示す引数選択画面740を表示する(ステップ702)。
FIG. 26 shows a processing flow of the business process interface definition information acquisition procedure 503. First, select the process according to the value of the program type variable (step 70
0). Hereinafter, the case where the value of the program type variable is the case registration or the work state change will be described. In the case of matter registration or work status change, first, the business process API selection screen 720 shown in FIG.
Wait for an API selection (step 701). Business processing API selection screen 7
20 includes a business processing API list 721 and a selection button 722.
The business process API list 721 displays a list of APIs included in all business process interface definitions 135 stored in the storage area 126. The programmer selects an API of the application program 133 to be created from the list, and clicks a selection button 722. When the programmer selects the business processing API, next, in order to specify an argument having a value required when calling the workflow function 130 from the selected API, FIG.
Is displayed (step 702).

【0042】引数選択画面740は、必要情報種別741と引
数一覧742、選択ボタン743からなる。必要情報種別741
はプログラムタイプ毎に、ワークフロー機能130を呼出
す際に、業務処理APIの引数から取得する必要のある情
報の種類を示す。この情報の種類は入力されたプログラ
ムタイプに対応するものをツールが指定する。引数一覧
742には先に選択されたAPIが持つ全引数の仮引数名を一
覧表示する。プログラマは例えば作成する業務処理API
として新規発注API 360を選び、発注番号引数362の値が
案件IDを示す場合は、引数一覧742より「order_numbe
r」を選択し、選択ボタン743をクリックする。プログラ
マが引数を選択すると、その仮引数名を案件ID引数名変
数に記憶する(ステップ703)。また、選択された引数が
入力引数なのか出力引数なのかを、案件ID引数タイプ変
数に記憶する(ステップ704)。
The argument selection screen 740 includes a required information type 741, an argument list 742, and a selection button 743. Required information type 741
Indicates the type of information that needs to be acquired from the argument of the business processing API when the workflow function 130 is called for each program type. The tool specifies the type of this information corresponding to the input program type. Argument list
A list 742 shows the formal parameter names of all the parameters of the previously selected API. Programmers create business process APIs, for example
If the value of the order number argument 362 indicates the matter ID, select "order_numbe" from the argument list 742.
Select "r" and click the Select button 743. When the programmer selects an argument, the dummy argument name is stored in a case ID argument name variable (step 703). Further, whether the selected argument is an input argument or an output argument is stored in a case ID argument type variable (step 704).

【0043】図29と図30は基本処理プログラム生成
手続き504の処理フローを示す。最初にプログラムタイ
プ変数の値によって処理を選択する(ステップ760)。以
下ではまず、プログラムタイプ変数の値が案件登録の場
合について述べる。案件登録の場合はまず、案件ID引数
タイプ変数の値が入力引数であるか、出力引数であるか
によって処理を選択する(ステップ761)。案件ID引数タ
イプ変数の値が出力引数の場合は、次に、業務処理プロ
グラム303を呼出すステップを生成する(ステップ762)。
FIGS. 29 and 30 show the processing flow of the basic processing program generation procedure 504. First, a process is selected according to the value of the program type variable (step 760). First, the case where the value of the program type variable is the case registration will be described below. In the case of matter registration, first, processing is selected depending on whether the value of the matter ID argument type variable is an input argument or an output argument (step 761). If the value of the case ID argument type variable is an output argument, then a step for calling the business processing program 303 is generated (step 762).

【0044】新規発注基本処理手続き301の場合に生成
されるプログラムソースコード例を図31に示す。ここ
では一般的なC++言語のプログラムソースコードを生成
する場合を例とする。C++言語はANSI(American Nationa
l Standards Institute)で仕様の標準化が行われ、一般
に公開されている。図31の例では業務処理プログラム
304を呼出すステップはソースコード801のようになる。
基本処理プログラム300の新規発注API 360が呼出された
際の引数「item」、……、「oreder_number」の引数名
をそのまま業務処理プログラム「businessProgram」の
新規発注API「order」を呼出す際の引数として記述す
る。引数名やAPI名「order」は全て業務処理インタフェ
ース定義135に書かれている名前をそのまま記述する。
業務処理プログラム303を示す変数「businessProgram」
の名前は固定的な名前である。この記述によって基本処
理プログラム300の入力引数の値はそのまま業務処理プ
ログラム303の入力引数の値となり、業務処理プログラ
ム303の出力引数の値は基本処理プログラム300の出力引
数の値となるようになる。
FIG. 31 shows an example of a program source code generated in the case of the new order basic processing procedure 301. Here, a case where a general C ++ language program source code is generated is taken as an example. The C ++ language is ANSI (American Nationa
l Standards Institute) standardized the specifications and made them available to the public. In the example of FIG. 31, the business processing program
The step of calling 304 looks like source code 801.
The argument names of the arguments “item”,..., “Oreder_number” when the new order API 360 of the basic processing program 300 is called are used as arguments when calling the new order API “order” of the business processing program “businessProgram”. Describe. For the argument name and API name “order”, the name written in the business process interface definition 135 is described as it is.
Variable "businessProgram" indicating the business processing program 303
Is a fixed name. With this description, the value of the input argument of the basic processing program 300 becomes the value of the input argument of the business processing program 303, and the value of the output argument of the business processing program 303 becomes the value of the output argument of the basic processing program 300.

【0045】基本処理プログラム生成手続き504は次
に、案件ID引数名変数の値を用いて業務処理プログラム
APIの出力引数値を案件ID変数に記憶するステップを生
成する(ステップ763)。図31の例では、このステップ
はソースコード802のようになる。代入演算子「=」の右
辺には業務処理インタフェース定義情報取得手続き503
で記憶された案件ID引数名変数の値をそのまま記述し、
左辺には案件ID変数の変数名を記述する。案件ID変数の
変数名は固定的な名前である。
Next, the basic processing program generation procedure 504 uses the value of the case ID argument name variable to execute the business processing program.
A step for storing the output argument value of the API in the matter ID variable is generated (step 763). In the example of FIG. 31, this step becomes like the source code 802. On the right side of the assignment operator “=”, the business process interface definition information acquisition procedure 503
Describe the value of the argument ID variable of the matter ID stored in
Describe the variable name of the matter ID variable on the left side. The variable name of the matter ID variable is a fixed name.

【0046】次に、BP定義ID変数と案件ID変数の値を用
いてワークフロー機能130の案件登録API 241を呼出すス
テップを生成する(ステップ766)。このステップはソー
スコード803のようになる。ビジネスプロセス定義情報
取得手続き502で記憶されたBP定義ID変数の値「100」
と、案件ID変数の変数名を引数として記述し、ワークフ
ロー機能「workflow」の案件登録API「createProcessIn
stance」を呼出すように記述する。「workflow」、「crea
teProcessInstance」の名前は案件ID変数の変数名同
様、固定的な名前である。ソースコード802、803の記述
によって、新規発注API 360の注文番号引数362の値を案
件ID引数の値として案件登録API 241を呼出すようにな
る。案件登録の場合で、案件ID引数タイプ変数の値が入
力引数の場合は、案件ID引数タイプ変数の値が出力引数
の場合と比べて、案件ID変数へ値を入力する記述と、業
務処理プログラム303を呼出す記述の生成順序を逆にす
る(ステップ764、765)。但しこの場合、案件ID変数へ値
を入力する代入元の変数は基本処理プログラム300の出
力変数ではなく、入力変数となる。
Next, a step for calling the case registration API 241 of the workflow function 130 is generated using the values of the BP definition ID variable and the case ID variable (step 766). This step looks like the source code 803. BP definition ID variable value “100” stored in business process definition information acquisition procedure 502
And the variable name of the matter ID variable as an argument, and the matter registration API "createProcessIn" of the workflow function "workflow"
stance ". "Workflow", "crea
The name of “teProcessInstance” is a fixed name like the variable name of the matter ID variable. According to the description of the source codes 802 and 803, the case registration API 241 is called with the value of the order number argument 362 of the new order API 360 as the value of the case ID argument. In the case of matter registration, if the value of the matter ID argument type variable is an input argument, the description to input the value to the matter ID variable compared to the case where the value of the matter ID argument type variable is the output argument, and a business process program The generation order of the description for calling 303 is reversed (steps 764 and 765). However, in this case, the substitution source variable for inputting the value to the matter ID variable is not the output variable of the basic processing program 300 but the input variable.

【0047】次に、プログラムタイプ変数の値が作業状
態変更の場合について述べる。作業状態変更の場合もま
ず、案件ID引数タイプ変数の値が入力引数であるか、出
力引数であるかによって処理を選択する(ステップ77
0)。作業状態変更では案件登録とは逆に、先に案件ID引
数タイプ変数の値が入力引数の場合について述べる。こ
れは見積り完了基本処理手続き302の例を詳細に述べる
ためである。案件ID引数タイプ変数の値が入力引数の場
合、基本処理プログラム生成手続き504は次に、案件ID
引数名変数の値を用いて基本処理プログラムAPIの入力
引数値を案件ID変数に記憶するステップを生成する(ス
テップ773)。
Next, a case where the value of the program type variable is a change in the work state will be described. In the case of work status change, first, processing is selected depending on whether the value of the matter ID argument type variable is an input argument or an output argument (step 77).
0). In the work state change, the case where the value of the matter ID argument type variable is the input argument is described first, contrary to the matter registration. This is to describe an example of the estimation completion basic processing procedure 302 in detail. If the value of the Matter ID argument type variable is an input argument, the basic processing program generation procedure 504
A step of storing the input argument value of the basic processing program API in the matter ID variable using the value of the argument name variable is generated (step 773).

【0048】見積り完了基本処理手続き302の場合に生
成されるプログラムソースコード例を図32に示す。図
32ではこのステップはソースコード821のようにな
る。代入演算子「=」の右辺には業務処理インタフェー
ス定義情報取得手続き503で記憶された案件ID引数名変
数の値をそのまま記述し、左辺には案件ID変数の変数名
を記述する。案件ID変数の変数名は固定的な名前であ
る。
FIG. 32 shows an example of a program source code generated in the case of the estimation completion basic processing procedure 302. In FIG. 32, this step becomes like the source code 821. The value of the matter ID argument name variable stored in the business process interface definition information acquisition procedure 503 is described as it is on the right side of the assignment operator “=”, and the variable name of the matter ID variable is described on the left side. The variable name of the matter ID variable is a fixed name.

【0049】次に、業務処理プログラム303を呼出すス
テップを生成する(ステップ774)。図32の例では業務
処理プログラム303を呼出すステップはソースコード822
のようになる。基本処理プログラム300の見積り完了API
363が呼出された際の引数「order_number」、「estima
ted_price」等の引数名をそのまま業務処理プログラム
「businessProgram」の見積り完了API「estimated」を
呼出す際の引数として記述する。引数名やAPI名「estim
ated」は全て業務処理インタフェース定義135に書かれ
ている名前をそのまま記述する。業務処理プログラム30
3を示す変数「businessProgram」の名前は固定的な名前
である。この記述によって基本処理プログラム300の入
力引数の値はそのまま業務処理プログラム303の入力引
数の値となり、業務処理プログラム303の出力引数の値
は基本処理プログラム300の出力引数の値となるように
なる。
Next, a step for calling the business processing program 303 is generated (step 774). In the example of FIG. 32, the step of calling the business processing program 303 is the
become that way. Estimation completion API of basic processing program 300
Arguments "order_number", "estima" when 363 was called
The argument name such as “ted_price” is described as it is as an argument when calling the estimation completion API “estimated” of the business processing program “businessProgram”. Argument name or API name "estim
“ated” describes the name written in the business process interface definition 135 as it is. Business processing program 30
The name of the variable “businessProgram” indicating 3 is a fixed name. With this description, the value of the input argument of the basic processing program 300 becomes the value of the input argument of the business processing program 303, and the value of the output argument of the business processing program 303 becomes the value of the output argument of the basic processing program 300.

【0050】次に、案件ID変数と作業定義ID変数、変更
後作業状態変数の値を用いてワークフロー機能130の作
業状態変更API 244を呼出すステップを生成する(ステッ
プ775)。このステップはソースコード823のようにな
る。案件ID変数の変数名と、ビジネスプロセス定義情報
取得手続き502で記憶された作業定義ID変数の値「100
2」と変更後作業状態変数の値「C」を引数として記述
し、ワークフロー機能「workflow」の作業状態変更API
「changeWorkItemState」を呼出すように記述する。「wo
rkflow」、「changeWorkItemState」の名前は案件ID変数
の変数名同様、固定的な名前である。ソースコード82
1、823の記述によって、見積り完了API 363の注文番号
引数364の値を案件ID引数の値として作業状態変更API 2
44を呼出すようになる。作業状態変更の場合で、案件ID
引数タイプ変数の値が出力引数の場合は、案件ID引数タ
イプ変数の値が入力引数の場合と比べて、案件ID変数へ
値を入力する記述と、業務処理プログラム303を呼出す
記述の生成順序を逆にする(ステップ771、772)。但しこ
の場合、案件ID変数へ値を入力する代入元の変数は基本
処理プログラム300の入力変数ではなく、出力変数とな
る。
Next, a step for calling the work state change API 244 of the workflow function 130 is generated using the value of the matter ID variable, the work definition ID variable, and the changed work state variable (step 775). This step looks like source code 823. The variable name of the matter ID variable and the value of the work definition ID variable stored in the business process definition information acquisition
2) and the value of the changed work state variable "C" as an argument, and the work state change API of the workflow function "workflow"
Describe to call "changeWorkItemState". "Wo
The names of “rkflow” and “changeWorkItemState” are fixed names like the variable name of the matter ID variable. Source code 82
1, the work status change API 2 using the value of the order number argument 364 of the quote completion API 363 as the value of the matter ID argument
Calls 44. In case of work status change, matter ID
When the value of the argument type variable is an output argument, the order of generating the description for inputting the value to the matter ID variable and the generation order of the description for calling the business processing program 303 are different from when the value of the matter ID argument type variable is the input argument. Reverse (steps 771, 772). However, in this case, the variable from which the value is input to the matter ID variable is not the input variable of the basic processing program 300 but the output variable.

【0051】本実施例によれば、他のプログラムから引
数の型や数を含む業務処理インタフェース定義に基づい
たインタフェースで呼出され、業務の状態を状態変更の
規則を含むビジネスプロセス定義に基づいて変更するワ
ークフロー機能を呼出すアプリケーションプログラム
の、ワークフロー機能を呼出す処理部分を含む基本処理
プログラムを生成するフレームワーク生成ツールが、業
務処理インタフェース定義とビジネスプロセス定義の情
報を利用して、基本処理プログラムを生成することがで
き、プログラマがワークフロー機能の呼出し方法の知識
を持たなくとも、ワークフロー機能と連携するアプリケ
ーションプログラムを容易に開発することができる。
According to the present embodiment, the program is called from another program by an interface based on the business process interface definition including the type and number of arguments, and changes the business status based on the business process definition including the status change rule. The framework generation tool that generates the basic processing program including the processing part that calls the workflow function of the application program that calls the workflow function to generate the basic processing program using the information of the business processing interface definition and the business process definition This makes it possible to easily develop an application program that cooperates with the workflow function without requiring the programmer to have knowledge of how to call the workflow function.

【0052】[0052]

【発明の効果】本発明によれば、ワークフロー機能を呼
出すアプリケーションプログラムの基本処理プログラム
を容易に生成することが可能になる。
According to the present invention, it is possible to easily generate a basic processing program of an application program for calling a workflow function.

【図面の簡単な説明】[Brief description of the drawings]

【図1】フレームワーク生成ツールの概念を説明するた
めの図である。
FIG. 1 is a diagram for explaining the concept of a framework generation tool.

【図2】フレームワーク生成ツールを含むシステム全体
の構成を示す図である。
FIG. 2 is a diagram showing a configuration of an entire system including a framework generation tool.

【図3】サーバ計算機の構成を示す図である。FIG. 3 is a diagram showing a configuration of a server computer.

【図4】ワークフロー機能の構成を示す図である。FIG. 4 is a diagram showing a configuration of a workflow function.

【図5】ビジネスプロセス定義のデータ形式の例を示す
図である。
FIG. 5 is a diagram illustrating an example of a data format of a business process definition.

【図6】ワークフローデータのテーブル形式の例を示す
図である。
FIG. 6 is a diagram illustrating an example of a table format of workflow data.

【図7】作業状態と作業状態コードの対応表の例を示す
図である。
FIG. 7 is a diagram showing an example of a correspondence table between work states and work state codes.

【図8】ワークフロー機能のインタフェースの例を示す
図である。
FIG. 8 is a diagram illustrating an example of an interface of a workflow function.

【図9】ワークフロー機能の案件登録手続きの処理フロ
ーを示す図である。
FIG. 9 is a diagram showing a processing flow of a matter registration procedure of the workflow function.

【図10】ワークフロー機能の作業状態変更手続きの処
理フローを示す図である。
FIG. 10 is a diagram showing a processing flow of a work state change procedure of the workflow function.

【図11】アプリケーションプログラムの構成を示す図
である。
FIG. 11 is a diagram showing a configuration of an application program.

【図12】業務データのテーブル形式を示す図である。FIG. 12 is a diagram showing a table format of business data.

【図13】アプリケーションプログラムの業務処理イン
タフェース定義の例を示す図である。
FIG. 13 is a diagram illustrating an example of a business process interface definition of an application program.

【図14】アプリケーションプログラムの新規発注基本
処理手続きの処理フローを示す図である。
FIG. 14 is a diagram showing a processing flow of a new order basic processing procedure of an application program.

【図15】アプリケーションプログラムの新規発注業務
処理手続きの処理フローを示す図である。
FIG. 15 is a diagram showing a processing flow of a new order business processing procedure of an application program.

【図16】アプリケーションプログラムの見積り完了基
本処理手続きの処理フローを示す図である。
FIG. 16 is a diagram showing a processing flow of an estimation completion basic processing procedure of an application program.

【図17】アプリケーションプログラムの見積り完了業
務処理手続きの処理フローを示す図である。
FIG. 17 is a diagram showing a processing flow of an estimation completion business processing procedure of an application program.

【図18】フレームワーク生成ツールの構成を示す図で
ある。
FIG. 18 is a diagram illustrating a configuration of a framework generation tool.

【図19】フレームワーク生成ツールのフレームワーク
生成手続きの処理フローを示す図である。
FIG. 19 is a diagram showing a processing flow of a framework generation procedure of the framework generation tool.

【図20】フレームワーク生成ツールのプログラムタイ
プ選択手続きの処理フローを示す図である。
FIG. 20 is a diagram showing a processing flow of a program type selection procedure of the framework generation tool.

【図21】プログラムタイプ選択画面の例を示す図であ
る。
FIG. 21 is a diagram illustrating an example of a program type selection screen.

【図22】フレームワーク生成ツールのビジネスプロセ
ス定義情報取得手続きの処理フローを示す図である。
FIG. 22 is a diagram showing a processing flow of a business process definition information acquisition procedure of the framework generation tool.

【図23】ビジネスプロセス定義選択画面の例を示す図
である。
FIG. 23 is a diagram illustrating an example of a business process definition selection screen.

【図24】作業定義選択画面の例を示す図である。FIG. 24 is a diagram illustrating an example of a work definition selection screen.

【図25】変更先状態選択画面の例を示す図である。FIG. 25 is a diagram illustrating an example of a change destination state selection screen.

【図26】フレームワーク生成ツールの業務処理インタ
フェース定義情報取得手続きの処理フローを示す図であ
る。
FIG. 26 is a diagram showing a processing flow of a business processing interface definition information acquisition procedure of the framework generation tool.

【図27】業務処理API選択画面の例を示す図である。FIG. 27 is a diagram illustrating an example of a business process API selection screen.

【図28】引数選択画面の例を示す図である。FIG. 28 is a diagram illustrating an example of an argument selection screen.

【図29】フレームワーク生成ツールの基本処理プログ
ラム生成手続きの処理フローを示す図である。
FIG. 29 is a diagram showing a processing flow of a basic processing program generation procedure of the framework generation tool.

【図30】フレームワーク生成ツールの基本処理プログ
ラム生成手続きの処理フローの図29に続く部分を示す
図である。
FIG. 30 is a diagram illustrating a part of the processing flow of the basic processing program generation procedure of the framework generation tool, which is subsequent to FIG. 29.

【図31】自動生成された新規発注基本処理のプログラ
ムソースコードを示す図である。
FIG. 31 is a diagram showing a program source code of a new order basic process automatically generated.

【図32】自動生成された見積り完了基本処理のプログ
ラムソースコードを示す図である。
FIG. 32 is a diagram showing a program source code of an automatically generated estimation completion basic process.

───────────────────────────────────────────────────── フロントページの続き (72)発明者 田坂 光伸 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所システム開発本部内 (72)発明者 土田 修己 神奈川県川崎市幸区鹿島田890番地 株式 会社日立製作所システム開発本部内 Fターム(参考) 5B049 BB07 CC21 DD01 DD05 FF03 FF04 FF09 GG04 GG07 5B076 DD02 DF07  ──────────────────────────────────────────────────の Continued on the front page (72) Inventor Mitsunobu Tasaka 890 Kashimada, Saiwai-ku, Kawasaki-shi, Kanagawa Prefecture, Ltd.System Development Division, Hitachi, Ltd. 5B049 BB07 CC21 DD01 DD05 FF03 FF04 FF09 GG04 GG07 GG07 GG07 5B076 DD02 DF07

Claims (6)

【特許請求の範囲】[Claims] 【請求項1】 他のプログラムから引数の型や数を含む
業務処理インタフェース定義に基づいたインタフェース
で呼出され、業務の状態を状態変更の規則を含むビジネ
スプロセス定義に基づいて変更するワークフロー機能を
呼出すアプリケーションプログラムの、ワークフロー機
能を呼出す処理部分を含む基本処理プログラムを生成す
るアプリケーションフレームワーク生成方法であって、 該業務処理インタフェース定義と該ビジネスプロセス定
義の情報を利用して、該基本処理プログラムを生成する
ことを特徴とするアプリケーションフレームワーク生成
方法。
1. A workflow function that is called from another program based on a business process interface definition including the type and number of arguments and changes a business state based on a business process definition including a state change rule. An application framework generation method for generating a basic processing program including a processing portion for calling a workflow function of an application program, wherein the basic processing program is generated by using information of the business processing interface definition and the business process definition. A method of generating an application framework.
【請求項2】 他のプログラムから引数の型や数を含む
業務処理インタフェース定義に基づいたインタフェース
で呼出され、業務の状態を状態変更の規則を含むビジネ
スプロセス定義に基づいて変更するワークフロー機能を
呼出すアプリケーションプログラムの、ワークフロー機
能を呼出す処理部分を含む基本処理プログラムを生成す
るアプリケーションフレームワーク生成方法であって、 該基本処理プログラムが該ワークフロー機能を呼出す際
の引数の値を、該アプリケーションプログラム呼出し時
の引数の値のうち該業務処理インタフェース定義で定義
されている引数から選択された引数の値と、該ビジネス
プロセス定義に含まれる属性から選択された属性の値と
し、 基本処理プログラムの各ステップにおける引数の値とし
て前記選択された引数の値と選択された属性の値を用い
て基本処理プログラムを生成することを特徴とするアプ
リケーションフレームワーク生成方法。
2. A workflow function that is called from another program based on a business process interface definition including the type and number of arguments and changes a business state based on a business process definition including a state change rule. An application framework generating method for generating a basic processing program including a processing part for calling a workflow function of an application program, the method comprising: calling a value of an argument when the basic processing program calls the workflow function; The value of the argument selected from the arguments defined in the business process interface definition and the value of the attribute selected from the attributes included in the business process definition are the arguments in each step of the basic processing program. Selected as the value of Application framework generation method characterized by generating a basic processing program by using the value as the value of selected attributes of the argument.
【請求項3】 請求項2記載のアプリケーションフレー
ムワーク生成方法において、 業務における1つの要求の発生から該要求への対応まで
を1つの案件の状態遷移として表現し、1つの前記ビジ
ネスプロセス定義が、1つの業務に関する案件の状態変
更の規則を含み、 前記ワークフロー機能が、該案件の状態と該案件に対応
する該ビジネスプロセス定義を識別するビジネスプロセ
ス定義IDを記憶して、該案件の状態を該ビジネスプロ
セス定義に基づいて変更し、 前記基本処理プログラムが、該ワークフロー機能の新規
案件を登録する手続きを呼出す際の引数に関して、 新規登録する案件を識別する案件IDを指定する引数の
値として、前記アプリケーションプログラム呼出し時の
引数のうち前記業務処理インタフェース定義で定義され
ている引数から選択された引数の値を用い、 新規登録する該案件に対応する該ビジネスプロセス定義
を識別するビジネスプロセス定義IDを指定する引数の
値として、前記ビジネスプロセス定義に含まれるビジネ
スプロセス定義IDの値を用いるようにすることを特徴
とするアプリケーションフレームワーク生成方法。
3. The application framework generation method according to claim 2, wherein a transition from generation of one request in business to response to the request is expressed as a state transition of one matter, and one business process definition is The workflow function includes a rule for changing a state of a matter relating to one business, wherein the workflow function stores a state of the matter and a business process definition ID for identifying the business process definition corresponding to the matter, and determines the state of the matter. Change based on the business process definition, and regarding the argument when the basic processing program calls the procedure for registering a new matter of the workflow function, as the argument value for specifying the matter ID for identifying the matter to be newly registered, Of the arguments at the time of calling the application program, defined in the business process interface definition Business process definition ID included in the business process definition as an argument value for specifying a business process definition ID for identifying the business process definition corresponding to the matter to be newly registered, using the value of the argument selected from the existing arguments A method for generating an application framework, wherein a value of the application framework is used.
【請求項4】 請求項2記載のアプリケーションフレー
ムワーク生成方法において、 業務における1つの要求の発生から該要求への対応まで
を1つの案件の状態遷移として表現し、該業務が複数の
人やプログラムの連携で遂行される場合に、各人やプロ
グラム毎の処理を該案件に含まれる作業の状態遷移とし
て表現し、 前記ビジネスプロセス定義が、業務に関する該案件及び
該作業の状態変更の規則を含み、 前記ワークフロー機能が、該案件及び1つの案件に含ま
れる複数の該作業の状態を記憶して、これらの状態を該
ビジネスプロセス定義にもとづいて変更し、 前記基本処理プログラムが、該ワークフロー機能の作業
状態を変更する手続きを呼出す際の引数に関して、 状態変更する作業を含む案件を識別する案件IDを指定
する引数の値として、前記アプリケーションプログラム
呼出し時の引数のうち前記業務処理インタフェース定義
で定義されている引数から選択された引数の値を用い、 状態変更する作業を識別する作業定義IDを指定する引
数の値として、前記ビジネスプロセス定義に含まれる作
業定義IDの値を用いるようにすることを特徴とするア
プリケーションフレームワーク生成方法。
4. The application framework generation method according to claim 2, wherein a transition from the generation of one request in the business to the response to the request is expressed as a state transition of one case, and the business is performed by a plurality of persons or programs. When performed in cooperation with each other, the process for each person or each program is expressed as a state transition of the work included in the matter, and the business process definition includes the matter relating to the work and rules for changing the state of the work. The workflow function stores the case and a plurality of states of the work included in one case, and changes these states based on the business process definition; Regarding the argument when calling the procedure to change the work state, the value of the argument that specifies the matter ID that identifies the matter that includes the work to change the state Then, using the value of the argument selected from among the arguments defined in the business processing interface definition among the arguments at the time of calling the application program, as the value of the argument specifying the work definition ID for identifying the work whose status is to be changed A method of generating an application framework, wherein a value of a work definition ID included in the business process definition is used.
【請求項5】 他のプログラムから引数の型や数を含む
業務処理インタフェース定義に基づいたインタフェース
で呼出され、業務の状態を状態変更の規則を含むビジネ
スプロセス定義に基づいて変更するワークフロー機能を
呼出すアプリケーションプログラムの、ワークフロー機
能を呼出す処理部分を含む基本処理プログラムを生成す
るアプリケーションフレームワーク生成装置であって、 該基本処理プログラムが該ワークフロー機能を呼出す際
の引数の値として、該アプリケーションプログラム呼出
し時の引数の値のうち該業務処理インタフェース定義で
定義されている引数から利用者により引数の値を選択さ
せ、該ビジネスプロセス定義に含まれる属性から利用者
により属性の値を選択させる手段と、 基本処理プログラムの各ステップにおける引数の値とし
て前記選択された引数の値と選択された属性の値を設定
する手段を有することを特徴とするアプリケーションフ
レームワーク生成装置。
5. A workflow function that is called from another program based on a business process interface definition including types and numbers of arguments and changes a business state based on a business process definition including a state change rule. An application framework generating apparatus for generating a basic processing program including a processing portion for calling a workflow function of an application program, wherein the basic processing program calls the workflow function as an argument value when the application program is called. Means for allowing the user to select an argument value from the arguments defined in the business process interface definition among the argument values, and for allowing the user to select an attribute value from the attributes included in the business process definition; At each step of the program Kicking application framework generating apparatus characterized by comprising means for setting said selected value as the value of the selected attribute of the argument as the value of the argument.
【請求項6】 他のプログラムから引数の型や数を含む
業務処理インタフェース定義に基づいたインタフェース
で呼出され、業務の状態を状態変更の規則を含むビジネ
スプロセス定義に基づいて変更するワークフロー機能を
呼出すアプリケーションプログラムの、ワークフロー機
能を呼出す処理部分を含む基本処理プログラムを生成す
るアプリケーションフレームワーク生成プログラムであ
り、 該基本処理プログラムが該ワークフロー機能を呼出す際
の引数の値として、該アプリケーションプログラム呼出
し時の引数の値のうち該業務処理インタフェース定義で
定義されている引数から利用者により引数の値を選択さ
せ、該ビジネスプロセス定義に含まれる属性から利用者
により属性の値を選択させる手順と、 基本処理プログラムの各ステップにおける引数の値とし
て前記選択された引数の値と選択された属性の値を設定
する手順を有するアプリケーションフレームワーク生成
プログラムを記録したコンピュータ読み取り可能な記録
媒体。
6. A workflow function that is called from another program based on a business process interface definition including the type and number of arguments, and changes a business state based on a business process definition including a state change rule. An application framework generating program for generating a basic processing program including a processing portion for calling a workflow function of the application program, wherein the basic processing program calls the workflow function as an argument value when the application program is called. Of allowing the user to select an argument value from the arguments defined in the business process interface definition, and allowing the user to select an attribute value from the attributes included in the business process definition; Each step Computer readable recording medium recording an application framework generator having a procedure for setting the values of the selected attributes of the selected parameter as the value of the argument in.
JP36980999A 1999-12-27 1999-12-27 Method and device for generating application framework and computer readable recording medium storing application framework generation program Pending JP2001184200A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP36980999A JP2001184200A (en) 1999-12-27 1999-12-27 Method and device for generating application framework and computer readable recording medium storing application framework generation program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP36980999A JP2001184200A (en) 1999-12-27 1999-12-27 Method and device for generating application framework and computer readable recording medium storing application framework generation program

Publications (1)

Publication Number Publication Date
JP2001184200A true JP2001184200A (en) 2001-07-06

Family

ID=18495372

Family Applications (1)

Application Number Title Priority Date Filing Date
JP36980999A Pending JP2001184200A (en) 1999-12-27 1999-12-27 Method and device for generating application framework and computer readable recording medium storing application framework generation program

Country Status (1)

Country Link
JP (1) JP2001184200A (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002189842A (en) * 2000-12-19 2002-07-05 Nippon Telegr & Teleph Corp <Ntt> Workflow management control system and method, and recording medium recording workflow management control program
JP2011129150A (en) * 2003-06-12 2011-06-30 Reuters America Business process automation

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002189842A (en) * 2000-12-19 2002-07-05 Nippon Telegr & Teleph Corp <Ntt> Workflow management control system and method, and recording medium recording workflow management control program
JP2011129150A (en) * 2003-06-12 2011-06-30 Reuters America Business process automation
US8332864B2 (en) 2003-06-12 2012-12-11 Reuters America Inc. Business process automation

Similar Documents

Publication Publication Date Title
CN102385483B (en) User interface based on context, search and navigation
US7739695B2 (en) Computer implemented method and system for running a plurality of business processes
Lapouchnian et al. Requirements-driven design and configuration management of business processes
US8170901B2 (en) Extensible framework for designing workflows
US7366723B2 (en) Visual query modeling for configurable patterns
US6275977B1 (en) Application cooperation method and apparatus
US7370335B1 (en) System and method for providing a public application program interface
US7953767B2 (en) Developing applications using configurable patterns
US7725907B2 (en) Default value initialization of business objects
US7702650B2 (en) Adaptive models framework
US7890478B2 (en) Projected business objects
US20060074735A1 (en) Ink-enabled workflow authoring
US20070005623A1 (en) Process oriented message driven workflow programming model
JP2002544589A (en) System and method for visually customizing business object interfaces
RU2340937C2 (en) Declarative sequential report parametrisation
JP2001209562A (en) System of deducing conversion rules
US20070271107A1 (en) Context-dependent value help
US20080288918A1 (en) Web service tool based on business object layer
JPH10254689A (en) Application constitution design supporting system for client/server system
US6507844B1 (en) Method and system for minimizing network traffic
US20060149560A1 (en) Business application generation system
Mani et al. Using user interface design to enhance service identification
JP2000268084A (en) Integral job package software introduction planning support system
CN115964072A (en) Workflow management system based on Flowable process engine development
JP2001184200A (en) Method and device for generating application framework and computer readable recording medium storing application framework generation program

Legal Events

Date Code Title Description
RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20040317