JP6287396B2 - Information processing apparatus and program - Google Patents

Information processing apparatus and program Download PDF

Info

Publication number
JP6287396B2
JP6287396B2 JP2014052896A JP2014052896A JP6287396B2 JP 6287396 B2 JP6287396 B2 JP 6287396B2 JP 2014052896 A JP2014052896 A JP 2014052896A JP 2014052896 A JP2014052896 A JP 2014052896A JP 6287396 B2 JP6287396 B2 JP 6287396B2
Authority
JP
Japan
Prior art keywords
task
employee
story
complement
description
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2014052896A
Other languages
Japanese (ja)
Other versions
JP2015176395A (en
JP2015176395A5 (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.)
Casio Computer Co Ltd
Original Assignee
Casio Computer Co 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 Casio Computer Co Ltd filed Critical Casio Computer Co Ltd
Priority to JP2014052896A priority Critical patent/JP6287396B2/en
Publication of JP2015176395A publication Critical patent/JP2015176395A/en
Publication of JP2015176395A5 publication Critical patent/JP2015176395A5/ja
Application granted granted Critical
Publication of JP6287396B2 publication Critical patent/JP6287396B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、情報処理装置及びプログラムに関する。   The present invention relates to an information processing apparatus and a program.

従来、ソフトウェア設計においては、メッセージとキューを用いた異なる二つのオブジェクトの連携が行われており、例えば、組み込みシステムのカーネル部におけるプロセス間の通信等に用いられている。   Conventionally, in software design, two different objects using a message and a queue are linked and used for, for example, communication between processes in a kernel part of an embedded system.

また、メッセージとキューを用いてアプリケーションソフトウェア(以下、「アプリケーション」という。)を連携させるMQ(メッセージ・キューイング)という技術が広がっている。MQは、金融取引やセルラー用アプリケーション等の多重トランザクションの処理や、既存のシステムの活用等に応用されている。   In addition, a technique called MQ (message queuing) in which application software (hereinafter referred to as “application”) is linked using messages and queues is spreading. MQ is applied to the processing of multiple transactions such as financial transactions and cellular applications, and the utilization of existing systems.

複数のアプリケーション間でデータを交換して連携動作を行う技術として、例えば、あるアプリケーションが送信したメッセージをキューイングマネージャが管理し、別のアプリケーションがキューを受信することで、アプリケーション同士が連携するように動作するシステムが提案されている(特許文献1参照)。   As a technology for exchanging data between multiple applications, for example, a queuing manager manages messages sent by one application, and another application receives the queue so that the applications can cooperate with each other. Has been proposed (see Patent Document 1).

また、医療機関専用のシステムにおいて、MQをベースとして医療データの連携交換を行うものが提案されている(特許文献2参照)。   Also, a system dedicated to medical institutions that performs cooperative exchange of medical data based on MQ has been proposed (see Patent Document 2).

特開2003−022251号公報JP 2003-022251 A 特表2008−527519号公報JP 2008-527519 A

しかしながら、従来のアプリケーション連携システムは、メッセージとキューを用いてアプリケーション等のタスクや機器を連携させるものであるため、システムベンダー等が特定のユースケースに特化して固定的に構築しなければならないという問題があった。   However, since the conventional application linkage system links tasks and devices such as applications using messages and queues, system vendors must specially construct specific use cases. There was a problem.

また、特定のユースケースに特化したシステムは、システムベンダーがブラックボックス化してユーザに提供するため、ユーザがその後の拡張や修正を行うことができないだけでなく、システムベンダーの倒産等により、保守や拡張の可能性が消滅してしまうリスクがあった。   In addition, because the system vendor specializes in a specific use case, the system vendor makes it a black box and provides it to the user. There was a risk that the possibility of expansion would disappear.

このように、MQによるアプリケーション連携では、高い処理性能の実現やソフトウェア設計のし易さという利点はあるが、システムを実際に操作するユーザによっては、今までのメインフレーム、サーバ、仮想環境等のシステムと同様、ユースケースの変更等が困難であるという問題があった。
そのため、ユーザ自身が簡単にタスクの連携を含む処理手順を修正可能とすることが望まれていた。
As described above, application cooperation by MQ has advantages such as high processing performance and ease of software design, but depending on the user who actually operates the system, the mainframe, server, virtual environment, etc. Like the system, there was a problem that it was difficult to change use cases.
Therefore, it has been desired that the user himself / herself can easily correct the processing procedure including task cooperation.

本発明は、上記の従来技術における問題に鑑みてなされたものであって、タスク間の連携を汎用的かつ明示的に記述可能とし、タスクの記述を省略した場合にも容易にタスクを補完可能とすることを課題とする。   The present invention has been made in view of the above-described problems in the prior art, and enables general and explicit description of cooperation between tasks, and can easily complement tasks even when description of tasks is omitted. The problem is to do.

上記課題を解決するために、本発明の情報処理装置は、階層的な構造を記述可能な記述言語でタスクの実行順序を記述した記述文書に基づいて、補完位置と補完候補とを対応付けたテーブルを作成する作成手段と、前記作成されたテーブルに基づいて、処理対象の記述文書において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する補完手段と、を備える。 In order to solve the above problems, an information processing apparatus of the present invention, a hierarchical structure based on the descriptive document describing the execution sequence of tasks in describable description language, corresponding to the completion candidates and complementary position Creating means for creating an attached table, and complementing means for complementing a complementing candidate associated with the complementing position to a complementing position whose description is omitted in the processing target description document based on the created table And comprising.

本発明によれば、タスク間の連携を汎用的かつ明示的に記述することができ、タスクの記述を省略した場合にも容易にタスクを補完することができる。   According to the present invention, cooperation between tasks can be described generically and explicitly, and tasks can be easily supplemented even when description of the task is omitted.

本発明の実施の形態における情報処理装置の機能的構成を示すブロック図である。It is a block diagram which shows the functional structure of the information processing apparatus in embodiment of this invention. 処理パターン毎のタスクのタイプを示す図である。It is a figure which shows the type of task for every process pattern. (a)は、タスクの階層構造を示すイメージ図である。(b)は、XMLによるタスクの記述例である。(A) is an image figure which shows the hierarchical structure of a task. (B) is an example of a task description in XML. (a)は、タスクの入出力データの対応関係を示すイメージ図である。(b)は、データ交換の情報を記述したストーリーの例である。(A) is an image figure which shows the correspondence of the input / output data of a task. (B) is an example of a story describing data exchange information. 「社員照会」というタスクにおける入力データが固定の場合のデータ交換の情報を記述したストーリーの例である。This is an example of a story describing data exchange information when the input data in the task “employee inquiry” is fixed. 一部を省略してデータ交換の情報を記述したストーリーの例である。This is an example of a story that omits a part and describes data exchange information. 履歴テーブルの例である。It is an example of a history table. レコメンドテーブルの例である。It is an example of a recommendation table. 履歴テーブル作成処理を示すフローチャートである。It is a flowchart which shows a history table creation process. トラバース処理を示すフローチャートである。It is a flowchart which shows a traverse process. ノード処理を示すフローチャートである。It is a flowchart which shows a node process. (a)は、「社員照会A」というストーリーの理想的な構成例である。(b)は、「要求」、「出力」のみを含む「社員照会B」というストーリーの構成例である。(c)は、「要求」、「社員検索」のみを含む「社員照会C」というストーリーの構成例である。(A) is an ideal structural example of the story of "employee inquiry A". (B) is a configuration example of a story “employee inquiry B” including only “request” and “output”. (C) is a configuration example of a story “employee inquiry C” including only “request” and “employee search”. (a)は、正規化前の多次元ベクトル表の例である。(b)は、各タスクを2次元のストーリーのベクトルとして表したイメージ図である。(A) is an example of the multidimensional vector table before normalization. (B) is an image diagram representing each task as a two-dimensional story vector. (a)は、正規化後の多次元ベクトル表の例である。(b)は、図13(b)に示すベクトルを正規化したものである。(A) is an example of the multidimensional vector table after normalization. (B) is obtained by normalizing the vector shown in FIG. レコメンドテーブル作成処理を示すフローチャートである。It is a flowchart which shows a recommendation table creation process. 多次元ベクトル表の作成処理を示すフローチャートである。It is a flowchart which shows the preparation process of a multidimensional vector table. コサイン類似度算出及びレコメンドテーブルへの書き込み処理を示すフローチャートである。It is a flowchart which shows the cosine similarity calculation and the write-in process to a recommendation table. ストーリー補完処理を示すフローチャートである。It is a flowchart which shows a story complement process. レコメンドテーブルによる補完処理を示すフローチャートである。It is a flowchart which shows the complement process by a recommendation table. レコメンド補完部品処理を示すフローチャートである。It is a flowchart which shows a recommendation complementing part process. レコメンド用トラバース処理を示すフローチャートである。It is a flowchart which shows the traverse process for recommendation. 履歴テーブルによる補完処理を示すフローチャートである。It is a flowchart which shows the complementation process by a history table. 履歴補完部品処理を示すフローチャートである。It is a flowchart which shows a log | history complement component process. 履歴用トラバース処理を示すフローチャートである。It is a flowchart which shows the traverse process for log | history. ストーリーの補完例を示す図である。It is a figure which shows the example of a complement of a story.

以下、本発明に係る情報処理装置の実施の形態について、図面を参照して説明する。なお、本発明は、図示例に限定されるものではない。   Embodiments of an information processing apparatus according to the present invention will be described below with reference to the drawings. The present invention is not limited to the illustrated example.

図1は、本実施の形態における情報処理装置10の機能的構成を示すブロック図である。情報処理装置10は、例えば、パーソナルコンピュータ等により構成される。
図1に示すように、情報処理装置10は、作成手段、補完手段としてのCPU(Central Processing Unit)11と、ROM(Read Only Memory)12と、RAM(Random Access Memory)13と、操作部14と、表示部15と、通信部16と、記憶部17と、を備える。
FIG. 1 is a block diagram illustrating a functional configuration of the information processing apparatus 10 according to the present embodiment. The information processing apparatus 10 is configured by, for example, a personal computer.
As shown in FIG. 1, the information processing apparatus 10 includes a CPU (Central Processing Unit) 11, a ROM (Read Only Memory) 12, a RAM (Random Access Memory) 13, and an operation unit 14. A display unit 15, a communication unit 16, and a storage unit 17.

CPU11は、情報処理装置10の各部の処理動作を統括的に制御する。具体的には、CPU11は、ROM12に記憶されている各種プログラムを読み出してRAM13に展開し、当該プログラムとの協働により各種処理を行う。   The CPU 11 comprehensively controls the processing operation of each unit of the information processing apparatus 10. Specifically, the CPU 11 reads out various programs stored in the ROM 12, develops them in the RAM 13, and performs various processes in cooperation with the programs.

ROM12は、各種プログラム及び各種データを記憶する読み出し専用の半導体メモリである。例えば、ROM12には、履歴テーブル作成プログラム121、レコメンドテーブル作成プログラム122、ストーリー補完プログラム123が記憶されている。   The ROM 12 is a read-only semiconductor memory that stores various programs and various data. For example, the ROM 12 stores a history table creation program 121, a recommendation table creation program 122, and a story complement program 123.

RAM13は、揮発性のメモリである。RAM13には、実行される各種プログラムやこれら各種プログラムに係るデータ等が格納される。   The RAM 13 is a volatile memory. The RAM 13 stores various programs to be executed and data related to these various programs.

操作部14は、ユーザによる操作指示を受け付ける機能部である。操作部14は、カーソルキー、文字入力キー及び各種機能キー等を備えたキーボードと、マウス等のポインティングデバイスを備えて構成され、キーボードに対するキー操作やマウス操作により入力された操作信号をCPU11に出力する。   The operation unit 14 is a functional unit that receives an operation instruction from a user. The operation unit 14 includes a keyboard having cursor keys, character input keys, various function keys, and the like, and a pointing device such as a mouse, and outputs operation signals input by keyboard operations and mouse operations to the CPU 11. To do.

表示部15は、LCD(Liquid Crystal Display)等により構成され、CPU11からの表示制御信号に従って画面表示を行う。   The display unit 15 is configured by an LCD (Liquid Crystal Display) or the like, and performs screen display according to a display control signal from the CPU 11.

通信部16は、ネットワークインターフェース等により構成され、通信ネットワークを介して接続された外部機器との間でデータの送受信を行う。   The communication unit 16 is configured by a network interface or the like, and transmits and receives data to and from an external device connected via a communication network.

記憶部17は、ハードディスクや不揮発性メモリ等により構成され、情報を読み出し及び書き込み可能に記憶する。記憶部17には、複数の記述文書としてのストーリー171、複数のアプリケーションプログラム(以下、「アプリケーション」という。)APが記憶されている。   The storage unit 17 is configured by a hard disk, a nonvolatile memory, or the like, and stores information so as to be readable and writable. The storage unit 17 stores a story 171 as a plurality of description documents and a plurality of application programs (hereinafter referred to as “applications”) AP.

ストーリー171は、階層的な構造を記述可能な記述言語でタスクの実行順序を記述したものである。具体的には、階層的な構造を記述可能な記述言語としてXML(Extensible Markup Language)言語を用い、ストーリー171を構成する要素をタスクとして、ストーリー171をタスクの階層で記述する。タスクとしてアプリケーションAPが指定された場合には、ストーリー171を実行する際に、指定されたアプリケーションAPが呼び出され、アプリケーションAPに対応する処理が実行される。ストーリー171では、例えば、連携する複数のアプリケーションAPを利用するフロー(処理手順)が記述される。   The story 171 describes the task execution order in a description language that can describe a hierarchical structure. Specifically, XML (Extensible Markup Language) language is used as a description language capable of describing a hierarchical structure, and the elements constituting the story 171 are described as tasks, and the story 171 is described in a task hierarchy. When the application AP is designated as a task, the designated application AP is called when the story 171 is executed, and processing corresponding to the application AP is executed. In the story 171, for example, a flow (processing procedure) that uses a plurality of linked application APs is described.

タスクは、連携するアプリケーションAPをMQの処理パターンに基づいて分類したタイプを属性に持つ。タスクは、データを連携する際のデータの送信側と受信側について、それぞれ規定される。   The task has, as an attribute, a type in which the cooperating application AP is classified based on the MQ processing pattern. A task is defined for each of a data transmission side and a data reception side when data is linked.

図2に、処理パターン毎に、処理パターンが用いられる実際の業務の例、処理パターンに含まれるタスクのタイプ、タスクの定義を示す。例えば、「オンライン処理:一方向型」には、作成したデータを送信する「送信」タイプのタスクと、データを受信し処理する「受信」タイプのタスクと、が含まれる。   FIG. 2 shows, for each processing pattern, an actual business example in which the processing pattern is used, a task type included in the processing pattern, and a task definition. For example, “online processing: one-way type” includes a “send” type task for transmitting the created data and a “receive” type task for receiving and processing the data.

データの送信側と受信側におけるタスクの組を正確に表すため、送信側のタスクをXMLノードで表し、そのノードに受信側のタスクをネストすることで、タスクを階層的に表す。また、タスクをネストせずに並列に配置することは、順次処理することを表す。   In order to accurately represent a set of tasks on the data transmission side and data reception side, the task on the transmission side is represented by an XML node, and the tasks on the reception side are nested in that node, thereby representing the tasks hierarchically. Arranging tasks in parallel without nesting represents sequential processing.

図3(a)は、タスクの階層構造を示すイメージ図である。主タスクA1には従タスクB1がネストされ、主タスクA2には従タスクB2がネストされている。主タスクA2は、主タスクA1の後に行われる処理を示している。   FIG. 3A is an image diagram showing a hierarchical structure of tasks. A subtask B1 is nested in the main task A1, and a subtask B2 is nested in the main task A2. The main task A2 indicates processing performed after the main task A1.

図3(b)に、XMLによるタスクの記述例を示す。「要求」タイプの「社員照会」という主タスクA3に、「応答」タイプの「社員検索」という従タスクB3がネストされている。そして、主タスクA3の後に、「送信」タイプの「社員通知」という主タスクA4が並列に記述され、この「社員通知」という主タスクA4に、「受信」タイプの「通知送付」という従タスクB4がネストされている。   FIG. 3B shows an example of task description in XML. A subtask B3 called "Employee search" of "Response" type is nested in the main task A3 of "Request employee" type "Employee inquiry". Then, after the main task A3, a main task A4 of “send notification” type “employee notification” is described in parallel, and a subtask of “reception” type “notification sending” is added to the main task A4 of “employee notification”. B4 is nested.

「社員照会」は、指定された社員を照会するための「要求」型アプリケーションである。
「社員検索」は、予め社員情報が記憶されているデータベース等により、社員に関する情報を検索するための「応答」型アプリケーションである。
「社員通知」は、指定された社員を通知するための「送信」型アプリケーションである。
「通知送付」は、指定された社員に対して所定の通知を送付するための「受信」型アプリケーションである。
“Employee inquiry” is a “request” type application for inquiring a specified employee.
The “employee search” is a “response” type application for searching for information related to employees using a database or the like in which employee information is stored in advance.
“Employee notification” is a “send” type application for notifying a specified employee.
“Notification sending” is a “reception” type application for sending a predetermined notice to a designated employee.

タスクは、それぞれの階層下に入力データと出力データを記述することができる。ネストされるタスクにおいては、上位階層のタスクの出力データが、下位階層のタスクの入力データとなる。それぞれのタスクのデータは、任意の構造であるので、タスク間で同じデータを用いる場合には、その対応関係を記述する必要がある。   A task can describe input data and output data under each hierarchy. In the nested task, the output data of the upper layer task becomes the input data of the lower layer task. Since the data of each task has an arbitrary structure, when the same data is used between tasks, it is necessary to describe the corresponding relationship.

図4(a)に、タスクの入出力データの対応関係を示す。「要求」タイプの上位階層のタスクA5の要求データが、「応答」タイプの下位階層のタスクB5の入力データとなる。また、「応答」タイプの下位階層のタスクB5の出力データが、「要求」タイプの上位階層のタスクA5の出力データとなる。
データの対応関係をストーリー171内で厳密に記述することで、タスクの実行時に、対応関係に基づいてデータを参照することができる。
FIG. 4A shows the correspondence between input / output data of tasks. The request data of the upper-level task A5 of the “request” type becomes input data of the lower-level task B5 of the “response” type. Further, the output data of the lower-level task B5 of the “response” type becomes the output data of the higher-level task A5 of the “request” type.
By strictly describing the data correspondence in the story 171, the data can be referred to based on the correspondence when the task is executed.

図4(b)は、データ交換の情報を記述したストーリー(XML文書)の例である。
「社員照会」は、社員番号等により特定される社員を照会するためのタスク(アプリケーションAP)である。社員番号は、予め社員番号が格納されたファイルからデータが入力されるか、あるいは、データ(社員番号)の入力が要求され、ユーザによって手入力される。
「社員検索」は、入力された社員番号等に対して、指定された出力内容(社員番号、社員名等)に応じて、社員番号等に対応する社員の情報を出力するためのタスク(アプリケーションAP)である。
FIG. 4B is an example of a story (XML document) describing data exchange information.
“Employee inquiry” is a task (application AP) for inquiring an employee specified by an employee number or the like. The employee number is input from a file in which the employee number is stored in advance, or input of data (employee number) is requested and manually input by the user.
“Employee search” is a task (application) for outputting employee information corresponding to the employee number etc. according to the specified output contents (employee number, employee name, etc.) for the entered employee number etc. AP).

ノードC1には、「社員検索」というタスクの入力データとして、「社員番号」が用いられることが記述されている。そして、その「社員番号」は、ref属性により、ノードD1の「社員番号」を参照するよう指定されている。データ交換に用いられるそれぞれの情報を階層的に表すと、参照元(ref属性を含むノード)は「/社員照会/社員検索/入力/社員番号」であり、参照先(ref値により指定された参照先)は「/社員照会/要求/社員番号」である。   The node C1 describes that “employee number” is used as input data for the task “employee search”. The “employee number” is specified by the ref attribute to refer to the “employee number” of the node D1. When each information used for data exchange is represented hierarchically, the reference source (node including the ref attribute) is “/ employee inquiry / employee search / input / employee number”, and the reference destination (specified by the ref value) Reference destination) is “/ employee inquiry / request / employee number”.

同様に、ノードC2の「/社員照会/出力/社員番号」の値として、ノードD2の「/社員照会/社員検索/出力/社員番号」の値が用いられる。また、ノードC3の「/社員照会/出力/社員名」の値として、ノードD3の「/社員照会/社員検索/出力/社員名」の値が用いられる。   Similarly, the value of “/ employee inquiry / employee search / output / employee number” of node D2 is used as the value of “/ employee inquiry / output / employee number” of node C2. Further, the value of “/ employee inquiry / employee search / output / employee name” of node D3 is used as the value of “/ employee inquiry / output / employee name” of node C3.

図5は、「社員照会」というタスクにおける入力データが固定の場合のデータ交換の情報を記述したストーリー(XML文書)の例である。ノードD4には、「社員照会」というタスクの入力データとして、「c:/temp/社員番号ファイル.txt」という名称のファイルが用いられることが記述されている。ノードC4には、「社員検索」というタスクの入力データとして、「社員番号」が用いられることが記述されている。そして、その「社員番号」は、ref属性により、ノードD4の「ファイル」を参照するよう指定されている。すなわち、「/社員照会/社員検索/入力/社員番号」の値として、「/社員照会/入力/ファイル」の値が参照されることになる。   FIG. 5 is an example of a story (XML document) describing data exchange information when the input data in the task “employee inquiry” is fixed. The node D4 describes that a file named “c: / temp / employee number file.txt” is used as input data for the task “employee inquiry”. The node C4 describes that “employee number” is used as input data for the task “employee search”. The “employee number” is designated to refer to the “file” of the node D4 by the ref attribute. That is, the value of “/ employee inquiry / input / file” is referred to as the value of “/ employee inquiry / employee search / input / employee number”.

図6は、一部を省略してデータ交換の情報を記述したストーリー(XML文書)の例である。ノードC5では、「社員照会」というタスクの下位階層のタスクである「社員検索」というタスクにおいて、入力データとして使用される「社員番号」の記述が省略されている。本発明は、図6に示すノードC5のように一部が省略された記述から、図4(b)のノードC1、又は、図5のノードC4のような記述に補完することを目的としている。   FIG. 6 shows an example of a story (XML document) in which data exchange information is described with a part omitted. In the node C5, the description of “employee number” used as input data is omitted in the task “employee search” which is a lower-level task of the task “employee inquiry”. An object of the present invention is to supplement a description such as the node C1 of FIG. 4B or the description of the node C4 of FIG. .

また、記憶部17には、履歴テーブルT1、レコメンドテーブルT2が記憶される。
図7は、履歴テーブルT1の例である。履歴テーブルT1は、索引パス(補完位置)に対して、参照先(補完候補)と、参照回数と、が対応付けられている。索引パスは、ストーリー171内で、ref属性により参照先が指定されているノードを示す情報である。参照先は、ref値により指定された参照先を示す情報である。参照回数は、該当する索引パスに対して参照先が参照された回数である。
The storage unit 17 stores a history table T1 and a recommendation table T2.
FIG. 7 is an example of the history table T1. In the history table T1, the reference destination (complementation candidate) and the reference count are associated with the index path (complementation position). The index path is information indicating a node whose reference destination is specified by the ref attribute in the story 171. The reference destination is information indicating the reference destination designated by the ref value. The reference count is the number of times the reference destination is referred to the corresponding index path.

図8は、レコメンドテーブルT2の例である。レコメンドテーブルT2は、索引パス(補完位置)に対して、補完候補が対応付けられている。索引パスは、ストーリー171内で、下位階層のタスクの記述が省略された上位階層のタスクを示す情報である。補完候補は、索引パスで示された上位階層のタスクと、その直下の下位階層のタスクと、の階層関係を示す情報である。   FIG. 8 is an example of the recommendation table T2. In the recommendation table T2, complement candidates are associated with index paths (complement positions). The index path is information indicating a higher-level task in which the description of the lower-level task is omitted in the story 171. The complement candidate is information indicating a hierarchical relationship between a task in the upper hierarchy indicated by the index path and a task in the lower hierarchy immediately below it.

CPU11は、複数のストーリー171に基づいて、補完位置と補完候補とを対応付けた履歴テーブルT1、レコメンドテーブルT2を作成する。   Based on the plurality of stories 171, the CPU 11 creates a history table T1 and a recommendation table T2 in which complementary positions and complementary candidates are associated with each other.

具体的に、CPU11は、複数のストーリー171からタスク間のデータの参照関係を抽出し、複数のストーリー171に含まれる参照元の記述データと参照先の記述データとをそれぞれ階層的に表して対応付けた履歴テーブルT1を作成する。   Specifically, the CPU 11 extracts the reference relationship of data between tasks from a plurality of stories 171, and the reference source description data and the reference destination description data included in the plurality of stories 171 are represented hierarchically and correspond to each other. The attached history table T1 is created.

また、CPU11は、複数のストーリー171から上位階層のタスクと当該上位階層の下位階層のタスクとを対応付けたレコメンドテーブルT2を作成する。より詳細には、CPU11は、複数のストーリー171において対応するタスクの下位階層に含まれる複数のタスクを、対応するタスクのベクトルとして扱い、複数のタスク間のコサイン類似度を算出する。「対応するタスク」とは、相互に類似する処理内容を含むタスク(ストーリー171自体を含む。)である。例えば、同一のアプリケーションAPを用いたタスク同士で、あるタスクに含まれる下位階層のタスクが他のタスクには含まれていない場合に、「対応するタスク」に該当する。CPU11は、算出されたコサイン類似度が所定の値以上のタスクを下位階層のタスクとし、対応するタスクを上位階層のタスクとして、レコメンドテーブルT2を作成する。   In addition, the CPU 11 creates a recommendation table T2 in which upper level tasks and lower level tasks of the upper level are associated with each other from the plurality of stories 171. More specifically, the CPU 11 treats a plurality of tasks included in a lower hierarchy of a corresponding task in the plurality of stories 171 as a corresponding task vector, and calculates a cosine similarity between the plurality of tasks. The “corresponding task” is a task (including the story 171 itself) including processing contents similar to each other. For example, among tasks using the same application AP, when a lower-level task included in a certain task is not included in other tasks, it corresponds to “corresponding task”. The CPU 11 creates a recommendation table T2 with a task whose calculated cosine similarity is equal to or higher than a predetermined value as a lower layer task and a corresponding task as an upper layer task.

CPU11は、作成された履歴テーブルT1、レコメンドテーブルT2に基づいて、処理対象のストーリー171において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する。   Based on the created history table T1 and recommendation table T2, the CPU 11 supplements the complement candidate associated with the complement position at the complement position that is not described in the story 171 to be processed.

具体的に、CPU11は、履歴テーブルT1に基づいて、処理対象のストーリー171に含まれる参照元の記述データに、参照先の記述データを補完する。   Specifically, based on the history table T1, the CPU 11 supplements the description data of the reference destination with the description data of the reference source included in the story 171 to be processed.

また、CPU11は、レコメンドテーブルT2に基づいて、処理対象のストーリー171に含まれる上位階層のタスクの下位階層に、下位階層のタスクを補完する。   Further, the CPU 11 complements the lower-level task to the lower level of the higher-level task included in the story 171 to be processed based on the recommendation table T2.

(履歴テーブル作成処理)
図9は、履歴テーブル作成処理を示すフローチャートである。この処理は、これまでに蓄積された各ストーリー171からタスク間のデータの参照関係のパターンを抽出する処理であり、ストーリー171単位で実行される。この処理は、CPU11と履歴テーブル作成プログラム121との協働によるソフトウェア処理によって実現される。
(History table creation process)
FIG. 9 is a flowchart showing history table creation processing. This process is a process for extracting a pattern of data reference relation between tasks from each story 171 accumulated so far, and is executed in units of stories 171. This processing is realized by software processing by the cooperation of the CPU 11 and the history table creation program 121.

まず、CPU11は、ストーリー171からルートノードを取得する(ステップS1)。
次に、CPU11は、ステップS1で取得したノードのパスを取得する(ステップS2)。ノードのパスは、処理対象ノードを階層的に表したものである。CPU11は、取得したノードのパスをRAM13に格納する。
次に、CPU11は、ステップS1で取得したルートノードに対して、トラバース処理を行う(ステップS3)。
First, the CPU 11 acquires a root node from the story 171 (step S1).
Next, the CPU 11 acquires the node path acquired in step S1 (step S2). The node path represents the processing target node hierarchically. The CPU 11 stores the acquired node path in the RAM 13.
Next, the CPU 11 performs a traverse process on the root node acquired in step S1 (step S3).

ここで、図10を参照して、トラバース処理について説明する。
CPU11は、処理対象ノードの下位階層のノードである子ノードの数を数える(ステップS11)。
次に、CPU11は、未処理の子ノードがあるか否かを判断し(ステップS12)、未処理の子ノードがある場合には(ステップS12;YES)、未処理の子ノードのうちいずれか一つのノードを取得する(ステップS13)。
次に、CPU11は、テップS13で取得したノードに対して、ノード処理を行う(ステップS14)。
Here, the traverse process will be described with reference to FIG.
The CPU 11 counts the number of child nodes that are lower-level nodes of the processing target node (step S11).
Next, the CPU 11 determines whether or not there is an unprocessed child node (step S12). If there is an unprocessed child node (step S12; YES), any of the unprocessed child nodes is determined. One node is acquired (step S13).
Next, the CPU 11 performs node processing on the node acquired in step S13 (step S14).

ノード処理では、図11に示すように、CPU11は、処理対象ノードのパスを取得する(ステップS21)。CPU11は、取得したノードのパスをRAM13に格納する。
次に、CPU11は、処理対象ノードにref属性があるか否かを判断する(ステップS22)。処理対象ノードにref属性がある場合には(ステップS22;YES)、CPU11は、処理対象ノードからref値を取得する(ステップS23)。CPU11は、取得したref値をRAM13に格納する。
In the node processing, as shown in FIG. 11, the CPU 11 acquires the path of the processing target node (step S21). The CPU 11 stores the acquired node path in the RAM 13.
Next, the CPU 11 determines whether or not the processing target node has a ref attribute (step S22). When the processing target node has the ref attribute (step S22; YES), the CPU 11 acquires the ref value from the processing target node (step S23). The CPU 11 stores the acquired ref value in the RAM 13.

次に、CPU11は、ノードのパス及びref値に基づいて、履歴テーブルT1への書き込みを行う(ステップS24)。具体的には、履歴テーブルT1の索引パスには、ステップS21で取得したノードのパスを書き込み、参照先には、ステップS23で取得したref値を書き込み、参照回数には1を書き込む。なお、ノードのパスとref値の組み合わせが既に履歴テーブルT1に存在する場合には、新たにノードのパスとref値の書き込みはせず、履歴テーブルT1内のノードのパスとref値の組み合わせに対応するレコードの参照回数に1を加える。   Next, the CPU 11 writes to the history table T1 based on the node path and the ref value (step S24). Specifically, the path of the node acquired in step S21 is written in the index path of the history table T1, the ref value acquired in step S23 is written in the reference destination, and 1 is written in the reference count. If the combination of the node path and the ref value already exists in the history table T1, the node path and the ref value are not newly written, and the combination of the node path and the ref value in the history table T1 is used. Add 1 to the reference count of the corresponding record.

図7の履歴テーブルT1に示すように、例えば、図4(b)に示すストーリーからは、索引パス「/社員照会/社員検索/入力/社員番号(ノードC1)」に対して、参照先「/社員照会/要求/社員番号(ノードD1)」が書き込まれる。また、索引パス「/社員照会/出力/社員番号(ノードC2)」に対して、参照先「/社員照会/社員検索/出力/社員番号(ノードD2)」が書き込まれる。また、索引パス「/社員照会/出力/社員名(ノードC3)」に対して、参照先「/社員照会/社員検索/出力/社員名(ノードD3)」が書き込まれる。   As shown in the history table T1 of FIG. 7, for example, from the story shown in FIG. 4B, the reference path “/ employee inquiry / employee search / input / employee number (node C1)” is referred to as “ / Employee inquiry / Request / Employee number (node D1) "is written. Also, the reference destination “/ employee inquiry / employee search / output / employee number (node D2)” is written to the index path “/ employee inquiry / output / employee number (node C2)”. Further, the reference destination “/ employee inquiry / employee search / output / employee name (node D3)” is written to the index path “/ employee inquiry / output / employee name (node C3)”.

同様に、図5に示すストーリーからは、索引パス「/社員照会/社員検索/入力/社員番号(ノードC4)」に対して、参照先「/社員照会/入力/ファイル(ノードD4)」が書き込まれる。索引パス「/社員照会/出力/社員番号」に対する参照先、索引パス「/社員照会/出力/社員名」に対する参照先については、図4(b)に示すストーリーと同様であるから、参照回数に1が加えられ、それぞれ2回となっている。   Similarly, from the story shown in FIG. 5, the reference destination “/ employee inquiry / input / file (node D4)” is associated with the index path “/ employee inquiry / employee search / input / employee number (node C4)”. Written. The reference destination for the index path “/ employee inquiry / output / employee number” and the reference destination for the index path “/ employee inquiry / output / employee name” are the same as the story shown in FIG. 1 has been added to the list twice.

ステップS24の後、又は、ステップS22において、処理対象ノードにref属性がない場合には(ステップS22;NO)、ノード処理が終了する。   After step S24 or when the processing target node does not have the ref attribute in step S22 (step S22; NO), the node processing ends.

次に、図10に戻り、CPU11は、ステップS13で取得したノードに対して、トラバース処理(図10参照)を行う(ステップS15)。このように、順次下位階層のノードについて、処理が繰り返される。
ステップS15の後、ステップS12に戻り、他の子ノードについて、処理が繰り返される。
ステップS12において、未処理の子ノードがない場合には(ステップS12;NO)、トラバース処理が終了する。
Next, returning to FIG. 10, the CPU 11 performs a traverse process (see FIG. 10) on the node acquired in step S13 (step S15). In this way, the process is sequentially repeated for the nodes in the lower hierarchy.
After step S15, the process returns to step S12, and the process is repeated for the other child nodes.
In step S12, when there is no unprocessed child node (step S12; NO), the traverse process ends.

図9のステップS3において、ルートノードに対するトラバース処理が終了すると、履歴テーブル作成処理が終了する。   In step S3 in FIG. 9, when the traversing process for the root node is completed, the history table creating process is terminated.

(レコメンドテーブル作成処理)
次に、レコメンドテーブルT2の作成について説明する。
図12(a)に、「社員照会A」というストーリーの構成を示す。「社員照会A」は、「要求」、「社員検索」、「出力」というタスクから構成され、「社員照会」というストーリーの理想的な構成となっている。ただし、情報処理装置10の記憶部17には、「社員照会A」は存在しないこととする。
(Recommendation table creation process)
Next, creation of the recommendation table T2 will be described.
FIG. 12A shows the structure of the story “Employee inquiry A”. “Employee inquiry A” is composed of tasks “request”, “employee search”, and “output”, and has an ideal structure of a story “employee inquiry”. However, it is assumed that “employee inquiry A” does not exist in the storage unit 17 of the information processing apparatus 10.

図12(b)に、「社員照会B」というストーリーの構成を示す。「社員照会B」は、「要求」、「出力」というタスクから構成され、「社員検索」というタスクを含まない。
図12(c)に、「社員照会C」というストーリーの構成を示す。「社員照会C」は、「要求」、「社員検索」というタスクから構成され、「出力」というタスクを含まない。
例えば、「社員照会B」と「社員照会C」を対応するタスクとして、レコメンドテーブルT2を作成する。
FIG. 12B shows the structure of the story “Employee inquiry B”. “Employee inquiry B” is composed of tasks “request” and “output”, and does not include a task “employee search”.
FIG. 12C shows a story structure of “employee inquiry C”. “Employee inquiry C” includes tasks “request” and “employee search”, and does not include a task “output”.
For example, the recommendation table T <b> 2 is created with tasks corresponding to “employee inquiry B” and “employee inquiry C”.

図13(a)に、正規化前の多次元ベクトル表L1の例を示す。多次元ベクトル表L1は、列にストーリーをとり、行にタスクをとって、各タスクをN次元のストーリー(Nはストーリーの数)のベクトルとして表したものである。多次元ベクトル表L1には、各ストーリーに各タスクが含まれるか否かが示されており、多次元ベクトル表L1の各ストーリーに対して、該当するタスクが含まれている場合には「1」とし、該当するタスクが含まれていない場合には「0」とする。なお、本実施の形態では、「社員照会B」、「社員照会C」という二つのストーリーを軸とした2次元のベクトルを用いた場合を例示しているが、より多くのストーリーを用いる場合には、多次元ベクトル表L1の列もストーリーの数Nに応じてN列となり、各タスクはN次元のベクトルとして表されることになる。   FIG. 13A shows an example of the multidimensional vector table L1 before normalization. The multi-dimensional vector table L1 represents each task as a vector of N-dimensional stories (N is the number of stories), with stories in columns and tasks in rows. The multidimensional vector table L1 indicates whether or not each task is included in each story. If each task in the multidimensional vector table L1 includes a corresponding task, “1” is displayed. ", Or" 0 "if the corresponding task is not included. In this embodiment, a case where a two-dimensional vector centering on two stories of “employee inquiry B” and “employee inquiry C” is illustrated, but when more stories are used. The number of columns in the multidimensional vector table L1 also becomes N columns according to the number N of stories, and each task is represented as an N-dimensional vector.

図13(b)は、「社員照会B」、「社員照会C」を軸にとって、図13(a)に示した各タスクを2次元のストーリーのベクトルとして表したイメージ図である。図13(b)の例では、「要求」というタスクは、(社員照会B,社員照会C)=(1,1)というベクトルで表され、「社員検索」というタスクは、(社員照会B,社員照会C)=(0,1)というベクトルで表され、「出力」というタスクは、(社員照会B,社員照会C)=(1,0)というベクトルで表される。   FIG. 13B is an image diagram representing each task shown in FIG. 13A as a two-dimensional story vector with “employee inquiry B” and “employee inquiry C” as axes. In the example of FIG. 13B, the task “request” is represented by a vector (employee inquiry B, employee inquiry C) = (1, 1), and the task “employee search” is represented by (employee inquiry B, The employee inquiry C) = (0,1) is represented by a vector, and the task “output” is represented by a vector (employee inquiry B, employee inquiry C) = (1,0).

図14(a)は、図13(a)に示す多次元ベクトル表L1に対し、各ベクトルの長さが1となるように正規化した正規化後の多次元ベクトル表L2の例である。
図14(b)は、図13(b)に示すベクトルを正規化したものである。
FIG. 14A is an example of a normalized multidimensional vector table L2 in which the length of each vector is normalized to 1 with respect to the multidimensional vector table L1 shown in FIG.
FIG. 14B is a normalized version of the vector shown in FIG.

図15は、レコメンドテーブル作成処理を示すフローチャートである。この処理は、これまでに蓄積されたストーリー171から階層関係のパターンを抽出する処理である。この処理は、CPU11とレコメンドテーブル作成プログラム122との協働によるソフトウェア処理によって実現される。   FIG. 15 is a flowchart showing a recommendation table creation process. This process is a process of extracting a hierarchical relationship pattern from the story 171 accumulated so far. This processing is realized by software processing by the cooperation of the CPU 11 and the recommendation table creation program 122.

まず、CPU11は、多次元ベクトル表の作成処理を行う(ステップS31)。   First, the CPU 11 performs a multidimensional vector table creation process (step S31).

ここで、図16を参照して、多次元ベクトル表の作成処理について説明する。
CPU11は、記憶部17に記憶されているストーリー171のうち、未処理のストーリー171があるか否かを判断する(ステップS41)。未処理のストーリー171がある場合には(ステップS41;YES)、CPU11は、この未処理のストーリー171を多次元ベクトル表L1(図13(a)参照)の列に追加する(ステップS42)。
Here, with reference to FIG. 16, a process of creating a multidimensional vector table will be described.
The CPU 11 determines whether there is an unprocessed story 171 among the stories 171 stored in the storage unit 17 (step S41). If there is an unprocessed story 171 (step S41; YES), the CPU 11 adds the unprocessed story 171 to the column of the multidimensional vector table L1 (see FIG. 13A) (step S42).

次に、CPU11は、処理中のストーリー171内に未処理のタスクがあるか否かを判断する(ステップS43)。未処理のタスクがある場合には(ステップS43;YES)、CPU11は、この未処理のタスクを処理対象タスクとして、多次元ベクトル表L1の行に処理対象タスクと同じタスクの項目があるか否かを判断する(ステップS44)。   Next, the CPU 11 determines whether or not there is an unprocessed task in the story 171 being processed (step S43). If there is an unprocessed task (step S43; YES), the CPU 11 sets this unprocessed task as a processing target task, and whether there is an item of the same task as the processing target task in the row of the multidimensional vector table L1. Is determined (step S44).

多次元ベクトル表L1の行に処理対象タスクと同じタスクの項目がない場合には(ステップS44;NO)、CPU11は、多次元ベクトル表L1の行に項目(処理対象タスク)を追加する(ステップS45)。   When there is no item of the same task as the processing target task in the row of the multidimensional vector table L1 (step S44; NO), the CPU 11 adds an item (processing target task) to the row of the multidimensional vector table L1 (step S44). S45).

ステップS45の後、又は、ステップS44において、多次元ベクトル表L1の行に処理対象タスクと同じタスクの項目がある場合には(ステップS44;YES)、CPU11は、多次元ベクトル表L1の列(ストーリー)と行(タスク)の交わる位置の値を1にする(ステップS46)。そして、ステップS43に戻り、処理中のストーリー171内の他のタスクについて、処理が繰り返される。   After step S45 or in step S44, if there is an item of the same task as the processing target task in the row of the multidimensional vector table L1 (step S44; YES), the CPU 11 selects a column ( The value of the position where the story) and the line (task) intersect is set to 1 (step S46). And it returns to step S43 and a process is repeated about the other task in the story 171 in process.

ステップS43において、未処理のタスクがない場合には(ステップS43;NO)、ステップS41に戻り、他のストーリー171について、処理が繰り返される。   If there is no unprocessed task in step S43 (step S43; NO), the process returns to step S41, and the process is repeated for the other stories 171.

ステップS41において、未処理のストーリー171がない場合には(ステップS41;NO)、CPU11は、多次元ベクトル表L1の各タスクを各ストーリーのベクトルとして扱い、各タスクのベクトルを正規化して多次元ベクトル表L2(図14(a)参照)を生成する(ステップS47)。
以上で、多次元ベクトル表の作成処理が終了する。
If there is no unprocessed story 171 in step S41 (step S41; NO), the CPU 11 treats each task in the multidimensional vector table L1 as a vector of each story, normalizes the vector of each task, and multidimensionally A vector table L2 (see FIG. 14A) is generated (step S47).
This completes the multidimensional vector table creation process.

次に、図15に戻り、CPU11は、コサイン類似度算出及びレコメンドテーブルへの書き込み処理を行う(ステップS32)。   Next, returning to FIG. 15, the CPU 11 performs cosine similarity calculation and write processing to the recommendation table (step S <b> 32).

ここで、図17を参照して、コサイン類似度算出及びレコメンドテーブルへの書き込み処理について説明する。
CPU11は、未処理のストーリー171があるか否かを判断する(ステップS51)。未処理のストーリー171がある場合には(ステップS51;YES)、CPU11は、この未処理のストーリー171内に未処理のタスクがあるか否かを判断する(ステップS52)。
Here, the cosine similarity calculation and the writing process to the recommendation table will be described with reference to FIG.
The CPU 11 determines whether there is an unprocessed story 171 (step S51). If there is an unprocessed story 171 (step S51; YES), the CPU 11 determines whether or not there is an unprocessed task in the unprocessed story 171 (step S52).

ストーリー171内に未処理のタスクがある場合には(ステップS52;YES)、CPU11は、この未処理のタスクを処理対象タスクとして、多次元ベクトル表L2の処理中のストーリー171の列に比較先タスクがあるか否かを判断する(ステップS53)。比較先タスクとは、処理中のストーリー171内に含まれないタスク、すなわち、多次元ベクトル表L2の処理中のストーリー171の列において、値が「0」のタスクである。   If there is an unprocessed task in the story 171 (step S52; YES), the CPU 11 sets this unprocessed task as a processing target task in the column of the story 171 being processed in the multidimensional vector table L2. It is determined whether there is a task (step S53). The comparison target task is a task not included in the story 171 being processed, that is, a task having a value of “0” in the column of the story 171 being processed in the multidimensional vector table L2.

多次元ベクトル表L2に比較先タスクがある場合には(ステップS53;YES)、CPU11は、処理対象タスクと比較先タスクのコサイン類似度を算出する(ステップS54)。コサイン類似度は、タスクをN次元のストーリーのベクトルとして表現した場合に、両タスクの正規化されたベクトルの内積で求められる。コサイン類似度が1に近いほど、タスク同士が類似しているといえる。   When there is a comparison target task in the multidimensional vector table L2 (step S53; YES), the CPU 11 calculates the cosine similarity between the processing target task and the comparison target task (step S54). The cosine similarity is obtained as an inner product of normalized vectors of both tasks when the task is expressed as an N-dimensional story vector. The closer the cosine similarity is to 1, the more similar the tasks are.

次に、CPU11は、算出されたコサイン類似度が予め定められた閾値以上であるか否かを判断する(ステップS55)。閾値は、任意の値に設定可能であるが、閾値として、例えば、0.7が用いられる。   Next, the CPU 11 determines whether or not the calculated cosine similarity is greater than or equal to a predetermined threshold (step S55). The threshold value can be set to an arbitrary value, but for example, 0.7 is used as the threshold value.

コサイン類似度が閾値以上である場合には(ステップS55;YES)、CPU11は、レコメンドテーブルT2への書き込みを行う(ステップS56)。具体的には、レコメンドテーブルT2の索引パスには、処理中の「ストーリー」を書き込み、補完候補には、「ストーリー/比較先タスク」を書き込む。   If the cosine similarity is greater than or equal to the threshold (step S55; YES), the CPU 11 writes to the recommendation table T2 (step S56). Specifically, the “story” being processed is written in the index path of the recommendation table T2, and “story / comparison task” is written in the complement candidate.

例えば、図14(a)に示す多次元ベクトル表L2において、「社員照会B」というストーリーを処理対象とした場合、「社員照会B」には「要求」タスクと「出力」タスクが含まれるから、「要求」と「出力」に対して、近いベクトルを持っているタスクを探す。
cos(要求,社員検索)=0.7×0+0.7×1=0.7
cos(出力,社員検索)=1×0+0×1=0
この結果、「社員検索」は、「要求」と類似度が高いと考えられる。
したがって、図8のレコメンドテーブルT2の1行目に示すように、索引パス「社員照会B」に対して、補完候補「社員照会B/社員検索」が書き込まれる。
For example, in the multidimensional vector table L2 shown in FIG. 14 (a), when the story “employee inquiry B” is processed, “employee inquiry B” includes a “request” task and an “output” task. , Search for a task having a vector close to “request” and “output”.
cos (request, employee search) = 0.7 × 0 + 0.7 × 1 = 0.7
cos (output, employee search) = 1 × 0 + 0 × 1 = 0
As a result, “employee search” is considered to have a high similarity to “request”.
Therefore, as shown in the first row of the recommendation table T2 of FIG. 8, the supplement candidate “employee inquiry B / employee search” is written to the index path “employee inquiry B”.

同様に、「社員照会C」というストーリーを処理対象とした場合、「社員照会C」には「要求」タスクと「社員検索」タスクが含まれるから、「要求」と「社員検索」に対して、近いベクトルを持っているタスクを探す。
cos(要求,出力)=0.7×1+0.7×0=0.7
cos(社員検索,出力)=0×1+1×0=0
この結果、「出力」は、「要求」と類似度が高いと考えられる。
したがって、図8のレコメンドテーブルT2の4行目に示すように、索引パス「社員照会C」に対して、補完候補「社員照会C/出力」が書き込まれる。
Similarly, if the story “Employee inquiry C” is the target of processing, “Employee inquiry C” includes “Request” task and “Employee search” task. Find a task that has a close vector.
cos (request, output) = 0.7 × 1 + 0.7 × 0 = 0.7
cos (employee search, output) = 0 × 1 + 1 × 0 = 0
As a result, “output” is considered to have a high degree of similarity to “request”.
Therefore, as shown in the fourth row of the recommendation table T2 of FIG. 8, the supplement candidate “employee inquiry C / output” is written to the index path “employee inquiry C”.

ステップS56の後、又は、ステップS55において、コサイン類似度が閾値未満である場合には(ステップS55;NO)、ステップS53に戻り、他の比較先タスクについて、処理が繰り返される。
ステップS53において、多次元ベクトル表L2に他の比較先タスクがない場合には(ステップS53;NO)、ステップS52に戻り、処理中のストーリー171内の他のタスクについて、処理が繰り返される。
After step S56 or when the cosine similarity is less than the threshold value in step S55 (step S55; NO), the process returns to step S53, and the process is repeated for the other comparison target tasks.
If there is no other comparison target task in the multidimensional vector table L2 in step S53 (step S53; NO), the process returns to step S52, and the process is repeated for other tasks in the story 171 being processed.

ステップS52において、処理中のストーリー171内に未処理のタスクがない場合には(ステップS52;NO)、ステップS51に戻り、他のストーリー171について、処理が繰り返される。   In step S52, when there is no unprocessed task in the story 171 being processed (step S52; NO), the process returns to step S51, and the process is repeated for the other stories 171.

ステップS51において、未処理のストーリー171がない場合には(ステップS51;NO)、コサイン類似度算出及びレコメンドテーブルへの書き込み処理が終了する。
そして、図15に戻り、レコメンドテーブル作成処理が終了する。
In step S51, when there is no unprocessed story 171 (step S51; NO), the cosine similarity calculation and the writing process to the recommendation table are ended.
Then, returning to FIG. 15, the recommendation table creation process ends.

なお、図16及び図17においては、ストーリー171に対して直下のタスクとの階層関係を抽出する場合について説明したが、ストーリー171以外の上位階層のタスクと、その直下の下位階層のタスクとの階層関係も同様に求めることができる。例えば、図8のレコメンドテーブルT2の2行目及び3行目に示すように、索引パス「社員検索」に対して、補完候補「社員検索/入力」、「社員検索/出力」等を抽出する。   16 and 17, the case where the hierarchical relationship between the story 171 and the task immediately below is extracted has been described. However, the upper hierarchy task other than the story 171 and the lower hierarchy task below the task 171 The hierarchical relationship can be obtained in the same manner. For example, as shown in the second and third lines of the recommendation table T2 in FIG. 8, the candidate “employee search / input”, “employee search / output”, etc. are extracted for the index path “employee search”. .

(ストーリー補完処理)
図18は、ストーリー補完処理を示すフローチャートである。ストーリー補完処理は、一部の記述が省略されたストーリー171(以下、処理対象ストーリーという。)に対してタスクを補完する処理である。この処理は、CPU11とストーリー補完プログラム123との協働によるソフトウェア処理によって実現される。
(Story supplement processing)
FIG. 18 is a flowchart showing the story complement process. The story complement process is a process for complementing a task for a story 171 (hereinafter referred to as a process target story) from which a part of the description is omitted. This process is realized by software processing by the cooperation of the CPU 11 and the story complement program 123.

まず、CPU11は、処理対象ストーリーに対して、レコメンドテーブルによる補完処理を行う(ステップS61)。
次に、CPU11は、処理対象ストーリーに対して、履歴テーブルによる補完処理を行う(ステップS62)。
以上で、ストーリー補完処理が終了する。
First, the CPU 11 performs a complementing process using a recommendation table for the processing target story (step S61).
Next, the CPU 11 performs a complementary process using a history table for the story to be processed (step S62).
This completes the story complement process.

(レコメンドテーブルによる補完処理)
図19は、レコメンドテーブルによる補完処理(ステップS61)を示すフローチャートである。この処理は、処理対象ストーリーについて、レコメンドテーブルT2に基づいて、タスクの階層関係を補完する処理である。
(Complementary processing by recommendation table)
FIG. 19 is a flowchart showing the complementing process (step S61) using the recommendation table. This process is a process for complementing the hierarchical relationship of tasks based on the recommendation table T2 for the story to be processed.

まず、CPU11は、処理対象ストーリーからルートノードを取得する(ステップS71)。
次に、CPU11は、ステップS71で取得したノードに対して、レコメンド補完部品処理を行う(ステップS72)。
First, the CPU 11 acquires a root node from the processing target story (step S71).
Next, the CPU 11 performs recommended complement component processing for the node acquired in step S71 (step S72).

ここで、図20を参照して、レコメンド補完部品処理について説明する。
CPU11は、処理対象ノードをキーにして、レコメンドテーブルT2を検索し(ステップS81)、レコメンドテーブルT2に補完候補があるか否かを判断する(ステップS82)。具体的には、CPU11は、レコメンドテーブルT2において、処理対象ノードと一致する索引パスに対応する補完候補があるか否かを判断する。
Here, with reference to FIG. 20, the recommendation complementing part process will be described.
The CPU 11 searches the recommendation table T2 using the processing target node as a key (step S81), and determines whether or not there is a complement candidate in the recommendation table T2 (step S82). Specifically, the CPU 11 determines whether or not there is a complement candidate corresponding to the index path that matches the processing target node in the recommendation table T2.

レコメンドテーブルT2に補完候補がある場合には(ステップS82;YES)、CPU11は、レコメンドテーブルT2から処理対象ノードに対応する補完候補を取得し、処理対象ノードの下位階層に子ノードを挿入する(ステップS83)。すなわち、CPU11は、処理対象ノードと子ノードの階層関係を補完する。
なお、CPU11は、処理対象ノードの下位階層に、補完候補と同じ子ノードが既に存在する場合には、子ノードを挿入しない。
When there is a complement candidate in the recommendation table T2 (step S82; YES), the CPU 11 acquires a complement candidate corresponding to the processing target node from the recommendation table T2, and inserts a child node in a lower hierarchy of the processing target node ( Step S83). That is, the CPU 11 complements the hierarchical relationship between the processing target node and the child node.
Note that the CPU 11 does not insert the child node when the same child node as the complement candidate already exists in the lower hierarchy of the processing target node.

また、CPU11は、処理対象ノードに対応する補完候補が二以上ある場合には、二以上の補完候補を表示部15に表示させ、ユーザの操作部14からの操作によって、表示された補完候補の中から一又は複数の補完候補を選択させることとしてもよい。同一のノード下に複数の子ノードを挿入する場合の順序については、予め定められた順序(通常の処理順序)で挿入することとしてもよいし、ユーザに指定させることとしてもよい。   In addition, when there are two or more complement candidates corresponding to the processing target node, the CPU 11 displays two or more complement candidates on the display unit 15, and displays the complement candidates displayed by an operation from the user operation unit 14. One or a plurality of complementary candidates may be selected from the inside. The order in which a plurality of child nodes are inserted under the same node may be inserted in a predetermined order (normal processing order) or may be designated by the user.

ステップS83の後、又は、ステップS82において、レコメンドテーブルT2に補完候補がない場合には(ステップS82;NO)、レコメンド補完部品処理が終了する。   After step S83 or in step S82, if there is no complement candidate in the recommendation table T2 (step S82; NO), the recommendation complement component process ends.

次に、図19に戻り、CPU11は、ステップS71で取得したルートノードに対して、レコメンド用トラバース処理を行う(ステップS73)。   Next, returning to FIG. 19, the CPU 11 performs a recommendation traversal process on the root node acquired in step S71 (step S73).

レコメンド用トラバース処理では、図21に示すように、CPU11は、処理対象ノードに未処理の子ノードがあるか否かを判断する(ステップS91)。未処理の子ノードがある場合には(ステップS91;YES)、CPU11は、未処理の子ノードに対して、レコメンド補完部品処理(図20参照)を行う(ステップS92)。   In the recommendation traverse process, as shown in FIG. 21, the CPU 11 determines whether or not there is an unprocessed child node in the process target node (step S91). When there is an unprocessed child node (step S91; YES), the CPU 11 performs a recommended complement component process (see FIG. 20) on the unprocessed child node (step S92).

次に、CPU11は、未処理の子ノードに対して、レコメンド用トラバース処理(図21参照)を行う(ステップS93)。このように、順次下位階層のノードについて、処理が繰り返される。   Next, the CPU 11 performs a recommendation traverse process (see FIG. 21) on an unprocessed child node (step S93). In this way, the process is sequentially repeated for the nodes in the lower hierarchy.

ステップS93の後、ステップS91に戻り、他の子ノードについて、処理が繰り返される。
ステップS91において、未処理の子ノードがない場合には(ステップS91;NO)、レコメンド用トラバース処理が終了する。
After step S93, the process returns to step S91, and the process is repeated for the other child nodes.
If there is no unprocessed child node in step S91 (step S91; NO), the recommendation traverse process is terminated.

図19のステップS73において、ルートノードに対するレコメンド用トラバース処理が終了すると、レコメンドテーブルによる補完処理が終了する。   In step S73 in FIG. 19, when the recommendation traversing process for the root node is completed, the complementing process using the recommendation table is completed.

(履歴テーブルによる補完処理)
図22は、履歴テーブルによる補完処理(ステップS62)を示すフローチャートである。この処理は、処理対象ストーリーについて、履歴テーブルT1に基づいてタスク間のデータの参照関係を補完する処理である。
(Complementary processing by history table)
FIG. 22 is a flowchart showing the complementing process (step S62) using the history table. This process is a process of complementing the data reference relationship between tasks based on the history table T1 for the story to be processed.

まず、CPU11は、処理対象ストーリーからルートノードを取得する(ステップS101)。
次に、CPU11は、ステップS101で取得したノードに対して、履歴補完部品処理を行う(ステップS102)。
First, the CPU 11 acquires a root node from the processing target story (step S101).
Next, the CPU 11 performs history complement component processing on the node acquired in step S101 (step S102).

ここで、図23を参照して、履歴補完部品処理について説明する。
CPU11は、処理対象ノードのフルパスを取得する(ステップS111)。CPU11は、取得したノードのフルパスをRAM13に格納する。
次に、CPU11は、ステップS111で取得したノードのフルパスをキーにして、履歴テーブルT1を検索し(ステップS112)、履歴テーブルT1に補完候補があるか否かを判断する(ステップS113)。具体的には、CPU11は、履歴テーブルT1において、処理対象ノードのフルパスと一致する索引パスに対応する参照先があるか否かを判断する。
Here, with reference to FIG. 23, the history complement component processing will be described.
The CPU 11 acquires the full path of the processing target node (step S111). The CPU 11 stores the acquired full path of the node in the RAM 13.
Next, the CPU 11 searches the history table T1 using the full path of the node acquired in step S111 as a key (step S112), and determines whether or not there is a complement candidate in the history table T1 (step S113). Specifically, the CPU 11 determines whether or not there is a reference destination corresponding to the index path that matches the full path of the processing target node in the history table T1.

履歴テーブルT1に補完候補がある場合には(ステップS113;YES)、CPU11は、履歴テーブルT1から処理対象ノードのフルパスに対応する参照先を取得し、処理対象ノードにref属性を挿入する(ステップS114)。すなわち、CPU11は、処理対象ノードと参照先のノードとのデータの参照関係を補完する。
なお、CPU11は、処理対象ノードに、補完候補(参照先)と同じref属性が既に存在する場合には、ref属性を挿入しない。
When there is a complement candidate in the history table T1 (step S113; YES), the CPU 11 acquires a reference destination corresponding to the full path of the processing target node from the history table T1, and inserts a ref attribute in the processing target node (step). S114). That is, the CPU 11 supplements the data reference relationship between the processing target node and the reference destination node.
Note that the CPU 11 does not insert the ref attribute when the same ref attribute as the complement candidate (reference destination) already exists in the processing target node.

また、CPU11は、処理対象ノードのフルパスに対応する参照先が二以上ある場合には、二以上の参照先を表示部15に表示させ、ユーザの操作部14からの操作によって、表示された参照先の中から一の参照先を選択させることとしてもよい。   Further, when there are two or more reference destinations corresponding to the full path of the processing target node, the CPU 11 displays two or more reference destinations on the display unit 15, and the reference displayed by the operation from the operation unit 14 by the user. One reference destination may be selected from the destinations.

ステップS114の後、又は、ステップS113において、履歴テーブルT1に補完候補がない場合には(ステップS113;NO)、履歴補完部品処理が終了する。   After step S114 or in step S113, if there is no complement candidate in the history table T1 (step S113; NO), the history complement component process ends.

次に、図22に戻り、CPU11は、ステップS101で取得したルートノードに対して、履歴用トラバース処理を行う(ステップS103)。   Next, returning to FIG. 22, the CPU 11 performs history traversal processing on the root node acquired in step S101 (step S103).

履歴用トラバース処理では、図24に示すように、CPU11は、処理対象ノードに未処理の子ノードがあるか否かを判断する(ステップS121)。未処理の子ノードがある場合には(ステップS121;YES)、CPU11は、未処理の子ノードに対して、履歴補完部品処理(図23参照)を行う(ステップS122)。   In the history traverse process, as shown in FIG. 24, the CPU 11 determines whether or not there is an unprocessed child node in the process target node (step S121). When there is an unprocessed child node (step S121; YES), the CPU 11 performs history complement component processing (see FIG. 23) on the unprocessed child node (step S122).

次に、CPU11は、未処理の子ノードに対して、履歴用トラバース処理(図24参照)を行う(ステップS123)。このように、順次下位階層のノードについて、処理が繰り返される。   Next, the CPU 11 performs history traversal processing (see FIG. 24) for unprocessed child nodes (step S123). In this way, the process is sequentially repeated for the nodes in the lower hierarchy.

ステップS123の後、ステップS121に戻り、他の子ノードについて、処理が繰り返される。
ステップS121において、未処理の子ノードがない場合には(ステップS121;NO)、履歴用トラバース処理が終了する。
After step S123, the process returns to step S121, and the process is repeated for the other child nodes.
In step S121, when there is no unprocessed child node (step S121; NO), the history traverse process is terminated.

図22のステップS103において、ルートノードに対する履歴用トラバース処理が終了すると、履歴テーブルによる補完処理が終了する。   In step S103 in FIG. 22, when the history traversing process for the root node is completed, the complementing process using the history table is completed.

ストーリー補完処理の終了後、CPU11は、補完されたストーリーに基づいて、複数のタスクを含む処理を順次実行する。   After the story complement process is completed, the CPU 11 sequentially executes processes including a plurality of tasks based on the complemented story.

図25に、ストーリーの補完例を示す。
補完前のストーリー21では、「社員照会B」の下位階層のタスクである「社員検索」が省略されている。
ストーリー22は、図25中に示すレコメンドテーブルT2に基づいて、ストーリー21に対してタスクを補完したものである。具体的には、レコメンドテーブルT2の索引パス「社員照会B」に対応する補完候補である「社員照会B/社員検索」に基づいて、「社員照会B」の下位階層に「社員検索」というタスクが補完されている。さらに、索引パス「社員検索」に対応する補完候補である「社員検索/入力」と「社員検索/出力」に基づいて、「社員検索」の下位階層に「入力」というタスクと「出力」というタスクが補完されている。
FIG. 25 shows an example of complementing a story.
In the story 21 before the supplement, “employee search” which is a lower-level task of “employee inquiry B” is omitted.
The story 22 is obtained by complementing tasks to the story 21 based on the recommendation table T2 shown in FIG. Specifically, based on “employee inquiry B / employee search” that is a candidate for completion corresponding to the index path “employee inquiry B” of the recommendation table T2, the task “employee search” is subordinate to “employee inquiry B”. Has been complemented. Furthermore, based on “employee search / input” and “employee search / output”, which are complementary candidates corresponding to the index path “employee search”, the task “input” and “output” are subordinate to “employee search”. Tasks are complemented.

ここで、ストーリー22には、「社員検索」というタスクが組み込まれたが、「社員検索」の入力データとして、何を使えばよいのか不明である。
ストーリー23は、図25中に示す履歴テーブルT1に基づいて、ストーリー22に対してタスクを補完したものである。具体的には、履歴テーブルT1の索引パス「/社員照会B/社員検索/入力」に対応する参照先である「../../要求」に基づいて、「/社員照会B/社員検索/入力」のノードに、ref属性として、「ref=”../../要求”」が補完される。すなわち、ストーリー23では、「社員照会B」の下位階層のタスクである「社員検索」の入力データとして、「社員照会B」の要求データを参照するように、タスク間のデータの参照関係が補完されている。
Here, although the task of “employee search” is incorporated in the story 22, it is unclear what should be used as input data for “employee search”.
The story 23 is obtained by complementing tasks to the story 22 based on the history table T1 shown in FIG. Specifically, “/ employee query B / employee search” is based on the reference destination “../../request” corresponding to the index path “/ employee query B / employee search / input” of the history table T1. / Input ”node, the“ ref = ”. . /. . / Request "" is complemented. That is, in the story 23, the reference relationship of the data between the tasks is complemented so that the request data of the “employee inquiry B” is referred to as the input data of the “employee search” which is a lower hierarchy task of the “employee inquiry B”. Has been.

なお、図25では、履歴テーブルT1において、参照回数の記載を省略しているが、索引パスと参照先の組み合わせに対する参照回数に応じて、参照先を補完する優先順位を変更することとしてもよい。また、図25では、履歴テーブルT1において、参照先が相対パスで記載されているが、パスの記載方法は、図7に示すように、絶対パスであってもよい。   In FIG. 25, the description of the reference count is omitted in the history table T1, but the priority order for complementing the reference destination may be changed according to the reference count for the combination of the index path and the reference destination. . In FIG. 25, the reference destination is described as a relative path in the history table T1, but the path description method may be an absolute path as shown in FIG.

以上説明したように、本実施の形態における情報処理装置10によれば、階層的な構造を記述可能な記述言語を用いることにより、タスク間の連携を汎用的かつ明示的に記述することができる。
また、ストーリー171において記述が省略されていた場合に、省略された部分を補完するので、タスクの記述を省略した場合にも容易にタスクを補完することができる。すなわち、厳密にストーリー171を作成する技術を有しない者であっても、簡単にストーリー171を作成することが可能となる。例えば、システムベンダーに属する等の専門家でなく、実際に情報処理装置10を使用するユーザ等によって、ストーリー171の修正・追加が可能となる。
As described above, according to the information processing apparatus 10 in the present embodiment, the cooperation between tasks can be described generically and explicitly by using a description language that can describe a hierarchical structure. .
Further, when the description is omitted in the story 171, the omitted portion is complemented, so that the task can be easily supplemented even when the task description is omitted. That is, even a person who does not have a technique for strictly creating the story 171 can easily create the story 171. For example, the story 171 can be corrected / added by a user who actually uses the information processing apparatus 10 instead of an expert belonging to a system vendor or the like.

具体的には、タスク間のデータの参照関係が省略されていた場合に、履歴テーブルT1に基づいて、処理対象ストーリーに含まれる参照元の記述データに、参照先の記述データを補完するので、過去の履歴に基づく補完が可能となる。   Specifically, when the reference relationship of data between tasks is omitted, based on the history table T1, the description data of the reference destination is supplemented to the description data of the reference source included in the story to be processed. Complementation based on past history is possible.

また、タスクの階層関係が省略されていた場合に、レコメンドテーブルT2に基づいて、処理対象ストーリーに含まれる上位階層のタスクの下位階層に、下位階層のタスクを補完するので、他のストーリー171における階層関係の傾向に基づく補完が可能となる。
また、コサイン類似度を用いることで、容易にタスク間の類似性を判断することができる。
Further, when the task hierarchy relationship is omitted, the lower-level task is complemented to the lower-level task of the upper-level task included in the story to be processed based on the recommendation table T2. Complementation based on the trend of hierarchical relationships is possible.
Further, the similarity between tasks can be easily determined by using the cosine similarity.

また、ストーリー171の記述形式としてXMLを採用することにより、複数のアプリケーションAPの連携を厳密に記述することが可能となり、また、特定のユースケースによらない汎用的な記述が可能となる。   Further, by adopting XML as the description format of the story 171, it is possible to strictly describe the cooperation of a plurality of application APs, and it is possible to make a general-purpose description that does not depend on a specific use case.

なお、上記実施の形態における記述は、本発明に係る情報処理装置の例であり、これに限定されるものではない。装置を構成する各部の細部構成及び細部動作に関しても本発明の趣旨を逸脱することのない範囲で適宜変更可能である。   Note that the description in the above embodiment is an example of the information processing apparatus according to the present invention, and the present invention is not limited to this. The detailed configuration and detailed operation of each part constituting the apparatus can be changed as appropriate without departing from the spirit of the present invention.

例えば、上記実施の形態では、ストーリー補完処理(図18)において、レコメンドテーブルによる補完処理(ステップS61)と、履歴テーブルによる補完処理(ステップS62)と、を両方行う場合について説明したが、レコメンドテーブルによる補完処理、又は、履歴テーブルによる補完処理のいずれか一方のみを行うこととしてもよい。   For example, in the above embodiment, the case where both the complementing process using the recommendation table (step S61) and the complementing process using the history table (step S62) are performed in the story complementing process (FIG. 18) is described. It is good also as performing only either one of the complementing process by or the complementing process by a history table.

また、ストーリー補完処理は、ストーリー171の実行時に行ってもよいし、ストーリー171の実行前に予め行っておいてもよい。
また、上記実施の形態では、アプリケーションAPが情報処理装置10の記憶部17に記憶されている場合について説明したが、外部サーバに保存されているアプリケーションAPを通信部16を介して呼び出して使用することとしてもよい。
The story complementing process may be performed when the story 171 is executed, or may be performed in advance before the story 171 is executed.
Moreover, although the case where application AP was memorize | stored in the memory | storage part 17 of the information processing apparatus 10 was demonstrated in the said embodiment, application AP preserve | saved at the external server is called and used via the communication part 16. It is good as well.

本発明の実施の形態を説明したが、本発明の範囲は、上述の実施の形態に限定するものではなく、特許請求の範囲に記載された発明の範囲とその均等の範囲を含む。
以下に、この出願の願書に最初に添付した特許請求の範囲に記載した発明を付記する。付記に記載した請求項の項番は、この出願の願書に最初に添付した特許請求の範囲の通りである。
〔付記〕
<請求項1>
階層的な構造を記述可能な記述言語でタスクの実行順序を記述した複数の記述文書を記憶する記憶手段と、
前記複数の記述文書に基づいて、補完位置と補完候補とを対応付けたテーブルを作成する作成手段と、
前記作成されたテーブルに基づいて、処理対象の記述文書において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する補完手段と、
を備える情報処理装置。
<請求項2>
前記作成手段は、前記複数の記述文書からタスク間のデータの参照関係を抽出し、前記複数の記述文書に含まれる参照元の記述データと参照先の記述データとをそれぞれ階層的に表して対応付けた履歴テーブルを作成し、
前記補完手段は、前記作成された履歴テーブルに基づいて、前記処理対象の記述文書に含まれる前記参照元の記述データに、前記参照先の記述データを補完する請求項1に記載の情報処理装置。
<請求項3>
前記作成手段は、前記複数の記述文書から上位階層のタスクと当該上位階層の下位階層のタスクとを対応付けたレコメンドテーブルを作成し、
前記補完手段は、前記作成されたレコメンドテーブルに基づいて、前記処理対象の記述文書に含まれる前記上位階層のタスクの下位階層に、前記下位階層のタスクを補完する請求項1に記載の情報処理装置。
<請求項4>
前記作成手段は、前記複数の記述文書において対応するタスクの下位階層に含まれる複数のタスクを前記対応するタスクのベクトルとして扱い、前記複数のタスク間のコサイン類似度を算出し、前記算出されたコサイン類似度が所定の値以上のタスクを前記下位階層のタスクとし、前記対応するタスクを前記上位階層のタスクとして、前記レコメンドテーブルを作成する請求項3に記載の情報処理装置。
<請求項5>
前記記述言語は、XML言語である請求項1〜4のいずれか一項に記載の情報処理装置。
<請求項6>
コンピュータを、
階層的な構造を記述可能な記述言語でタスクの実行順序を記述した複数の記述文書に基づいて、補完位置と補完候補とを対応付けたテーブルを作成する作成手段、
前記作成されたテーブルに基づいて、処理対象の記述文書において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する補完手段、
として機能させるためのプログラム。
Although the embodiments of the present invention have been described, the scope of the present invention is not limited to the above-described embodiments, but includes the scope of the invention described in the claims and the equivalents thereof.
The invention described in the scope of claims attached to the application of this application will be added below. The item numbers of the claims described in the appendix are as set forth in the claims attached to the application of this application.
[Appendix]
<Claim 1>
Storage means for storing a plurality of descriptive documents describing the execution order of tasks in a description language capable of describing a hierarchical structure;
Creating means for creating a table in which a complement position and a complement candidate are associated with each other based on the plurality of description documents;
Based on the created table, a complement means for complementing a complement candidate associated with the complement position to a complement position whose description is omitted in the description document to be processed;
An information processing apparatus comprising:
<Claim 2>
The creation means extracts a reference relation of data between tasks from the plurality of description documents, and corresponds to the description data of the reference source and the description data of the reference destination included in the plurality of description documents in a hierarchical manner. Create a history table with
The information processing apparatus according to claim 1, wherein the complementing unit supplements the description data of the reference destination with the description data of the reference source included in the description document to be processed based on the created history table. .
<Claim 3>
The creation means creates a recommendation table in which upper layer tasks and lower layer tasks of the upper layer are associated with each other from the plurality of description documents,
2. The information processing according to claim 1, wherein the complementing unit complements the task of the lower hierarchy to a lower hierarchy of the task of the upper hierarchy included in the description document to be processed based on the created recommendation table. apparatus.
<Claim 4>
The creation means treats a plurality of tasks included in a lower hierarchy of a corresponding task in the plurality of description documents as a vector of the corresponding task, calculates a cosine similarity between the plurality of tasks, and calculates the calculated The information processing apparatus according to claim 3, wherein the recommendation table is created with a task having a cosine similarity equal to or higher than a predetermined value as the lower layer task and the corresponding task as the upper layer task.
<Claim 5>
The information processing apparatus according to claim 1, wherein the description language is an XML language.
<Claim 6>
Computer
A creation means for creating a table in which a complement position and a complement candidate are associated with each other based on a plurality of description documents describing a task execution order in a description language capable of describing a hierarchical structure,
Based on the created table, a complement means for complementing a complement candidate associated with the complement position to a complement position whose description is omitted in the description document to be processed;
Program to function as.

10 情報処理装置
11 CPU
12 ROM
17 記憶部
121 履歴テーブル作成プログラム
122 レコメンドテーブル作成プログラム
123 ストーリー補完プログラム
171 ストーリー
AP アプリケーションプログラム
T1 履歴テーブル
T2 レコメンドテーブル
10 Information processing apparatus 11 CPU
12 ROM
17 storage unit 121 history table creation program 122 recommendation table creation program 123 story complement program 171 story AP application program T1 history table T2 recommendation table

Claims (6)

階層的な構造を記述可能な記述言語でタスクの実行順序を記述した記述文書に基づいて、補完位置と補完候補とを対応付けたテーブルを作成する作成手段と、
前記作成されたテーブルに基づいて、処理対象の記述文書において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する補完手段と、
を備える情報処理装置。
And creation means on the basis of the descriptive document describing the execution sequence of tasks, creating a table which associates the completion candidates and complementary position in a hierarchical structure can be described description language,
Based on the created table, a complement means for complementing a complement candidate associated with the complement position to a complement position whose description is omitted in the description document to be processed;
An information processing apparatus comprising:
前記作成手段は、前記記述文書からタスク間のデータの参照関係を抽出し、前記記述文書に含まれる参照元の記述データと参照先の記述データとをそれぞれ階層的に表して対応付けた履歴テーブルを作成し、
前記補完手段は、前記作成された履歴テーブルに基づいて、前記処理対象の記述文書に含まれる前記参照元の記述データに、前記参照先の記述データを補完する請求項1に記載の情報処理装置。
It said creation means, before extracting the reference data relationships between tasks from crisis predicate document correspondence before and referencing descriptive data contained in crisis predicate referenced document description data and the respectively hierarchically represents Create a history table with
The information processing apparatus according to claim 1, wherein the complementing unit supplements the description data of the reference destination with the description data of the reference source included in the description document to be processed based on the created history table. .
前記作成手段は、前記記述文書から上位階層のタスクと当該上位階層の下位階層のタスクとを対応付けたレコメンドテーブルを作成し、
前記補完手段は、前記作成されたレコメンドテーブルに基づいて、前記処理対象の記述文書に含まれる前記上位階層のタスクの下位階層に、前記下位階層のタスクを補完する請求項1に記載の情報処理装置。
It said creating means creates a recommendation table associating the lower layer task before crisis mentioned document from the upper layer tasks and the upper layer,
2. The information processing according to claim 1, wherein the complementing unit complements the task of the lower hierarchy to a lower hierarchy of the task of the upper hierarchy included in the description document to be processed based on the created recommendation table. apparatus.
前記作成手段は、前記記述文書において対応するタスクの下位階層に含まれるタスクを前記対応するタスクのベクトルとして扱い、前記タスク間のコサイン類似度を算出し、前記算出されたコサイン類似度が所定の値以上のタスクを前記下位階層のタスクとし、前記対応するタスクを前記上位階層のタスクとして、前記レコメンドテーブルを作成する請求項3に記載の情報処理装置。 It said creation means treats filter disk included in the lower layer of the corresponding task before crisis mentioned document as a vector of the corresponding task, before calculating the cosine similarity between Northern disk was the calculated The information processing apparatus according to claim 3, wherein the recommendation table is created with a task having a cosine similarity equal to or higher than a predetermined value as the lower layer task and the corresponding task as the upper layer task. 前記記述言語は、XML言語である請求項1〜4のいずれか一項に記載の情報処理装置。   The information processing apparatus according to claim 1, wherein the description language is an XML language. コンピュータを、
階層的な構造を記述可能な記述言語でタスクの実行順序を記述した記述文書に基づいて、補完位置と補完候補とを対応付けたテーブルを作成する作成手段、
前記作成されたテーブルに基づいて、処理対象の記述文書において記述が省略されている補完位置に、当該補完位置に対応付けられた補完候補を補完する補完手段、
として機能させるためのプログラム。
Computer
Based hierarchical structure describe document describing the execution sequence of tasks in describable description language, creating means for creating a table which associates the completion candidates and complementary position,
Based on the created table, a complement means for complementing a complement candidate associated with the complement position to a complement position whose description is omitted in the description document to be processed;
Program to function as.
JP2014052896A 2014-03-17 2014-03-17 Information processing apparatus and program Active JP6287396B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014052896A JP6287396B2 (en) 2014-03-17 2014-03-17 Information processing apparatus and program

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014052896A JP6287396B2 (en) 2014-03-17 2014-03-17 Information processing apparatus and program

Publications (3)

Publication Number Publication Date
JP2015176395A JP2015176395A (en) 2015-10-05
JP2015176395A5 JP2015176395A5 (en) 2017-03-30
JP6287396B2 true JP6287396B2 (en) 2018-03-07

Family

ID=54255523

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014052896A Active JP6287396B2 (en) 2014-03-17 2014-03-17 Information processing apparatus and program

Country Status (1)

Country Link
JP (1) JP6287396B2 (en)

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4756947B2 (en) * 2005-08-05 2011-08-24 キヤノン株式会社 Information processing apparatus and method
JP4908073B2 (en) * 2006-06-15 2012-04-04 株式会社日立製作所 Service-based software design support method and apparatus therefor
JP2008198010A (en) * 2007-02-14 2008-08-28 Toshiba Tec Corp Structured document creation support device and structured document creation support program
JP2009157847A (en) * 2007-12-27 2009-07-16 Toshiba Tec Corp Program development device, and program development program
JP5202598B2 (en) * 2010-09-16 2013-06-05 東芝テック株式会社 Workflow management device and workflow management program
JP5634374B2 (en) * 2011-10-06 2014-12-03 株式会社日立製作所 Specification creation support device and program

Also Published As

Publication number Publication date
JP2015176395A (en) 2015-10-05

Similar Documents

Publication Publication Date Title
US11238096B2 (en) Linked data processor for database storage
CA2953826C (en) Machine learning service
JP6618461B2 (en) Metadata management system
US10963810B2 (en) Efficient duplicate detection for machine learning data sets
JP7201299B2 (en) Method, computer program and system for cognitive document image digitization
Khalifa et al. The six pillars for building big data analytics ecosystems
US20180218088A1 (en) Adjacency structures for executing graph algorithms in a relational database
KR20170037636A (en) Data lineage summarization
US20180150499A1 (en) Logical logging for in-memory metadata store
US9846714B2 (en) Database device
EP4066138B1 (en) Method and system for generating synthethic data using a regression model while preserving statistical properties of underlying data
US10248668B2 (en) Mapping database structure to software
US20230334046A1 (en) Obtaining inferences to perform access requests at a non-relational database system
WO2017175246A1 (en) Method and system for providing end-to-end integrations using integrator extensible markup language
JP6842071B2 (en) Data exchange system, data exchange method, and data exchange program
Szekely et al. Exploiting semantics of web services for geospatial data fusion
KR102547033B1 (en) Method for providing information in the way user selected using keyword recognition function
US20230267162A1 (en) Concurrent website editing system having conflict handling protocol
JP6287396B2 (en) Information processing apparatus and program
US10169083B1 (en) Scalable method for optimizing information pathway
WO2023081032A1 (en) Query-based database redaction
AU2020101842A4 (en) DAI- Dataset Discovery: DATASET DISCOVERY IN DATA ANALYTICS USING AI- BASED PROGRAMMING.
JP7381290B2 (en) Computer system and data management method
US20170161359A1 (en) Pattern-driven data generator
Amato et al. Big data management systems for the exploitation of pervasive environments

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170223

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170223

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171211

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20180109

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20180122

R150 Certificate of patent or registration of utility model

Ref document number: 6287396

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150