JP2023514688A - カスタマイズされた統合フローのテンプレート提供 - Google Patents
カスタマイズされた統合フローのテンプレート提供 Download PDFInfo
- Publication number
- JP2023514688A JP2023514688A JP2022549643A JP2022549643A JP2023514688A JP 2023514688 A JP2023514688 A JP 2023514688A JP 2022549643 A JP2022549643 A JP 2022549643A JP 2022549643 A JP2022549643 A JP 2022549643A JP 2023514688 A JP2023514688 A JP 2023514688A
- Authority
- JP
- Japan
- Prior art keywords
- event
- template
- flow
- data change
- external
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000010354 integration Effects 0.000 title claims abstract description 79
- 230000008859 change Effects 0.000 claims abstract description 68
- 238000000034 method Methods 0.000 claims abstract description 59
- 230000003993 interaction Effects 0.000 claims abstract description 12
- 238000012544 monitoring process Methods 0.000 claims abstract description 12
- 238000012545 processing Methods 0.000 claims description 23
- 238000001914 filtration Methods 0.000 claims description 17
- 238000004590 computer program Methods 0.000 claims description 15
- 230000006870 function Effects 0.000 claims description 15
- 230000015654 memory Effects 0.000 claims description 14
- 238000013507 mapping Methods 0.000 claims description 8
- 230000004044 response Effects 0.000 claims 1
- 238000002620 method output Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 25
- 230000009471 action Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 11
- 238000012986 modification Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000007726 management method Methods 0.000 description 4
- 239000000835 fiber Substances 0.000 description 3
- 230000006855 networking Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000008520 organization Effects 0.000 description 3
- RYGMFSIKBFXOCR-UHFFFAOYSA-N Copper Chemical compound [Cu] RYGMFSIKBFXOCR-UHFFFAOYSA-N 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000006872 improvement Effects 0.000 description 2
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000009172 bursting Effects 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 229910052802 copper Inorganic materials 0.000 description 1
- 239000010949 copper Substances 0.000 description 1
- 230000008878 coupling Effects 0.000 description 1
- 238000010168 coupling process Methods 0.000 description 1
- 238000005859 coupling reaction Methods 0.000 description 1
- 238000007405 data analysis Methods 0.000 description 1
- 238000013479 data entry Methods 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 238000002955 isolation Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000001960 triggered effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q10/00—Administration; Management
- G06Q10/06—Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
- G06Q10/063—Operations research, analysis or management
- G06Q10/0633—Workflow analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/78—Architectures of resource allocation
- H04L47/783—Distributed allocation of resources, e.g. bandwidth brokers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/805—QOS or priority aware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/80—Actions related to the user profile or the type of traffic
- H04L47/808—User-type aware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/82—Miscellaneous aspects
- H04L47/828—Allocation of resources per group of connections, e.g. per group of users
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Human Resources & Organizations (AREA)
- Strategic Management (AREA)
- Economics (AREA)
- Entrepreneurship & Innovation (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Operations Research (AREA)
- Marketing (AREA)
- Game Theory and Decision Science (AREA)
- Quality & Reliability (AREA)
- Tourism & Hospitality (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Educational Administration (AREA)
- Development Economics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Debugging And Monitoring (AREA)
Abstract
【課題】 カスタマイズされた統合フローのテンプレート提供【解決手段】 方法及びシステムは、統合フロー・テンプレートをカスタマイズするために提供される。本方法は、統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出すこと、及び2つの外部システムの間でそれぞれのイベント・ペアが2つの前記外部システムにおいて同一のデータ変化イベントを有する少なくとも2つの外部システムの間の少なくとも1つのイベント・ペアを識別することを含むことができる。前記識別されたイベント・ペアは、イベント・チェーンに含ませるためにフィルタリングされると共に、前記フィルタリングされたイベント・ペアの前記外部システムは、前記データ変化イベントのタイムスタンプに基づいて前記イベント・チェーン内で順序付けされる。本方法は、フロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力する。【選択図】 図2A
Description
本発明は、統合フローの管理に関し、より具体的には、ユーザ・アクティビティに基づく統合フロー・テンプレートを提供することに関する。
統合製品において、ユーザは、統合がトリガされた場合に統合フローを生成して、異なるシステムにおいて異なるアクションを実行することができる。統合製品は、多数の外部システムにおける異なるビジネス・アプリケーションの間に流すためのメッセージとして、情報をパッケージすることが可能である。ビジネス・アプリケーションは、いくつかの場合において、また、ソフトウェア・アズ・ア・サービス(SaaS)として知られる外部的なクラウド・サービス・システムにより提供することができる。
単純な統合フローは、例えば、クラウド・サービス・マーケッティング・システムで新たなリードが生成された場合、同一の情報を有するリードが、クラウド・サービス・システム内に生成される。この単純なフローは、そのユーザがそれらのクラウド・サービス・マーケッティング・システムと、それらのクラウド・サービス・セールス・システムとの間でリードを同期することを支援すると共に、クラウド・サービス・マーケッティングを使用し、かつソフトウェア製品を販売するほとんどの事業者が興味のある典型的なフローである。
統合製品は、多数のユーザが興味を持ち、かつこれらが典型的なユース・ケースに基づいて生成される統合フローの形態のためのテンプレートを提供することができる。それら自身のフローを構築するためのテンプレートを選択するために、カスタマーは、それらのビジネス・ユース・ケースに基づいてテンプレートを選択すると共に、それらの特定の要求に基づいてテンプレート・フローを修正する必要がある。
選択されるべきビジネスのための多くのテンプレートが存在するので、好適なテンプレートを見出し、かつ利用する活動は、彼らがどのシステム及びフローを実装したいのかを未だ正確に知らない可能性のあるユーザにとっては特に時間の浪費であり、かつ混乱する可能性がある。
既存のテンプレートを修正することは、ユーザのビジネス・ニーズにテンプレートのフローを適合させるように仕立てるためのいくつかのアクションを実行することを含む可能性がある。このことは、もしもテンプレートが使用されるすべてのシステムを含んでいないならば、システムを追加又は削除すること、又はシステム・ノードの間でフィールド・マッピングを追加又は削除するか、又はこれらの両方を含む可能性がある。
これらの修正は、時間の浪費であり、かつ経験の乏しいユーザにとって実装することが困難な可能性がある。
これらの修正は、時間の浪費であり、かつ経験の乏しいユーザにとって実装することが困難な可能性がある。
実施形態は、カスタマイズされた統合フロー・テンプレートを提供するためのコンピュータ実装方法を提供することができ;統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出すこと;2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別すること、;イベント・チェーンに含ませるために少なくとも1つのイベント・ペアをフィルタリングすること;前記データ変化イベントのタイムスタンプに基づいて、前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けすること;及びフロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力することを含む。
実施形態は、また、カスタマイズされた統合フロー・テンプレートを提供するためのシステムを提供することができ;プロセッサ回路と、前記プロセッサ回路にコンピュータ・プログラム命令を提供してコンポーネントの機能を実行するように構成されたメモリと;統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出ための、外部システム・モニタリング・コンポーネントと;2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別する、イベント・ペア識別コンポーネントと;イベント・チェーンに含ませるために少なくとも1つのイベント・ペアをフィルタリングする、フィルタリング・コンポーネントと;前記データ変化イベントのタイムスタンプに基づいて、前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けする、順序付けコンポーネントと;フロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力する、テンプレート出力コンポーネントと、を含む。
実施形態は、また、カスタマイズされた統合フロー・テンプレートを提供するためのコンピュータ・プログラム製品を提供することができ、前記コンピュータ・プログラム製品は、その内部に実体化されたプログラム命令を有する少なくとも1つの非過渡的なコンピュータ可読な記録媒体を含み、前記プログラム命令が少なくとも1つのコンピュータ・プロセッサ回路による実行によって前記プロセッサ回路をして:統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出すこと;2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別すること;イベント・チェーンに含ませるための少なくとも1つのイベント・ペアをフィルタリングすること;前記データ変化イベントのタイムスタンプに基づいて前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けすること;及びフロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力することを実行させる。
コンピュータ可読な記録媒体は、非過渡的なコンピュータ可読な記録媒体であり、コンピュータ可読なプログラム・コードは、プロセッシング回路により実行可能とすることができる。上記の要約は、それぞれに説明される実施形態、又は本開示のすべての実装を説明することを意図しない。
本出願に含まれる図面は、明細書に含まれ、その部分を構成する。それらは、本開示の実施形態を説明し、明細書と共に本開示の原理の例示を提供する。図面は、一定の実施形態の例示のみであり、本開示を限定することはない。
説明の簡略化及び明確化のため、図に示された要素は、スケール通りに描画されている必要はないことについて理解されるであろう。例えば、要素のいくつかの寸法は、明確化のために他の要素に比較して誇張される可能性がある。さらに、適切と考えられる場合には、参照符号は、対応するか、又は類似の特徴を示すために複数の図面の間で繰り返すことがある。
本発明は、種々の修正、代替的形態の余地があるが、その特徴は、図面において実施例の目的で示され、かつ詳細に説明されるであろう。
しかしながら、その意図は説明される特定の実施形態を限定することには無いことが理解されるべきである。対照的に、その意図は、本発明の精神及び範囲に収まるすべての修正、均等、及び代替を包含することにある。
しかしながら、その意図は説明される特定の実施形態を限定することには無いことが理解されるべきである。対照的に、その意図は、本発明の精神及び範囲に収まるすべての修正、均等、及び代替を包含することにある。
図面及び詳細な説明においては、同様の符号は、一般に同様のコンポーネント、部分、ステップ及びプロセスを参照する。
システム及び方法は、統合製品のユーザのためのカスタマイズした統合フロー・テンプレートを提供することについて説明される。本方法は、一定の期間的期間の間に彼らの外部システムにおけるデータ変化に基づいて、ユーザのために仕立てられた統合テンプレートを提供する。システムは、これらの外部システムの間の情報フローを使用して、これらのタスクを自動化するために実装することができる有用な統合テンプレートを判断する。ユーザは、その後、このフローを彼ら自身のフローを構築するためのスタート・ポイントとして使用することができる。
本方法は、多くの異なるシステムを通して流れるデータにおける相関を識別し、かつこれらの相関を使用して統合フローを生成する。これは、既存のテンプレートを通して検索させ、スクラッチからフローを構築すること、又は手作業の処理に頼り続けるのではなく、適切なスタート・ポイントとしての統合フロー・テンプレートを提供することにより、ユーザに資する。
図1を参照すると、ブロック図は、ビジネス・アプリケーションと一体的な相互作用のためエンタープライズの多数のユーザ161-163のための統合製品を提供するエンタープライズのための、統合サーバ140を含むシステム100の実施例の実施形態を示す。ビジネス・アプリケーション121-123は、外部クラウド・サービス・システム111-113上のクラウド・サービスとして提供することができる。
クラウド・サービスは、ソフトウェア・アズ・ア・サービス(SaaS)として参照することができる。ビジネス・アプリケーション124は、また、非クラウドベースのコンピュータ・システム114上に、又はエンタープライズに対してリモートに提供することができる。ビジネス・アプリケーション121-124を提供するシステム111-114は、それらが統合システムに対して外部なので、外部システムとして参照される。
クラウド・サービスは、ソフトウェア・アズ・ア・サービス(SaaS)として参照することができる。ビジネス・アプリケーション124は、また、非クラウドベースのコンピュータ・システム114上に、又はエンタープライズに対してリモートに提供することができる。ビジネス・アプリケーション121-124を提供するシステム111-114は、それらが統合システムに対して外部なので、外部システムとして参照される。
統合サーバ140は、クラウド統合サービス130からのクラウド上で、完全に管理された統合プラットホームとして提供することができる。統合サーバ140は、ツールキットにより、エンタープライズ・クライアントへと提供されるパッケージ化された統合資産から配置することができる。統合サーバ140は、それ自身のコンテナを動作して、ワークロードの分離を保証し、かつエンタープライズ・クライアントがアプリケーションに、クライアントがそれらの統合ソリューションを配置することを可能とするためのランタイム、システム・ツール、及びライブラリの全部を含むソフトウェア開発のための標準的ユニットへと、その依存性のすべてをパッケージすることを許容することができる。
エンタープライズ・クライアントは、ビジネス・アプリケーション121-124の間の統合フロー142を構築することができると共に、統合フロー142は、アプリケーション・プログラミング・インタフェース(API)動作として公開することができる。統合フロー142は、ソースと、ターゲットとの間のデータの自動化された移動を提供する。統合フロー・テンプレート132は、クラウド統合サービス130によって提供することができる。
説明するシステムは、ビジネス・アプリケーション121-124と、ユーザ161-163との相互作用に基づき、エンタープライズ・クライアントのためのカスタマイズされた統合フロー・テンプレート151を提供する、統合サーバ140のためのテンプレート提供システム150を含む。テンプレート提供システム150と、統合サーバ140との間のリンクは、統合フロー・スキーマなので、それはその特有の統合サーバ140上で使用されることができるフロー・テンプレートを生成することができる。
イベント125-128は、外部システム111-114にキャプチャされ、カスタム化された統合フロー・テンプレート151は、それぞれ、トリガ153及び少なくとも1つのノード154、155を含む、少なくとも1つのフロー152で生成することができる。ノードは、ターゲット・システムにおける対応するイベントをトリガする特定のアクションを表す。
トリガ又はノードについて、情報の3つのキー・ピースが存在する。
1.それがどの外部システムを示すのか。
2.トリガのためにそれがどのイベントをキャプチャするのか、又はノードのためにそれがどのアクションを執るのか。
(例えば、<トリガのため>の、生成、アップデート・イベント、<アクションのための>削除、アップデート・アクション)
3.イベント又はアクションのためどれがターゲット・オブジェクトであるのか。
1.それがどの外部システムを示すのか。
2.トリガのためにそれがどのイベントをキャプチャするのか、又はノードのためにそれがどのアクションを執るのか。
(例えば、<トリガのため>の、生成、アップデート・イベント、<アクションのための>削除、アップデート・アクション)
3.イベント又はアクションのためどれがターゲット・オブジェクトであるのか。
ノードは、ターゲット・システム内の対応するイベントをトリガする特定のアクションを表す。例えば、イベントは、セールス・システム内で生成されたリードとすることができると共に、フローは、“セール生成リード”を有するであろう。
図2Aを参照すると、フロー図200は、テンプレート提供システム150で実行される説明する方法の実施例の実施形態を図示する。本方法は、クライアントの統合システム、又はクラウド統合サービス130を介して遠隔的に実行することができる。
本方法は、201でユーザのアクセス・パーミッションを受領して、時間的期間の間、多数の外部システムからのデータ変更を読み出す。外部システムは、ビジネス・アプリケーションを動作しているローカル又はクラウド・サービス・システムを含む、統合システムの部分ではない如何なるシステムである。本方法は202で、定義された時間的期間にわたり、外部システムとユーザとの相互作用をモニタすることができる。モニタリング202は、エンタープライズ内でのユーザ又はユーザ・グループをモニタすることについてのユーザ・コンフィグレーションを基準としてアカウント毎とすることができる。
モニタリングは、すでに発生したか、又は統合サーバが次に定義された時間的期間についてのデータ変化を聴取することを許容することにより、変化のセットを提供することを含む。これは、203で外部システムに発生したデータ変化イベントを収集する。
データ変化イベントは、変化したデータ値を有するそれぞれの外部システムにおける多数のフィールドを有することができる。
データ変化イベントは、変化したデータ値を有するそれぞれの外部システムにおける多数のフィールドを有することができる。
一度データ変化イベントが収集されると、データ変化イベントは、カスタム化、又は仕立てられた統合フロー・テンプレートを判断するために使用される。
これは、204で、データ変化イベントにおいて同一のデータ変化を有する外部システムのペアを識別することを含む。イベント・ペアを識別することは、それぞれのシステムのデータ変化イベントについて、イベントと、外部システムの残りのもののデータ変化イベントとを比較することによって実行することができる。2つのシステムは、それらが多数のデータ変化イベントの中で1対1のマッピングの関係を有する同一の値を含むフィールドを有する場合に、ペアとしてマークすることができる。同一の値を含むフィールドを、共通フィールドとして参照し、かつ同一の値を含むデータ変化イベントを、同一のデータ変化イベントとして参照する。共通フィールドは、2つのノードの間のマッピングとして使用される。
識別されたイベント・ペアを処理することができる。205で、トリガ又はイベント・ノードとしてイベント・チェーン内にイベント・ペアを含ませるための定義された基準に基づいて、識別されたイベント・ペアについてフィルタを実行することができる。それぞれのイベント・ペアは、チェーン内のもう1つのペアと共通フィールドを有しなければならない。
205で、フィルタリングは、イベント・ペア内の共通フィールド内の同一のデータ値の閾値数に基づくことができる。1つの外部システムの同一のデータ変化イベントの事前定義されたパーセンテイジがチェーン内の他のペアの全部をチェーン・アップするために使用することができる。これらの同一のデータ変化イベントは、トリガでのエンド・ポイント及び同一のデータ変化イベント・チェーンのラスト・ノードとして参照することができる。
本方法の1つの利益は、それがマッピングを認識するため、フィールド名の如何なる類似性に依存しないことにある。フィールド名は、2つの外部システムの間で完全に異なり、かつそれらは、値のマッチングによってのみ識別される。これは、値がブーリアン又は数である場合には膨大な数のマッピングとなるであろうが、それらは事前設定されたマッチング率によってフィルタ・アウトされるであろう。
さらに206で処理が実行されて、単一フローを発見すると共に、フロー中のループを除去することができる。これは、イベント・ペアの制限することを含むことができる:
-それぞれのペアは、外部システムの固有の組み合わせを有しなければならないこと;
-それぞれの外部システムは、最大で2つのペアとなるだけであること;及び
-これらがトリガ及びエンド・ノードを形成するので、すべてのイベント・ペア内で1度だけ出現する少なくとも2つの外部システムが存在しなければならないこと。
-それぞれのペアは、外部システムの固有の組み合わせを有しなければならないこと;
-それぞれの外部システムは、最大で2つのペアとなるだけであること;及び
-これらがトリガ及びエンド・ノードを形成するので、すべてのイベント・ペア内で1度だけ出現する少なくとも2つの外部システムが存在しなければならないこと。
破棄されたイベント・ペアは、少なくとも1つの可能性のある追加的なフロー・テンプレートについての後続する処理のために保存される。
205のフィルタリング及び206の処理は、図3に関連してさらに説明される、制約的なプログラミング、又は反復ロジックを使用して実行することができる。
イベント・ペアの最終的なグループ内のそれぞれのイベント・ペアは、グループ内のもう1つのペアと共通フィールドを有しなければならない。システムのグループは、イベントのタイムスタンプに基づいて207で順序付けされるので、それらが時系列的なイベント・チェーンを規定する。これは、トリガ及び少なくとも1つのフロー・ノードを識別するため、タイムスタンプからどれがソースで、どれがターゲット・システムであるかを識別することを含むことができる。
チェーン内での外部システムの順序付けが組織化されて、ファイナライズされたフローを生成する。同一のデータ変化イベントのそれぞれのエンド・ポイントについて、チェーン内のデータ変化を通して反復し、チェーン内のペアの位置づけを、多数の同一のデータ変化イベントのタイムスタンプを比較することによって順序付けして、ファイナライズされた統合テンプレートを生成する。
2つの同一のデータ変化イベントは、もしもそれらが同一のデータ変化イベントの同一のセットを共有し、かつ一方がもう1つの外部システムの全部を含むのであれば、重複と考えられる。より短いチェーンを破棄することができるか、又は2つのチェーンが同一の長さである場合、ランダムに一方を廃棄することができる。
208で、処理206によって破棄された如何なる未使用のイベント・ペアが存在するか否かを判断する。そうであれば、209で本方法をループさせることによってもう1つのフローのためにこれらを処理する。
未使用のペアがもうなくなると、少なくとも1つの得られたフローを210でテンプレート統合フローとすることができるか、又は既存のテンプレート統合フローにマッチするために使用することができる。出力されたテンプレート統合フローは、始原的なユーザのコンテントと共に、他のユーザのためのテンプレートとして格納することができる。
ユーザは、その後、確認すると共に、それらの環境についての統合フローを終了すると共に任意的にさらなるフローを適用する。
図2Bを参照すると、フロー図250は、テンプレート提供システム150で実行される説明する本方法の実施例の実施形態を示す。
本方法は、251で開始することができると共に、252で、データ変化イベントを、多数の外部システムから収集することができる。
本方法は、253で同一のデータ変化イベントを共有するペアを識別することができる。
本方法は、253で同一のデータ変化イベントを共有するペアを識別することができる。
254で、イベント・ペアが見出されるか否かを判断することができる。もしもイベント・ペアが見出されないのであれば、本方法は、260で終了する。もしもイベント・ペアが見出されたならば、255で、1つよりも多いイベント・ペアが見出されたか否かを判断する。そうであれば、本方法は、256で多数のイベント・ペアを使用して、同一のデータ変化イベントのチェーンを生成することができる。
ただ1つだけのイベント・ペアが見出された場合において、本方法は、257で時間によってイベント・ペアにおける外部システムを順序付けて、統合テンプレートを生成することができる。多数のイベント・ペアが見出され、かつイベント・チェーンにグループされる場合において、本方法は257で、時間によってチェーン内の外部システムを順序付け、統合フロー・テンプレートを生成することができる。
258で、以前の統合フロー・テンプレートの生成において破棄されたいずれかの未利用のイベント・ペアが存在するか否かを判断することができる。もしそうであれば、256で本方法をループさせることによって、もう1つの統合フロー・テンプレートを生成するために処理がなされる。もしも未使用のイベント・ペアが無いのであれば、本方法は、259で全部の統合フロー・テンプレートを出力することができる。本方法は、その後、260で終了する。
図3を参照すると、フロー図300は、イベント・チェーン内に含ませるための識別されたイベント・ペアをフィルタリングする205の図2Aの方法の側面の実施例の実施形態を示す。
本方法は、301で外部システムのペアの間の識別されたイベント・ペアを受領する。イベント・ペアは、302で、すべてが1つの同一の外部システムを含むイベント・ペアに制限することができる。
イベント・ペアは、共通フィールドについて外部システムのペア内でチェックされると共に、データ変化の同一の値を有する共通フィールドの最高の数を有するイベント・ペアが303で選択され、かつこれらの値が参照値として使用される。
それぞれの他のイベント・ペア内の参照値の数を見出すために、他のイベント・ペアが304で検索される。イベント・ペアは、もしも参照値の閾値数に一致しないのであれば破棄される。これは、同一のデータ変化イベントを、他のペアと比較して、最高の同一のデータ変化イベントがマッチする最もマッチする1つを見出すことによって実行することができる。ロジックは、もしも事前設定されたパーセンテイジを有するペアが見出されないのであれば、停止することができる。これは、選択されたペアの間で新たな共有された同一のデータ変化イベントについて反復することができる。
残りのフィルタされたイベント・ペアは、305で処理に提供されて、単一フローを発見すると共に、図2Aのステップ206で説明したように如何なるループでも削除する。
分析の後、出力は、ユーザに対して彼らの詳細な統合を構築するためのスタート・ポイントとして使用することができる、多数の例示フローを提示する。もしもユーザのシステムを通して不十分なデータが通過した場合、データ・イベントのマッチングが全く見出されなかった可能性があり、かつしたがってユーザに対して全く例示フローが提示されないであろう。
実施例の実施形態は、本方法の例示のために説明された。実施例においては、ビジネス・アプリケーション121-123は、セールス及びマーケッティング・クラウド・サービス、電子メール・クラウド・サービス、ソーシャル・メディア・サービス、スプレッドシート・アプリケーション、及びすべてが外部システムにおいて統合サーバへと提供されたAPIを含む。
実施例1
外部システムにおいては、イベントのみがキャプチャされる。
例えば:
・10:00 メッセージが、ソーシャル・メディア・システムにおいて受領される。
名:ジョン
姓:ドー
電子メール・アドレス:jd@company.com、送信時間:9:59)
・10:01 セールス・システムにおいてリードが生成される
名:ジョン
姓:ドー
コンタクト:jd@company.com、生成日:10:01)
・12:00 電子メールが電子メール・システムで送付される。
電子メール:jd@company.com、送付:12:00)
例えば:
・10:00 メッセージが、ソーシャル・メディア・システムにおいて受領される。
名:ジョン
姓:ドー
電子メール・アドレス:jd@company.com、送信時間:9:59)
・10:01 セールス・システムにおいてリードが生成される
名:ジョン
姓:ドー
コンタクト:jd@company.com、生成日:10:01)
・12:00 電子メールが電子メール・システムで送付される。
電子メール:jd@company.com、送付:12:00)
この単一の値変化イベントについて、上述したイベントに基づき、本方法は、3つのシステムがマッピング・フィールドに関連すると判断する。
・ソーシャル・メディア.名<->セールス.名
・ソーシャル・メディア.姓<->セールス.姓
・ソーシャル・メディア.電子メール・アドレス<->セールス.コンタクト<->電子メール.電子メール
・ソーシャル・メディア.名<->セールス.名
・ソーシャル・メディア.姓<->セールス.姓
・ソーシャル・メディア.電子メール・アドレス<->セールス.コンタクト<->電子メール.電子メール
したがって、ソーシャル・メディア・システム及びセールス・システムは、3つの共通フィールドを有し、ソーシャル・メディア・システム及び電子メール・システムは、1つの共通フィールドを有し、セールス・システム及び電子メール・システムは1つの共通フィールドを有する。
もしも他の値変化イベントが存在するものと想定するならば、それらは、すべて同一の値を有するが、電子メール・システムは幾らかのノイズを有した。ソーシャル・メディア・システムは、セールス・システムの10イベントと100%マッチングする10のイベントを有する。電子メール・システムは、15イベントを有し、5イベントは、他の2つのシステムにおけると同一の値変化を有しない。
もしも、マッチングの閾値を80%を超えるように設定するのであれば、電子メール・システムは、マッチング率が10/15=66.67%なので、考慮されないであろう。テンプレートのため、2つのシステム・イベントが存在するであろう。セールス・システムはリードを生成し<->ソーシャル・メディアがメッセージを受領した
その後、本方法は、これらの10イベントを注視し、もしもセールス・イベントの前にソーシャル・メディア・イベントの全部が発生したのであれば、システムは、再順位付けして、以下のフローを生成する。(トリガ)ソーシャル・メディア・システムがメッセージを受領した--->(アクション)セールス・システムがソーシャル・メディア名からの値を使用して名、ソーシャル・メディア姓からの値を使用して姓を使用してリードを生成し、そしてソーシャル・メディアの電子メール・アドレスからの値を使用してコンタクトした。
実施例2
実施例のユース・ケースは、以下の様に説明される。
ユーザは、毎日10amに以下のタスクを実行する(ユーザ・ルーチン1として参照する。)
1.共有スプレッドシートに如何なる新たなカスタマーが追加されたか否かをチェックする。
2.外部マーケッティング及びセールス・システムにどのシステムを先ずランダムの順序で新たなカスタマーのためのコンタクトを追加する。
3.ステップ2の全部のアクションが完了したらすぐに、これらのコンタクトへとウェルカム電子メールを送付する。
ユーザは、毎日10amに以下のタスクを実行する(ユーザ・ルーチン1として参照する。)
1.共有スプレッドシートに如何なる新たなカスタマーが追加されたか否かをチェックする。
2.外部マーケッティング及びセールス・システムにどのシステムを先ずランダムの順序で新たなカスタマーのためのコンタクトを追加する。
3.ステップ2の全部のアクションが完了したらすぐに、これらのコンタクトへとウェルカム電子メールを送付する。
もう1人のユーザは、1日の間、規則的に以下のタスクを実行する(ユーザ・ルーチング2として参照する。):
1.外部マーケッティング・システムにおける新たなリードをチェックする。
2.新たなカスタマーのため、製品を提供するためのAPIシステムを呼び出す。
3.ステップ2が完了した後、もう1つの電子メールをカスタマーに送付する。
1.外部マーケッティング・システムにおける新たなリードをチェックする。
2.新たなカスタマーのため、製品を提供するためのAPIシステムを呼び出す。
3.ステップ2が完了した後、もう1つの電子メールをカスタマーに送付する。
説明する方法は、2つのユーザ・タスクを実行するために要求されるすべてのシステムにアクセスを有する2つのテンプレートを生成するために使用することができる。
システム1のイベントA及びシステム2のイベントBは、システム1のイベントAにおけるフィールドXが、システム2のイベントBにおけるフィールドYの値を有しているので、イベント・ペアである。2つのペアをリンクするチェーンを構築するためには(4システム)、他の2つのシステムは、システム3のイベントC及びシステム4のイベントDにおいてそれぞれフィールドZ及びフィールドWを有しなければならない。
先ず、2つのペアは、もしもそれらが同一の外部システムのイベントを共有していなければ、互いにチェックされないであろう。
例えば:
ペアAB->スプレッドシートの行-セールス・リード
ペアBC->セールス・リード-電子メール
ペアCD->電子メール・メール-APIリード
ペアBD->セールス・リード-APIリード
ペアAB->スプレッドシートの行-セールス・リード
ペアBC->セールス・リード-電子メール
ペアCD->電子メール・メール-APIリード
ペアBD->セールス・リード-APIリード
ペアAB、BC及びBDは、それらがすべてB(セールス・リード)を有するためチェックされ、CDは破棄されるであろう。
イベントA(システム1から)及びイベントB(システム2から)の両方が、同一の値が変化した8フィールドを有するものとすると、それは8つの共通フィールド(ABペア)を有することになる。他のペアについては:10フィールドは、3つの共通フィールドで変化し(BCペア)、4フィールドは、4つの共通フィールドで変化した(BDペア)。ABペア内の共通フィールドの数が最高なので、スタート・ペアとして選択されるであろう。
BCペアの変化イベント内のABペアから識別された8つの共通フィールドの同一の値について検索される。事前設定されたパーセンテイジ閾値は=80%に設定される。BCペア内の3つの共通フィールドは、ABペアの8つの共通ペアにおける3つのフィールドであり、かつそれらの3つの共通フィールド内の値の変化は、100%マッチングすることが見出される。したがって、ABペアによってチェーン・リード内が記録されるであろう(AB<->BC)
BDペアについて、ABペア内の共通フィールドの1つとのマッチングする60%の同一値を有するだけの1フィールドがBDの共通フィールドから見出される。
したがって、BDは、チェーン内とはされないであろう。
したがって、BDは、チェーン内とはされないであろう。
実施例のユーザ・ルーチン1およびユーザ・ルーチン2を使用し、以下のペアが見出される。
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->セールス・システム
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->セールス・システム
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
以下のものは、単一のデータ・フロー及びルールアウト・ループを見出すための基準のセットの実施例である:
それぞれのペアは、外部システムの固有の組み合わせを有しなければならない;
それぞれの外部システムは、最大での2つのペアにのみ存在することができる;及び
すべてのペア内に一度だけ出現する少なくとも2つの外部システムが存在するべきである。
それぞれのペアは、外部システムの固有の組み合わせを有しなければならない;
それぞれの外部システムは、最大での2つのペアにのみ存在することができる;及び
すべてのペア内に一度だけ出現する少なくとも2つの外部システムが存在するべきである。
もしも例えばペアAB、BC、CD、DB及びDEが存在するものとする:それぞれのペアは、外部システムの固有の組み合わせを有し、A及びEは、すべてのペア内に1度だけ出現する。しかしながら、BC->CD->DBは、ループである。この実施例においては、B及びDの両方は、2つのペアよりも出現する。良好な制約アルゴリズムで、DBは、それぞれの外部システムが最大で2つのペアにおいてのみ存在することができるという要求にしたがって、識別され、かつ除去されるであろう。このことは、本実施例のBDはチェーンではなく同一の値変化についての80%のマッチング基準に適合しないという、制約の実施例の使用として提供される。
本方法は、アクションのノードが1つの下流ノードよりも多い可能性があるフローを生成することを目的としない。言い換えれば、BC及びBDのうちの1つは、第1のフロー・テンプレートを形成する場合に削除され、かつ削除されたペアは、第2のフロー・テンプレートとなるであろう。すなわち、結果は、フロー1:AB->BCプラスフロー2:BDとなるであろう。
それは、第1の反復において第1のフローを見出すことができる。上記にリストした制約に基づいた削除の多数の方法が存在する可能性がある。ペアの最高の数を有するもの、最高の数の中で引き分けがある場合には、ランダムに1つが選択される。
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->セールス・システム
マーケッティング・システム<->APIシステム(削除)
APIシステム<->電子メール・システム(削除)
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->セールス・システム
マーケッティング・システム<->APIシステム(削除)
APIシステム<->電子メール・システム(削除)
第1の反復において残されたデータ変化について:
マーケッティング・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
マーケッティング・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
もう1つのフローが発見される:
マーケッティング・システム<->電子メール・システム(削除)
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
マーケッティング・システム<->電子メール・システム(削除)
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
しかしながら、実際のユース・ケースにおいては、同様に異なるフローが存在する可能性があるであろう。
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム(削除)
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->セールス・システム(削除)
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
スプレッドシート・システム<->マーケッティング・システム
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム(削除)
スプレッドシート・システム<->セールス・システム(削除)
マーケッティング・システム<->セールス・システム(削除)
マーケッティング・システム<->APIシステム
APIシステム<->電子メール・システム
及び
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->セールス・システム(削除)
マーケッティング・システム<->電子メール・システム(削除)
セールス・システム<->電子メール・システム
スプレッドシート・システム<->セールス・システム
マーケッティング・システム<->セールス・システム(削除)
それぞれの同一のイベント変化チェーンについて、システムは、システムによるこれらの変化のタイムスタンプを収集するであろう。例えば、電子メールbob@company.comを有するデータ・エントリについての変化イベントは、セールス、マーケッティング及び電子メール・サービスに追加される。
bob@company.com:12:10-セールス、12:11-電子メール、10:10-マーケッティング
fred@company.com:12:10-セールス、12:09-電子メール、7:00-マーケッティング
jane@company.com:12:11-セールス、12:10-電子メール、5:00-マーケッティング
bob@company.com:12:10-セールス、12:11-電子メール、10:10-マーケッティング
fred@company.com:12:10-セールス、12:09-電子メール、7:00-マーケッティング
jane@company.com:12:11-セールス、12:10-電子メール、5:00-マーケッティング
したがって、もしもすべてのイベントが、時間についてと同じ順序であるならば、フロー・テンプレート内のシステムは、再順序付けされる。例えば、上記に共有した実施例のイベントのためのフローを構成するために、テンプレートは、セールス及び電子メールの前に順序付けされたマーケッティング・システムを有しなければならない。セールス及び電子メールの順番は、重要ではない。
図4を参照すると、ブロック図は、コンピュータ・システムに提供されたテンプレート提供システム150の実施例の実施形態を図示しており、このコンピュータ・システムは、少なくとも1つのプロセッサ回路上で実行するソフトウェア・ユニットとすることができる、説明したコンポーネントの機能を実行するための少なくとも1つのプロセッサ回路401、ハードウェア・モジュール又は回路を含む。並列的な処理スレッドを動作させる多数のプロセッサ回路は、コンポーネントのいくつか、又は全部の機能を並列処理することを可能とするために提供することができる。メモリ402は、コンポーネントの機能を実行するために少なくとも1つのプロセッサ回路401へと、コンピュータ命令403を提供するように構成することができる。
テンプレート提供システム150は、図1を参照して説明したように、統合フロー142を提供するための統合サーバ140とインタフェースする。
テンプレート提供システム150は、説明した方法の機能を提供するコンポーネントを含む。テンプレート提供システム150は、時間的期間にわたる外部システムでのデータ変化イベントに関連するデータを収集するためにユーザ・パーミッションを受領するユーザ・アクセス・コンポーネント451、外部システムをモニタするための外部システム・モニタリング・コンポーネント452、及びデータを収集するためのデータ変化イベント・コンポーネント453を含む。
テンプレート提供システム150は、データ変化イベントにおいて同一のデータ値変化を有する外部システムのペアを識別するためのイベント・ペア識別コンポーネント454、事前定義された基準に基づいてイベント・ペアをフィルタするためのフィルタリング・コンポーネント456を含むチェーン生成コンポーネント455、及びイベント・チェーン内でシステムを順序付けするための順序付けコンポーネント457を含む。
テンプレート提供システム150は、カスタマイズされた統合フロー・テンプレート152としてのチェーンを出力するための、テンプレート出力コンポーネント458を含むことができる。テンプレート提供システム150は、また、若しくは代替的に、既存のテンプレート統合フローにマッチングするために収集されたイベント・チェーンを使用するためのテンプレート・マッチング・コンポーネント459を含むことができる。
図5は、本発明の実施形態による、図1~4の統合サーバ140及びテンプレート提供システム150を提供するためのコンポーネントのブロック図を示す。図5は、1つの実施形態の例示のみを提供し、異なる実施形態が実装可能な環境に関連して如何なる限定を意味しないことについて理解されるべきである。図示した環境に対する多くの修正が可能である。
コンピューティング・システムは、少なくとも1つのプロセッサ回路502、少なくとも1つのコンピュータ可読なRAMs504、少なくとも1つのコンピュータ可読なROM506、少なくとも1つのコンピュータ可読な記録媒体508、デバイス・ドライバ512、リード/ライト・ドライブ又はインタフェース514、及び通信アダプタ又はインタフェース516を含むことができ、すべてが通信機能518越しに相互接続される。通信機能518は、プロセッサ回路(マイクロプロセッサ、通信及びネットワーク・プロセッサといった)の間でデータ、又は制御情報、又はそれらの両方を渡すために設定された如何なるアーキテクチャで実装することができる。
少なくとも1つのオペレーティング・システム510及びテンプレート提供システ150といったアプリケーション・プログラム511は、少なくとも1つのそれぞれのRAMs504(典型的にはキャッシュ・メモリを含む。)を介した少なくとも1つのプロセッサ回路502による実行のための、少なくとも1つのコンピュータ可読な記録媒体508に格納される。例示する実施形態においては、それぞれのコンピュータ可読な記録媒体508は、本発明の実施形態によるコンピュータ・プログラム及びデジタル情報を格納可能な、内部ハードドライブ、CD-ROM、DVD、メモリ・スティック、磁気テープ、磁気ディスク、光学ディスク、RAM、ROM、EPROM、フラッシュ・メモリ、といった半導体記録デバイス、又は如何なる他のコンピュータ可読な記録媒体とすることができる。
コンピューティング・システムは、また、少なくとも1つの携行可能なコンピュータ可読な記録媒体526との間で読み出し及び書き込みするための、R/Wドライブ又はインタフェース514を含むことができる。コンピューティング・システム上のアプリケーション・プログラム511は、少なくとも1つの携行可能なコンピュータ可読な記録媒体526に格納することができ、それぞれのR/Wドライブ又はインタフェース514を介して読み出すことができ、かつそれぞれのコンピュータ可読な記録媒体508内にロードされることができる。
コンピューティング・システムは、また、TCP/IPアダプタ・カード又はワイヤレス通信アダプタといった、ネットワーク・アダプタ又はインタフェース516を含むことができる。コンピューティング・システム上のアプリケーション・プログラム511は、外部コンピュータ、又は外部ストレージ・デバイスから、ネットワーク(例えば、インターネット、ローカル・エリア・ネットワーク、又は他のワイド・エリア・ネットワーク、又はワイヤレス・ネットワーク)及びネットワーク・アダプタ516を介してダウンロードすることができる。ネットワーク・アダプタ又はインタフェース516から、プログラムは、コンピュータ可読な記録媒体508内にロードすることができる。ネットワークは、銅ワイヤ、光ファイバ、ワイヤレス通信、ルータ、ファイア・ウォール、スイッチ、ゲートウェイ・コンピュータ及びエッジ・サーバを含むことができる。
コンピューティング・システムは、また、ディスプレイ・スクリーン520、キーボード又はキーパッド522、及びコンピュータ・マウス又はタッチパッド524を含むことができる。デバイス・ドライバ512は、イメージングのためのディスプレイ・スクリーン520、キーボード又はキーパッド522、コンピュータ・マウス又はタッチパッド524、又は英数字のキャラクタの入力及びユーザ選択を圧力検出するためのディスプレイ・スクリーン520、又はこれらの組み合わせへとインタフェースする。デバイス・ドライバ512、R/Wドライブ又はインタフェース514及びネットワーク・アダプタ又はインタフェース516は、コンピュータ可読な記録媒体508、又はROM506、又はこれら両方に格納されたハードウェア及びソフトウェアを含むことができる。
本発明は、いかなる可能な技術的に詳細な一体化レベルであっても、システム、方法、又はコンピュータ・プログラム製品、又はこれらの組み合わせとすることができる。コンピュータ・プログラム製品は、プロセッサに対して本発明の特徴を遂行させるためのコンピュータ可読なプログラム命令をそれ上に有する記録媒体(又は複数の媒体)を含むことができる。
コンピュータ可読な記録媒体は、命令実行デバイスが使用するための複数の命令を保持し格納することができる有形のデバイスとすることができる。コンピュータ可読な媒体は、例えば、これらに限定されないが、電気的記録デバイス、磁気的記録デバイス、光学的記録デバイス、電気磁気的記録デバイス、半導体記録デバイス又はこれらのいかなる好ましい組み合わせとすることができる。コンピュータ可読な記録媒体の限定的ではない実施例は、次のポータブル・コンピュータ・ディスク、ハードディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリー・メモリ(ROM)、消去可能なプログラマブル・リード・オンリー・メモリ(EPROM又はフラッシュ・メモリ(登録商標))、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・イオンリー・メモリ(CD-ROM)、デジタル多目的ディスク(DVD)、メモリ・スティック、フロッピー・ディスク(登録商標)、パンチ・カード又は命令を記録した溝内に突出する構造を有する機械的にエンコードされたデバイス、及びこれらの好ましい如何なる組合せを含む。本明細書で使用するように、コンピュータ可読な記録媒体は、ラジオ波又は他の自由に伝搬する電磁波、導波路又は他の通信媒体(例えば、光ファイバ・ケーブルを通過する光パルス)といった電磁波、又はワイヤを通して通信される電気信号といったそれ自体が一時的な信号として解釈されることはない。
本明細書において説明されるコンピュータ・プログラムは、コンピュータ可読な記録媒体からそれぞれのコンピューティング/プロセッシング・デバイスにダウンロードでき、又は例えばインターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク又はワイヤレス・ネットワーク及びそれからの組み合わせといったネットワークを介して外部コンピュータ又は外部記録デバイスにダウンロードすることができる。ネットワークは、銅通信ケーブル、光通信ファイバ、ワイヤレス通信、ルータ、ファイア・ウォール、スイッチ、ゲートウェイ・コンピュータ及びエッジ・サーバ又はこれらの組み合わせを含むことができる。それぞれのコンピューティング/プロセッシング・デバイスにおけるネットワーク・アダプタ・カード又はネットワーク・インタフェースは、ネットワークからコンピュータ可読なプログラム命令を受領し、このコンピュータ可読なプログラム命令を格納するためにそれぞれのコンピューティング/プロセッシング・デバイス内のコンピュータ可読な記録媒体内に転送する。
本発明の操作を遂行するためのコンピュータ可読なプログラム命令は、アセンブラ命令、命令セット・アーキテクチャ(ISA)命令、機械語命令、マシン依存命令、マイクロ・コード、ファームウェア命令、状態設定データ、集積回路のための構成データ、又は1つ又はそれ以上の、Smalltalk(登録商標)、C++などのオブジェクト指向プログラミング言語、“C”プログラミング言語又は類似のプログラム言語といった手続き型プログラミング言語を含むプログラミング言語のいかなる組合せにおいて記述されたソース・コード又はオブジェクト・コードのいずれかとすることができる。コンピュータ可読なプログラム命令は、全体がユーザ・コンピュータ上で、部分的にユーザ・コンピュータ上でスタンドアローン・ソフトウェア・パッケージとして、部分的にユーザ・コンピュータ上で、かつ部分的にリモート・コンピュータ上で、又は全体がリモート・コンピュータ又はサーバ上で実行することができる。後者のシナリオにおいて、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)を含むいかなるタイプのネットワークを通してユーザ・コンピュータに接続することができ、又は接続は、外部コンピュータ(例えばインターネット・サービス・プロバイダを通じて)へと行うことができる。いくつかの実施形態では、例えばプログラマブル論理回路、フィールド・プログラマブル・ゲートアレイ(FPGA)、又はプログラマブル論理アレイ(PLA)を含む電気回路がコンピュータ可読なプログラム命令を、コンピュータ可読なプログラム命令の状態情報を使用して、本発明の特徴を実行するために電気回路をパーソナライズして実行することができる。
本明細書で説明した本発明の側面を、本発明の実施形態にしたがい、フローチャート命令及び方法のブロック図、又はそれらの両方、装置(システム)、及びコンピュータ可読な記録媒体及びコンピュータ・プログラムを参照して説明した。フローチャートの図示及びブロック図又はそれら両方及びフローチャートの図示におけるブロック及びブロック図、又はそれらの両方のいかなる組合せでもコンピュータ可読なプログラム命令により実装することができることを理解されたい。
これらのコンピュータ可読なプログラム命令は、汎用目的のコンピュータ、特定目的のコンピュータ、または他のプロセッサ又は機械を生成するための他のプログラマブル・データ・プロセッシング装置に提供することができ、コンピュータのプロセッサ又は他のプログラマブル・データ・プロセッシング装置による実行がフローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作を実装するための手段を生成する。コンピュータ、プログラマブル・データ・プロセッシング装置及び他の装置又はこれらの組み合わせが特定の仕方で機能するように指令するこれらのコンピュータ可読なプログラム命令は、またコンピュータ可読な記録媒体に格納することができ、その内に命令を格納したコンピュータ可読な記録媒体は、フローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作の特徴を実装する命令を含む製造品を構成する。
コンピュータ可読なプログラム命令は、またコンピュータ、他のプログラマブル・データ・プロセッシング装置、又は他のデバイス上にロードされ、コンピュータ、他のプログラマブル装置、又は他のデバイス上で操作ステップのシリーズに対してコンピュータ実装プロセスを生じさせることで、コンピュータ、他のプログラマブル装置又は他のデバイス上でフローチャート及びブロック図のブロック又は複数のブロック又はこれらの組み合わせで特定される機能/動作を実装させる。図のフローチャート及びブロック図は、本発明の種々の実施形態にしたがったシステム、方法及びコンピュータ・プログラムのアーキテクチャ、機能、及び可能な実装操作を示す。この観点において、フローチャート又はブロック図は、モジュール、セグメント又は命令の部分を表すことかでき、これらは、特定の論理的機能(又は複数の機能)を実装するための1つ又はそれ以上の実行可能な命令を含む。いくつかの代替的な実装においては、ブロックにおいて記述された機能は、図示した以外で実行することができる。例えば、連続して示された2つのブロックは、含まれる機能に応じて、実際上1つのステップとして遂行され、同時的、実質的に同時的に、部分的又は完全に一時的に重ね合わされた仕方で実行することができ、又は複数のブロックは、時として逆の順番で実行することができる。またブロック図及びフローチャートの図示、又はこれらの両方及びブロック図中のブロック及びフローチャートの図示又はこれらの組み合わせは、特定の機能又は動作を実行するか又は特定の目的のハードウェア及びコンピュータ命令を遂行する特定目的のハードウェアに基づいたシステムにより実装することができることを指摘する。
クラウド・コンピューティング
本開示は、クラウド・コンピューティングについての詳細を含むが、本明細書内で参照した教示は、クラウド・コンピューティング環境に限定されることはない。むしろ、本開示の環境は、現在知られ、又は将来開発される他の如何なるタイプのコンピューティング環境との組み合わせにおいても実装することができる。
クラウド・コンピューティングは、最小限の管理労力又はサービス提供者との交流をもって、迅速に提供及び開放構成可能なコンピューティング資源(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン及びサービス)の共用されるプールにアクセスするための利便性のある、オンデマンドのネットワークアクセスのためのサービス提供のモデルである。このクラウド・モデルは、少なくとも5つの特徴、少なくとも3つのサービスモデル、及び少なくとも4つの配置モデルを含むことができる。
特徴は以下のとおりである:
オンデマンド・セルフサービス:クラウドのコンシューマは、サーバ時間、及びネットワーク・ストレージといったコンピューティング能力を、サービスの提供者との人間的交流を必要とすることなく必要なだけ自動的に一方向的に提供される。
広範なネットワークアクセス:能力は、ネットワーク上で利用可能であり、かつ異なったシン又はシッククライアント・プラットフォーム(例えば、モバイルホン、ラップトップ及びPDA)による利用を促す標準的な機構を通してアクセスされる。
リソースの共用:提供者のコンピューティング資源は、マルチテナント・モデルを使用し、動的に割当てられる必要に応じて再割り当てられる異なった物理的及び仮想化資源と共に多数の消費者に提供するべく共用される。
コンシューマは概ね提供される資源の正確な位置(例えば、国、州、又はデータセンタ)に関する制御又は知識を有さず、抽象化の高度の階層において位置を特定することができるというように、位置非依存の感覚が存在する。
迅速な弾力性:機能は、迅速かつ弾力的に、場合によっては自動的に供給され素早くスケールアウトし、迅速に解放して素早くスケールインすることが可能である。
コンシューマにとっては、供給のために利用可能な機能は、多くの場合、制限がないように見え、いつでも任意の量で購入することができる。
計測されるサービス:クラウド・システムは、サービスの種類(例えば、ストレージ、処理、帯域幅、及びアクティブ・ユーザ・アカウント)に適したいくつかの抽象化レベルで計量機能を活用することによって、リソースの使用を自動的に制御し、最適化する。
リソース使用量を監視し、制御し、報告することで、使用されているサービスのプロバイダ及びコンシューマの両方に対して透明性を提供することができる。
オンデマンド・セルフサービス:クラウドのコンシューマは、サーバ時間、及びネットワーク・ストレージといったコンピューティング能力を、サービスの提供者との人間的交流を必要とすることなく必要なだけ自動的に一方向的に提供される。
広範なネットワークアクセス:能力は、ネットワーク上で利用可能であり、かつ異なったシン又はシッククライアント・プラットフォーム(例えば、モバイルホン、ラップトップ及びPDA)による利用を促す標準的な機構を通してアクセスされる。
リソースの共用:提供者のコンピューティング資源は、マルチテナント・モデルを使用し、動的に割当てられる必要に応じて再割り当てられる異なった物理的及び仮想化資源と共に多数の消費者に提供するべく共用される。
コンシューマは概ね提供される資源の正確な位置(例えば、国、州、又はデータセンタ)に関する制御又は知識を有さず、抽象化の高度の階層において位置を特定することができるというように、位置非依存の感覚が存在する。
迅速な弾力性:機能は、迅速かつ弾力的に、場合によっては自動的に供給され素早くスケールアウトし、迅速に解放して素早くスケールインすることが可能である。
コンシューマにとっては、供給のために利用可能な機能は、多くの場合、制限がないように見え、いつでも任意の量で購入することができる。
計測されるサービス:クラウド・システムは、サービスの種類(例えば、ストレージ、処理、帯域幅、及びアクティブ・ユーザ・アカウント)に適したいくつかの抽象化レベルで計量機能を活用することによって、リソースの使用を自動的に制御し、最適化する。
リソース使用量を監視し、制御し、報告することで、使用されているサービスのプロバイダ及びコンシューマの両方に対して透明性を提供することができる。
サービスモデルは、以下のとおりである:
ソフトウェア・アズ・ア・サービス(SaaS):コンシューマに提供される機能は、クラウド・インフラストラクチャ上で実行されるプロバイダのアプリケーションを使用することである。
アプリケーションは、ウェブ・ブラウザ(例えば、ウェブベースの電子メール)のようなシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。
コンシューマは、限定されたユーザ固有のアプリケーション構成設定を除いて、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーションの機能も含む、基盤となるクラウド・インフラストラクチャを管理又は制御することはない。
プラットフォーム・アズ・ア・サービス(PaaS):コンシューマに提供される能力は、プロバイダがサポートするプログラミング言語及びツールを用いて作成された、コンシューマが作成又は獲得したアプリケーションを、クラウド・インフラストラクチャ上に配置することである。
コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージを含む、基盤となるクラウド・インフラストラクチャを管理又は制御することはないが、配置されたアプリケーションを制御し、可能であればアプリケーション・ホスティング環境の構成を制御する。
インフラストラクチャ・アズ・ア・サービス(IaaS):コンシューマに提供される機能は、処理、ストレージ、ネットワーク、及びその他の基本的なコンピューティング・リソースの提供であり、コンシューマは、オペレーティング・システム及びアプリケーションを含むことができる任意のソフトウェアを配置し、実行させることが可能である。
コンシューマは、基盤となるクラウド・インフラストラクチャを管理又は制御することはないが、オペレーティング・システム、ストレージ、配置されたアプリケーションの制御を有し、可能であれば選択ネットワーキング・コンポーネント(例えば、ホストのファイア・ウォール)の限定的な制御を有する。
ソフトウェア・アズ・ア・サービス(SaaS):コンシューマに提供される機能は、クラウド・インフラストラクチャ上で実行されるプロバイダのアプリケーションを使用することである。
アプリケーションは、ウェブ・ブラウザ(例えば、ウェブベースの電子メール)のようなシン・クライアント・インターフェースを通じて、種々のクライアント・デバイスからアクセス可能である。
コンシューマは、限定されたユーザ固有のアプリケーション構成設定を除いて、ネットワーク、サーバ、オペレーティング・システム、ストレージ、又は個々のアプリケーションの機能も含む、基盤となるクラウド・インフラストラクチャを管理又は制御することはない。
プラットフォーム・アズ・ア・サービス(PaaS):コンシューマに提供される能力は、プロバイダがサポートするプログラミング言語及びツールを用いて作成された、コンシューマが作成又は獲得したアプリケーションを、クラウド・インフラストラクチャ上に配置することである。
コンシューマは、ネットワーク、サーバ、オペレーティング・システム、又はストレージを含む、基盤となるクラウド・インフラストラクチャを管理又は制御することはないが、配置されたアプリケーションを制御し、可能であればアプリケーション・ホスティング環境の構成を制御する。
インフラストラクチャ・アズ・ア・サービス(IaaS):コンシューマに提供される機能は、処理、ストレージ、ネットワーク、及びその他の基本的なコンピューティング・リソースの提供であり、コンシューマは、オペレーティング・システム及びアプリケーションを含むことができる任意のソフトウェアを配置し、実行させることが可能である。
コンシューマは、基盤となるクラウド・インフラストラクチャを管理又は制御することはないが、オペレーティング・システム、ストレージ、配置されたアプリケーションの制御を有し、可能であれば選択ネットワーキング・コンポーネント(例えば、ホストのファイア・ウォール)の限定的な制御を有する。
配置モデルは、以下の通りである:
プライベート・クラウド:クラウド・インフラストラクチャは、1つの組織のためだけに動作する。これは、その組織又は第三者によって管理することができオン・プレミス又はオフ・プレミスで存在することができる。
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織によって共有され、共通の利害関係(例えば、任務、セキュリティ要件、ポリシー、及びコンプライアンスの考慮事項)を有する特定のコミュニティをサポートする。これは、それらの組織又は第三者によって管理することができ、オン・プレミス又はオフ・プレミスに存在することができる。
パブリック・クラウド:クラウド・インフラストラクチャは、公衆又は大きな産業グループが利用可能できるようにされており、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:クラウド・インフラストラクチャは、2つ又はそれより多いクラウド(プライベート、コミュニティ、又はパブリック)を組み合わせたものであり、これらのクラウドは、固有のエンティティのままであるが、データ及びアプリケーションのポータビリティを可能にする標準化技術又は専有技術によって互いに結合される(例えば、クラウド間の負荷バランスのためのクラウド・バースティング)。
プライベート・クラウド:クラウド・インフラストラクチャは、1つの組織のためだけに動作する。これは、その組織又は第三者によって管理することができオン・プレミス又はオフ・プレミスで存在することができる。
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織によって共有され、共通の利害関係(例えば、任務、セキュリティ要件、ポリシー、及びコンプライアンスの考慮事項)を有する特定のコミュニティをサポートする。これは、それらの組織又は第三者によって管理することができ、オン・プレミス又はオフ・プレミスに存在することができる。
パブリック・クラウド:クラウド・インフラストラクチャは、公衆又は大きな産業グループが利用可能できるようにされており、クラウド・サービスを販売する組織によって所有される。
ハイブリッド・クラウド:クラウド・インフラストラクチャは、2つ又はそれより多いクラウド(プライベート、コミュニティ、又はパブリック)を組み合わせたものであり、これらのクラウドは、固有のエンティティのままであるが、データ及びアプリケーションのポータビリティを可能にする標準化技術又は専有技術によって互いに結合される(例えば、クラウド間の負荷バランスのためのクラウド・バースティング)。
クラウド・コンピューティング環境は、無国籍性、粗結合性、モジュール性、及び意味的相互運用性に焦点を合わせたサービス指向のものである。クラウド・コンピューティングの心臓部において、相互接続された複数のノードを含むものがインフラストラクチャである。
図6は、例示的なクラウド・コンピューティング環境50を示す。
図示するように、クラウド・コンピューティング環境50は、1つ又はそれ以上のクラウド・コンピューティング・ノード10を含み、それらと共にクラウド・コンシューマにより使用される例えばパーソナル・デジタル・アシスタント(PDA)又はセルラ電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、又は自動車コンピュータ・システム54N又はこれらの組合せといったローカル・コンピューティング・デバイスが通信する。ノード10は、互いに通信することができる。
これらは、上述したプライベート、コミュニティ、パブリック、又はハイブリッド・クラウド、又はそれらの組合せといった、1つ又はそれ以上のネットワーク内で、物理的又は仮想的にグループ化することができる(不図示)。これは、クラウド・コンピューティング環境50が、クラウド・コンシューマがローカルなコンピューティング・デバイス上のリソースを維持する必要を無くするための、インフラストラクチャ、プラットホーム、又はソフトウェア・アズ・ア・サービスを提供することを可能とする。図6に示すコンピューティング・デバイス54A-Nのタイプは、例示を意図するためのみのものであり、コンピューティング・ノード10及びクラウド・コンピューティング環境50は、任意のタイプのネットワーク又はアドレス可能なネットワーク接続(例えばウェブ・ブラウザを使用して)、又はそれらの両方を通じて、いかなるタイプのコンピュータ化デバイスとも通信することができることが理解される。
図示するように、クラウド・コンピューティング環境50は、1つ又はそれ以上のクラウド・コンピューティング・ノード10を含み、それらと共にクラウド・コンシューマにより使用される例えばパーソナル・デジタル・アシスタント(PDA)又はセルラ電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、又は自動車コンピュータ・システム54N又はこれらの組合せといったローカル・コンピューティング・デバイスが通信する。ノード10は、互いに通信することができる。
これらは、上述したプライベート、コミュニティ、パブリック、又はハイブリッド・クラウド、又はそれらの組合せといった、1つ又はそれ以上のネットワーク内で、物理的又は仮想的にグループ化することができる(不図示)。これは、クラウド・コンピューティング環境50が、クラウド・コンシューマがローカルなコンピューティング・デバイス上のリソースを維持する必要を無くするための、インフラストラクチャ、プラットホーム、又はソフトウェア・アズ・ア・サービスを提供することを可能とする。図6に示すコンピューティング・デバイス54A-Nのタイプは、例示を意図するためのみのものであり、コンピューティング・ノード10及びクラウド・コンピューティング環境50は、任意のタイプのネットワーク又はアドレス可能なネットワーク接続(例えばウェブ・ブラウザを使用して)、又はそれらの両方を通じて、いかなるタイプのコンピュータ化デバイスとも通信することができることが理解される。
ここで、図7参照すると、クラウド・コンピューティング環境50(図6)により提供される機能的抽象レイヤのセットが示される。予め、図7に示したコンポーネント、レイヤ、及び機能は、例示することのみを意図したものであり、本発明の実施形態は、これらに限定されることは無いことは理解されるべきである。図示したように、後述するレイヤ及び対応する機能が提供される。
ハードウェア及びソフトウェアレイヤ60は、ハードウェア及びソフトウェア・コンポーネントを含む。ハードウェア・コンポーネントの例としては、メインフレーム61;RISC(縮小命令セットコンピュータ)アーキテクチャに基づく複数のサーバ62;複数のサーバ63;複数のブレード・サーバ64;複数のストレージ・デバイス65;及びネットワーク及びネットワーキング・コンポーネント66を含むことができる。いくつかの実施形態ではソフトウェア・コンポーネントは、ネットワーク・アプリケーション・サーバ・ソフトウェア67及びデータベース・ソフトウェア68を含む。
可視化レイヤ70は、それから後述する仮想エンティティの実施例が提供される抽象レイヤ;仮想サーバ71;仮想ストレージ72;仮想プライベート・ネットワークを含む仮想ネットワーク73;仮想アプリケーション及びオペレーティング・システム74;及び仮想クライアント75を提供する。
1つの実施例では、マネージメント・レイヤ80は、下記の機能を提供することができる。リソース提供部81は、コンピューティング資源及びクラウド・コンピューティング環境内でタスクを遂行するために用いられる他の資源の動的獲得を提供する。計測及び価格設定部82は、クラウド・コンピューティング環境内で資源が使用されるとコストの追跡を提供すると共に、これらの資源の消費に対する課金又は請求を提供する。1つの実施例では、これら資源としてはアプリケーション・ソフトウェア・ライセンスを含むことができる。セキュリティ部は、クラウド・コンシューマ及びタスクの同定及び認証と共にデータ及び他の資源の保護を提供する。ユーザ・ポータル部83は、コンシューマに対するクラウド・コンピューティング環境及びシステム・アドミニストレータへのアクセス性を提供する。サービスレベル・マネージメント部84は、クラウド・コンピューティング資源の割り当て及び管理を提供し、必要なサービス・レベルに適合させる。サービス・レベル・アグリーメント(SLA)プランニング・フルフィルメント部85は、SLAにしたがって将来的な要求が要求されるクラウド・コンピューティング資源の事前準備を行うと共にその獲得を行う。
ワークロード・レイヤ90は、クラウド・コンピューティング環境を利用するための機能の例示を提供する。このレイヤによって提供されるワークロード及び機能の例としては、マッピング及びナビゲーション91;ソフトウェア開発及びライフタイム・マネージメント92;仮想教室教育伝達93;データ分析処理94;トランザクション・プロセッシング95;及び統合フロー・テンプレート処理96を含むことができる。
本発明のコンピュータ・プログラム製品は、その内部にコンピュータ可読なプログラム・コードを有する1つ又はそれ以上のコンピュータ可読なハードウェア記録デバイスを含み、前記プログラム・コードは、1つ又はそれ以上のプロセッサ回路によって実行されて、本発明の方法を実装する。
本発明のコンピュータ・システムは、1つ又はそれ以上のプロセッサ回路、1つ又はそれ以上のメモリ、及び1つ又はそれ以上のコンピュータ可読なハードウェア記録デバイスを含み、前記1つ又はそれ以上のハードウェア記録デバイスが、1つ又はそれ以上のメモリを介して1つ又はそれ以上のプロセッサ回路によって本発明の方法を実装するために実行可能なプログラム・コードを含む。
本開示の種々の実施形態の説明は、例示の目的のために提示されたが、開示された実施形態への排他又は限定を意図するものではない。多くの変更例又は変形例は、本開示の範囲及び精神から逸脱することなく、当業者において自明である。本明細書で使用する用語は、本実施形態の原理、実用的用途、又は市場において見出される技術を超える技術的改善を最良に説明するため、又は本明細書において開示された実施形態を当業者の他の者が理解できるようにするために選択したものである。
改善及び修正は、本発明の精神から逸脱することなく、成すことができる。
Claims (20)
- カスタマイズされた統合フロー・テンプレートを提供するためのコンピュータ実装方法であって、前記方法は、
統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出すこと、
2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別すること、
イベント・チェーンに含ませるために少なくとも1つのイベント・ペアをフィルタリングすること、
前記データ変化イベントのタイムスタンプに基づいて、前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けすること、及び
フロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力すること
を含む、コンピュータ実装方法。 - 同一のデータ変化イベントは、前記データ変化の値の多数の1対1の対応のマッピングを有する前記2つの外部システムで共通するフィールド内に入力された同一のデータ値で識別された多数のインスタンスに応答して発生する、
請求項1に記載の方法。 - 少なくとも1つのイベント・ペアを識別することは、それぞれの外部システムのデータ変化イベントを識別すること、及び前記データ変化イベントを、他の外部システムの前記データ変化イベントと比較することを含み、それぞれのイベント・ペアは、識別されたもう1つのイベント・ペアと共通するフィールドを含む、
請求項1に記載の方法。 - さらに、統合システムのアカウントについてのユーザの相互作用に対するユーザ・アクセスを受領することを含み、前記統合システムが複数の外部システムへのアクセスを提供して、事前定義された時間的期間についてのデータ変化を読み出し、かつ統合フロー・テンプレートに基づくユーザ・ルーチンをキャプチャする、
請求項1に記載の方法。 - 少なくとも1つのイベント・ペアをフィルタリングすることは、識別されたイベント・ペアをすべてが共通の外部システムを含むイベント・ペアのグループに制限することを含む、
請求項1に記載の方法。 - 少なくとも1つのイベント・ペアをフィルタリングすることは、参照するイベント・ペアの同一のデータ変化イベントの同一のデータ変化の値の事前定義された閾値により、前記イベント・ペアをフィルタリングすると共に、前記イベント・チェーンのエンド・ポイントとして前記同一のデータ変化イベントの同一のデータ変化の値を参照することを含む、
請求項1に記載の方法。 - さらに、参照するイベント・ペアとして同一のデータ変化イベント内で同一のデータ変化の値が最高のイベント・ペアを選択することを含む、
請求項6に記載の方法。 - 少なくとも1つのイベント・ペアをフィルタリングすることは、破棄されたイベント・ペアを処理して、統合フロー・テンプレートの基礎としての単一のデータ・フローを見出すと共に如何なるループを削除することを含む、
請求項1に記載の方法。 - 前記外部システムを順序付けすることは、
前記イベント・チェーンのそれぞれのエンド・ポイントについて前記イベント・チェーン内の前記データ変化を通して反復すること、及び
多数の同一のデータ変化イベントの前記タイムスタンプを比較することによって、前記イベント・チェーン内の前記イベント・ペアの前記位置を順序付けて統合フローのテンプレートを生成すること
を含む、
請求項6に記載の方法。 - さらに、いかなる破棄されたイベント・ペアを処理して、もう1つの統合フロー・テンプレートのための基礎として、もう1つのデータ・フローを見出すことを含む、
請求項8に記載の方法。 - 統合フローのテンプレートを出力することは、前記順序付けされた外部システムを、既存のテンプレートをマッチングして、使用するためのテンプレートを選択することを含む、
請求項1に記載の方法。 - 統合フローのテンプレートを出力することは、他の統合システムのユーザによる使用のため、テンプレートを公開することを含む、
請求項1に記載の方法。 - カスタマイズされた統合フロー・テンプレートを提供するためのシステムであって、前記システムは、
プロセッサ回路と、前記プロセッサ回路にコンピュータ・プログラム命令を提供してコンポーネントの機能を実行するように構成されたメモリと、
統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出ための、外部システム・モニタリング・コンポーネントと、
2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別する、イベント・ペア識別コンポーネントと、
イベント・チェーンに含ませるために少なくとも1つのイベント・ペアをフィルタリングする、フィルタリング・コンポーネントと、
前記データ変化イベントのタイムスタンプに基づいて、前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けする、順序付けコンポーネントと、
フロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力する、テンプレート出力コンポーネントと
を含むシステム。 - 前記イベント・ペア識別コンポーネントは、
それぞれの外部システムのデータ変化イベントを識別すること、及び
前記データ変化イベントを、他の外部システムの前記データ変化イベントと比較することを含み、
それぞれのイベント・ペアは、識別されたもう1つのイベント・ペアと共通するフィールドを含む、
請求項13に記載のシステム。 - さらに、統合システムのアカウントについてのユーザの相互作用に対するユーザ・アクセスを受領するユーザ・アクセス・コンポーネントを含み、前記統合システムが複数の外部システムへのアクセスを提供して、事前定義された時間的期間についてのデータ変化を読み出し、かつ統合フロー・テンプレートに基づくユーザ・ルーチンをキャプチャする、
請求項13に記載のシステム。 - 前記フィルタリング・コンポーネントが、
識別されたイベント・ペアをすべてが共通の外部システムを含むイベント・ペアのグループに制限すること、及び
参照するイベント・ペアの同一のデータ変化イベントの同一のデータ変化の値の事前定義された閾値により前記イベント・ペアをフィルタリングすると共に、前記イベント・チェーンのエンド・ポイントとして前記同一のデータ変化イベントの同一のデータ変化の値を参照すること
を含む、請求項13に記載のシステム。 - 前記フィルタリング・コンポーネントは、
破棄されたイベント・ペアを処理して、統合フロー・テンプレートの基礎としての単一のデータ・フローを見出すと共に、如何なるループを削除すること、及び
いかなる破棄されたイベント・ペアを処理して、もう1つの統合フロー・テンプレートのための基礎として、もう1つのデータ・フローを見出すこと
を含む、
請求項11に記載のシステム。 - 前記順序付けコンポーネントは、
前記イベント・チェーンのそれぞれのエンド・ポイントについて前記イベント・チェーン内の前記データ変化を通して反復すること、及び
多数の同一のデータ変化イベントの前記タイムスタンプを比較することによって、前記イベント・チェーン内の前記イベント・ペアの前記位置を順序付けて統合フローのテンプレートを生成すること
を含む、
請求項16に記載のシステム。 - 前記テンプレート出力コンポーネントは、
前記順序付けされた外部システムを、既存のテンプレートをマッチングして、使用するためのテンプレートを選択すること
他の統合システムのユーザによる使用のため、テンプレートを公開すること
を含む、
請求項13に記載のシステム。 - カスタマイズされた統合フロー・テンプレートを提供するためのコンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品は、その内部に実体化されたプログラム命令を有する少なくとも1つの非過渡的なコンピュータ可読な記録媒体を含み、前記プログラム命令が少なくとも1つのコンピュータ・プロセッサ回路による実行によって前記プロセッサ回路をして、
統合システムに対する複数の外部システムとのユーザの相互作用をモニタして、前記外部システムにおけるデータ変化を読み出すこと、
2つの前記外部システムにおいて同一のデータ変化イベントを有する2つの外部システムの間のそれぞれの少なくとも1つのイベント・ペアを識別すること、
イベント・チェーンに含ませるための少なくとも1つのイベント・ペアをフィルタリングすること、
前記データ変化イベントのタイムスタンプに基づいて前記イベント・チェーン内のフィルタされた前記イベント・ペアの前記外部システムを順序付けすること、及び
フロー・トリガ及びフロー・ノード、少なくとも1つのフロー・ノードを定義するイベント・ペアの順序付けされた外部システムに基づいて、統合フローのテンプレートを出力すること
を実行させる、
コンピュータ・プログラム製品。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/799,300 | 2020-02-24 | ||
US16/799,300 US11514381B2 (en) | 2020-02-24 | 2020-02-24 | Providing customized integration flow templates |
PCT/IB2021/051108 WO2021171124A1 (en) | 2020-02-24 | 2021-02-11 | Providing customized integration flow templates |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023514688A true JP2023514688A (ja) | 2023-04-07 |
Family
ID=77367111
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022549643A Pending JP2023514688A (ja) | 2020-02-24 | 2021-02-11 | カスタマイズされた統合フローのテンプレート提供 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11514381B2 (ja) |
JP (1) | JP2023514688A (ja) |
KR (1) | KR20220107053A (ja) |
CN (1) | CN115039092A (ja) |
AU (1) | AU2021227744B2 (ja) |
GB (1) | GB2608323A (ja) |
WO (1) | WO2021171124A1 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11824837B2 (en) * | 2020-07-15 | 2023-11-21 | Sap Se | End user creation of trusted integration pathways between different enterprise systems |
US11416318B1 (en) * | 2021-03-12 | 2022-08-16 | Salesforce, Inc. | Application programming interface for integration flow design |
US11645253B1 (en) | 2021-12-01 | 2023-05-09 | International Business Machines Corporation | Managing a new version of an integration flow during a rolling update |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7774791B1 (en) | 2002-04-24 | 2010-08-10 | Informatica Corporation | System, method and computer program product for data event processing and composite applications |
US7237225B2 (en) | 2002-08-29 | 2007-06-26 | Sap Aktiengesellschaft | Rapid application integration using reusable patterns |
US8332806B2 (en) | 2005-02-18 | 2012-12-11 | International Business Machines Corporation | Stepwise template integration method and system |
US8583466B2 (en) | 2005-08-09 | 2013-11-12 | Oracle International Corporation | System and method for routing workflow items based on workflow templates in a call center |
US8453159B2 (en) * | 2007-05-31 | 2013-05-28 | Informatica Corporation | Workspace system and method for monitoring information events |
US8447745B2 (en) * | 2008-09-12 | 2013-05-21 | Salesforce.Com, Inc. | Synchronizing field values in an on-demand database prior to committing a change |
US8473970B2 (en) | 2010-02-25 | 2013-06-25 | Oracle International Corporation | Framework for integrating applications |
US10204311B2 (en) | 2014-04-30 | 2019-02-12 | Bristol, Inc. | Configuring workflows in a host device operating in a process control system |
WO2016070111A1 (en) * | 2014-10-31 | 2016-05-06 | Bedrock Data, Inc. | Cross-platform data synchronization |
US10102239B2 (en) * | 2015-07-13 | 2018-10-16 | Sap Se | Application event bridge |
US20170310451A1 (en) * | 2016-04-23 | 2017-10-26 | Sugarcrm Inc. | Full-duplex real-time cross-module updates of customer relationship management (crm) data in a crm data processing system |
CN106503970A (zh) | 2016-11-04 | 2017-03-15 | 东软集团股份有限公司 | 流程实例的编辑方法及装置 |
US10313421B2 (en) | 2016-11-08 | 2019-06-04 | Sap Se | Providing Odata service based on service operation execution flow |
US20190018545A1 (en) * | 2017-07-13 | 2019-01-17 | International Business Machines Corporation | System and method for rapid financial app prototyping |
CN107886295A (zh) | 2017-10-23 | 2018-04-06 | 东软集团股份有限公司 | 流程模板变更处理方法、装置、可读存储介质及电子设备 |
US11323463B2 (en) * | 2019-06-14 | 2022-05-03 | Datadog, Inc. | Generating data structures representing relationships among entities of a high-scale network infrastructure |
-
2020
- 2020-02-24 US US16/799,300 patent/US11514381B2/en active Active
-
2021
- 2021-02-11 WO PCT/IB2021/051108 patent/WO2021171124A1/en active Application Filing
- 2021-02-11 CN CN202180011119.7A patent/CN115039092A/zh active Pending
- 2021-02-11 AU AU2021227744A patent/AU2021227744B2/en active Active
- 2021-02-11 JP JP2022549643A patent/JP2023514688A/ja active Pending
- 2021-02-11 GB GB2213462.1A patent/GB2608323A/en active Pending
- 2021-02-11 KR KR1020227022562A patent/KR20220107053A/ko unknown
Also Published As
Publication number | Publication date |
---|---|
AU2021227744B2 (en) | 2024-01-11 |
GB2608323A (en) | 2022-12-28 |
WO2021171124A1 (en) | 2021-09-02 |
GB202213462D0 (en) | 2022-10-26 |
CN115039092A (zh) | 2022-09-09 |
US11514381B2 (en) | 2022-11-29 |
US20210264333A1 (en) | 2021-08-26 |
AU2021227744A1 (en) | 2022-06-16 |
KR20220107053A (ko) | 2022-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10929490B2 (en) | Network search query | |
JP2023514688A (ja) | カスタマイズされた統合フローのテンプレート提供 | |
US9967363B2 (en) | Activity analysis for monitoring and updating a personal profile | |
US20130191105A1 (en) | Virtual systems testing | |
US11089000B1 (en) | Automated source code log generation | |
US11093292B2 (en) | Identifying recurring actions in a hybrid integration platform to control resource usage | |
US11017874B2 (en) | Data and memory reorganization | |
US11086776B2 (en) | Maintaining correctness of pointers from a managed heap to off-heap memory | |
JP7455197B2 (ja) | インテグリティ監視のためのミューテーション・イベント検出 | |
US10067849B2 (en) | Determining dynamic statistics based on key value patterns | |
US20210216233A1 (en) | Object lifecycle management in a dispersed storage system | |
US10303799B2 (en) | Converging tool terminology | |
US11954564B2 (en) | Implementing dynamically and automatically altering user profile for enhanced performance | |
US10949764B2 (en) | Automatic model refreshment based on degree of model degradation | |
US11481211B1 (en) | Dynamically creating source code comments | |
US10621205B2 (en) | Pre-request execution based on an anticipated ad hoc reporting request | |
US10223463B2 (en) | Node controllers for hierarchical data structures | |
US10216610B2 (en) | Debug session analysis for related work item discovery | |
US11882124B1 (en) | Account integration with an event-driven application programing interface call manager | |
US11558337B1 (en) | Activity-based message management | |
US11194716B2 (en) | Intelligent cache preloading | |
US20230168884A1 (en) | Extracting entity relationship diagrams from source code | |
WO2023072951A1 (en) | Adaptive message retention |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220826 |
|
RD16 | Notification of change of power of sub attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7436 Effective date: 20220907 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20230721 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20240612 |