JP2022098810A - Data control system and data control method - Google Patents

Data control system and data control method Download PDF

Info

Publication number
JP2022098810A
JP2022098810A JP2020212414A JP2020212414A JP2022098810A JP 2022098810 A JP2022098810 A JP 2022098810A JP 2020212414 A JP2020212414 A JP 2020212414A JP 2020212414 A JP2020212414 A JP 2020212414A JP 2022098810 A JP2022098810 A JP 2022098810A
Authority
JP
Japan
Prior art keywords
data
attribute value
unit
processing
processed
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.)
Granted
Application number
JP2020212414A
Other languages
Japanese (ja)
Other versions
JP7492451B2 (en
Inventor
悠 田村
Hisashi Tamura
義明 磯部
Yoshiaki Isobe
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 JP2020212414A priority Critical patent/JP7492451B2/en
Publication of JP2022098810A publication Critical patent/JP2022098810A/en
Application granted granted Critical
Publication of JP7492451B2 publication Critical patent/JP7492451B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)
  • Stored Programmes (AREA)

Abstract

To detect a data change in a process in which data is processed in a flow-based application.SOLUTION: A flow-based application 100 includes a software component having a function of a data processing unit 112 in which an individual performs arbitrary data processing on input data and outputs processed data 125. A data control system 1 then has an attribute value calculation unit 151 that calculates an attribute value (updated attribute value 126) in which a change in data due to data processing is quantified by using predetermined calculation data, and a control function request unit 114 that each time the data processing of each data processing unit 112 is completed, requests the attribute value calculation unit 151 to calculate the attribute value for the processed data 125 together with the calculation data. The control function request unit 114 transmits the updated attribute value 126 and the processed data 125 calculated by the attribute value calculation unit 151 to the next software component of the data processing unit 112.SELECTED DRAWING: Figure 1

Description

本発明は、データ制御システム及びデータ制御方法に関し、フローベースアプリケーションにおけるデータの変化を監視するデータ制御システム及びデータ制御方法に適用して好適なものである。 The present invention relates to a data control system and a data control method, and is suitable for application to a data control system and a data control method for monitoring changes in data in a flow-based application.

近年、コンポーネント化されたソフトウェア部品(ソフトウェアコンポーネント)を組み合わせて開発されたアプリケーション(フローベースアプリケーション)の実装が進んでおり、当該システムにおける効率的な運用方法等が提案されている。 In recent years, the implementation of applications (flow-based applications) developed by combining componentized software components (software components) has been progressing, and efficient operation methods and the like in the system have been proposed.

例えば、特許文献1には、「ビジネス環境の変化やSLAの充足状況に応じて柔軟に、機能、性能、または信頼性といったサービスレベルを制御することを可能としたアプリケーション運用管理システム及び方法」が開示されている。 For example, Patent Document 1 describes "an application operation management system and method that enables flexible control of service levels such as function, performance, or reliability in response to changes in the business environment and SLA sufficiency status". It has been disclosed.

特開2006-252189号公報Japanese Unexamined Patent Publication No. 2006-252189

ところで、フローベースアプリケーションのようなサーバレス環境のアプリケーションにおいては、各機能が疎結合になるため、アプリケーションに入力されたデータが各ソフトウェアコンポーネントにおいて処理されていく過程で、データの変化が発生し得る。例えば、ソフトウェアコンポーネントの設計ミス等によって、想定しないデータの変化が生じることもある。そしてこのようなデータの変化を見逃すと、データの完全性や機密性が低下したり、フローベースアプリケーションが誤った結果を出力したりするおそれがあった。ここで、上述した特許文献1には、フローベースアプリケーションの運用管理について記載されているが、フローベースアプリケーションに入力されたデータが各ソフトウェアコンポーネントを通る過程で発生するデータの変化や、データの変化に伴う制御については、開示されていなかった。 By the way, in a serverless environment application such as a flow-based application, each function is loosely coupled, so that data changes may occur in the process of processing the data input to the application in each software component. .. For example, unexpected changes in data may occur due to design mistakes in software components. And overlooking such changes in data could reduce the integrity and confidentiality of the data and cause flow-based applications to produce erroneous results. Here, the above-mentioned Patent Document 1 describes the operation management of the flow-based application, but changes in the data generated in the process of passing the data input to the flow-based application through each software component, and changes in the data. The control associated with this was not disclosed.

本発明は以上の点を考慮してなされたもので、フローベースアプリケーションにおいてデータが処理される過程におけるデータ変化を検知することが可能なデータ制御システム及びデータ制御方法を提案しようとするものである。 The present invention has been made in consideration of the above points, and an object of the present invention is to propose a data control system and a data control method capable of detecting data changes in the process of processing data in a flow-based application. ..

かかる課題を解決するため本発明においては、全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムであって、前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、前記データ処理によるデータの変化を数値化した属性値を所定の計算用データを用いて計算する属性値計算部と、それぞれの前記データ加工部による前記データ処理が終了するごとに、当該データ処理に関する前記計算用データを添えて、当該データ処理の前記加工済データに対する前記属性値の計算を前記属性値計算部に要求する制御機能要求部と、を備え、前記制御機能要求部は、前記属性値計算部から前記加工済データに対する前記属性値の計算結果である更新済属性値を受け取った後、前記加工済データ及び前記更新済属性値を次の前記データ加工部のソフトウェアコンポーネントに送信する、データ制御システムが提供される。 In order to solve such a problem, the present invention is a data control system for detecting a data change processed in a flow-based application in which the whole or a part thereof is composed of a combination of loosely coupled software components, and the flow-based application. The loosely coupled software components constituting the above include a software component having a function as a data processing unit that individually performs arbitrary data processing on input data and outputs processed data. An attribute value calculation unit that calculates an attribute value that quantifies a change in data due to the data processing using predetermined calculation data, and a data processing unit each time the data processing by each of the data processing units is completed. A control function requesting unit that requests the attribute value calculation unit to calculate the attribute value for the processed data of the data processing is provided with the calculation data, and the control function requesting unit includes the attribute value. After receiving the updated attribute value which is the calculation result of the attribute value for the processed data from the calculation unit, the processed data and the updated attribute value are transmitted to the next software component of the data processing unit. A control system is provided.

また、かかる課題を解決するため本発明においては、全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムによるデータ制御方法であって、前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、前記データ加工部としての機能を有するそれぞれのソフトウェアコンポーネントによる前記データ処理が終了するごとに、当該データ処理に関する計算用データを添えて、当該データ処理の前記加工済データに対する属性値の計算を要求する要求ステップと、前記要求ステップにおける前記要求に添えられた前記計算用データを用いて、前記加工済データに対して、前記データ処理によるデータの変化を数値化した前記属性値を計算する属性値計算ステップと、前記属性値計算ステップにおける計算後、前記加工済データと前記加工済データに対する前記属性値である更新済属性値とを、次の前記データ加工部のソフトウェアコンポーネントに送信する出力ステップと、を備えるデータ制御方法が提供される。 Further, in order to solve such a problem, in the present invention, there is a data control method by a data control system that detects a change in data processed in a flow-based application composed of a combination of loosely coupled software components in whole or in part thereof. The loosely coupled software components constituting the flow-based application each have a function as a data processing unit that performs arbitrary data processing on the input data and outputs the processed data. Each time the data processing by each software component that includes a software component and has a function as the data processing unit is completed, the attribute to the processed data of the data processing is attached with the calculation data related to the data processing. The attribute value obtained by quantifying the change in the data due to the data processing for the processed data by using the request step for requesting the calculation of the value and the calculation data attached to the request in the request step. After the calculation in the attribute value calculation step, the processed data and the updated attribute value which is the attribute value for the processed data are transferred to the next software component of the data processing unit. A data control method comprising an output step to transmit is provided.

本発明によれば、フローベースアプリケーションにおいてデータが処理される過程におけるデータ変化を検知することができる。 According to the present invention, it is possible to detect data changes in the process of processing data in a flow-based application.

本発明の第1の実施形態に係るデータ制御システム1の構成例を示す図である。It is a figure which shows the structural example of the data control system 1 which concerns on 1st Embodiment of this invention. 図1に示したデータ制御システム1が動作する計算機10のハードウェア構成例を示すブロック図である。It is a block diagram which shows the hardware configuration example of the computer 10 which operates the data control system 1 shown in FIG. データ加工部112で処理されるデータの構成例を説明する図である。It is a figure explaining the composition example of the data processed by the data processing unit 112. 属性値情報の構成例を説明する図である。It is a figure explaining the configuration example of the attribute value information. 属性値再計算処理の処理手順例を示すフローチャートである。It is a flowchart which shows the processing procedure example of the attribute value recalculation processing. 属性値再計算処理における属性値の計算過程の一例を視覚的に説明する図である。It is a figure which visually explains an example of the calculation process of the attribute value in the attribute value recalculation process. データ制御システム1における全体的な処理の手順例を示すシーケンス図である。It is a sequence diagram which shows the procedure example of the whole processing in a data control system 1. データ制御システム1を利用したデータ処理検証システム2の構成例を示すブロック図である。It is a block diagram which shows the configuration example of the data processing verification system 2 using the data control system 1. データ処理検証システム2における全体的な処理の手順例を示すシーケンス図である。It is a sequence diagram which shows the procedure example of the whole processing in the data processing verification system 2. 第2の実施形態に係るデータ制御システム3の構成例を示す図である。It is a figure which shows the structural example of the data control system 3 which concerns on 2nd Embodiment. データ制御システム3における全体的な処理の手順例を示すシーケンス図である。It is a sequence diagram which shows the procedure example of the whole processing in a data control system 3. 属性値閾値リスト410を示す図である。It is a figure which shows the attribute value threshold value list 410. 評価式リスト420を示す図である。It is a figure which shows the evaluation expression list 420. 格納先リスト430を示す図である。It is a figure which shows the storage destination list 430.

以下、図面を参照して、本発明の実施形態を詳述する。 Hereinafter, embodiments of the present invention will be described in detail with reference to the drawings.

(1)第1の実施形態
図1は、本発明の第1の実施形態に係るデータ制御システム1の構成例を示す図である。データ制御システム1は、入力されたデータを処理するフローベースアプリケーション100と、フローベースアプリケーション100に接続されて、フローベースアプリケーション100で順次実行されるデータ処理に伴うデータの変化を検知するデータ制御機能150とを備える。
(1) First Embodiment FIG. 1 is a diagram showing a configuration example of a data control system 1 according to the first embodiment of the present invention. The data control system 1 has a flow-based application 100 that processes input data, and a data control function that is connected to the flow-based application 100 and detects changes in data due to data processing that is sequentially executed by the flow-based application 100. It is equipped with 150.

フローベースアプリケーション100は、全体またはその一部をN個のソフトウェアコンポーネントが疎結合して構成されるアプリケーションであり、例えば構造化されたデータ形式であるJSON形式に基づいた入出力を持つとする。JSON形式は、本実施形態を説明する上で用いる構造化データのデータ形式の一例であり、その他のデータ形式による構造化データであってよい。上記ソフトウェアコンポーネントはそれぞれ、入力されたデータをフローベースアプリケーションの目的に基づいて加工等の処理を行う。フローベースアプリケーション100では、これら複数のソフトウェアコンポーネントが連結されることにより、フローベースアプリケーション100に入力されたデータに対して、図1の処理1、処理2、・・・処理Nのように各処理ブロック101,102,103で順次データ加工などの処理を実施して、最終的なデータ処理の結果を出力する。 The flow-based application 100 is an application in which N software components are loosely coupled to the whole or a part thereof, and has input / output based on, for example, a structured data format, JSON format. The JSON format is an example of the data format of the structured data used in explaining the present embodiment, and may be structured data in another data format. Each of the above software components processes the input data, such as processing, based on the purpose of the flow-based application. In the flow-based application 100, by concatenating these plurality of software components, each process such as process 1, process 2, ... Process N in FIG. 1 is applied to the data input to the flow-based application 100. Processing such as data processing is sequentially performed in blocks 101, 102, 103, and the final data processing result is output.

図1に示したように、フローベースアプリケーション100には、情報入力部111、データ加工部112、データ記憶部113、制御機能要求部114、第1情報出力部115、及び第2情報出力部116が含まれる。なお、制御機能要求部114は、フローベースアプリケーション100にデータ制御機能を接続するための機能部であり、フローベースアプリケーションの本来の機能であるデータ加工等のために必要な機能部ではないため、データ制御機能150を構成する機能部とも言える。 As shown in FIG. 1, the flow-based application 100 includes an information input unit 111, a data processing unit 112, a data storage unit 113, a control function request unit 114, a first information output unit 115, and a second information output unit 116. Is included. The control function requesting unit 114 is a functional unit for connecting the data control function to the flow-based application 100, and is not a functional unit necessary for data processing or the like, which is the original function of the flow-based application. It can be said that it is a functional unit constituting the data control function 150.

情報入力部111は、データ制御システム1の外部からフローベースアプリケーション100に対する入力を受け付ける。具体的には、情報入力部111には、フローベースアプリケーション100での処理が要求されるデータ121と、当該データの属性値122とが入力される。情報入力部111は、入力されたデータ121及び属性値122を、処理1の処理ブロック101のデータ加工部112に入力する。なお、処理2以降の処理ブロック102,103では、情報入力部111からのデータ121及び属性値122の入力に代えて、直前の処理ブロックにおける制御機能要求部114から、加工済データ125及び更新済属性値126がデータ加工部112に入力される。 The information input unit 111 receives an input to the flow-based application 100 from the outside of the data control system 1. Specifically, the data 121 required to be processed by the flow-based application 100 and the attribute value 122 of the data are input to the information input unit 111. The information input unit 111 inputs the input data 121 and the attribute value 122 to the data processing unit 112 of the processing block 101 of the processing 1. In the processing blocks 102 and 103 after the processing 2, instead of inputting the data 121 and the attribute value 122 from the information input unit 111, the processed data 125 and the updated data 125 are updated from the control function requesting unit 114 in the immediately preceding processing block. The attribute value 126 is input to the data processing unit 112.

なお、本実施形態では、フローベースアプリケーション100においてデータが処理される過程で変化し得るデータの変化を数値化した指標値を「属性値」と称する。後述する図4に示すように、本実施形態における「属性値」は、データを構成する項目(データ項目)ごとに割り当てられる。したがって、データ121に対応する属性値122や、加工済データ125に対応する更新済属性値126は、各データ項目に割り当てられた属性値をリスト化した属性値情報の形式を持つ。 In the present embodiment, an index value that quantifies changes in data that may change in the process of processing data in the flow-based application 100 is referred to as an “attribute value”. As shown in FIG. 4 to be described later, the “attribute value” in the present embodiment is assigned to each item (data item) constituting the data. Therefore, the attribute value 122 corresponding to the data 121 and the updated attribute value 126 corresponding to the processed data 125 have a format of attribute value information listing the attribute values assigned to each data item.

データ加工部112は、入力されたデータに対して、フローベースアプリケーション100の目的に基づいて何らかの処理(例えばデータ加工)を実行し、その実行結果を出力する。図1に示したように、フローベースアプリケーション100はN個のデータ加工部112を備えており、それぞれのデータ加工部112が別個のソフトウェアコンポーネントで実現される。このデータ加工部112のソフトウェアコンポーネントは、フローベースアプリケーション100全体と同様なJSON形式の入出力インタフェースを持ち、それぞれのソフトウェアコンポーネントの独立性が強い疎結合な構成となっている。疎結合な構成においては、インタフェース以外において他のソフトウェアコンポーネントに対して相互に依存する余地が少ないため、ソフトウェアコンポーネントの改良や交換に際して、他のソフトウェアコンポーネントに対する影響が非常に少ないという特徴を持つ。 The data processing unit 112 executes some processing (for example, data processing) on the input data based on the purpose of the flow-based application 100, and outputs the execution result. As shown in FIG. 1, the flow-based application 100 includes N data processing units 112, each of which is realized by a separate software component. The software component of the data processing unit 112 has a JSON format input / output interface similar to that of the entire flow-based application 100, and each software component has a loosely coupled configuration with strong independence. In a loosely coupled configuration, there is little room for interdependence on other software components other than the interface, so that there is very little influence on other software components when improving or replacing the software components.

また、本実施形態では、フローベースアプリケーション100にデータ制御機能150が接続されているため、データ加工部112から出力されたデータ(加工済データ125)は、同一処理ブロック内の制御機能要求部114を経由して、次の処理ブロックのデータ加工部112または第1情報出力部115に入力される。 Further, in the present embodiment, since the data control function 150 is connected to the flow-based application 100, the data output from the data processing unit 112 (processed data 125) is the control function request unit 114 in the same processing block. Is input to the data processing unit 112 or the first information output unit 115 of the next processing block via the above.

データ記憶部113は、同一処理ブロック内のデータ加工部112による処理で用いられるデータ等を格納する。具体的には例えば、データ記憶部113は、データ加工部112がデータ加工の際に入力データに追加するデータ(内部データ123)、及び内部データ123のデータ項目の属性値124を保持する。内部データ123やそのデータ項目の属性値124については、図5及び図6の説明で後述する。 The data storage unit 113 stores data and the like used in processing by the data processing unit 112 in the same processing block. Specifically, for example, the data storage unit 113 holds the data (internal data 123) added to the input data by the data processing unit 112 during data processing, and the attribute value 124 of the data item of the internal data 123. The internal data 123 and the attribute value 124 of the data item will be described later in the description of FIGS. 5 and 6.

制御機能要求部114は、同一処理ブロック内のデータ加工部112による処理が終了したときに、データ制御機能150に対して属性値再計算の要求処理を実行する。当該要求処理の実行時、制御機能要求部114は、データ加工部112によるデータ処理に関する計算用データをデータ制御機能150の属性値計算部151に送信する。その後、属性値計算部151から再計算された更新済属性値126を受信すると、制御機能要求部114は、加工済データ125及び更新済属性値126を次の処理ブロックのデータ加工部112または第1情報出力部115に送信する。計算用データの詳細は、図5の説明で後述する。なお、制御機能要求部114は、データ加工部112とは別の独立したソフトウェアコンポーネントで実現される。 The control function request unit 114 executes a request process for attribute value recalculation to the data control function 150 when the process by the data processing unit 112 in the same processing block is completed. At the time of executing the request processing, the control function request unit 114 transmits the calculation data related to the data processing by the data processing unit 112 to the attribute value calculation unit 151 of the data control function 150. After that, when the updated attribute value 126 recalculated from the attribute value calculation unit 151 is received, the control function request unit 114 inputs the processed data 125 and the updated attribute value 126 to the data processing unit 112 or the data processing unit 112 of the next processing block. 1 Transmit to the information output unit 115. Details of the calculation data will be described later in the description of FIG. The control function requesting unit 114 is realized by an independent software component different from the data processing unit 112.

第1情報出力部115及び第2情報出力部116は、フローベースアプリケーション100及びデータ制御機能150による最終的な処理結果を示す情報、すなわち、処理ブロック103(処理N)の制御機能要求部114から送信された加工済データ125及び更新済属性値126を、所定の出力手段によって出力する。図1では、加工済データ125を出力する第1情報出力部115と、更新済属性値126を出力する第2情報出力部116とを分けて示しているが、1つの情報出力部で構成されてもよい。 The first information output unit 115 and the second information output unit 116 are information indicating the final processing result by the flow-based application 100 and the data control function 150, that is, from the control function request unit 114 of the processing block 103 (processing N). The transmitted processed data 125 and the updated attribute value 126 are output by a predetermined output means. In FIG. 1, the first information output unit 115 that outputs the processed data 125 and the second information output unit 116 that outputs the updated attribute value 126 are shown separately, but they are composed of one information output unit. You may.

データ制御機能150は、フローベースアプリケーション100でデータ処理される過程におけるデータの変化に応じて、当該データの属性値を計算(再計算)する属性値計算部151を備える。属性値計算部151は、ソフトウェアコンポーネントによって実現される。 The data control function 150 includes an attribute value calculation unit 151 that calculates (recalculates) the attribute value of the data according to the change of the data in the process of data processing by the flow-based application 100. The attribute value calculation unit 151 is realized by a software component.

属性値計算部151は、フローベースアプリケーション100における各データ加工部112のソフトウェアコンポーネントが処理を終了するごとに、制御機能要求部114からの属性値再計算の要求に応じて、当該処理後のデータの属性値を計算(再計算)し、計算結果の属性値(更新済属性値126)を制御機能要求部114に送信する(属性値再計算処理)。属性値計算部151は、データ加工部112や制御機能要求部114とは別の独立したソフトウェアコンポーネントによって実現される。属性値再計算処理の詳細は、図5及び図6等を参照しながら後述する。 The attribute value calculation unit 151 responds to the request for attribute value recalculation from the control function request unit 114 each time the software component of each data processing unit 112 in the flow-based application 100 finishes processing, and the data after the processing is performed. The attribute value of is calculated (recalculated), and the attribute value (updated attribute value 126) of the calculation result is transmitted to the control function request unit 114 (attribute value recalculation process). The attribute value calculation unit 151 is realized by an independent software component separate from the data processing unit 112 and the control function request unit 114. The details of the attribute value recalculation process will be described later with reference to FIGS. 5 and 6 and the like.

図2は、図1に示したデータ制御システム1が動作する計算機10のハードウェア構成例を示すブロック図である。図2に示したように、計算機10は、CPU(Central Processing Unit)11、メモリ12、記憶装置13、通信部14、入力部15、及び出力部16がバス17で相互に接続されて構成されるサーバである。 FIG. 2 is a block diagram showing a hardware configuration example of a computer 10 in which the data control system 1 shown in FIG. 1 operates. As shown in FIG. 2, the computer 10 is configured by connecting a CPU (Central Processing Unit) 11, a memory 12, a storage device 13, a communication unit 14, an input unit 15, and an output unit 16 to each other by a bus 17. Server.

CPU11は中央演算装置であり、メモリ12(または記憶装置13)に保持しているプログラムを実行することで、必要な機能を実装する。メモリ12は、CPU11が処理を実行する際に利用する主記憶装置であり、RAM(Random Access Memory)等の揮発性記憶素子で構成される。記憶装置13は、CPU11に提供する入力データや、CPU11から出力される出力データを保管するための補助記憶装置であり、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性記憶素子で構成される。 The CPU 11 is a central arithmetic unit, and implements necessary functions by executing a program held in the memory 12 (or the storage device 13). The memory 12 is a main storage device used when the CPU 11 executes processing, and is composed of a volatile storage element such as a RAM (Random Access Memory). The storage device 13 is an auxiliary storage device for storing input data provided to the CPU 11 and output data output from the CPU 11, and is a non-volatile storage element such as an HDD (Hard Disk Drive) or SSD (Solid State Drive). Consists of.

通信部14は、計算機10が外部装置との通信を行うために用いるインタフェースであり、NIC(Network Interface Card)等で構成される。通信部14はネットワーク(例えばインターネット)に接続され、ネットワークを介して外部装置との間で通信を行う。入力部15は、ユーザ(操作者)からの入力を受け付けるインタフェースであり、キーボード、タッチパネル、カードリーダ、または音声入力装置等で構成される。出力部16は、操作者に対してデータの出力を行うインタフェースであり、ディスプレイ、スピーカ、またはプリンタ等で構成される。バス17は、計算機10の内部通信路である。 The communication unit 14 is an interface used by the computer 10 to communicate with an external device, and is composed of a NIC (Network Interface Card) or the like. The communication unit 14 is connected to a network (for example, the Internet) and communicates with an external device via the network. The input unit 15 is an interface for receiving input from a user (operator), and is composed of a keyboard, a touch panel, a card reader, a voice input device, and the like. The output unit 16 is an interface for outputting data to the operator, and is composed of a display, a speaker, a printer, or the like. The bus 17 is an internal communication path of the computer 10.

本実施形態において、図1に示したフローベースアプリケーション100及びデータ制御機能150は、図2に例示したようなハードウェア構成を有する1台以上の計算機10の上で実行されることにより、後述する各処理を実現することができる。 In the present embodiment, the flow-based application 100 and the data control function 150 shown in FIG. 1 will be described later by being executed on one or more computers 10 having a hardware configuration as illustrated in FIG. Each process can be realized.

図3は、データ加工部112で処理されるデータの構成例を説明する図である。図3に示したデータ210は、フローベースアプリケーション100に入力されるデータ121のうち、データ加工部112のソフトウェアコンポーネントで処理され、その結果が出力されるデータについて、その構成を視覚的に説明するために表形式で表したものである。したがって実際のデータは、必ずしも図3のような表形式で保持される必要はない。 FIG. 3 is a diagram illustrating a configuration example of data processed by the data processing unit 112. The data 210 shown in FIG. 3 visually explains the configuration of the data 121 input to the flow-based application 100, which is processed by the software component of the data processing unit 112 and the result is output. Therefore, it is expressed in tabular form. Therefore, the actual data does not necessarily have to be held in the tabular format as shown in FIG.

本実施形態ではJSON形式を入出力形式としているため、データ121は、キーと値との組み合わせによって記述することができる。具体的には図3の場合、データ210は、キーとして「項目1」~「項目4」の項目名で示される4つのデータ項目211~214をキーとして有し、各データ項目211~214に紐付く値が設定されることにより、複数のデータ項目211~214を組み合わせて構成されるデータの値を各行に保持することができる。 Since the JSON format is used as the input / output format in this embodiment, the data 121 can be described by a combination of a key and a value. Specifically, in the case of FIG. 3, the data 210 has four data items 211 to 214 indicated by the item names of "item 1" to "item 4" as keys, and each data item 211 to 214 has a key. By setting the associated value, the value of the data configured by combining a plurality of data items 211 to 214 can be held in each line.

図4は、属性値情報の構成例を説明する図である。図4に示した属性値情報220は、属性値122及び更新済属性値126の構成を視覚的に説明するために、表形式で表したものである。したがって実際の属性値情報は、必ずしも図4のような表形式で保持される必要はない。 FIG. 4 is a diagram illustrating a configuration example of attribute value information. The attribute value information 220 shown in FIG. 4 is represented in a table format in order to visually explain the configuration of the attribute value 122 and the updated attribute value 126. Therefore, the actual attribute value information does not necessarily have to be held in the tabular format as shown in FIG.

具体的には図4の場合、属性値情報220は、属性値名221と1以上のデータ項目211~214とから構成されている。ここで、属性値情報220のデータ項目211~214の項目名「項目1」~「項目4」は、図3に示したデータ210のデータ項目211~214の項目名と対応している。すなわち、属性値情報220では、ある属性値名221を有する属性値として、データ210を構成する各データ項目211~214に対して属性値が割り当てられる。 Specifically, in the case of FIG. 4, the attribute value information 220 is composed of the attribute value name 221 and the data items 211 to 214 of 1 or more. Here, the item names "item 1" to "item 4" of the data items 211 to 214 of the attribute value information 220 correspond to the item names of the data items 211 to 214 of the data 210 shown in FIG. That is, in the attribute value information 220, the attribute value is assigned to each of the data items 211 to 214 constituting the data 210 as the attribute value having a certain attribute value name 221.

図5は、属性値再計算処理の処理手順例を示すフローチャートである。また、図6は、属性値再計算処理における属性値の計算過程の一例を視覚的に説明する図である。 FIG. 5 is a flowchart showing a processing procedure example of the attribute value recalculation processing. Further, FIG. 6 is a diagram for visually explaining an example of the attribute value calculation process in the attribute value recalculation process.

前述したように、属性値再計算処理は、フローベースアプリケーション100の各処理ブロックにおいてデータ加工部112のソフトウェアコンポーネントが処理を終了するごとに、属性値計算部151によって実行される処理である。 As described above, the attribute value recalculation process is a process executed by the attribute value calculation unit 151 each time the software component of the data processing unit 112 finishes the process in each processing block of the flow-based application 100.

なお、フローベースアプリケーション100においてそれぞれのデータ加工部112が実行する処理は、主に以下の3種類の処理に大別することができる。但し、データ加工部112は、3種の処理の何れかを必ずしも実行すると定義されるものではなく、それ以外の種類の処理(例えばバリデーション等)を実行してもよい。 The processing executed by each data processing unit 112 in the flow-based application 100 can be roughly classified into the following three types of processing. However, the data processing unit 112 is not necessarily defined to execute any one of the three types of processing, and may execute other types of processing (for example, validation and the like).

第1種の処理は、入力されたデータに対して、データ加工部112がアクセス可能なデータ記憶部113から新たなデータ項目を取得し、各データ項目内の値に紐付く形式で挿入する処理である。第2種の処理は、入力されたデータから、不要なデータ項目を削除する処理である。第3種の処理は、既にデータに存在するデータ項目に対して特定の処理を実施する処理である。第3種の処理では、対象となるデータ項目のデータ自体が変更されるため、属性値も変化する可能性がある。そこで、属性値計算部151は、データ加工部112によって第3種の処理が実行された場合には、処理対象となったデータ項目に対応する属性値を変更する。 The first type of processing is a process of acquiring a new data item from the data storage unit 113 accessible by the data processing unit 112 and inserting the input data in a format associated with the value in each data item. Is. The second type of process is a process of deleting unnecessary data items from the input data. The third type of processing is a processing for performing a specific processing on a data item that already exists in the data. In the third type of processing, since the data itself of the target data item is changed, the attribute value may also change. Therefore, when the data processing unit 112 executes the third type of processing, the attribute value calculation unit 151 changes the attribute value corresponding to the data item to be processed.

以下、必要に応じて図6も参照しながら、図5のフローチャートに沿って属性値再計算処理の処理手順を説明する。 Hereinafter, the processing procedure of the attribute value recalculation processing will be described with reference to FIG. 6 as necessary, according to the flowchart of FIG.

まず、属性値計算部151は、データ加工部112による処理(以下、代表的な処理であるデータ加工として説明する)が行われた後に、属性値を再計算するための計算用データを添えた属性値再計算の要求を制御機能要求部114から受信したことを契機として、図5に示す属性値再計算処理を開始する。 First, the attribute value calculation unit 151 attaches calculation data for recalculating the attribute value after the processing by the data processing unit 112 (hereinafter, described as data processing which is a typical processing) is performed. When the request for attribute value recalculation is received from the control function request unit 114, the attribute value recalculation process shown in FIG. 5 is started.

計算用データは、具体的には、データ加工の入力データ及び出力データに関して、入力データを構成するデータ項目の項目名リスト(入力データ項目名リスト)、出力データを構成するデータ項目の項目名リスト(出力データ項目名リスト)、入力データ以外から出力データに追加された内部データ123を構成するデータ項目の項目名リスト(内部データ項目名リスト)、入力データを構成する各データ項目に紐付く属性値情報(入力属性値情報)、内部データ123を構成する各データ項目に紐付く属性値124を示す情報(変更属性値情報)、及びデータ加工の処理内容にかかる情報(処理内容情報)の6種類のデータを、JSON形式で記述したデータである。内部データ項目名リストは、データ加工において内部データ123の追加が行われた場合にのみ計算用データに含められるとしてもよい。なお、入力データ、出力データ、及び内部データのデータ構成は図3のデータ210の構成に準ずるとし、各属性値情報のデータ構成は図4の属性値情報220の構成に準ずるとする。 Specifically, the calculation data includes an item name list (input data item name list) of data items constituting the input data and an item name list of data items constituting the output data with respect to the input data and the output data of the data processing. (Output data item name list), Item name list of data items constituting the internal data 123 added to the output data from other than the input data (Internal data item name list), Attributes associated with each data item constituting the input data 6 of value information (input attribute value information), information indicating the attribute value 124 associated with each data item constituting the internal data 123 (change attribute value information), and information related to the processing content of data processing (processing content information). This is data in which the types of data are described in the JSON format. The internal data item name list may be included in the calculation data only when the internal data 123 is added in the data processing. It is assumed that the data configuration of the input data, the output data, and the internal data conforms to the configuration of the data 210 in FIG. 3, and the data configuration of each attribute value information conforms to the configuration of the attribute value information 220 in FIG.

属性値再計算処理を開始するとまず、属性値計算部151は、制御機能要求部114から受信した計算用データが適切に揃っているかを確認する(ステップS101)。データが適切に揃っていない場合、属性値計算部151は、計算用データが揃っていない旨を通知するエラーを送信元の制御機能要求部114に返答し、属性値再計算処理を終了する。一方、データが適切に揃っている場合は、ステップS102に進む。 When the attribute value recalculation process is started, first, the attribute value calculation unit 151 confirms whether the calculation data received from the control function request unit 114 is properly prepared (step S101). If the data is not properly prepared, the attribute value calculation unit 151 returns an error notifying that the calculation data is not prepared to the control function request unit 114 of the transmission source, and ends the attribute value recalculation process. On the other hand, if the data are properly prepared, the process proceeds to step S102.

ステップS102において、属性値計算部151は、出力データ項目名リストに対して、入力データ項目名リストを紐付ける。また、内部データ項目名リストが存在する場合は、内部データ項目名リストも出力データ項目名リストに紐付ける。 In step S102, the attribute value calculation unit 151 associates the input data item name list with the output data item name list. If the internal data item name list exists, the internal data item name list is also linked to the output data item name list.

次に、ステップS103において、属性値計算部151は、ステップS102の紐付けの結果に基づいて、出力データ項目名リストの各データ項目名に対して、入力属性値情報及び変更属性値情報を参照して、それぞれの紐付け元の入力データまたは内部データのデータ項目名に紐付く属性値を紐付ける。 Next, in step S103, the attribute value calculation unit 151 refers to the input attribute value information and the changed attribute value information for each data item name in the output data item name list based on the result of the association in step S102. Then, the attribute value associated with each data item name of the input data or internal data of the association source is associated.

ステップS103の処理は、データ加工において第1種の処理(データ項目の追加)または第2種の処理(データ項目の削除)が行われた場合に実行される。このとき、属性値計算部151は、追加も削除もされていないデータ項目名に対しては、入力属性値情報から対応するデータ項目名の属性値を紐付ける。また、追加されたデータ項目名に対しては、属性値計算部151は、変更属性値情報から対応するデータ項目名の属性値を紐付ける。また、削除されたデータ項目名については、属性値計算部151は、当該データ項目名の属性値を登録しないようにする。 The process of step S103 is executed when the first type of process (addition of data items) or the second type of process (deletion of data items) is performed in the data processing. At this time, the attribute value calculation unit 151 associates the attribute value of the corresponding data item name from the input attribute value information with respect to the data item name that has not been added or deleted. Further, the attribute value calculation unit 151 associates the added data item name with the attribute value of the corresponding data item name from the changed attribute value information. Further, regarding the deleted data item name, the attribute value calculation unit 151 does not register the attribute value of the data item name.

次に、ステップS104において、属性値計算部151は、処理内容情報を参照し、ステップS103までの処理を終えた出力データ項目名リストについて、そのデータ項目名に紐付けられた属性値を更新する必要がある場合に、対象となる属性値の更新を実施する。ステップS104の処理は、データ加工において第3種の処理(データ変更処理)が行われた場合に実行される。このとき、属性値計算部151は、変更属性値情報に示される属性値の変更方針に従って、データ変更処理が行われたデータ項目名の属性値を再計算する。 Next, in step S104, the attribute value calculation unit 151 refers to the processing content information and updates the attribute value associated with the data item name of the output data item name list that has been processed up to step S103. If necessary, update the target attribute value. The process of step S104 is executed when the third type of process (data change process) is performed in the data processing. At this time, the attribute value calculation unit 151 recalculates the attribute value of the data item name for which the data change processing has been performed according to the attribute value change policy shown in the change attribute value information.

最後に、ステップS105において、属性値計算部151は、ステップS102で紐付けた出力データ項目名リストと、ステップS103~S104で紐付けた各データ項目名の属性値とを、JSON形式で記述することにより、出力データを構成する各データ項目に紐付く属性値である更新済属性値126を生成する。そして、属性値計算部151は、生成した更新済属性値126を属性値再計算の要求元の制御機能要求部114に返答し、属性値再計算処理を終了する。 Finally, in step S105, the attribute value calculation unit 151 describes the output data item name list associated with step S102 and the attribute value of each data item name associated with steps S103 to S104 in JSON format. As a result, the updated attribute value 126, which is an attribute value associated with each data item constituting the output data, is generated. Then, the attribute value calculation unit 151 returns the generated updated attribute value 126 to the control function request unit 114 of the request source for the attribute value recalculation, and ends the attribute value recalculation process.

ここで、図6を参照して、ステップS102~S105における属性値の紐付け及び算出について具体的に説明する。図6には、入力データの属性値情報として入力属性値情報231が示されており、この入力データに対するデータ加工として第1種、第2種、または第3種の処理が実行された場合における属性値の紐付けの具体例が、それぞれ処理パターン(A),(B),(C)に示されている。 Here, with reference to FIG. 6, the association and calculation of the attribute values in steps S102 to S105 will be specifically described. FIG. 6 shows the input attribute value information 231 as the attribute value information of the input data, and when the first type, the second type, or the third type processing is executed as the data processing for the input data. Specific examples of attribute value association are shown in processing patterns (A), (B), and (C), respectively.

処理パターン(A)は、上記入力データに対して「項目4」のデータ項目を挿入する第1種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102~S103の処理において、追加された「項目4」の内部データに関する変更属性値情報232を入力属性値情報231に追加することにより、出力データにおける属性値の紐付けを行うことができる。この属性値の紐付けの結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値234)を生成することができる。 The processing pattern (A) is a case where the first type of data processing for inserting the data item of "item 4" into the input data is executed. In this case, the attribute value calculation unit 151 is in steps S102 to S102. In the process of S103, by adding the changed attribute value information 232 regarding the added internal data of "item 4" to the input attribute value information 231, the attribute value in the output data can be associated. Using the result of this attribute value association, in step S105, the attribute value calculation unit 151 associates the updated attribute value 126 (FIG.) with each data item constituting the output data (processed data 125) after data processing. In 6, the updated attribute value 234) can be generated.

処理パターン(B)は、上記入力データに対して「項目2」のデータ項目を削除する第2種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102~S103の処理において、削除された「項目2」のデータ項目全体を入力属性値情報231から削除することにより、出力データにおける属性値の紐付けを行うことができる。この属性値の紐付けの結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値235)を生成することができる。 The processing pattern (B) is a case where the second type of data processing for deleting the data item of "item 2" is executed for the input data. In this case, the attribute value calculation unit 151 is in steps S102 to S102. By deleting the entire deleted data item of "item 2" from the input attribute value information 231 in the process of S103, the attribute value can be associated with the output data. Using the result of this attribute value association, in step S105, the attribute value calculation unit 151 associates the updated attribute value 126 (FIG.) with each data item constituting the output data (processed data 125) after data processing. In 6, the updated attribute value 235) can be generated.

処理パターン(C)は、上記入力データに対して「項目2」の内部データを変更する第3種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102,S104の処理において、「項目2」のデータ項目における内部データの変更に関する変更属性値情報233に基づいて、入力属性値情報231の「項目2」の属性値を変更することにより、出力データにおける属性値の更新を行うことができる。この属性値の更新結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値236)を生成することができる。 The processing pattern (C) is a case where the third type of data processing for changing the internal data of "item 2" is executed for the input data, and in this case, the attribute value calculation unit 151 is in step S102, In the process of S104, the attribute in the output data is changed by changing the attribute value of the input attribute value information 231 based on the change attribute value information 233 regarding the change of the internal data in the data item of the "item 2". You can update the value. Using the updated result of this attribute value, in step S105, the attribute value calculation unit 151 updates the updated attribute value 126 (in FIG. 6) associated with each data item constituting the output data (processed data 125) after data processing. The updated attribute value 236) can be generated.

このように、属性値計算部151は、処理内容情報に示されたデータ処理の処理内容の種別(例えば第1種~第3種の処理)に応じて所定のリスト操作(挿入、削除、属性値変更など)を行うことにより、出力データの各項目名に対応する属性値を更新した属性値情報(更新済属性値126)を生成することができる。なお、データ加工部112において、上述した第1種~第3種の処理を組み合わせたデータ加工が実行された場合は、属性値計算部151は、処理パターン(A)~(C)の処理を適宜組み合わせて実行することにより、加工済データ125に対応する更新済属性値126を生成することができる。 In this way, the attribute value calculation unit 151 performs a predetermined list operation (insert, delete, attribute) according to the type of the processing content of the data processing (for example, the processing of the first type to the third type) shown in the processing content information. By performing (value change, etc.), the attribute value information (updated attribute value 126) in which the attribute value corresponding to each item name of the output data is updated can be generated. When the data processing unit 112 executes data processing in which the above-mentioned first to third types of processing are combined, the attribute value calculation unit 151 processes the processing patterns (A) to (C). By executing the combination as appropriate, the updated attribute value 126 corresponding to the processed data 125 can be generated.

以上のように、本実施形態では、データ加工部112のソフトウェアコンポーネントによる処理が終了するたびに、データ制御機能150において属性値計算部151が属性値のリストを更新することにより、データの変化を記録する。また、データ制御機能150を構成する制御機能要求部114や属性値計算部151のソフトウェアコンポーネントの入出力を、データ加工部112のソフトウェアコンポーネントと同様の構造化データ(例えばJSON形式)に統一することで、データ加工部112と疎結合な構成を実現することができる。そのため、データ制御システム1では、複数のデータ加工部112を備える既存のフローベースアプリケーション100に大きな変更を加えることなく、データ制御機能150を追加することが可能となる。 As described above, in the present embodiment, every time the processing by the software component of the data processing unit 112 is completed, the attribute value calculation unit 151 updates the list of attribute values in the data control function 150 to change the data. Record. Further, the input / output of the software components of the control function request unit 114 and the attribute value calculation unit 151 constituting the data control function 150 should be unified into the same structured data (for example, JSON format) as the software components of the data processing unit 112. Therefore, a configuration loosely coupled with the data processing unit 112 can be realized. Therefore, in the data control system 1, it is possible to add the data control function 150 without making major changes to the existing flow-based application 100 including the plurality of data processing units 112.

図7は、データ制御システム1における全体的な処理の手順例を示すシーケンス図である。図7では、フローベースアプリケーション100にデータ121及びその属性値122が入力されてから、フローベースアプリケーション100及びデータ制御機能150において処理が実行され、最終的な出力が行われるまでの全体的な処理について、その手順が示されている。なお、データ制御機能150による属性値再計算の処理は、図5のフローチャートを参照して説明した通りであり、詳細な説明の繰り返しを省略する。 FIG. 7 is a sequence diagram showing an example of an overall processing procedure in the data control system 1. In FIG. 7, the overall process from the input of the data 121 and its attribute value 122 to the flow-based application 100 until the process is executed by the flow-based application 100 and the data control function 150 and the final output is performed. The procedure is shown for. The process of recalculating the attribute value by the data control function 150 is as described with reference to the flowchart of FIG. 5, and the repetition of the detailed description is omitted.

図7によれば、まず、フローベースアプリケーション100の情報入力部111が、フローベースアプリケーション100における処理が要求されるデータ121と、そのデータの属性値をJSON形式で表現した属性値122とを、外部から入力として受け付け、アプリケーションの処理を開始する(ステップS201)。 According to FIG. 7, first, the information input unit 111 of the flow-based application 100 converts the data 121 that is required to be processed in the flow-based application 100 and the attribute value 122 that expresses the attribute value of the data in JSON format. It receives as input from the outside and starts processing of the application (step S201).

次に、情報入力部111は、処理ブロック101(処理1)のソフトウェアコンポーネント(データ加工部112)に対して、ステップS201で入力されたデータ121及び属性値122を入力する(ステップS202)。 Next, the information input unit 111 inputs the data 121 and the attribute value 122 input in step S201 to the software component (data processing unit 112) of the processing block 101 (process 1) (step S202).

次に、処理1のデータ加工部112は、ステップS202で入力されたデータ121に対して所定のデータ処理(例えばデータ加工)を実施する(ステップS203)。当該データ処理の実施によって、データ加工部112は、加工済データ125を出力する。 Next, the data processing unit 112 of the process 1 performs predetermined data processing (for example, data processing) on the data 121 input in step S202 (step S203). By executing the data processing, the data processing unit 112 outputs the processed data 125.

次に、処理1の制御機能要求部114は、ステップS203で実施されたデータ処理の結果に基づいて、図5で説明した計算用データをデータ制御機能150に対して送信し、属性値の再計算を要求する(ステップS204)。 Next, the control function requesting unit 114 of the process 1 transmits the calculation data described with reference to FIG. 5 to the data control function 150 based on the result of the data processing performed in step S203, and re-attributes the attribute values. Request a calculation (step S204).

ステップS204の要求を受けたデータ制御機能150では、属性値計算部151が、図5のフローチャートで詳述した属性値再計算処理を実行することにより、加工済データ125に対応する属性値のリストをJSON形式で表現した更新済属性値126を生成する(ステップS205)。そして、属性値計算部151は、生成した更新済属性値126をステップS204の要求元の制御機能要求部114に送信する(ステップS206)。 In the data control function 150 that has received the request in step S204, the attribute value calculation unit 151 executes the attribute value recalculation process detailed in the flowchart of FIG. 5, thereby listing the attribute values corresponding to the processed data 125. Is generated in JSON format, and the updated attribute value 126 is generated (step S205). Then, the attribute value calculation unit 151 transmits the generated updated attribute value 126 to the control function request unit 114 of the request source in step S204 (step S206).

次に、制御機能要求部114は、ステップS203でデータ加工部112から出力された加工済データ125と、ステップS206で属性値計算部151から受信した更新済属性値126とを、次の処理ブロック102(処理2)のソフトウェアコンポーネント(データ加工部112)に入力する(ステップS207)。 Next, the control function requesting unit 114 sets the processed data 125 output from the data processing unit 112 in step S203 and the updated attribute value 126 received from the attribute value calculation unit 151 in step S206 into the next processing block. It is input to the software component (data processing unit 112) of 102 (process 2) (step S207).

以下、最後の処理ブロック103(処理N)まで順次、各処理ブロックにおいてステップS202~ステップS207の処理を繰り返し実行する(ステップS208)。但し、最後の処理ブロック103(処理N)では、ステップS206で属性値計算部151から更新済属性値126を受信した制御機能要求部114は、ステップS207の処理を実行する代わりに、処理NのステップS203でデータ加工部112から出力された加工済データ125を第1情報出力部115に入力し、処理NのステップS206で属性値計算部151から受信した更新済属性値126を第2情報出力部116に入力する。 Hereinafter, the processes of steps S202 to S207 are repeatedly executed in each process block sequentially until the final process block 103 (process N) (step S208). However, in the final processing block 103 (processing N), the control function requesting unit 114, which has received the updated attribute value 126 from the attribute value calculating unit 151 in step S206, instead of executing the processing in step S207, performs the processing N. The processed data 125 output from the data processing unit 112 in step S203 is input to the first information output unit 115, and the updated attribute value 126 received from the attribute value calculation unit 151 in step S206 of process N is output to the second information. Input to unit 116.

そして最後に、第1情報出力部115及び第2情報出力部は、ステップS201で入力されたデータ121に対してフローベースアプリケーション100における全てのデータ加工部112のソフトウェアコンポーネントによるデータ加工が実施された後の最終的な加工済データ125と、各データ加工の処理が行われるごとにデータ制御機能150によって再計算された最終的な更新済属性値126とを、フローベースアプリケーション100の結果として出力する(ステップS209,S210)。 Finally, the first information output unit 115 and the second information output unit have performed data processing on the data 121 input in step S201 by the software components of all the data processing units 112 in the flow-based application 100. The final processed data 125 afterwards and the final updated attribute value 126 recalculated by the data control function 150 each time each data processing process is performed are output as the result of the flow-based application 100. (Steps S209 and S210).

図7のように全体処理が行われることにより、データ制御システム1では、フローベースアプリケーション100の各ソフトウェアコンポーネント(データ加工部112)の処理後に、データ制御機能150のソフトウェアコンポーネント(属性値計算部151)によって属性値が再計算され、全てのソフトウェアコンポーネントによる処理が完了した時点で、最終的な加工済データ125と、当該データに対応する属性値(最終的な更新済属性値126)が取得できる状態となる。 By performing the entire processing as shown in FIG. 7, in the data control system 1, after the processing of each software component (data processing unit 112) of the flow-based application 100, the software component (attribute value calculation unit 151) of the data control function 150 is performed. ) Recalculates the attribute value, and when the processing by all the software components is completed, the final processed data 125 and the attribute value corresponding to the data (final updated attribute value 126) can be acquired. It becomes a state.

また、データ制御システム1では、制御機能要求部114から属性値計算部151に対する属性値再計算要求の際、データ加工部112によるデータ処理の入出力データ自体は送信されず、入力データ項目リストや出力データ項目名リスト等といった、入出力データよりもサイズの小さい情報だけが計算用データとして送信されることから、データ制御機能150による属性値の再計算処理に関してシステム全体に掛かる負荷を抑制することができ、データ制御機能150を接続することによってフローベースアプリケーション100の設計に与える影響を極力抑えることができる。 Further, in the data control system 1, when the attribute value recalculation request is made from the control function request unit 114 to the attribute value calculation unit 151, the input / output data itself of the data processing by the data processing unit 112 is not transmitted, and the input data item list or Since only information smaller in size than the input / output data, such as the output data item name list, is transmitted as calculation data, it is possible to suppress the load on the entire system regarding the attribute value recalculation processing by the data control function 150. By connecting the data control function 150, the influence on the design of the flow-based application 100 can be suppressed as much as possible.

図8は、データ制御システム1を利用したデータ処理検証システム2の構成例を示すブロック図である。データ処理検証システム2は、フローベースアプリケーション100の開発者160が、フローベースアプリケーション100による処理内容及び処理結果が適切であるか否かを、データ制御システム1から出力される(最終的な)更新済属性値126を用いて検証するシステムである。なお、図8では、図1で示した構成の大部分を省略して記載している。 FIG. 8 is a block diagram showing a configuration example of a data processing verification system 2 using the data control system 1. In the data processing verification system 2, the developer 160 of the flow-based application 100 outputs (finally) an update from the data control system 1 whether or not the processing content and processing result by the flow-based application 100 are appropriate. This is a system for verification using the completed attribute value 126. In FIG. 8, most of the configurations shown in FIG. 1 are omitted.

図8によれば、データ処理検証システム2は、データ制御システム1と、開発者160が操作する開発者用計算機170とがネットワークで接続されて構成される。開発者用計算機170は、図2に例示した計算機10と同様のハードウェア構成を有する計算機である。開発者用計算機170は、検証用のテストデータをフローベースアプリケーション100に対して送信するテストデータ送信部171と、フローベースアプリケーション100及びデータ制御機能150で処理された処理後のテストデータを受信するテストデータ受信部172とを備える。 According to FIG. 8, the data processing verification system 2 is configured by connecting the data control system 1 and the developer computer 170 operated by the developer 160 via a network. The developer computer 170 is a computer having the same hardware configuration as the computer 10 illustrated in FIG. The developer computer 170 receives the test data transmission unit 171 that transmits test data for verification to the flow-based application 100, and the processed test data processed by the flow-based application 100 and the data control function 150. A test data receiving unit 172 is provided.

図9は、データ処理検証システム2における全体的な処理の手順例を示すシーケンス図である。図9では、図7で説明した処理は省略して記載している。 FIG. 9 is a sequence diagram showing an example of an overall processing procedure in the data processing verification system 2. In FIG. 9, the process described with reference to FIG. 7 is omitted.

図9によれば、開発者160は検証処理を開始すると、開発者用計算機170を操作して、テストデータ送信部171からフローベースアプリケーション100の情報入力部111に対して、検証用のテストデータを送信する(ステップS301)。検証用のテストデータは、データ加工部112によるデータ処理を行わせるデータ(例えばデータ121)と、当該データの属性値(例えば属性値122)とが含まれる。また、開発者用計算機170とフローベースアプリケーション100との間のデータの送受信は、それぞれの計算機10の通信部14(図2参照)を介して行われる。 According to FIG. 9, when the developer 160 starts the verification process, the developer 160 operates the developer computer 170 to perform verification test data from the test data transmission unit 171 to the information input unit 111 of the flow-based application 100. Is transmitted (step S301). The verification test data includes data to be processed by the data processing unit 112 (for example, data 121) and an attribute value (for example, attribute value 122) of the data. Further, data transmission / reception between the developer computer 170 and the flow-based application 100 is performed via the communication unit 14 (see FIG. 2) of each computer 10.

次に、検証用のテストデータを情報入力部111で受信したフローベースアプリケーション100では、検証用のテストデータに含まれるデータ121を最初の処理対象として、各データ加工部112が、順次データ処理を実施する(ステップS302)。また、図7等で説明したように、各データ加工部112による処理が終了するごとに、データ制御機能150が属性値の再計算を行う(ステップS303~S305)。 Next, in the flow-based application 100 in which the test data for verification is received by the information input unit 111, each data processing unit 112 sequentially performs data processing with the data 121 included in the test data for verification as the first processing target. It is carried out (step S302). Further, as described with reference to FIG. 7 and the like, the data control function 150 recalculates the attribute value each time the processing by each data processing unit 112 is completed (steps S303 to S305).

そして、データ制御システム1(フローベースアプリケーション100及びデータ制御機能150)における処理が終了すると、第1情報出力部115及び第2情報出力部116から最終的な加工済データ125及びその更新済属性値126が出力され、開発者用計算機170のテストデータ受信部172は、上記加工済データ125及び更新済属性値126を処理後のテストデータとして受信する(ステップS306,S307)。 Then, when the processing in the data control system 1 (flow-based application 100 and data control function 150) is completed, the final processed data 125 and its updated attribute values are obtained from the first information output unit 115 and the second information output unit 116. 126 is output, and the test data receiving unit 172 of the developer computer 170 receives the processed data 125 and the updated attribute value 126 as the processed test data (steps S306 and S307).

そして、開発者用計算機170は、テストデータ受信部172が受信した処理後のテストデータ(加工済データ125及び更新済属性値126)を、開発者用計算機170の出力部16(図2参照)から出力する(ステップS308)。開発者160は、ステップS308で出力された加工済データ125及び更新済属性値126を、自身が予め意図したデータの処理結果及び属性値と比較することにより、フローベースアプリケーション100の設計が適切であるか否かを評価することができる。 Then, the developer computer 170 inputs the processed test data (processed data 125 and updated attribute value 126) received by the test data receiving unit 172 to the output unit 16 of the developer computer 170 (see FIG. 2). Output from (step S308). The developer 160 is suitable for designing the flow-based application 100 by comparing the processed data 125 and the updated attribute value 126 output in step S308 with the processing result and the attribute value of the data intended in advance. It is possible to evaluate whether or not there is.

このようなデータ処理検証システム2によれば、最終的なデータ処理結果である加工済データ125だけでなく、各データ処理の段階で適宜更新された属性値(更新済属性値126)も評価対象として出力されることから、開発者160からは見えないフローベースアプリケーション100のソフトウェアコンポーネント間において想定していないデータの変化がないことを検証することが容易となる。特に、データ処理検証システム2では、属性値を用いた検証が可能であることから、データ自体を検証することに比べて、簡易に検証が可能という利点がある。 According to such a data processing verification system 2, not only the processed data 125 which is the final data processing result but also the attribute value (updated attribute value 126) appropriately updated at each data processing stage is evaluated. Since it is output as, it becomes easy to verify that there is no unexpected change in data between the software components of the flow-based application 100 which is invisible to the developer 160. In particular, since the data processing verification system 2 can perform verification using attribute values, there is an advantage that verification can be performed more easily than verification of the data itself.

(2)第2の実施形態
図10は、第2の実施形態に係るデータ制御システム3の構成例を示す図である。データ制御システム3は、第1の実施形態で示したデータ制御システム1に、データ保管アプリケーション300及びストレージ320が接続されて構成される。また、データ制御システム3には、フローベースアプリケーション100の利用者180が操作する利用者用計算機190が接続される。なお、第1の実施形態で説明した構成や処理と共通する部分については、説明を省略する。
(2) Second Embodiment FIG. 10 is a diagram showing a configuration example of the data control system 3 according to the second embodiment. The data control system 3 is configured by connecting the data storage application 300 and the storage 320 to the data control system 1 shown in the first embodiment. Further, a user computer 190 operated by the user 180 of the flow-based application 100 is connected to the data control system 3. The description of parts common to the configurations and processes described in the first embodiment will be omitted.

利用者用計算機190は、図2に例示した計算機10と同様のハードウェア構成を有する計算機であり、フローベースアプリケーション100を操作するソフトウェアを有する。利用者180は、この利用者用計算機190を操作することによって、フローベースアプリケーション100を利用することができる。 The user computer 190 is a computer having the same hardware configuration as the computer 10 illustrated in FIG. 2, and has software for operating the flow-based application 100. The user 180 can use the flow-based application 100 by operating the user computer 190.

利用者用計算機190は、入力データ送信部191及び保管場所受信部192を備える。 The user calculator 190 includes an input data transmission unit 191 and a storage location reception unit 192.

入力データ送信部191は、利用者180による操作に基づいて、フローベースアプリケーション100でデータ処理を行わせるデータ121及び当該データの属性値122を、フローベースアプリケーション100に送信する。入力データ送信部191から送信されたデータ121及び属性値122は、フローベースアプリケーション100の情報入力部111に入力される。 The input data transmission unit 191 transmits the data 121 to be processed by the flow-based application 100 and the attribute value 122 of the data to the flow-based application 100 based on the operation by the user 180. The data 121 and the attribute value 122 transmitted from the input data transmission unit 191 are input to the information input unit 111 of the flow-based application 100.

保管場所受信部192は、データ保管アプリケーション300の保管情報出力部306から、加工済データ125の保管場所情報312を受信する。 The storage location receiving unit 192 receives the storage location information 312 of the processed data 125 from the storage information output unit 306 of the data storage application 300.

データ保管アプリケーション300は、フローベースアプリケーション100でデータ処理された加工済データ125を自動的に振り分けて保管し、その保管場所を出力するアプリケーションであって、第1情報入力部301、第2情報入力部302、データ保管部303、保管場所決定部304、設定データ格納部305、及び保管情報出力部306を備える。 The data storage application 300 is an application that automatically distributes and stores the processed data 125 processed by the flow-based application 100 and outputs the storage location, and is an application for outputting the storage location, the first information input unit 301 and the second information input. A unit 302, a data storage unit 303, a storage location determination unit 304, a setting data storage unit 305, and a storage information output unit 306 are provided.

第1情報入力部301は、フローベースアプリケーション100の第1情報出力部115に接続され、第1情報出力部115から加工済データ125を入力する。第2情報入力部302は、フローベースアプリケーション100の第2情報出力部116に接続され、第2情報出力部116から更新済属性値126を入力する。 The first information input unit 301 is connected to the first information output unit 115 of the flow-based application 100, and the processed data 125 is input from the first information output unit 115. The second information input unit 302 is connected to the second information output unit 116 of the flow-based application 100, and inputs the updated attribute value 126 from the second information output unit 116.

データ保管部303は、第1情報入力部301に入力された加工済データ125を保管場所決定部304によって決定された保管場所に保管する。また、データ保管部303は、加工済データ125を保管した後、保管場所を示す情報である保管場所情報312を生成し、保管情報出力部306に送信する。 The data storage unit 303 stores the processed data 125 input to the first information input unit 301 in the storage location determined by the storage location determination unit 304. Further, after storing the processed data 125, the data storage unit 303 generates storage location information 312, which is information indicating the storage location, and transmits the storage location information 312 to the storage information output unit 306.

保管場所決定部304は、第2情報入力部302に入力された更新済属性値126に基づいて、加工済データ125の保管場所をストレージ320の複数の記憶域321の何れかに決定する。 The storage location determination unit 304 determines the storage location of the processed data 125 in any of the plurality of storage areas 321 of the storage 320 based on the updated attribute value 126 input to the second information input unit 302.

設定データ格納部305は、保管場所決定部304が保管場所を決定する際に参照される情報(設定ルール311)を格納する。 The setting data storage unit 305 stores information (setting rule 311) referred to when the storage location determination unit 304 determines the storage location.

保管情報出力部306は、データ保管部303から受信した保管場所情報312を、フローベースアプリケーション100にデータ121を入力した利用者用計算機190に送信する。 The storage information output unit 306 transmits the storage location information 312 received from the data storage unit 303 to the user computer 190 that has input the data 121 to the flow-based application 100.

図11は、データ制御システム3における全体的な処理の手順例を示すシーケンス図である。 FIG. 11 is a sequence diagram showing an example of an overall processing procedure in the data control system 3.

図11によれば、利用者180は、利用者用計算機190を操作して、フローベースアプリケーション100に対してデータ処理を要求するデータ121とその属性値122を入力し、データ処理後のデータ(加工済データ125)の保管を要求する(ステップS401)。 According to FIG. 11, the user 180 operates the user computer 190 to input the data 121 requesting data processing to the flow-based application 100 and the attribute value 122 thereof, and the data after the data processing ( Request the storage of the processed data 125) (step S401).

次に、フローベースアプリケーション100及びデータ制御機能150は、図7に示したシーケンス図の処理によって、データ処理と、及びデータ処理ごとの属性値の再計算とを行う(ステップS402,S403)。 Next, the flow-based application 100 and the data control function 150 perform data processing and recalculation of attribute values for each data processing by processing the sequence diagram shown in FIG. 7 (steps S402 and S403).

そして、フローベースアプリケーション100及びデータ制御機能150における処理が終了すると、加工済データ125及び更新済属性値126がデータ保管アプリケーション300に送信される(ステップS404)。詳しくは、第1情報出力部115が加工済データ125を第1情報入力部301に送信し、第2情報出力部116が更新済属性値126を第2情報入力部302に送信する。 Then, when the processing in the flow-based application 100 and the data control function 150 is completed, the processed data 125 and the updated attribute value 126 are transmitted to the data storage application 300 (step S404). Specifically, the first information output unit 115 transmits the processed data 125 to the first information input unit 301, and the second information output unit 116 transmits the updated attribute value 126 to the second information input unit 302.

次に、データ保管アプリケーション300では、保管場所決定部304が、第2情報入力部302に入力された属性値(更新済属性値126)を評価して、データ保管部303による加工済データ125の保管場所を決定する(ステップS405)。保管場所決定部304による保管場所の決定では、例えば、設定データ格納部305に格納された設定ルール311を用いて評価する。このような保管場所の決定方法の具体例については、図12~図14を参照しながら後述する。 Next, in the data storage application 300, the storage location determination unit 304 evaluates the attribute value (updated attribute value 126) input to the second information input unit 302, and the processed data 125 of the data storage unit 303 is evaluated. The storage location is determined (step S405). In the determination of the storage location by the storage location determination unit 304, for example, the setting rule 311 stored in the setting data storage unit 305 is used for evaluation. A specific example of such a storage location determination method will be described later with reference to FIGS. 12 to 14.

なお、保管場所決定部304による保管場所の決定において参照されるデータは、設定データ格納部305内の設定ルール311に限定されるものではなく、その他の情報を参照してもよい。具体的には例えば、更新済属性値126に示される属性値の他、加工済データ125、アクセス元のアプリケーション(フローベースアプリケーション100)、利用者180、または利用者用計算機190等に関する情報を参照してもよい。また、データ保管アプリケーション300が任意の方法によって参照可能なその他の情報も保管場所の決定の根拠とするように実装されてもよい。 The data referred to in the determination of the storage location by the storage location determination unit 304 is not limited to the setting rule 311 in the setting data storage unit 305, and other information may be referred to. Specifically, for example, in addition to the attribute value shown in the updated attribute value 126, refer to information on the processed data 125, the access source application (flow-based application 100), the user 180, the user computer 190, and the like. You may. In addition, other information that can be referred to by the data storage application 300 by any method may be implemented as a basis for determining the storage location.

また、保管場所決定部304による保管場所の決定において参照されるデータは、予め用意されたデータに限定されるものではなく、例えば、保管場所を決定する際、もしくはその他の任意のタイミングで、任意の方法で自動生成されるデータであってもよい。 Further, the data referred to in the determination of the storage location by the storage location determination unit 304 is not limited to the data prepared in advance, and is, for example, arbitrary when determining the storage location or at any other timing. It may be the data automatically generated by the method of.

次に、データ保管部303が、ステップS405で決定された保管場所(ストレージ320の記憶域321)に、ステップS404で第1情報入力部301に入力されたデータ(加工済データ125)を保管する(ステップS406)。そして、ストレージ320は、加工済データ125を記憶域321に保管すると、データの保管結果をデータ保管アプリケーション300に返答する(ステップS407)。 Next, the data storage unit 303 stores the data (processed data 125) input to the first information input unit 301 in step S404 in the storage location (storage area 321 of the storage 320) determined in step S405. (Step S406). Then, when the processed data 125 is stored in the storage area 321, the storage 320 returns the data storage result to the data storage application 300 (step S407).

なお、データ制御システム3では、ステップS405で保管場所決定部304が保管場所を決定した後、ステップS406でデータ保管部303が加工済データ125を保管場所に保管する前に、任意の方法により、利用者180に対して保管場所について確認をとるように実装してもよい。 In the data control system 3, after the storage location determination unit 304 determines the storage location in step S405 and before the data storage unit 303 stores the processed data 125 in the storage location in step S406, an arbitrary method may be used. It may be implemented so as to ask the user 180 about the storage location.

次に、データ保管部303は、加工済データ125を保管した場所を示す保管場所情報312を保管情報出力部306に送信し、保管情報出力部306が、ステップS401でフローベースアプリケーション100に対して要求を行った利用者用計算機190に、保管場所情報312を出力する(ステップS408)。 Next, the data storage unit 303 transmits the storage location information 312 indicating the location where the processed data 125 is stored to the storage information output unit 306, and the storage information output unit 306 sends the storage information output unit 306 to the flow-based application 100 in step S401. The storage location information 312 is output to the user computer 190 that has made the request (step S408).

そして、利用者180は、利用者用計算機190の出力部16(図2参照)に表示された保管場所情報312を確認することにより、自身がフローベースアプリケーション100に対して送信した入力データ(データ121)のデータ処理後のデータ(加工済データ125)の保管場所を確認することができる(ステップS409)。 Then, the user 180 confirms the storage location information 312 displayed on the output unit 16 (see FIG. 2) of the user computer 190, and thereby confirms the input data (data) that the user 180 has transmitted to the flow-based application 100. The storage location of the data (processed data 125) after the data processing of 121) can be confirmed (step S409).

以上が、データ制御システム3における全体的な処理の手順例である。以下では、補足として、ステップS405における保管場所の決定について、図12~図14を参照しながら、具体的な決定方法の一例を説明する。 The above is an example of the overall processing procedure in the data control system 3. Hereinafter, as a supplement, an example of a specific determination method for determining the storage location in step S405 will be described with reference to FIGS. 12 to 14.

図12は、属性値閾値リスト410を示す図であり、図13は、評価式リスト420を示す図であり、図14は、格納先リスト430を示す図である。図12~図14に示す各リストは、設定データ格納部305に格納される設定ルール311の一例である。 12 is a diagram showing an attribute value threshold list 410, FIG. 13 is a diagram showing an evaluation expression list 420, and FIG. 14 is a diagram showing a storage destination list 430. Each list shown in FIGS. 12 to 14 is an example of the setting rule 311 stored in the setting data storage unit 305.

図12に示した属性値閾値リスト410は、属性値ごとの閾値を設定したデータであって、属性値名411~413のそれぞれに閾値が設定されている。属性値名411~413は、更新済属性値126に含まれる属性値名(属性値情報のデータ構成については、図4を参照)に対応するものであり、例えば、「属性値a」という属性値に対しては閾値「α」が設定されている。 The attribute value threshold list 410 shown in FIG. 12 is data in which a threshold is set for each attribute value, and a threshold is set for each of the attribute value names 411 to 413. The attribute value names 411 to 413 correspond to the attribute value names included in the updated attribute value 126 (see FIG. 4 for the data structure of the attribute value information). For example, the attribute "attribute value a" is used. A threshold "α" is set for the value.

図13に示した評価式リスト420は、更新済属性値126に対する評価式を設定したデータであって、評価順421、評価式422、及び格納先423のデータ項目を有する。評価順421は、評価式422の実行順序を示し、評価順の小さい方から優先して評価式422が実行されて、格納先423が決定される。評価式422で用いられている「α」や「β」といった変数は、図12の属性値閾値リスト410に設定された閾値に対応している。また、格納先423には、加工済データ125の保管場所としてストレージ320の記憶域321の何れかが設定されている。 The evaluation expression list 420 shown in FIG. 13 is data in which an evaluation expression is set for the updated attribute value 126, and has data items in the evaluation order 421, the evaluation expression 422, and the storage destination 423. The evaluation order 421 indicates the execution order of the evaluation formula 422, and the evaluation formula 422 is executed with priority given to the one having the smaller evaluation order, and the storage destination 423 is determined. The variables such as "α" and "β" used in the evaluation formula 422 correspond to the threshold values set in the attribute value threshold value list 410 of FIG. Further, in the storage destination 423, any of the storage areas 321 of the storage 320 is set as the storage location of the processed data 125.

図14に示した格納先リスト430は、保管場所へのアクセス方法を設定したデータであって、格納先431及びアクセス方法432のデータ項目を有する。格納先431の設定内容は、図13の評価式リスト420の格納先423の設定内容に対応する。 The storage destination list 430 shown in FIG. 14 is data for which an access method to the storage location is set, and has data items of the storage destination 431 and the access method 432. The setting contents of the storage destination 431 correspond to the setting contents of the storage destination 423 of the evaluation formula list 420 of FIG.

保管場所決定部304は、上記の図12~図14の各リスト(設定ルール311)を用いて更新済属性値126を評価することにより、加工済データ125の保管場所(格納先)を決定することができる。 The storage location determination unit 304 determines the storage location (storage destination) of the processed data 125 by evaluating the updated attribute value 126 using each list (setting rule 311) of FIGS. 12 to 14 above. be able to.

以上に説明したように、データ制御システム3によれば、データの性質に応じて保管方法を分ける必要がある場合に、利用者180は、フローベースアプリケーション100の設計に依存することなく、データ制御機能150によって算出された属性値(更新済属性値126)に基づいて、データ処理後の加工済データ125を適切な場所に自動で保管することができる。これにより、フローベースアプリケーション100の設計ミス、利用者180の操作ミス、または、利用者180による意図しない入力データによる不適切なデータの保管等を防止することができる。 As described above, according to the data control system 3, when it is necessary to divide the storage method according to the nature of the data, the user 180 controls the data without depending on the design of the flow-based application 100. Based on the attribute value (updated attribute value 126) calculated by the function 150, the processed data 125 after data processing can be automatically stored in an appropriate place. This makes it possible to prevent a design error of the flow-based application 100, an operation error of the user 180, or inappropriate data storage due to unintended input data by the user 180.

なお、本発明は上記した各実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した各実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 The present invention is not limited to the above-described embodiments, and includes various modifications. For example, each of the above-described embodiments has been described in detail in order to explain the present invention in an easy-to-understand manner, and is not necessarily limited to those having all the described configurations. Further, it is possible to replace a part of the configuration of one embodiment with the configuration of another embodiment, and it is also possible to add the configuration of another embodiment to the configuration of one embodiment. Further, it is possible to add / delete / replace a part of the configuration of each embodiment with another configuration.

また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Further, each of the above configurations, functions, processing units, processing means and the like may be realized by hardware by designing a part or all of them by, for example, an integrated circuit. Further, each of the above configurations, functions, and the like may be realized by software by the processor interpreting and executing a program that realizes each function. Information such as programs, tables, and files that realize each function can be placed in a memory, a recording device such as a hard disk or SSD (Solid State Drive), or a recording medium such as an IC card, SD card, or DVD.

また、図面において制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。 Further, in the drawings, the control lines and information lines are shown as necessary for explanation, and not all the control lines and information lines are necessarily shown in the product. In practice, it can be considered that almost all configurations are interconnected.

1,3 データ制御システム
2 データ処理検証システム
10 計算機
11 CPU
12 メモリ
13 記憶装置
14 通信部
15 入力部
16 出力部
17 バス
100 フローベースアプリケーション
101,102,103 処理ブロック
111 情報入力部
112 データ加工部
113 データ記憶部
114 制御機能要求部
115 第1情報出力部
116 第2情報出力部
121 データ
122,124 属性値
123 内部データ
125 加工済データ
126 更新済属性値
150 データ制御機能
151 属性値計算部
160 開発者
170 開発者用計算機
171 テストデータ送信部
172 テストデータ受信部
180 利用者
190 利用者用計算機
191 入力データ送信部
192 保管場所受信部
210 データ
220 属性値情報
231 入力属性値情報
232,233 変更属性値情報
234,235,236 更新済属性値
300 データ保管アプリケーション
301 第1情報入力部
302 第2情報入力部
303 データ保管部
304 保管場所決定部
305 設定データ格納部
306 保管情報出力部
311 設定ルール
312 保管場所情報
320 ストレージ
321 記憶域
410 属性値閾値リスト
420 評価式リスト
430 格納先リスト
1, 3 Data control system 2 Data processing verification system 10 Computer 11 CPU
12 Memory 13 Storage device 14 Communication unit 15 Input unit 16 Output unit 17 Bus 100 Flow-based application 101, 102, 103 Processing block 111 Information input unit 112 Data processing unit 113 Data storage unit 114 Control function request unit 115 First information output unit 116 2nd information output unit 121 Data 122,124 Attribute value 123 Internal data 125 Processed data 126 Updated attribute value 150 Data control function 151 Attribute value calculation unit 160 Developer 170 Developer computer 171 Test data transmission unit 172 Test data Receiver 180 User 190 User computer 191 Input data transmitter 192 Storage location Receiver 210 Data 220 Attribute value information 231 Input attribute value information 232,233 Change attribute value information 234,235,236 Updated attribute value 300 Data storage Application 301 1st information input unit 302 2nd information input unit 303 Data storage unit 304 Storage location determination unit 305 Setting data storage unit 306 Storage information output unit 311 Setting rule 312 Storage location information 320 Storage 321 Storage area 410 Attribute value threshold list 420 Evaluation formula list 430 Storage destination list

Claims (10)

全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムであって、
前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、
前記データ処理によるデータの変化を数値化した属性値を所定の計算用データを用いて計算する属性値計算部と、
それぞれの前記データ加工部による前記データ処理が終了するごとに、当該データ処理に関する前記計算用データを添えて、当該データ処理の前記加工済データに対する前記属性値の計算を前記属性値計算部に要求する制御機能要求部と、
を備え、
前記制御機能要求部は、前記属性値計算部から前記加工済データに対する前記属性値の計算結果である更新済属性値を受け取った後、前記加工済データ及び前記更新済属性値を次の前記データ加工部のソフトウェアコンポーネントに送信する
ことを特徴とするデータ制御システム。
A data control system that detects data changes processed in a flow-based application that consists of a combination of loosely coupled software components in whole or in part.
The loosely coupled software components constituting the flow-based application each have a function as a data processing unit that performs arbitrary data processing on input data and outputs processed data. Is included,
An attribute value calculation unit that calculates an attribute value that quantifies a change in data due to the data processing using predetermined calculation data, and an attribute value calculation unit.
Each time the data processing by each of the data processing units is completed, the attribute value calculation unit is requested to calculate the attribute value for the processed data of the data processing together with the calculation data related to the data processing. Control function request section and
Equipped with
After receiving the updated attribute value which is the calculation result of the attribute value for the processed data from the attribute value calculation unit, the control function requesting unit transfers the processed data and the updated attribute value to the next data. A data control system characterized by sending to software components in the processing department.
前記属性値計算部は、前記フローベースアプリケーション及び前記データ加工部としての機能を有するソフトウェアコンポーネントに対して疎結合なソフトウェアコンポーネントによって実装される
ことを特徴とする請求項1に記載のデータ制御システム。
The data control system according to claim 1, wherein the attribute value calculation unit is implemented by a software component that is loosely coupled to the flow-based application and the software component having a function as the data processing unit.
前記フローベースアプリケーション、前記データ加工部としての機能を有するソフトウェアコンポーネント、及び前記属性値計算部のソフトウェアコンポーネントは、同一形式の構造化データを入出力とする
ことを特徴とする請求項2に記載のデータ制御システム。
The second aspect of claim 2, wherein the flow-based application, the software component having a function as the data processing unit, and the software component of the attribute value calculation unit input and output structured data of the same format. Data control system.
前記制御機能要求部が前記要求の際に添える前記計算用データには、
前記データ処理における前記入力データ及び前記加工済データが含まれず、前記入力データの前記構造化データの項目名と各項目名に対応する前記属性値、前記加工済データの前記構造化データの項目名、及び、前記データ処理における処理内容を示す処理内容情報が含まれ、
前記属性値計算部は、前記計算用データに基づいて、前記処理内容情報に示される処理内容の種別に応じた所定のリスト操作を行うことにより、前記加工済データの前記構造化データの各項目名に対応する前記属性値を更新した前記更新済属性値を生成する
ことを特徴とする請求項3に記載のデータ制御システム。
The calculation data attached by the control function requesting unit at the time of the request includes
The input data and the processed data in the data processing are not included, the item name of the structured data of the input data, the attribute value corresponding to each item name, and the item name of the structured data of the processed data. , And processing content information indicating the processing content in the data processing is included.
Based on the calculation data, the attribute value calculation unit performs a predetermined list operation according to the type of the processing content shown in the processing content information, thereby performing each item of the structured data of the processed data. The data control system according to claim 3, wherein the updated attribute value is generated by updating the attribute value corresponding to the name.
前記データ処理において前記入力データ以外から前記加工済データに追加された内部データが存在する場合、
前記制御機能要求部は、前記内部データの前記構造化データの項目名と各項目名に対応する前記属性値を前記計算用データに加える
ことを特徴とする請求項4に記載のデータ制御システム。
When there is internal data added to the processed data from other than the input data in the data processing
The data control system according to claim 4, wherein the control function requesting unit adds an item name of the structured data of the internal data and the attribute value corresponding to each item name to the calculation data.
前記フローベースアプリケーションと、前記制御機能要求部と、前記属性値計算部と、を備えて構成されるデータ制御システムであって、
前記フローベースアプリケーションにおいて前記データ加工部としての機能を有する全てのソフトウェアコンポーネントによる前記データ処理が実施された後の最終的な前記加工済データと、前記最終的な加工済データに対して前記属性値計算部によって計算された最終的な前記更新済属性値と、を出力する情報出力部をさらに備える
ことを特徴とする請求項1に記載のデータ制御システム。
A data control system including the flow-based application, the control function request unit, and the attribute value calculation unit.
The attribute value for the final processed data and the final processed data after the data processing is performed by all the software components having the function as the data processing unit in the flow-based application. The data control system according to claim 1, further comprising an information output unit that outputs the final updated attribute value calculated by the calculation unit.
前記情報出力部に接続されて、前記最終的な加工済データ及び前記最終的な更新済属性値を入力するデータ保管アプリケーションをさらに備え、
前記データ保管アプリケーションは、
前記最終的な加工済データの保管場所を決定する保管場所決定部と、
前記保管場所決定部によって決定された保管場所に前記最終的な加工済データを保管するとともに、前記保管場所を示す保管場所情報を生成するデータ保管部と、
前記データ保管部で生成された前記保管場所情報を出力する保管情報出力部と、を有する
ことを特徴とする請求項6に記載のデータ制御システム。
Further provided with a data storage application connected to the information output unit to input the final processed data and the final updated attribute value.
The data storage application
The storage location determination unit that determines the storage location of the final processed data,
A data storage unit that stores the final processed data in a storage location determined by the storage location determination unit and generates storage location information indicating the storage location.
The data control system according to claim 6, further comprising a storage information output unit that outputs the storage location information generated by the data storage unit.
前記保管場所決定部は、所定の設定ルールを用いて前記最終的な更新済属性値を評価することにより、前記最終的な加工済データの前記保管場所を決定する
ことを特徴とする請求項7に記載のデータ制御システム。
7. The storage location determination unit determines the storage location of the final processed data by evaluating the final updated attribute value using a predetermined setting rule. The data control system described in.
前記保管場所には、前記データ保管アプリケーションに接続されたストレージの記憶域が含まれる
ことを特徴とする請求項7に記載のデータ制御システム。
The data control system according to claim 7, wherein the storage location includes a storage area of storage connected to the data storage application.
全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムによるデータ制御方法であって、
前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、
前記データ加工部としての機能を有するそれぞれのソフトウェアコンポーネントによる前記データ処理が終了するごとに、当該データ処理に関する計算用データを添えて、当該データ処理の前記加工済データに対する属性値の計算を要求する要求ステップと、
前記要求ステップにおける前記要求に添えられた前記計算用データを用いて、前記加工済データに対して、前記データ処理によるデータの変化を数値化した前記属性値を計算する属性値計算ステップと、
前記属性値計算ステップにおける計算後、前記加工済データと前記加工済データに対する前記属性値である更新済属性値とを、次の前記データ加工部のソフトウェアコンポーネントに送信する出力ステップと、
を備えることを特徴とするデータ制御方法。
A data control method using a data control system that detects data changes processed in a flow-based application consisting of a combination of loosely coupled software components in whole or in part.
The loosely coupled software components constituting the flow-based application each have a function as a data processing unit that performs arbitrary data processing on input data and outputs processed data. Is included,
Each time the data processing by each software component having a function as the data processing unit is completed, the calculation of the attribute value for the processed data of the data processing is requested with the calculation data related to the data processing. Request step and
Using the calculation data attached to the request in the request step, the attribute value calculation step for calculating the attribute value obtained by quantifying the change in the data due to the data processing with respect to the processed data, and the attribute value calculation step.
After the calculation in the attribute value calculation step, an output step of transmitting the processed data and the updated attribute value which is the attribute value for the processed data to the next software component of the data processing unit, and
A data control method characterized by comprising.
JP2020212414A 2020-12-22 2020-12-22 Data control system and data control method Active JP7492451B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2020212414A JP7492451B2 (en) 2020-12-22 2020-12-22 Data control system and data control method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2020212414A JP7492451B2 (en) 2020-12-22 2020-12-22 Data control system and data control method

Publications (2)

Publication Number Publication Date
JP2022098810A true JP2022098810A (en) 2022-07-04
JP7492451B2 JP7492451B2 (en) 2024-05-29

Family

ID=82261826

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2020212414A Active JP7492451B2 (en) 2020-12-22 2020-12-22 Data control system and data control method

Country Status (1)

Country Link
JP (1) JP7492451B2 (en)

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5233587B2 (en) 2008-10-27 2013-07-10 富士通株式会社 Business flow analysis program, method and apparatus
KR102128571B1 (en) 2016-03-23 2020-06-30 포그혼 시스템스 인코포레이티드 Efficient state machine for real-time dataflow programming

Also Published As

Publication number Publication date
JP7492451B2 (en) 2024-05-29

Similar Documents

Publication Publication Date Title
US8387117B2 (en) Context-aware role-based access control system and control method thereof
CN108287708B (en) Data processing method and device, server and computer readable storage medium
JP2013513147A (en) High-throughput and reliable replication of converted data in information systems
JP2008009809A (en) Database synchronous processing program
EP2416246B1 (en) Extensibility of business process and application logic
JP2020013544A (en) Management method and management apparatus for effectiveness of information processing task
US11399071B2 (en) Program operation system and program operation method
CN111694572A (en) Code format conversion method, device, computer equipment and storage medium
US8332335B2 (en) Systems and methods for decision pattern identification and application
US20120011490A1 (en) Development system
US20140157216A1 (en) Managing model checks of sequential designs
US20210149870A1 (en) Method, apparatus, and computer program product for improved tracking of state data
CN111078418B (en) Operation synchronization method, device, electronic equipment and computer readable storage medium
US20100228801A1 (en) Information processing apparatus, file management system, information processing method and computer readable medium
JP2022098810A (en) Data control system and data control method
US20220365789A1 (en) Storage medium, information processing method, and information processing apparatus
US11625497B2 (en) File management system and non-transitory computer readable medium
US8775873B2 (en) Data processing apparatus that performs test validation and computer-readable storage medium
KR20100113975A (en) Method of an xml document management to cancel a specific past operation selectively, and system using the same
JP2008293103A (en) Distributed arrangement device and method for arranging virtual device
JP7391740B2 (en) Impact identification support device and impact identification support method
JP6085481B2 (en) Programmable circuit, arithmetic processing method
JP2011227789A (en) Information processor and program
AU2011338879B2 (en) Events fired pre- and post-method execution
CN108124000A (en) Management system and control method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230302

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20240329

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20240517

R150 Certificate of patent or registration of utility model

Ref document number: 7492451

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150