JP7492451B2 - Data control system and data control method - Google Patents
Data control system and data control method Download PDFInfo
- Publication number
- JP7492451B2 JP7492451B2 JP2020212414A JP2020212414A JP7492451B2 JP 7492451 B2 JP7492451 B2 JP 7492451B2 JP 2020212414 A JP2020212414 A JP 2020212414A JP 2020212414 A JP2020212414 A JP 2020212414A JP 7492451 B2 JP7492451 B2 JP 7492451B2
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims description 65
- 238000012545 processing Methods 0.000 claims description 236
- 238000004364 calculation method Methods 0.000 claims description 82
- 238000013500 data storage Methods 0.000 claims description 34
- 230000008859 change Effects 0.000 claims description 9
- 230000006870 function Effects 0.000 description 62
- 230000008569 process Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 24
- 238000012795 verification Methods 0.000 description 16
- 238000011156 evaluation Methods 0.000 description 15
- 238000012360 testing method Methods 0.000 description 15
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 6
- 238000013461 design Methods 0.000 description 5
- 238000012986 modification Methods 0.000 description 3
- 230000004048 modification Effects 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- FFBHFFJDDLITSX-UHFFFAOYSA-N benzyl N-[2-hydroxy-4-(3-oxomorpholin-4-yl)phenyl]carbamate Chemical compound OC1=C(NC(=O)OCC2=CC=CC=C2)C=CC(=C1)N1CCOCC1=O FFBHFFJDDLITSX-UHFFFAOYSA-N 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 230000008901 benefit Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 239000000047 product Substances 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 238000010200 validation analysis Methods 0.000 description 1
Images
Landscapes
- Debugging And Monitoring (AREA)
- Stored Programmes (AREA)
Description
本発明は、データ制御システム及びデータ制御方法に関し、フローベースアプリケーションにおけるデータの変化を監視するデータ制御システム及びデータ制御方法に適用して好適なものである。 The present invention relates to a data control system and a data control method, and is suitable for use in a data control system and a data control method that monitors changes in data in a flow-based application.
近年、コンポーネント化されたソフトウェア部品(ソフトウェアコンポーネント)を組み合わせて開発されたアプリケーション(フローベースアプリケーション)の実装が進んでおり、当該システムにおける効率的な運用方法等が提案されている。 In recent years, the implementation of applications (flow-based applications) developed by combining componentized software parts (software components) has progressed, and efficient operation methods for such systems have been proposed.
例えば、特許文献1には、「ビジネス環境の変化やSLAの充足状況に応じて柔軟に、機能、性能、または信頼性といったサービスレベルを制御することを可能としたアプリケーション運用管理システム及び方法」が開示されている。
For example,
ところで、フローベースアプリケーションのようなサーバレス環境のアプリケーションにおいては、各機能が疎結合になるため、アプリケーションに入力されたデータが各ソフトウェアコンポーネントにおいて処理されていく過程で、データの変化が発生し得る。例えば、ソフトウェアコンポーネントの設計ミス等によって、想定しないデータの変化が生じることもある。そしてこのようなデータの変化を見逃すと、データの完全性や機密性が低下したり、フローベースアプリケーションが誤った結果を出力したりするおそれがあった。ここで、上述した特許文献1には、フローベースアプリケーションの運用管理について記載されているが、フローベースアプリケーションに入力されたデータが各ソフトウェアコンポーネントを通る過程で発生するデータの変化や、データの変化に伴う制御については、開示されていなかった。
In serverless applications such as flow-based applications, functions are loosely coupled, so data changes can occur as data input to the application is processed by each software component. For example, unexpected data changes can occur due to design errors in software components. If such data changes are overlooked, data integrity and confidentiality can be reduced, and the flow-based application can output erroneous results. The above-mentioned
本発明は以上の点を考慮してなされたもので、フローベースアプリケーションにおいてデータが処理される過程におけるデータ変化を検知することが可能なデータ制御システム及びデータ制御方法を提案しようとするものである。 The present invention has been made in consideration of the above points, and aims to propose a data control system and a data control method that are capable of detecting data changes during data processing in a flow-based application.
かかる課題を解決するため本発明においては、全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムであって、前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、前記データ処理によるデータの変化を数値化した属性値を所定の計算用データを用いて計算する属性値計算部と、それぞれの前記データ加工部による前記データ処理が終了するごとに、当該データ処理に関する前記計算用データを添えて、当該データ処理の前記加工済データに対する前記属性値の計算を前記属性値計算部に要求する制御機能要求部と、を備え、前記制御機能要求部は、前記属性値計算部から前記加工済データに対する前記属性値の計算結果である更新済属性値を受け取った後、前記加工済データ及び前記更新済属性値を次の前記データ加工部のソフトウェアコンポーネントに送信する、データ制御システムが提供される。 In order to solve such problems, the present invention provides a data control system that detects changes in data processed in a flow-based application that is composed of a combination of loosely coupled software components, in whole or in part, and the plurality of loosely coupled software components that compose the flow-based application each include a software component that functions as a data processing unit that performs arbitrary data processing on input data and outputs processed data, and the data control system includes an attribute value calculation unit that calculates attribute values that quantify changes in data due to the data processing using predetermined calculation data, and a control function request unit that requests the attribute value calculation unit to calculate the attribute values for the processed data of the data processing, attaching the calculation data related to the data processing, each time the data processing by each of the data processing units is completed, and the control function request unit receives updated attribute values that are the calculation results of the attribute values for the processed data from the attribute value calculation unit, and then transmits the processed data and the updated attribute values to the next software component of the data processing unit.
また、かかる課題を解決するため本発明においては、全体またはその一部を疎結合なソフトウェアコンポーネントの組み合わせで構成したフローベースアプリケーションにおいて処理されるデータ変化を検知するデータ制御システムによるデータ制御方法であって、前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、前記データ加工部としての機能を有するそれぞれのソフトウェアコンポーネントによる前記データ処理が終了するごとに、当該データ処理に関する計算用データを添えて、当該データ処理の前記加工済データに対する属性値の計算を要求する要求ステップと、前記要求ステップにおける前記要求に添えられた前記計算用データを用いて、前記加工済データに対して、前記データ処理によるデータの変化を数値化した前記属性値を計算する属性値計算ステップと、前記属性値計算ステップにおける計算後、前記加工済データと前記加工済データに対する前記属性値である更新済属性値とを、次の前記データ加工部のソフトウェアコンポーネントに送信する出力ステップと、を備えるデータ制御方法が提供される。 In order to solve such problems, the present invention provides a data control method using a data control system that detects changes in data processed in a flow-based application that is composed of a combination of loosely coupled software components, in whole or in part, and the loosely coupled software components that compose the flow-based application each include a software component that functions as a data processing unit that performs arbitrary data processing on input data and outputs processed data, and the data control method includes the following steps: a request step for requesting calculation of an attribute value for the processed data of the data processing by attaching calculation data related to the data processing each time the data processing by each software component that functions as the data processing unit is completed; an attribute value calculation step for calculating, for the processed data, the attribute value that quantifies the data change due to the data processing using the calculation data attached to the request in the request step; and an output step for transmitting, after the calculation in the attribute value calculation step, the processed data and the updated attribute value that is the attribute value for the processed data to the next software component of the data processing unit.
本発明によれば、フローベースアプリケーションにおいてデータが処理される過程におけるデータ変化を検知することができる。 The present invention makes it possible to detect data changes during data processing in a flow-based application.
以下、図面を参照して、本発明の実施形態を詳述する。 The following describes an embodiment of the present invention in detail with reference to the drawings.
(1)第1の実施形態
図1は、本発明の第1の実施形態に係るデータ制御システム1の構成例を示す図である。データ制御システム1は、入力されたデータを処理するフローベースアプリケーション100と、フローベースアプリケーション100に接続されて、フローベースアプリケーション100で順次実行されるデータ処理に伴うデータの変化を検知するデータ制御機能150とを備える。
1 is a diagram showing an example of the configuration of a
フローベースアプリケーション100は、全体またはその一部をN個のソフトウェアコンポーネントが疎結合して構成されるアプリケーションであり、例えば構造化されたデータ形式であるJSON形式に基づいた入出力を持つとする。JSON形式は、本実施形態を説明する上で用いる構造化データのデータ形式の一例であり、その他のデータ形式による構造化データであってよい。上記ソフトウェアコンポーネントはそれぞれ、入力されたデータをフローベースアプリケーションの目的に基づいて加工等の処理を行う。フローベースアプリケーション100では、これら複数のソフトウェアコンポーネントが連結されることにより、フローベースアプリケーション100に入力されたデータに対して、図1の処理1、処理2、・・・処理Nのように各処理ブロック101,102,103で順次データ加工などの処理を実施して、最終的なデータ処理の結果を出力する。
The flow-based
図1に示したように、フローベースアプリケーション100には、情報入力部111、データ加工部112、データ記憶部113、制御機能要求部114、第1情報出力部115、及び第2情報出力部116が含まれる。なお、制御機能要求部114は、フローベースアプリケーション100にデータ制御機能を接続するための機能部であり、フローベースアプリケーションの本来の機能であるデータ加工等のために必要な機能部ではないため、データ制御機能150を構成する機能部とも言える。
As shown in FIG. 1, the flow-based
情報入力部111は、データ制御システム1の外部からフローベースアプリケーション100に対する入力を受け付ける。具体的には、情報入力部111には、フローベースアプリケーション100での処理が要求されるデータ121と、当該データの属性値122とが入力される。情報入力部111は、入力されたデータ121及び属性値122を、処理1の処理ブロック101のデータ加工部112に入力する。なお、処理2以降の処理ブロック102,103では、情報入力部111からのデータ121及び属性値122の入力に代えて、直前の処理ブロックにおける制御機能要求部114から、加工済データ125及び更新済属性値126がデータ加工部112に入力される。
The
なお、本実施形態では、フローベースアプリケーション100においてデータが処理される過程で変化し得るデータの変化を数値化した指標値を「属性値」と称する。後述する図4に示すように、本実施形態における「属性値」は、データを構成する項目(データ項目)ごとに割り当てられる。したがって、データ121に対応する属性値122や、加工済データ125に対応する更新済属性値126は、各データ項目に割り当てられた属性値をリスト化した属性値情報の形式を持つ。
In this embodiment, the index value that quantifies the change in data that may occur in the process of data processing in the flow-based
データ加工部112は、入力されたデータに対して、フローベースアプリケーション100の目的に基づいて何らかの処理(例えばデータ加工)を実行し、その実行結果を出力する。図1に示したように、フローベースアプリケーション100はN個のデータ加工部112を備えており、それぞれのデータ加工部112が別個のソフトウェアコンポーネントで実現される。このデータ加工部112のソフトウェアコンポーネントは、フローベースアプリケーション100全体と同様なJSON形式の入出力インタフェースを持ち、それぞれのソフトウェアコンポーネントの独立性が強い疎結合な構成となっている。疎結合な構成においては、インタフェース以外において他のソフトウェアコンポーネントに対して相互に依存する余地が少ないため、ソフトウェアコンポーネントの改良や交換に際して、他のソフトウェアコンポーネントに対する影響が非常に少ないという特徴を持つ。
The
また、本実施形態では、フローベースアプリケーション100にデータ制御機能150が接続されているため、データ加工部112から出力されたデータ(加工済データ125)は、同一処理ブロック内の制御機能要求部114を経由して、次の処理ブロックのデータ加工部112または第1情報出力部115に入力される。
In addition, in this embodiment, since the
データ記憶部113は、同一処理ブロック内のデータ加工部112による処理で用いられるデータ等を格納する。具体的には例えば、データ記憶部113は、データ加工部112がデータ加工の際に入力データに追加するデータ(内部データ123)、及び内部データ123のデータ項目の属性値124を保持する。内部データ123やそのデータ項目の属性値124については、図5及び図6の説明で後述する。
The
制御機能要求部114は、同一処理ブロック内のデータ加工部112による処理が終了したときに、データ制御機能150に対して属性値再計算の要求処理を実行する。当該要求処理の実行時、制御機能要求部114は、データ加工部112によるデータ処理に関する計算用データをデータ制御機能150の属性値計算部151に送信する。その後、属性値計算部151から再計算された更新済属性値126を受信すると、制御機能要求部114は、加工済データ125及び更新済属性値126を次の処理ブロックのデータ加工部112または第1情報出力部115に送信する。計算用データの詳細は、図5の説明で後述する。なお、制御機能要求部114は、データ加工部112とは別の独立したソフトウェアコンポーネントで実現される。
When the processing by the
第1情報出力部115及び第2情報出力部116は、フローベースアプリケーション100及びデータ制御機能150による最終的な処理結果を示す情報、すなわち、処理ブロック103(処理N)の制御機能要求部114から送信された加工済データ125及び更新済属性値126を、所定の出力手段によって出力する。図1では、加工済データ125を出力する第1情報出力部115と、更新済属性値126を出力する第2情報出力部116とを分けて示しているが、1つの情報出力部で構成されてもよい。
The first
データ制御機能150は、フローベースアプリケーション100でデータ処理される過程におけるデータの変化に応じて、当該データの属性値を計算(再計算)する属性値計算部151を備える。属性値計算部151は、ソフトウェアコンポーネントによって実現される。
The
属性値計算部151は、フローベースアプリケーション100における各データ加工部112のソフトウェアコンポーネントが処理を終了するごとに、制御機能要求部114からの属性値再計算の要求に応じて、当該処理後のデータの属性値を計算(再計算)し、計算結果の属性値(更新済属性値126)を制御機能要求部114に送信する(属性値再計算処理)。属性値計算部151は、データ加工部112や制御機能要求部114とは別の独立したソフトウェアコンポーネントによって実現される。属性値再計算処理の詳細は、図5及び図6等を参照しながら後述する。
The attribute
図2は、図1に示したデータ制御システム1が動作する計算機10のハードウェア構成例を示すブロック図である。図2に示したように、計算機10は、CPU(Central Processing Unit)11、メモリ12、記憶装置13、通信部14、入力部15、及び出力部16がバス17で相互に接続されて構成されるサーバである。
Figure 2 is a block diagram showing an example of the hardware configuration of a
CPU11は中央演算装置であり、メモリ12(または記憶装置13)に保持しているプログラムを実行することで、必要な機能を実装する。メモリ12は、CPU11が処理を実行する際に利用する主記憶装置であり、RAM(Random Access Memory)等の揮発性記憶素子で構成される。記憶装置13は、CPU11に提供する入力データや、CPU11から出力される出力データを保管するための補助記憶装置であり、HDD(Hard Disk Drive)やSSD(Solid State Drive)等の不揮発性記憶素子で構成される。
The
通信部14は、計算機10が外部装置との通信を行うために用いるインタフェースであり、NIC(Network Interface Card)等で構成される。通信部14はネットワーク(例えばインターネット)に接続され、ネットワークを介して外部装置との間で通信を行う。入力部15は、ユーザ(操作者)からの入力を受け付けるインタフェースであり、キーボード、タッチパネル、カードリーダ、または音声入力装置等で構成される。出力部16は、操作者に対してデータの出力を行うインタフェースであり、ディスプレイ、スピーカ、またはプリンタ等で構成される。バス17は、計算機10の内部通信路である。
The
本実施形態において、図1に示したフローベースアプリケーション100及びデータ制御機能150は、図2に例示したようなハードウェア構成を有する1台以上の計算機10の上で実行されることにより、後述する各処理を実現することができる。
In this embodiment, the flow-based
図3は、データ加工部112で処理されるデータの構成例を説明する図である。図3に示したデータ210は、フローベースアプリケーション100に入力されるデータ121のうち、データ加工部112のソフトウェアコンポーネントで処理され、その結果が出力されるデータについて、その構成を視覚的に説明するために表形式で表したものである。したがって実際のデータは、必ずしも図3のような表形式で保持される必要はない。
Figure 3 is a diagram for explaining an example of the structure of data processed by the
本実施形態ではJSON形式を入出力形式としているため、データ121は、キーと値との組み合わせによって記述することができる。具体的には図3の場合、データ210は、キーとして「項目1」~「項目4」の項目名で示される4つのデータ項目211~214をキーとして有し、各データ項目211~214に紐付く値が設定されることにより、複数のデータ項目211~214を組み合わせて構成されるデータの値を各行に保持することができる。
In this embodiment, the input/output format is the JSON format, so the
図4は、属性値情報の構成例を説明する図である。図4に示した属性値情報220は、属性値122及び更新済属性値126の構成を視覚的に説明するために、表形式で表したものである。したがって実際の属性値情報は、必ずしも図4のような表形式で保持される必要はない。
Figure 4 is a diagram illustrating an example of the configuration of attribute value information. The
具体的には図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
図5は、属性値再計算処理の処理手順例を示すフローチャートである。また、図6は、属性値再計算処理における属性値の計算過程の一例を視覚的に説明する図である。 Figure 5 is a flowchart showing an example of the processing procedure for the attribute value recalculation process. Also, Figure 6 is a diagram 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 executed by the attribute
なお、フローベースアプリケーション100においてそれぞれのデータ加工部112が実行する処理は、主に以下の3種類の処理に大別することができる。但し、データ加工部112は、3種の処理の何れかを必ずしも実行すると定義されるものではなく、それ以外の種類の処理(例えばバリデーション等)を実行してもよい。
The processes executed by each
第1種の処理は、入力されたデータに対して、データ加工部112がアクセス可能なデータ記憶部113から新たなデータ項目を取得し、各データ項目内の値に紐付く形式で挿入する処理である。第2種の処理は、入力されたデータから、不要なデータ項目を削除する処理である。第3種の処理は、既にデータに存在するデータ項目に対して特定の処理を実施する処理である。第3種の処理では、対象となるデータ項目のデータ自体が変更されるため、属性値も変化する可能性がある。そこで、属性値計算部151は、データ加工部112によって第3種の処理が実行された場合には、処理対象となったデータ項目に対応する属性値を変更する。
The first type of processing is processing in which the
以下、必要に応じて図6も参照しながら、図5のフローチャートに沿って属性値再計算処理の処理手順を説明する。 Below, the procedure for the attribute value recalculation process will be explained according to the flowchart in Figure 5, while also referring to Figure 6 as necessary.
まず、属性値計算部151は、データ加工部112による処理(以下、代表的な処理であるデータ加工として説明する)が行われた後に、属性値を再計算するための計算用データを添えた属性値再計算の要求を制御機能要求部114から受信したことを契機として、図5に示す属性値再計算処理を開始する。
First, after processing by the data processing unit 112 (hereinafter, described as data processing, which is a representative process), the attribute
計算用データは、具体的には、データ加工の入力データ及び出力データに関して、入力データを構成するデータ項目の項目名リスト(入力データ項目名リスト)、出力データを構成するデータ項目の項目名リスト(出力データ項目名リスト)、入力データ以外から出力データに追加された内部データ123を構成するデータ項目の項目名リスト(内部データ項目名リスト)、入力データを構成する各データ項目に紐付く属性値情報(入力属性値情報)、内部データ123を構成する各データ項目に紐付く属性値124を示す情報(変更属性値情報)、及びデータ加工の処理内容にかかる情報(処理内容情報)の6種類のデータを、JSON形式で記述したデータである。内部データ項目名リストは、データ加工において内部データ123の追加が行われた場合にのみ計算用データに含められるとしてもよい。なお、入力データ、出力データ、及び内部データのデータ構成は図3のデータ210の構成に準ずるとし、各属性値情報のデータ構成は図4の属性値情報220の構成に準ずるとする。
Specifically, the calculation data is data in which six types of data are described in JSON format for the input data and output data of the data processing: an item name list of data items constituting the input data (input data item name list), an item name list of data items constituting the output data (output data item name list), an item name list of data items constituting the
属性値再計算処理を開始するとまず、属性値計算部151は、制御機能要求部114から受信した計算用データが適切に揃っているかを確認する(ステップS101)。データが適切に揃っていない場合、属性値計算部151は、計算用データが揃っていない旨を通知するエラーを送信元の制御機能要求部114に返答し、属性値再計算処理を終了する。一方、データが適切に揃っている場合は、ステップS102に進む。
When the attribute value recalculation process starts, the attribute
ステップS102において、属性値計算部151は、出力データ項目名リストに対して、入力データ項目名リストを紐付ける。また、内部データ項目名リストが存在する場合は、内部データ項目名リストも出力データ項目名リストに紐付ける。
In step S102, the attribute
次に、ステップS103において、属性値計算部151は、ステップS102の紐付けの結果に基づいて、出力データ項目名リストの各データ項目名に対して、入力属性値情報及び変更属性値情報を参照して、それぞれの紐付け元の入力データまたは内部データのデータ項目名に紐付く属性値を紐付ける。
Next, in step S103, the attribute
ステップS103の処理は、データ加工において第1種の処理(データ項目の追加)または第2種の処理(データ項目の削除)が行われた場合に実行される。このとき、属性値計算部151は、追加も削除もされていないデータ項目名に対しては、入力属性値情報から対応するデータ項目名の属性値を紐付ける。また、追加されたデータ項目名に対しては、属性値計算部151は、変更属性値情報から対応するデータ項目名の属性値を紐付ける。また、削除されたデータ項目名については、属性値計算部151は、当該データ項目名の属性値を登録しないようにする。
The process of step S103 is executed when a first type of process (addition of a data item) or a second type of process (deletion of a data item) is performed in data processing. At this time, for data item names that have not been added or deleted, the attribute
次に、ステップS104において、属性値計算部151は、処理内容情報を参照し、ステップS103までの処理を終えた出力データ項目名リストについて、そのデータ項目名に紐付けられた属性値を更新する必要がある場合に、対象となる属性値の更新を実施する。ステップS104の処理は、データ加工において第3種の処理(データ変更処理)が行われた場合に実行される。このとき、属性値計算部151は、変更属性値情報に示される属性値の変更方針に従って、データ変更処理が行われたデータ項目名の属性値を再計算する。
Next, in step S104, the attribute
最後に、ステップS105において、属性値計算部151は、ステップS102で紐付けた出力データ項目名リストと、ステップS103~S104で紐付けた各データ項目名の属性値とを、JSON形式で記述することにより、出力データを構成する各データ項目に紐付く属性値である更新済属性値126を生成する。そして、属性値計算部151は、生成した更新済属性値126を属性値再計算の要求元の制御機能要求部114に返答し、属性値再計算処理を終了する。
Finally, in step S105, the attribute
ここで、図6を参照して、ステップS102~S105における属性値の紐付け及び算出について具体的に説明する。図6には、入力データの属性値情報として入力属性値情報231が示されており、この入力データに対するデータ加工として第1種、第2種、または第3種の処理が実行された場合における属性値の紐付けの具体例が、それぞれ処理パターン(A),(B),(C)に示されている。
Now, referring to FIG. 6, the linking and calculation of attribute values in steps S102 to S105 will be specifically described. In FIG. 6, input
処理パターン(A)は、上記入力データに対して「項目4」のデータ項目を挿入する第1種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102~S103の処理において、追加された「項目4」の内部データに関する変更属性値情報232を入力属性値情報231に追加することにより、出力データにおける属性値の紐付けを行うことができる。この属性値の紐付けの結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値234)を生成することができる。
Processing pattern (A) is a case where a first type of data processing is performed to insert the data item "item 4" into the input data. In this case, the attribute
処理パターン(B)は、上記入力データに対して「項目2」のデータ項目を削除する第2種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102~S103の処理において、削除された「項目2」のデータ項目全体を入力属性値情報231から削除することにより、出力データにおける属性値の紐付けを行うことができる。この属性値の紐付けの結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値235)を生成することができる。
Processing pattern (B) is a case where a second type of data processing is performed on the input data to delete the data item "
処理パターン(C)は、上記入力データに対して「項目2」の内部データを変更する第3種のデータ加工が実行された場合であり、この場合、属性値計算部151は、ステップS102,S104の処理において、「項目2」のデータ項目における内部データの変更に関する変更属性値情報233に基づいて、入力属性値情報231の「項目2」の属性値を変更することにより、出力データにおける属性値の更新を行うことができる。この属性値の更新結果を用いて、ステップS105において属性値計算部151は、データ加工後の出力データ(加工済データ125)を構成する各データ項目に紐付く更新済属性値126(図6では更新済属性値236)を生成することができる。
Processing pattern (C) is a case where a third type of data processing is performed on the input data to change the internal data of "
このように、属性値計算部151は、処理内容情報に示されたデータ処理の処理内容の種別(例えば第1種~第3種の処理)に応じて所定のリスト操作(挿入、削除、属性値変更など)を行うことにより、出力データの各項目名に対応する属性値を更新した属性値情報(更新済属性値126)を生成することができる。なお、データ加工部112において、上述した第1種~第3種の処理を組み合わせたデータ加工が実行された場合は、属性値計算部151は、処理パターン(A)~(C)の処理を適宜組み合わせて実行することにより、加工済データ125に対応する更新済属性値126を生成することができる。
In this way, the attribute
以上のように、本実施形態では、データ加工部112のソフトウェアコンポーネントによる処理が終了するたびに、データ制御機能150において属性値計算部151が属性値のリストを更新することにより、データの変化を記録する。また、データ制御機能150を構成する制御機能要求部114や属性値計算部151のソフトウェアコンポーネントの入出力を、データ加工部112のソフトウェアコンポーネントと同様の構造化データ(例えばJSON形式)に統一することで、データ加工部112と疎結合な構成を実現することができる。そのため、データ制御システム1では、複数のデータ加工部112を備える既存のフローベースアプリケーション100に大きな変更を加えることなく、データ制御機能150を追加することが可能となる。
As described above, in this embodiment, each time processing by the software components of the
図7は、データ制御システム1における全体的な処理の手順例を示すシーケンス図である。図7では、フローベースアプリケーション100にデータ121及びその属性値122が入力されてから、フローベースアプリケーション100及びデータ制御機能150において処理が実行され、最終的な出力が行われるまでの全体的な処理について、その手順が示されている。なお、データ制御機能150による属性値再計算の処理は、図5のフローチャートを参照して説明した通りであり、詳細な説明の繰り返しを省略する。
Figure 7 is a sequence diagram showing an example of the overall processing procedure in the
図7によれば、まず、フローベースアプリケーション100の情報入力部111が、フローベースアプリケーション100における処理が要求されるデータ121と、そのデータの属性値をJSON形式で表現した属性値122とを、外部から入力として受け付け、アプリケーションの処理を開始する(ステップS201)。
As shown in FIG. 7, first, the
次に、情報入力部111は、処理ブロック101(処理1)のソフトウェアコンポーネント(データ加工部112)に対して、ステップS201で入力されたデータ121及び属性値122を入力する(ステップS202)。
Next, the
次に、処理1のデータ加工部112は、ステップS202で入力されたデータ121に対して所定のデータ処理(例えばデータ加工)を実施する(ステップS203)。当該データ処理の実施によって、データ加工部112は、加工済データ125を出力する。
Next, the
次に、処理1の制御機能要求部114は、ステップS203で実施されたデータ処理の結果に基づいて、図5で説明した計算用データをデータ制御機能150に対して送信し、属性値の再計算を要求する(ステップS204)。
Next, the control
ステップS204の要求を受けたデータ制御機能150では、属性値計算部151が、図5のフローチャートで詳述した属性値再計算処理を実行することにより、加工済データ125に対応する属性値のリストをJSON形式で表現した更新済属性値126を生成する(ステップS205)。そして、属性値計算部151は、生成した更新済属性値126をステップS204の要求元の制御機能要求部114に送信する(ステップS206)。
In the
次に、制御機能要求部114は、ステップS203でデータ加工部112から出力された加工済データ125と、ステップS206で属性値計算部151から受信した更新済属性値126とを、次の処理ブロック102(処理2)のソフトウェアコンポーネント(データ加工部112)に入力する(ステップS207)。
Next, the control
以下、最後の処理ブロック103(処理N)まで順次、各処理ブロックにおいてステップS202~ステップS207の処理を繰り返し実行する(ステップS208)。但し、最後の処理ブロック103(処理N)では、ステップS206で属性値計算部151から更新済属性値126を受信した制御機能要求部114は、ステップS207の処理を実行する代わりに、処理NのステップS203でデータ加工部112から出力された加工済データ125を第1情報出力部115に入力し、処理NのステップS206で属性値計算部151から受信した更新済属性値126を第2情報出力部116に入力する。
Then, the processing of steps S202 to S207 is repeatedly executed in each processing block in sequence up to the final processing block 103 (processing N) (step S208). However, in the final processing block 103 (processing N), the control
そして最後に、第1情報出力部115及び第2情報出力部は、ステップS201で入力されたデータ121に対してフローベースアプリケーション100における全てのデータ加工部112のソフトウェアコンポーネントによるデータ加工が実施された後の最終的な加工済データ125と、各データ加工の処理が行われるごとにデータ制御機能150によって再計算された最終的な更新済属性値126とを、フローベースアプリケーション100の結果として出力する(ステップS209,S210)。
Finally, the first
図7のように全体処理が行われることにより、データ制御システム1では、フローベースアプリケーション100の各ソフトウェアコンポーネント(データ加工部112)の処理後に、データ制御機能150のソフトウェアコンポーネント(属性値計算部151)によって属性値が再計算され、全てのソフトウェアコンポーネントによる処理が完了した時点で、最終的な加工済データ125と、当該データに対応する属性値(最終的な更新済属性値126)が取得できる状態となる。
By performing the overall processing as shown in FIG. 7, in the
また、データ制御システム1では、制御機能要求部114から属性値計算部151に対する属性値再計算要求の際、データ加工部112によるデータ処理の入出力データ自体は送信されず、入力データ項目リストや出力データ項目名リスト等といった、入出力データよりもサイズの小さい情報だけが計算用データとして送信されることから、データ制御機能150による属性値の再計算処理に関してシステム全体に掛かる負荷を抑制することができ、データ制御機能150を接続することによってフローベースアプリケーション100の設計に与える影響を極力抑えることができる。
In addition, in the
図8は、データ制御システム1を利用したデータ処理検証システム2の構成例を示すブロック図である。データ処理検証システム2は、フローベースアプリケーション100の開発者160が、フローベースアプリケーション100による処理内容及び処理結果が適切であるか否かを、データ制御システム1から出力される(最終的な)更新済属性値126を用いて検証するシステムである。なお、図8では、図1で示した構成の大部分を省略して記載している。
Figure 8 is a block diagram showing an example of the configuration of a data
図8によれば、データ処理検証システム2は、データ制御システム1と、開発者160が操作する開発者用計算機170とがネットワークで接続されて構成される。開発者用計算機170は、図2に例示した計算機10と同様のハードウェア構成を有する計算機である。開発者用計算機170は、検証用のテストデータをフローベースアプリケーション100に対して送信するテストデータ送信部171と、フローベースアプリケーション100及びデータ制御機能150で処理された処理後のテストデータを受信するテストデータ受信部172とを備える。
As shown in FIG. 8, the data
図9は、データ処理検証システム2における全体的な処理の手順例を示すシーケンス図である。図9では、図7で説明した処理は省略して記載している。
Figure 9 is a sequence diagram showing an example of the overall processing procedure in the data
図9によれば、開発者160は検証処理を開始すると、開発者用計算機170を操作して、テストデータ送信部171からフローベースアプリケーション100の情報入力部111に対して、検証用のテストデータを送信する(ステップS301)。検証用のテストデータは、データ加工部112によるデータ処理を行わせるデータ(例えばデータ121)と、当該データの属性値(例えば属性値122)とが含まれる。また、開発者用計算機170とフローベースアプリケーション100との間のデータの送受信は、それぞれの計算機10の通信部14(図2参照)を介して行われる。
As shown in FIG. 9, when the
次に、検証用のテストデータを情報入力部111で受信したフローベースアプリケーション100では、検証用のテストデータに含まれるデータ121を最初の処理対象として、各データ加工部112が、順次データ処理を実施する(ステップS302)。また、図7等で説明したように、各データ加工部112による処理が終了するごとに、データ制御機能150が属性値の再計算を行う(ステップS303~S305)。
Next, in the flow-based
そして、データ制御システム1(フローベースアプリケーション100及びデータ制御機能150)における処理が終了すると、第1情報出力部115及び第2情報出力部116から最終的な加工済データ125及びその更新済属性値126が出力され、開発者用計算機170のテストデータ受信部172は、上記加工済データ125及び更新済属性値126を処理後のテストデータとして受信する(ステップS306,S307)。
When the processing in the data control system 1 (flow-based
そして、開発者用計算機170は、テストデータ受信部172が受信した処理後のテストデータ(加工済データ125及び更新済属性値126)を、開発者用計算機170の出力部16(図2参照)から出力する(ステップS308)。開発者160は、ステップS308で出力された加工済データ125及び更新済属性値126を、自身が予め意図したデータの処理結果及び属性値と比較することにより、フローベースアプリケーション100の設計が適切であるか否かを評価することができる。
The
このようなデータ処理検証システム2によれば、最終的なデータ処理結果である加工済データ125だけでなく、各データ処理の段階で適宜更新された属性値(更新済属性値126)も評価対象として出力されることから、開発者160からは見えないフローベースアプリケーション100のソフトウェアコンポーネント間において想定していないデータの変化がないことを検証することが容易となる。特に、データ処理検証システム2では、属性値を用いた検証が可能であることから、データ自体を検証することに比べて、簡易に検証が可能という利点がある。
According to such a data
(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 a
利用者用計算機190は、図2に例示した計算機10と同様のハードウェア構成を有する計算機であり、フローベースアプリケーション100を操作するソフトウェアを有する。利用者180は、この利用者用計算機190を操作することによって、フローベースアプリケーション100を利用することができる。
The
利用者用計算機190は、入力データ送信部191及び保管場所受信部192を備える。
The
入力データ送信部191は、利用者180による操作に基づいて、フローベースアプリケーション100でデータ処理を行わせるデータ121及び当該データの属性値122を、フローベースアプリケーション100に送信する。入力データ送信部191から送信されたデータ121及び属性値122は、フローベースアプリケーション100の情報入力部111に入力される。
The input
保管場所受信部192は、データ保管アプリケーション300の保管情報出力部306から、加工済データ125の保管場所情報312を受信する。
The storage
データ保管アプリケーション300は、フローベースアプリケーション100でデータ処理された加工済データ125を自動的に振り分けて保管し、その保管場所を出力するアプリケーションであって、第1情報入力部301、第2情報入力部302、データ保管部303、保管場所決定部304、設定データ格納部305、及び保管情報出力部306を備える。
The
第1情報入力部301は、フローベースアプリケーション100の第1情報出力部115に接続され、第1情報出力部115から加工済データ125を入力する。第2情報入力部302は、フローベースアプリケーション100の第2情報出力部116に接続され、第2情報出力部116から更新済属性値126を入力する。
The first
データ保管部303は、第1情報入力部301に入力された加工済データ125を保管場所決定部304によって決定された保管場所に保管する。また、データ保管部303は、加工済データ125を保管した後、保管場所を示す情報である保管場所情報312を生成し、保管情報出力部306に送信する。
The
保管場所決定部304は、第2情報入力部302に入力された更新済属性値126に基づいて、加工済データ125の保管場所をストレージ320の複数の記憶域321の何れかに決定する。
The storage
設定データ格納部305は、保管場所決定部304が保管場所を決定する際に参照される情報(設定ルール311)を格納する。
The setting
保管情報出力部306は、データ保管部303から受信した保管場所情報312を、フローベースアプリケーション100にデータ121を入力した利用者用計算機190に送信する。
The storage
図11は、データ制御システム3における全体的な処理の手順例を示すシーケンス図である。
Figure 11 is a sequence diagram showing an example of the overall processing procedure in
図11によれば、利用者180は、利用者用計算機190を操作して、フローベースアプリケーション100に対してデータ処理を要求するデータ121とその属性値122を入力し、データ処理後のデータ(加工済データ125)の保管を要求する(ステップS401)。
According to FIG. 11, the
次に、フローベースアプリケーション100及びデータ制御機能150は、図7に示したシーケンス図の処理によって、データ処理と、及びデータ処理ごとの属性値の再計算とを行う(ステップS402,S403)。
Next, the flow-based
そして、フローベースアプリケーション100及びデータ制御機能150における処理が終了すると、加工済データ125及び更新済属性値126がデータ保管アプリケーション300に送信される(ステップS404)。詳しくは、第1情報出力部115が加工済データ125を第1情報入力部301に送信し、第2情報出力部116が更新済属性値126を第2情報入力部302に送信する。
When the processing in the flow-based
次に、データ保管アプリケーション300では、保管場所決定部304が、第2情報入力部302に入力された属性値(更新済属性値126)を評価して、データ保管部303による加工済データ125の保管場所を決定する(ステップS405)。保管場所決定部304による保管場所の決定では、例えば、設定データ格納部305に格納された設定ルール311を用いて評価する。このような保管場所の決定方法の具体例については、図12~図14を参照しながら後述する。
Next, in the
なお、保管場所決定部304による保管場所の決定において参照されるデータは、設定データ格納部305内の設定ルール311に限定されるものではなく、その他の情報を参照してもよい。具体的には例えば、更新済属性値126に示される属性値の他、加工済データ125、アクセス元のアプリケーション(フローベースアプリケーション100)、利用者180、または利用者用計算機190等に関する情報を参照してもよい。また、データ保管アプリケーション300が任意の方法によって参照可能なその他の情報も保管場所の決定の根拠とするように実装されてもよい。
The data referenced by the storage
また、保管場所決定部304による保管場所の決定において参照されるデータは、予め用意されたデータに限定されるものではなく、例えば、保管場所を決定する際、もしくはその他の任意のタイミングで、任意の方法で自動生成されるデータであってもよい。
In addition, the data referenced by the storage
次に、データ保管部303が、ステップS405で決定された保管場所(ストレージ320の記憶域321)に、ステップS404で第1情報入力部301に入力されたデータ(加工済データ125)を保管する(ステップS406)。そして、ストレージ320は、加工済データ125を記憶域321に保管すると、データの保管結果をデータ保管アプリケーション300に返答する(ステップS407)。
Next, the
なお、データ制御システム3では、ステップS405で保管場所決定部304が保管場所を決定した後、ステップS406でデータ保管部303が加工済データ125を保管場所に保管する前に、任意の方法により、利用者180に対して保管場所について確認をとるように実装してもよい。
In addition, in the
次に、データ保管部303は、加工済データ125を保管した場所を示す保管場所情報312を保管情報出力部306に送信し、保管情報出力部306が、ステップS401でフローベースアプリケーション100に対して要求を行った利用者用計算機190に、保管場所情報312を出力する(ステップS408)。
Next, the
そして、利用者180は、利用者用計算機190の出力部16(図2参照)に表示された保管場所情報312を確認することにより、自身がフローベースアプリケーション100に対して送信した入力データ(データ121)のデータ処理後のデータ(加工済データ125)の保管場所を確認することができる(ステップS409)。
Then, the
以上が、データ制御システム3における全体的な処理の手順例である。以下では、補足として、ステップS405における保管場所の決定について、図12~図14を参照しながら、具体的な決定方法の一例を説明する。
The above is an example of the overall processing procedure in the
図12は、属性値閾値リスト410を示す図であり、図13は、評価式リスト420を示す図であり、図14は、格納先リスト430を示す図である。図12~図14に示す各リストは、設定データ格納部305に格納される設定ルール311の一例である。
Figure 12 shows an attribute
図12に示した属性値閾値リスト410は、属性値ごとの閾値を設定したデータであって、属性値名411~413のそれぞれに閾値が設定されている。属性値名411~413は、更新済属性値126に含まれる属性値名(属性値情報のデータ構成については、図4を参照)に対応するものであり、例えば、「属性値a」という属性値に対しては閾値「α」が設定されている。
The attribute
図13に示した評価式リスト420は、更新済属性値126に対する評価式を設定したデータであって、評価順421、評価式422、及び格納先423のデータ項目を有する。評価順421は、評価式422の実行順序を示し、評価順の小さい方から優先して評価式422が実行されて、格納先423が決定される。評価式422で用いられている「α」や「β」といった変数は、図12の属性値閾値リスト410に設定された閾値に対応している。また、格納先423には、加工済データ125の保管場所としてストレージ320の記憶域321の何れかが設定されている。
The
図14に示した格納先リスト430は、保管場所へのアクセス方法を設定したデータであって、格納先431及びアクセス方法432のデータ項目を有する。格納先431の設定内容は、図13の評価式リスト420の格納先423の設定内容に対応する。
The
保管場所決定部304は、上記の図12~図14の各リスト(設定ルール311)を用いて更新済属性値126を評価することにより、加工済データ125の保管場所(格納先)を決定することができる。
The storage
以上に説明したように、データ制御システム3によれば、データの性質に応じて保管方法を分ける必要がある場合に、利用者180は、フローベースアプリケーション100の設計に依存することなく、データ制御機能150によって算出された属性値(更新済属性値126)に基づいて、データ処理後の加工済データ125を適切な場所に自動で保管することができる。これにより、フローベースアプリケーション100の設計ミス、利用者180の操作ミス、または、利用者180による意図しない入力データによる不適切なデータの保管等を防止することができる。
As described above, according to the
なお、本発明は上記した各実施形態に限定されるものではなく、様々な変形例が含まれる。例えば、上記した各実施形態は本発明を分かりやすく説明するために詳細に説明したものであり、必ずしも説明した全ての構成を備えるものに限定されるものではない。また、ある実施形態の構成の一部を他の実施形態の構成に置き換えることが可能であり、また、ある実施形態の構成に他の実施形態の構成を加えることも可能である。また、各実施形態の構成の一部について、他の構成の追加・削除・置換をすることが可能である。 The present invention is not limited to the above-described embodiments, but includes various modified examples. For example, the above-described embodiments have been described in detail to clearly explain the present invention, and are not necessarily limited to those having all of the configurations described. It is also possible to replace 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. It is also possible to add, delete, or replace part of the configuration of each embodiment with other configurations.
また、上記の各構成、機能、処理部、処理手段等は、それらの一部又は全部を、例えば集積回路で設計する等によりハードウェアで実現してもよい。また、上記の各構成、機能等は、プロセッサがそれぞれの機能を実現するプログラムを解釈し、実行することによりソフトウェアで実現してもよい。各機能を実現するプログラム、テーブル、ファイル等の情報は、メモリや、ハードディスク、SSD(Solid State Drive)等の記録装置、または、ICカード、SDカード、DVD等の記録媒体に置くことができる。 Furthermore, the above-mentioned configurations, functions, processing units, processing means, etc. may be realized in hardware, in part or in whole, for example by designing them as integrated circuits. Furthermore, the above-mentioned configurations, functions, etc. may be realized in software, by a processor interpreting and executing a program that realizes each function. Information on the programs, tables, files, etc. that realize each function can be stored 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.
また、図面において制御線や情報線は説明上必要と考えられるものを示しており、製品上必ずしも全ての制御線や情報線を示しているとは限らない。実際にはほとんど全ての構成が相互に接続されていると考えてもよい。 In addition, the control lines and information lines shown in the drawings are those that are considered necessary for explanation, and do not necessarily show all control lines and information lines on the product. In reality, it can be assumed that almost all components 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
12
Claims (10)
前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、
前記データ処理によるデータの変化を数値化した属性値を所定の計算用データを用いて計算する属性値計算部と、
それぞれの前記データ加工部による前記データ処理が終了するごとに、当該データ処理に関する前記計算用データを添えて、当該データ処理の前記加工済データに対する前記属性値の計算を前記属性値計算部に要求する制御機能要求部と、
を備え、
前記制御機能要求部は、前記属性値計算部から前記加工済データに対する前記属性値の計算結果である更新済属性値を受け取った後、前記加工済データ及び前記更新済属性値を次の前記データ加工部のソフトウェアコンポーネントに送信する
ことを特徴とするデータ制御システム。 A data control system that detects changes in data processed in a flow-based application, the whole or a part of which is composed of a combination of loosely coupled software components, comprising:
the plurality of loosely coupled software components constituting the flow-based application each include a software component having a function as a data processing unit that 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;
a control function request unit that requests, each time the data processing by each of the data processing units is completed, the attribute value calculation unit to calculate the attribute value for the processed data of the data processing unit by attaching the calculation data related to the data processing unit;
Equipped with
a control function request unit that receives an updated attribute value, which is a calculation result of the attribute value for the processed data, from the attribute value calculation unit, and then transmits the processed data and the updated attribute value to a next software component of the data processing unit.
ことを特徴とする請求項1に記載のデータ制御システム。 2. 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 a software component having a function as the flow-based application and the data processing unit.
ことを特徴とする請求項2に記載のデータ制御システム。 3. The data control system according to 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.
前記データ処理における前記入力データ及び前記加工済データが含まれず、前記入力データの前記構造化データの項目名と各項目名に対応する前記属性値、前記加工済データの前記構造化データの項目名、及び、前記データ処理における処理内容を示す処理内容情報が含まれ、
前記属性値計算部は、前記計算用データに基づいて、前記処理内容情報に示される処理内容の種別に応じた所定のリスト操作を行うことにより、前記加工済データの前記構造化データの各項目名に対応する前記属性値を更新した前記更新済属性値を生成する
ことを特徴とする請求項3に記載のデータ制御システム。 The calculation data attached by the control function request unit when making the request includes:
The input data and the processed data in the data processing are not included, but the input data includes item names of the structured data of the input data and the attribute values corresponding to each item name, the processed data includes item names of the structured data of the processed data, and processing content information indicating processing content in the data processing,
The data control system according to claim 3, characterized in that the attribute value calculation unit generates the updated attribute values by updating the attribute values corresponding to each item name of the structured data of the processed data by performing a predetermined list operation according to the type of processing content indicated in the processing content information based on the calculation data.
前記制御機能要求部は、前記内部データの前記構造化データの項目名と各項目名に対応する前記属性値を前記計算用データに加える
ことを特徴とする請求項4に記載のデータ制御システム。 When there is internal data added to the processed data from other than the input data in the data processing,
5. The data control system according to claim 4, wherein the control function request unit adds item names of the structured data of the internal data and the attribute values corresponding to each item name to the calculation data.
前記フローベースアプリケーションにおいて前記データ加工部としての機能を有する全てのソフトウェアコンポーネントによる前記データ処理が実施された後の最終的な前記加工済データと、前記最終的な加工済データに対して前記属性値計算部によって計算された最終的な前記更新済属性値と、を出力する情報出力部をさらに備える
ことを特徴とする請求項1に記載のデータ制御システム。 A data control system comprising the flow-based application, the control function request unit, and the attribute value calculation unit,
2. The data control system according to claim 1, further comprising an information output unit that outputs the final processed data after the data processing is performed by all software components having a function as the data processing unit in the flow-based application, and the final updated attribute value calculated by the attribute value calculation unit for the final processed data.
前記データ保管アプリケーションは、
前記最終的な加工済データの保管場所を決定する保管場所決定部と、
前記保管場所決定部によって決定された保管場所に前記最終的な加工済データを保管するとともに、前記保管場所を示す保管場所情報を生成するデータ保管部と、
前記データ保管部で生成された前記保管場所情報を出力する保管情報出力部と、を有する
ことを特徴とする請求項6に記載のデータ制御システム。 a data storage application connected to the information output unit and configured to input the final processed data and the final updated attribute value;
The data storage application includes:
a storage location determination unit that determines a storage location for 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に記載のデータ制御システム。 The data control system according to claim 7 , wherein 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.
ことを特徴とする請求項7に記載のデータ制御システム。 The data control system according to claim 7 , wherein the storage location includes a storage area of a storage device connected to the data storage application.
前記フローベースアプリケーションを構成する疎結合された複数の前記ソフトウェアコンポーネントには、個々が入力データに対して任意のデータ処理を実施して加工済データを出力するデータ加工部としての機能を有するソフトウェアコンポーネントが含まれ、
前記データ加工部としての機能を有するそれぞれのソフトウェアコンポーネントによる前記データ処理が終了するごとに、当該データ処理に関する計算用データを添えて、当該データ処理の前記加工済データに対する属性値の計算を要求する要求ステップと、
前記要求ステップにおける前記要求に添えられた前記計算用データを用いて、前記加工済データに対して、前記データ処理によるデータの変化を数値化した前記属性値を計算する属性値計算ステップと、
前記属性値計算ステップにおける計算後、前記加工済データと前記加工済データに対する前記属性値である更新済属性値とを、次の前記データ加工部のソフトウェアコンポーネントに送信する出力ステップと、
を備えることを特徴とするデータ制御方法。 A data control method for detecting a change in data processed in a flow-based application, the whole or a part of which is composed of a combination of loosely coupled software components, comprising:
the plurality of loosely coupled software components constituting the flow-based application each include a software component having a function as a data processing unit that performs arbitrary data processing on input data and outputs processed data;
a request step of requesting calculation of an attribute value for the processed data of the data processing by attaching calculation data related to the data processing each time the data processing by each software component having a function as the data processing unit is completed;
an attribute value calculation step of calculating, for the processed data, an attribute value that quantifies a change in data due to the data processing, using the calculation data attached to the request in the request step;
an output step of transmitting, after the calculation in the attribute value calculation step, the processed data and an updated attribute value which is the attribute value for the processed data, to a next software component of the data processing unit;
A data control method comprising:
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 JP2022098810A (en) | 2022-07-04 |
JP7492451B2 true 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) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102615A (en) | 2008-10-27 | 2010-05-06 | Fujitsu Ltd | Job flow analysis program, method and apparatus |
JP2019516167A (en) | 2016-03-23 | 2019-06-13 | フォグホーン システムズ, インコーポレイテッドFoghorn Systems, Inc. | Tools and methods for a real time data flow programming language |
-
2020
- 2020-12-22 JP JP2020212414A patent/JP7492451B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010102615A (en) | 2008-10-27 | 2010-05-06 | Fujitsu Ltd | Job flow analysis program, method and apparatus |
JP2019516167A (en) | 2016-03-23 | 2019-06-13 | フォグホーン システムズ, インコーポレイテッドFoghorn Systems, Inc. | Tools and methods for a real time data flow programming language |
Also Published As
Publication number | Publication date |
---|---|
JP2022098810A (en) | 2022-07-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103329130A (en) | Managing changes to collections of data | |
US10140403B2 (en) | Managing model checks of sequential designs | |
JP2020013544A (en) | Method and apparatus for managing effectiveness of information processing task | |
Van Hee et al. | Soundness of resource-constrained workflow nets | |
JP4908073B2 (en) | Service-based software design support method and apparatus therefor | |
US20220334912A1 (en) | System and method for visualizing results of cause diagnosis of event that has occurred or may occur in equipment | |
US8458204B2 (en) | System and method for customized file comparison | |
Abdelmoez et al. | Quantifying software architectures: an analysis of change propagation probabilities | |
US9430595B2 (en) | Managing model checks of sequential designs | |
JP2012064129A (en) | Gui integration method of multiple applications | |
US10678864B2 (en) | Analysis model preparing system, programming apparatus, and analysis model preparing method | |
JP7492451B2 (en) | Data control system and data control method | |
US10664653B2 (en) | Automated structured cloud datatester | |
US8024158B2 (en) | Management system and management method of CAD data used for a structural analysis | |
US20100228801A1 (en) | Information processing apparatus, file management system, information processing method and computer readable medium | |
US20090216712A1 (en) | Methods for calculating a combined impact analysis repository | |
JP4845001B2 (en) | Information processing apparatus and program used for the same | |
JP4383484B2 (en) | Message analysis apparatus, control method, and control program | |
WO2019142469A1 (en) | Security design apparatus, security design method, and security design program | |
US20110178970A1 (en) | Template clauses based sat techniques | |
WO2019163266A1 (en) | Security evaluation server and security evaluation method | |
US11625497B2 (en) | File management system and non-transitory computer readable medium | |
JP2008293103A (en) | Distributed arrangement device and method for arranging virtual device | |
CN110114767A (en) | Use the system and method for the satisfiability theory of modules process for not explaining functional symbol | |
US8775873B2 (en) | Data processing apparatus that performs test validation and computer-readable storage medium |
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 |