JP6691554B2 - 基礎をなす永続性フレームワークおよびクラウドベースの統合サービスに含まれるランタイム・エンジンからウェブ・ユーザーインターフェース・アプリケーションを隔離するためのシステムおよび方法 - Google Patents

基礎をなす永続性フレームワークおよびクラウドベースの統合サービスに含まれるランタイム・エンジンからウェブ・ユーザーインターフェース・アプリケーションを隔離するためのシステムおよび方法 Download PDF

Info

Publication number
JP6691554B2
JP6691554B2 JP2017562992A JP2017562992A JP6691554B2 JP 6691554 B2 JP6691554 B2 JP 6691554B2 JP 2017562992 A JP2017562992 A JP 2017562992A JP 2017562992 A JP2017562992 A JP 2017562992A JP 6691554 B2 JP6691554 B2 JP 6691554B2
Authority
JP
Japan
Prior art keywords
runtime
runtime engine
project
application
integration
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2017562992A
Other languages
English (en)
Other versions
JP2018516411A (ja
JP2018516411A5 (ja
Inventor
アルゲイアー,アクセル
パラニサミー,ムスクマー
ゴラパリ,キショア
Original Assignee
オラクル・インターナショナル・コーポレイション
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by オラクル・インターナショナル・コーポレイション filed Critical オラクル・インターナショナル・コーポレイション
Publication of JP2018516411A publication Critical patent/JP2018516411A/ja
Publication of JP2018516411A5 publication Critical patent/JP2018516411A5/ja
Application granted granted Critical
Publication of JP6691554B2 publication Critical patent/JP6691554B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/541Interprogram communication via adapters, e.g. between incompatible applications
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • G06F8/36Software reuse
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/77Software metrics

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Stored Programmes (AREA)

Description

著作権表示
本特許文献の開示の一部には、著作権保護の対象となる資料が含まれる。特許文献または特許開示は、米国特許庁の特許ファイルおよび記録に掲載されているため、著作権者は、何人によるその複製に対しても異議はないが、そうでない場合には、例外なくすべての著作権を保有する。
発明分野
本発明の実施形態は、全体として、クラウド・サービスに関し、特に、クラウドベース統合サービスにおいて、基礎技術からウェブ・インターフェース・アプリケーションを隔離するためのシステムおよび方法に関する。
背景
オンプレミス(on−premises)・アプリケーションから、SaaS(Software as a Service)とオンプレミス・アプリケーションとのハイブリッド・ミックスへの急速なシフトによって、エンタープライズ・アプリケーションを統合しようと試みる企業にとって、問題が生じている。サービスとしての統合プラットフォーム(iPaaS)は、これらの問題に取り組むためのクラウドベースのツール一式を提供できる。iPaaSプラットフォームは、開発者が統合プロジェクトを設計、デプロイ、およびモニタリングするための設計時間を提供できる。しかしながら、これらの統合プロジェクトは、特定のランタイム・エンジンに紐づけられている可能性があり、追加作業なしでは、異なるランタイム・エンジンにデプロイできない。
概要
実施形態によると、クラウドベースの統合サービスにおいて、基礎技術からウェブ・インターフェース・アプリケーションを隔離する抽象化レイヤを提供するためのシステムおよび方法が本明細書に記載されている。抽象化レイヤは、統合プロジェクトの全ライフサイクルにおいて使用するための複数のサービスをウェブ・インターフェース・アプリケーションに対してエクスポーズするアプリケーション・プログラミング・インターフェースを含むことができる。ウェブ・インターフェース・アプリケーションは、統合プロジェクトを永続化する基礎フレームワーク、および統合プロジェクトを実行することになるランタイム・エンジンを問わない。アプリケーション・プログラミング・インターフェースは、統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化でき、デプロイメント時に、統合プロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジン特有フォーマットに変換できる。
実施形態に係る統合クラウド・サービスを説明する図である。 実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからUIアプリケーションを隔離するためのシステムを説明する図である。 実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシステムをさらに説明する図である。 実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシステムをさらに説明する図である。 実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシーケンス図を説明する図である。 実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するための方法を説明する図である。
詳細な説明
サービスとしての統合プラットフォーム(たとえば、Oracle統合クラウド・サービス(ICS))は、クラウドまたはオンプレミスに存在するアプリケーション同士を接続する統合フローを構築およびデプロイするためのクラウドベースのプラットフォームを提供できる。
図1は、実施形態に係る統合クラウド・サービスを説明する図である。
図1に示すように、ICS107は、ICS統合フロー(flow)を設計、実行、および管理するためのクラウドベースの統合プラットフォームを提供できる。ICSは、エンタープライズ・クラウド環境(たとえば、Oracle Public Cloud)101のアプリケーション・サーバ117上で実行中のウェブ・アプリケーション109およびICSランタイム115を含むことができる。ウェブ・アプリケーションは、開発者がICS統合フローを設計、開始、管理、およびモニタリングできるように、複数のユーザ・インターフェースをエクスポーズする設計時間を提供できる。開始されたICS統合フローは、ICSランタイム上でデプロイして実行できる。
実施形態によると、複数のアプリケーション・アダプタ113を提供できる。複数のアプリケーション・アダプタ113は、複数のアプリケーションへの接続の基礎をなす複雑性を処理することによって、これらのアプリケーションへの接続を構成するタスクを簡素化できる。アプリケーションは、ICSベンダー(たとえば、Oracle RightNow)のエンタープライズ・クラウド・アプリケーション105と、サードバーティ・クラウド・アプリケーション(たとえば、Salesforce)103と、オンプレミス・アプリケーション119とを含むことができる。これらのアプリケーションとの通信の際に使用するために、ICSは、簡易オブジェクトアクセスプロトコル(SOAP)およびrepresentational state transfer(REST)のエンドポイントをこれらのアプリケーションに対してエクスポーズできる。
実施形態によると、ICS統合フロー(または、ICS統合)は、ソース接続、ターゲット接続、および2つの接続の間のフィールドのマッピングを含むことができる。各接続は、アプリケーション・アダプタに基づくことができ、アプリケーションの特定インスタンスと通信するためにアプリケーション・アダプタが必要な追加情報を含めることができる。
実施形態によると、ICS統合フローは、ICSプロジェクトにおいて定義できる。ICSプロジェクトは、たとえば、メタデータ、Java(登録商標)コネクタアーキテクチャ(JCA)ファイル、およびウェブサービス記述言語(WSDL)ファイルなど、構造化された一連のアーティファクトを含むことができる。ICSプロジェクトは、ICSランタイムにおいてデプロイおよび実行でき、ICSプロジェクトを使用して、クラウド・アプリケーションとオンプレミス・アプリケーションとを統合できる。このように、ICSプロジェクトは、統合プロジェクトである。本明細書全体において、用語「ICSプロジェクト」および「ICS統合プロジェクト」は、互いに入れ替えて使用される。両方の用語は、統合プロジェクトについて言及するために使用される場合がある。
抽象化レイヤ
上述したように、ICSは、ICS開発者がICSプロジェクトを設計するためのウェブUIアプリケーションと、プロジェクトを実行するためのランタイムとを含むことができる。
ICSプロジェクトのライフサイクルの間、開発者は、複数のインターフェースを使用する必要がある場合が多い。たとえば、開発フェーズの間、開発者は、プロジェクトに対してCRUD(生成、読み取り、更新、および削除)操作を行う場合がある。デプロイメント・フェーズの間、開発者は、プロジェクトをコンパイルしたり、デプロイしたりする場合がある。これらの操作は、互いに異なるインターフェースにおいて行われる可能性がある。加えて、ICSプロジェクトは、特定のランタイム・エンジンに特有のフォーマットで開発される可能性があり、追加作業なしでは、異なるランタイム・エンジン用に再利用できない。
実施形態によると、システムは、基礎技術からウェブ・インターフェース・アプリケーションを隔離する抽象化レイヤを提供できる。抽象化レイヤは、統合プロジェクトの全ライフサイクルにおいて使用するための複数のサービスをウェブ・インターフェース・アプリケーションに対してエクスポーズするアプリケーション・プログラミング・インターフェースを含む。ウェブ・インターフェース・アプリケーションは、統合プロジェクトを永続化する基礎フレームワーク、および統合プロジェクトを実行することになるランタイム・エンジンを問わない。アプリケーション・プログラミング・インターフェースは、ランタイム・エンジン・ニュートラルフォーマットで統合プロジェクトを永続化でき、デプロイメント時に、統合プロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジン特有フォーマットに変換できる。
実施形態によると、抽象化レイヤは、ICSランタイムに含まれる1つ以上のランタイム・エンジンと、ウェブ・インターフェース・アプリケーションとの間に存在できるため、基礎統合技術からICSウェブ・インターフェース・レイヤを隔離できる。
実施形態によると、複数のハンドラを提供できる。複数のハンドラは、各々、特定のランタイム・エンジン用である。ランタイム・エンジンに特有のハンドラを使用して、ICSプロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジンに特有のフォーマットに変換できる。
加えて、抽象化レイヤを使用して、ICSパッケージを生成したり、検証したり、ICSプロジェクトをエクスポートしたり、インポートしたり、あらかじめ定義されたICSプロジェクトおよびデータを使って永続ストアをブートしたり、ICSデータをICSプロジェクト・インスタンス間で移動したりすることができる。
図2は、実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからUIアプリケーションを隔離するためのシステムを説明する図である。
図2に示すように、抽象化レイヤ209は、ICSプロジェクトのライフサイクルを管理する際に使用するための複数の機能をウェブUIアプリケーションに対してエクスポーズするAPIを含むことができる。たとえば、CRUD(生成、読み取り、更新、および削除)211、開始213、モニタリング215といった機能の各々は、ウェブUIアプリケーションでの1つのインターフェース上で見える。
実施形態によると、抽象化APIは、基礎技術(たとえば、永続性フレームワークおよびランタイム・エンジン)からこれらの機能を隔離するために、複数のクラス/オブジェクトを使用する、たとえば、永続性マネージャ217およびオペレーション・マネージャ219などの複数のサービスを提供できる。これによって、柔軟性が与えられ、基礎技術が変更された場合、コードを再利用できる。
実施形態によると、ICSプロジェクトの開発フェーズの間、開発者は、複数のICSオブジェクト(たとえば、接続オブジェクト、および統合フロー・オブジェクト)を生成できる。これらのオブジェクトは、読み取り、更新、または削除される必要がある。抽象化レイヤには、複数の永続性フレームワーク223をプラグインでき、オペレーション・マネージャは、ウェブUIアプリケーションの知識がなくても、複数の永続性フレームワーク223を使用してCRUD操作を行うことができる。オペレーション・マネージャは、エクスポーズされた機能を実行するように構成された永続性フレームワークから当該機能を隔離することができる一連のインターフェースを提供する。
さらに示すように、抽象化レイヤは、さらに、プロジェクト・ハンドラ227および複数のプロジェクト・テンプレート(たとえば、OSBテンプレート)を含むことができる。プロジェクト・ハンドラ227は、ICSプロジェクトのホストとして動作する特定のランタイムのユーザによる選択に基づいて、ランタイム・エンジン特有ハンドラ(たとえば、OSBハンドラ)を自動的に選択できる。選択されたランタイム・エンジン特有ハンドラは、オペレーション・マネージャによって永続ストアから読み出されたランタイム・エンジンにニュートラルなプロジェクトを、1つ以上のプロジェクト・テンプレート225を用いた、ランタイム・エンジン特有プロジェクトに変換できる。オペレーション・マネージャは、ランタイム・エンジン特有プロジェクトを特定のランタイム・エンジンにデプロイ233できる。ランタイム・エンジン・ニュートラルフォーマットでICSプロジェクトを開発して、デプロイメント時にそれをランタイム・エンジン特有フォーマットに変換することによって、抽象化レイヤは、ランタイム・エンジンからウェブUIアプリケーションを効果的に隔離する。
実施形態によると、ICSランタイムによってエクスポーズされたAPIによって集められたランタイム・メトリックス231をフォーマットして表示するために、抽象化APIは、さらに、ランタイム・メトリックス・プレゼンタ221を含む。たとえば、ランタイム・メトリックスは、所定のICS統合フローについての秒毎のトランザクションおよび失敗したトランザクションの数、成功した呼び出し毎のロギング情報、たとえば、最後の20レコード間を表示するアクティビティ・ストリームを含むことができる。また、ICSランタイムによってエクスポーズされたAPIを使用して、トランザクション・ログ・ファイルをダウンロードしたり、特定の種類のランタイム・メトリックスについてのユーザ指定の要求を読み出したりできる。
図3は、実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシステムを説明する図である。
図3に例示するように、ウェブUIアプリケーションは、ランタイム・エンジン・ニュートラルフォーマットのプラガブル永続性フレームワークを使用して永続ストア315に永続化され得るICSプロジェクト305をICS開発者が生成できるインターフェースを提供できる。
実施形態によると、ランタイム・エンジン・ニュートラルICSプロジェクトは、特定のランタイム/統合エンジンに特有ではない、ウェブUIアプリケーションによって定義され得るプロジェクト構造を表すことができる。ランタイム・エンジン・ニュートラルプロジェクトは、ソース・アプリケーション、ターゲット・アプリケーション、統合パターン、およびスキーマなど、構成を表す、XMLフォーマットで定義されたメタデータを含むことができる。
実施形態によると、ICSプロジェクト・クラスは、ランタイム・エンジン・ニュートラルフォーマットのプロジェクトを表すことができ、必要なメタデータをカプセル化できる。ICSプロジェクト・クラス(ICSプロジェクト・アーティファクト314)のインスタンスは、永続ストアに格納できる。
実施形態によると、永続性マネージャは、ICSプロジェクトの開発中に、セッション管理311およびリソースのロック/ロック解除313を行うことができる。永続性マネージャは、各リソース(たとえば、ファイルおよびメタデータ)の状態を常にモニタリングし、別の開発者がロックしているリソースを開発者がロック解除してしまうことを防ぐことができる。
実施形態によると、互いに異なる永続性フレームワーク(たとえば、OSB構成フレームワークおよびOracle Enterprise Repository(OER))を、永続性マネージャにプラグインできるため、永続性フレームワークからウェブUIアプリケーションを隔離できる。
図4は、実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシステムをさらに説明する図である。
実施形態によると、オペレーション・マネージャを使用して、ICSプロジェクトを開始できる。
抽象化レイヤがない場合、ICSプロジェクトを開始するには、エンタープライズ・アーカイブ(EAR)ファイルを生成するための「構築」動作をICSプロジェクトから明示的に実行し、ウェブ・インターフェースからEARファイルを選択してデプロイし、デプロイされたプロジェクトを第3のインターフェースを使用してモニタリングする必要がある。抽象化レイヤは、EARファイルの生成、ならびにICSプロジェクトのデプロイメントおよびモニタリングを、特定のインターフェースにおいて1つのステップにまとめることができる。
実施形態によると、ICSプロジェクト名の横に開始ボタンを配置できる。ボタンがクリックされると、ICS開発者は、ICSプロジェクトをデプロイするための特定のランタイムを選択するように要求され得る。選択に応答して、オペレーション・マネージャは、永続性マネージャを使用して、永続ストアからランタイム・エンジン・ニュートラルプロジェクトを読み出し411、ICSプロジェクトをランタイム・エンジン特有フォーマットに変換し、EARファイルを生成し、特定のランタイム・エンジン(たとえば、Oracle Service Busランタイム・エンジン(OSB))によってエクスポーズされたAPIを呼び出して、EARファイルをその上でデプロイできる。
実施形態によると、オペレーション・マネージャは、プロジェクト・ハンドラを呼び出すことができる。これによって、ICS開発者によって選択されたランタイムに基づいて、プロジェクトを変換するための、ランタイム・エンジン特有ハンドラを選択できる。
図4に示すように、実施形態によると、永続性マネージャは、ランタイム・エンジン・ニュートラルプロジェクト415をプロジェクト・ハンドラに渡すことができる。プロジェクト・ハンドラは、ランタイム・エンジン特有プロジェクトをオペレーション・マネージャに返すことができる。プロジェクト・マネージャは、特定のランタイム・エンジンに変換されたプロジェクトをデプロイ419して、プロジェクトを実行できる。
実施形態によると、抽象化レイヤによって、複数のランタイム・エンジン特有ハンドラ(たとえば、Oracle Service Bus(OSB)ハンドラ427、およびビジネス・プロセス実行言語(BPEL)ハンドラ447)を提供できる。OSBハンドラが選択されると、OSBハンドラは、たとえばデータベースからOSBテンプレートを読み出し、当該テンプレートおよび関連するメタデータを使用して、ICSプロジェクトがOSBランタイム・エンジン上で走るために必要な詳細を追加できる。読み出されたテンプレートおよびメタデータを使用するICSプロジェクトは、複数の方法を用いて変換できる。
実施形態によると、プロジェクトがデプロイされた後、上述の開始ボタンが配置された同じユーザ・インターフェースによって、デプロイされたプロジェクトのモニタリングを行うことができる。
実施形態によると、ICSランタイムは、所定のICS統合フローについての秒毎のトランザクションおよび失敗したトランザクションの数、成功した呼び出し毎のロギング情報、たとえば、最後の20レコードを表示するアクティビティ・ストリームなど、ランタイム・メトリックスを表示するために使用される一連のAPIをエクスポーズできる。また、エクスポーズされたAPIを使用して、すべてのトランザクションのログ・ファイルをダウンロードしたり、特定の種類のランタイム・メトリックスについてのユーザ指定の要求を受け付けたりできる。
図5は、実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するためのシーケンス図を説明する図である。
図5に示すように、ICSウェブUIアプリケーション501を使用してICSプロジェクトを保存(ステップ511)できる場合、永続性マネージャ504を呼び出し、永続性フレームワークAPI505を使用してリソースを生成(ステップ512)できる。リソースの作成には、ICSプロジェクト・ファイルを永続性フレームワークAPIの基礎データベースに対して永続化することを含むことができる。
さらに図5に示すように、ICSウェブUIアプリケーションから、開発者は、ICSプロジェクトを開始(ステップ515)できる。プロジェクトの開始によって、オペレーション・マネージャ506に、永続ストアから読み出された、永続化されたリソースを使用してパッケージを生成(ステップ514)させることができる。
実施形態によると、オペレーション・マネージャは、生成されたパッケージを受け付け(ステップ516)、プロジェクト・ハンドラ508を呼び出して、変換されたプロジェクトを生成(ステップ518)できる。さらに、オペレーション・マネージャは、ランタイム・デプロイメント・ビーン(bean)509を呼び出して、変換されたプロジェクトをデプロイ(ステップ521)できる。
上述したように、ICSプロジェクトを開始するためにボタンをクリックすることによって、ランタイム・エンジン・ニュートラルプロジェクトを読み出すステップと、プロジェクト・パッケージを作成する(プロジェクトをコンパイルする)ステップと、プロジェクトをランタイム・エンジン特有プロジェクトに変換するステップと、変換されたプロジェクトをデプロイするステップとを実行できる。
実施形態によると、ICSプロジェクトがうまくデプロイされたことを示す内容をICSウェブUIアプリケーションが受け付けた(ステップ525)後、モニター画面を自動的に表示でき、ここで、デプロイされたプロジェクトのホストとして動作しているICSランタイムに、ランタイム・メトリックス要求を送る(ステップ526)ことができる。モニター用インターフェースによってランタイム・メトリックスが受け付けられ(ステップ527)、さまざまなフォーマット(たとえば、棒グラフ)で表示できる。
図6は、実施形態に係る、ICSランタイムに含まれるランタイム・エンジンからウェブUIアプリケーションを隔離するための方法を説明する図である。
図6に示すように、ステップ611において、マイクロプロセッサを含んだコンピュータ上にウェブUIアプリケーションを提供し、ここで、ウェブUIアプリケーションは、ICSを設計する時間を提供する。
ステップ613において、ICSプロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスをウェブUIアプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェース(API)を提供する。
ステップ615において、ICSプロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化する。
ステップ616において、デプロイメント時に、ICSプロジェクトを、ICSランタイムに含まれるランタイム・エンジンのうちの1つに特有のフォーマットに変換する。
本発明の実施形態は、本開示の教示に従ってプログラムされた1つ以上のプロセッサ、メモリ、および/またはコンピュータ読み取り可能な記憶媒体を含む、1つ以上の従来の汎用または専用のデジタル・コンピュータ、コンピューティング・デバイス、機械、またはマイクロプロセッサによって好都合に実現されてもよい。当業者であるプログラマは、ソフトウェア技術を身につけた者に明らかなように、本開示の教示に基づいて、適切なソフトウェア・コーディングを容易に用意できる。
いくつかの実施形態において、本発明は、指示を格納した非一時的な記憶媒体またはコンピュータ読み取り可能な記憶媒体(複数のコンピュータ読み取り可能な記憶媒体)であるコンピュータ・プログラム・プロダクトを含む。コンピュータ・プログラム・プロダクトを使用して、コンピュータを本発明のいずれの処理も実行するようにプログラムできる。たとえば、記憶媒体は、これらに限定されないが、フロッピー(登録商標)ディスク、光ディスク、DVD、CD−ROM、マイクロドライブ、および光磁気ディスクを含む任意の種類のディスク、ROM、RAM、EPROM、EEPROM、DRAM、VRAM、フラッシュメモリデバイス、磁気カードもしくは光カード、ナノシステム(分子メモリICSを含む)、または指示および/またはデータを格納するのに適した任意の種類の媒体またはデバイスを含むことができる。
上記の本発明の実施形態の説明は、例示および説明のために提供されている。これは、本発明を包括的であったり、開示された厳密な形態に限定したりすることを意図していない。多くの変更例および変形例は、当業者に明らかであろう。変更例および変形例は、開示の特徴の任意の適切な組み合わせを含む。実施形態は、本発明の原理およびその実用的な適用を最も適切に説明するために選ばれて記載されているため、他の当業者が、考えられる特定の使用に適したさまざまな変更例を用いて、さまざまな実施形態について本発明を理解できるようになっている。

Claims (10)

  1. 統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するためのシステムであって、
    1つ以上のマイクロプロセッサを含むコンピュータと、
    前記コンピュータ上で実行中のクラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含むクラウド・サービスと、
    統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェースとを備え、
    前記抽象化アプリケーション・プログラミング・インターフェースは、
    前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化し、
    デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの1つに特有のフォーマットに変換し、
    前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイする、システム。
  2. 統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための方法であって、
    マイクロプロセッサを含むコンピュータ上で実行中の統合クラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含む統合クラウド・サービスを提供するステップと、
    統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェースを提供するステップと、
    前記抽象化アプリケーション・プログラミング・インターフェースによって、前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化するステッ
    プと、
    デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの1つに特有のフォーマットに変換するステップと、
    前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイするステップとを含む、方法。
  3. 前記抽象化アプリケーション・プログラミング・インターフェースは、複数のプラガブル永続性フレームワークのうちの1つを使用して前記統合プロジェクトを永続化する永続性マネージャを含む、請求項2に記載の方法。
  4. 前記抽象化アプリケーション・プログラミング・インターフェースは、オペレーション・マネージャを備え、当該オペレーション・マネージャは、前記ランタイム・エンジンにニュートラルな統合プロジェクトを永続ストアから読み出し、ランタイム・エンジン特有ハンドラを呼び出して前記統合プロジェクトをランタイム・エンジン特有フォーマットに変換する、請求項2または3に記載の方法。
  5. 前記ランタイム・エンジンは、ユーザによってデプロイメント時に選択され、前記ランタイム・エンジン特有ハンドラを選択するために、前記抽象化アプリケーション・プログラミング・インターフェースによって使用される、請求項4に記載の方法。
  6. 前記抽象化アプリケーション・プログラミング・インターフェースによって前記ウェブ・インターフェース・アプリケーションに対してエクスポーズされた前記複数のサービスは、前記統合プロジェクトをコンパイル、変換、およびデプロイする際に使用するための開始サービスを含む、請求項2〜5のいずれか1項に記載の方法。
  7. 前記ランタイム・エンジン特有フォーマットは、service busランタイム・エンジンに特有のフォーマット、またはビジネス・プロセス実行言語(BPEL)ランタイム・エンジンに特有のフォーマットである、請求項4または5に記載の方法。
  8. 前記ランタイム・エンジン・ニュートラルフォーマットは、前記ウェブ・インターフェース・アプリケーションによって定義される、請求項2〜7のいずれか1項に記載の方法。
  9. 統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための一連の指示を格納したコンピュータ読み取り可能なプログラムであって、前記指示は、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに請求項2〜8のいずれか1項に記載の方法を実行させる、コンピュータ読み取り可能なプログラム。
  10. 統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための一連の指示を格納したコンピュータ読み取り可能なプログラムであって、前記指示は、1つ以上のプロセッサによって実行されると、前記1つ以上のプロセッサに、
    マイクロプロセッサを含むコンピュータ上で実行中の統合クラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含む統合クラウド・サービスを提供するステップと、
    統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズす
    る抽象化アプリケーション・プログラミング・インターフェースを提供するステップと、
    前記抽象化アプリケーション・プログラミング・インターフェースによって、前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化するステップと、
    デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの1つに特有のフォーマットに変換するステップと、
    前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイするステップとを含むステップを実行させる、コンピュータ読み取り可能なプログラム。
JP2017562992A 2015-06-05 2016-06-03 基礎をなす永続性フレームワークおよびクラウドベースの統合サービスに含まれるランタイム・エンジンからウェブ・ユーザーインターフェース・アプリケーションを隔離するためのシステムおよび方法 Active JP6691554B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562171785P 2015-06-05 2015-06-05
US62/171,785 2015-06-05
US15/171,908 US10216504B2 (en) 2015-06-05 2016-06-02 System and method for insulating a web user interface application from underlying technologies in an integration cloud service
US15/171,908 2016-06-02
PCT/US2016/035758 WO2016196959A2 (en) 2015-06-05 2016-06-03 System and method for insulating a web user interface application from underlying persistence frameworks and runtime engines in a cloud-based integration service

Publications (3)

Publication Number Publication Date
JP2018516411A JP2018516411A (ja) 2018-06-21
JP2018516411A5 JP2018516411A5 (ja) 2019-03-14
JP6691554B2 true JP6691554B2 (ja) 2020-04-28

Family

ID=56148674

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2017562992A Active JP6691554B2 (ja) 2015-06-05 2016-06-03 基礎をなす永続性フレームワークおよびクラウドベースの統合サービスに含まれるランタイム・エンジンからウェブ・ユーザーインターフェース・アプリケーションを隔離するためのシステムおよび方法

Country Status (5)

Country Link
US (1) US10216504B2 (ja)
EP (1) EP3304306A2 (ja)
JP (1) JP6691554B2 (ja)
CN (1) CN108139947B (ja)
WO (1) WO2016196959A2 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190205182A1 (en) * 2017-12-28 2019-07-04 General Electric Company Unified monitoring interface
US20190306227A1 (en) * 2018-03-30 2019-10-03 Ricoh Company, Ltd. Approach for Providing Access to Cloud Services on End-User Devices Using End-to-End Integration
US10565029B1 (en) * 2018-12-12 2020-02-18 Sap Se Automatically integrating applications via an integration discovery service
US11824837B2 (en) * 2020-07-15 2023-11-21 Sap Se End user creation of trusted integration pathways between different enterprise systems

Family Cites Families (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020087630A1 (en) * 2000-10-20 2002-07-04 Jonathan Wu Enhanced information and presence service
US20050223392A1 (en) * 2000-12-01 2005-10-06 Cox Burke D Method and system for integration of software applications
US7143190B2 (en) * 2001-04-02 2006-11-28 Irving S. Rappaport Method and system for remotely facilitating the integration of a plurality of dissimilar systems
US6981263B1 (en) * 2001-06-29 2005-12-27 Bellsouth Intellectual Property Corp. Methods and systems for converged service creation and execution environment applications
US7509248B2 (en) * 2001-11-14 2009-03-24 Intel Corporation Generic persistence engine
US7689709B2 (en) * 2002-12-13 2010-03-30 Sap Ag Native format tunneling
US7577934B2 (en) * 2003-03-12 2009-08-18 Microsoft Corporation Framework for modeling and providing runtime behavior for business software applications
US7694314B2 (en) * 2003-08-28 2010-04-06 Siebel Systems, Inc. Universal application network architecture
EP1569109A1 (en) * 2004-02-27 2005-08-31 Research In Motion Limited A system and method for mapping between message and data domains using a metadata defined mapping
US7574511B2 (en) * 2004-03-12 2009-08-11 Merrill Lynch & Company, Inc. Methods, systems, and software for providing service integration framework
EP1835397A1 (en) * 2006-02-27 2007-09-19 Software Ag Application framework
US20080320401A1 (en) * 2007-06-21 2008-12-25 Padmashree B Template-based deployment of user interface objects
US7779047B2 (en) * 2007-06-22 2010-08-17 International Business Machines Corporation Pluggable merge patterns for data access services
US20090138891A1 (en) * 2007-11-27 2009-05-28 Winig Robert J Integrating service-oriented architecture applications with a common messaging interface
US8417593B2 (en) * 2008-02-28 2013-04-09 Sap Ag System and computer-readable medium for managing consistent interfaces for business objects across heterogeneous systems
CN101296243B (zh) * 2008-06-26 2013-02-20 阿里巴巴集团控股有限公司 一种服务集成平台系统及提供互联网服务的方法
JP5084665B2 (ja) * 2008-08-20 2012-11-28 日本電信電話株式会社 コンポーネント連携シナリオ統合開発環境提供システム、シナリオ作成支援方法、及び、プログラム
US20100131916A1 (en) * 2008-11-21 2010-05-27 Uta Prigge Software for modeling business tasks
CN101789092A (zh) * 2009-01-22 2010-07-28 国际商业机器公司 业务流程管理方法协同工作的系统和方法
US8601490B2 (en) * 2011-07-28 2013-12-03 Sap Ag Managing consistent interfaces for business rule business object across heterogeneous systems
US20130080603A1 (en) * 2011-09-27 2013-03-28 Microsoft Corporation Fault Tolerant External Application Server
US9043765B2 (en) * 2011-11-09 2015-05-26 Microsoft Technology Licensing, Llc Simultaneously targeting multiple homogeneous and heterogeneous runtime environments
US8949292B2 (en) * 2012-06-13 2015-02-03 International Business Machines Corporation Interoperability format translation and transformation between IFC architectural design file and simulation file formats
US10216814B2 (en) * 2013-05-17 2019-02-26 Oracle International Corporation Supporting combination of flow based ETL and entity relationship based ETL
US9411845B2 (en) * 2013-06-13 2016-08-09 Sap Se Integration flow database runtime
EP2889761A1 (en) * 2013-12-31 2015-07-01 Thales Nederland B.V. A process integration method and system
US9983869B2 (en) * 2014-07-31 2018-05-29 The Mathworks, Inc. Adaptive interface for cross-platform component generation
US9483329B2 (en) * 2015-02-09 2016-11-01 Sap Se Categorizing and modeling integration adapters
US10318544B2 (en) * 2015-08-20 2019-06-11 International Business Machines Corporation Transforming and loading data from a source data system to a target data system

Also Published As

Publication number Publication date
JP2018516411A (ja) 2018-06-21
CN108139947A (zh) 2018-06-08
EP3304306A2 (en) 2018-04-11
US20160357540A1 (en) 2016-12-08
WO2016196959A2 (en) 2016-12-08
US10216504B2 (en) 2019-02-26
CN108139947B (zh) 2022-01-04

Similar Documents

Publication Publication Date Title
US10216490B2 (en) Systems and methods for computing applications
US9513938B2 (en) Virtual appliance integration with cloud management software
CA2939379C (en) Systems and methods for partitioning computing applications to optimize deployment resources
US9971671B2 (en) System and method for dynamic debugging in a multitenant application server environment
US8037471B2 (en) Systems and methods for constructing relationship specifications from component interactions
JP5785564B2 (ja) 拡張可能なアプリケーション仮想化サブシステム
US20120081395A1 (en) Designing and building virtual images using semantically rich composable software image bundles
US20170255886A1 (en) Workflow execution
JP6691554B2 (ja) 基礎をなす永続性フレームワークおよびクラウドベースの統合サービスに含まれるランタイム・エンジンからウェブ・ユーザーインターフェース・アプリケーションを隔離するためのシステムおよび方法
US10324697B2 (en) System and method for importing and extorting an integration flow in a cloud-based integration platform
US9612803B2 (en) System and method for use of a virtual assembly builder
US20120331340A1 (en) Method and Arrangement for Fault Handling in a Distributed IT Environment
US11381638B1 (en) System and method for parallel execution of activites in an integration flow
CN106600226B (zh) 用于优化流程管理系统的方法及装置
US20190068440A1 (en) System and method for provisioning in a multi-tenant application server environment
US9122559B2 (en) Extensible dependency management framework and method
US8667083B2 (en) Simplifying provisioning of asynchronous interaction with enterprise suites having synchronous integration points
US7836449B2 (en) Extensible infrastructure for task display and launch
CN114787836A (zh) 用于远程执行一个或更多个任意定义的工作流的系统和方法
US20160357826A1 (en) System and method for providing recommended mappings for use by a mapper in an integration cloud service design time
US10802810B2 (en) Consuming persistent library bundles
US8260782B2 (en) Data element categorization in a service-oriented architecture
Srinivasmurthy et al. Web2exchange: A model-based service transformation and integration environment
Bhattacharjee et al. Cloudcamp: Automating cloud services deployment and management
Mathony Deployment-technology-agnostic management of running applications

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190129

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190129

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20191122

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20191203

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200302

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200410

R150 Certificate of patent or registration of utility model

Ref document number: 6691554

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250