(57)【特許請求の範囲】
【請求項１】
統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するためのシステムであって、
１つ以上のマイクロプロセッサを含むコンピュータと、
前記コンピュータ上で実行中のクラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含むクラウド・サービスと、
統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェースとを備え、
前記抽象化アプリケーション・プログラミング・インターフェースは、
前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化し、
デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの１つに特有のフォーマットに変換し、
前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイする、システム。
【請求項２】
統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための方法であって、
マイクロプロセッサを含むコンピュータ上で実行中の統合クラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含む統合クラウド・サービスを提供するステップと、
統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェースを提供するステップと、
前記抽象化アプリケーション・プログラミング・インターフェースによって、前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化するステッ
プと、
デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの１つに特有のフォーマットに変換するステップと、
前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイするステップとを含む、方法。
【請求項３】
前記抽象化アプリケーション・プログラミング・インターフェースは、複数のプラガブル永続性フレームワークのうちの１つを使用して前記統合プロジェクトを永続化する永続性マネージャを含む、請求項２に記載の方法。
【請求項４】
前記抽象化アプリケーション・プログラミング・インターフェースは、オペレーション・マネージャを備え、当該オペレーション・マネージャは、前記ランタイム・エンジンにニュートラルな統合プロジェクトを永続ストアから読み出し、ランタイム・エンジン特有ハンドラを呼び出して前記統合プロジェクトをランタイム・エンジン特有フォーマットに変換する、請求項２または３に記載の方法。
【請求項５】
前記ランタイム・エンジンは、ユーザによってデプロイメント時に選択され、前記ランタイム・エンジン特有ハンドラを選択するために、前記抽象化アプリケーション・プログラミング・インターフェースによって使用される、請求項４に記載の方法。
【請求項６】
前記抽象化アプリケーション・プログラミング・インターフェースによって前記ウェブ・インターフェース・アプリケーションに対してエクスポーズされた前記複数のサービスは、前記統合プロジェクトをコンパイル、変換、およびデプロイする際に使用するための開始サービスを含む、請求項２〜５のいずれか１項に記載の方法。
【請求項７】
前記ランタイム・エンジン特有フォーマットは、ｓｅｒｖｉｃｅ  ｂｕｓランタイム・エンジンに特有のフォーマット、またはビジネス・プロセス実行言語（ＢＰＥＬ）ランタイム・エンジンに特有のフォーマットである、請求項４または５に記載の方法。
【請求項８】
前記ランタイム・エンジン・ニュートラルフォーマットは、前記ウェブ・インターフェース・アプリケーションによって定義される、請求項２〜７のいずれか１項に記載の方法。
【請求項９】
統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための一連の指示を格納したコンピュータ読み取り可能なプログラムであって、前記指示は、１つ以上のプロセッサによって実行されると、前記１つ以上のプロセッサに請求項２〜８のいずれか１項に記載の方法を実行させる、コンピュータ読み取り可能なプログラム。
【請求項１０】
統合クラウド・サービス・ランタイムに含まれるランタイム・エンジンからウェブ・インターフェース・アプリケーションを隔離するための一連の指示を格納したコンピュータ読み取り可能なプログラムであって、前記指示は、１つ以上のプロセッサによって実行されると、前記１つ以上のプロセッサに、
マイクロプロセッサを含むコンピュータ上で実行中の統合クラウド・サービスであって、ソース・アプリケーションとターゲット・アプリケーションとの間の統合フローを作成するための前記ウェブ・インターフェース・アプリケーションと、前記統合フローを実行するための、複数のランタイム・エンジンを含むランタイムとを含む統合クラウド・サービスを提供するステップと、
統合プロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスを前記ウェブ・インターフェース・アプリケーションに対してエクスポーズす
る抽象化アプリケーション・プログラミング・インターフェースを提供するステップと、
前記抽象化アプリケーション・プログラミング・インターフェースによって、前記統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化するステップと、
デプロイメント時に、前記統合プロジェクトを、前記複数のランタイム・エンジンのうちの１つに特有のフォーマットに変換するステップと、
前記ランタイム・エンジン上に前記変換された統合プロジェクトを実行のためにデプロイするステップとを含むステップを実行させる、コンピュータ読み取り可能なプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
著作権表示
本特許文献の開示の一部には、著作権保護の対象となる資料が含まれる。特許文献または特許開示は、米国特許庁の特許ファイルおよび記録に掲載されているため、著作権者は、何人によるその複製に対しても異議はないが、そうでない場合には、例外なくすべての著作権を保有する。
【０００２】
発明分野
本発明の実施形態は、全体として、クラウド・サービスに関し、特に、クラウドベース統合サービスにおいて、基礎技術からウェブ・インターフェース・アプリケーションを隔離するためのシステムおよび方法に関する。
【背景技術】
【０００３】
背景
オンプレミス（ｏｎ−ｐｒｅｍｉｓｅｓ）・アプリケーションから、ＳａａＳ（Ｓｏｆｔｗａｒｅ  ａｓ  ａ  Ｓｅｒｖｉｃｅ）とオンプレミス・アプリケーションとのハイブリッド・ミックスへの急速なシフトによって、エンタープライズ・アプリケーションを統合しようと試みる企業にとって、問題が生じている。サービスとしての統合プラットフォーム（ｉＰａａＳ）は、これらの問題に取り組むためのクラウドベースのツール一式を提供できる。ｉＰａａＳプラットフォームは、開発者が統合プロジェクトを設計、デプロイ、およびモニタリングするための設計時間を提供できる。しかしながら、これらの統合プロジェクトは、特定のランタイム・エンジンに紐づけられている可能性があり、追加作業なしでは、異なるランタイム・エンジンにデプロイできない。
【発明の概要】
【課題を解決するための手段】
【０００４】
概要
実施形態によると、クラウドベースの統合サービスにおいて、基礎技術からウェブ・インターフェース・アプリケーションを隔離する抽象化レイヤを提供するためのシステムおよび方法が本明細書に記載されている。抽象化レイヤは、統合プロジェクトの全ライフサイクルにおいて使用するための複数のサービスをウェブ・インターフェース・アプリケーションに対してエクスポーズするアプリケーション・プログラミング・インターフェースを含むことができる。ウェブ・インターフェース・アプリケーションは、統合プロジェクトを永続化する基礎フレームワーク、および統合プロジェクトを実行することになるランタイム・エンジンを問わない。アプリケーション・プログラミング・インターフェースは、統合プロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化でき、デプロイメント時に、統合プロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジン特有フォーマットに変換できる。
【図面の簡単な説明】
【０００５】
【図１】実施形態に係る統合クラウド・サービスを説明する図である。
【図２】実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからＵＩアプリケーションを隔離するためのシステムを説明する図である。
【図３】実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシステムをさらに説明する図である。
【図４】実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシステムをさらに説明する図である。
【図５】実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシーケンス図を説明する図である。
【図６】実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するための方法を説明する図である。
【発明を実施するための形態】
【０００６】
詳細な説明
サービスとしての統合プラットフォーム（たとえば、Ｏｒａｃｌｅ統合クラウド・サービス（ＩＣＳ））は、クラウドまたはオンプレミスに存在するアプリケーション同士を接続する統合フローを構築およびデプロイするためのクラウドベースのプラットフォームを提供できる。
【０００７】
図１は、実施形態に係る統合クラウド・サービスを説明する図である。
図１に示すように、ＩＣＳ１０７は、ＩＣＳ統合フロー（ｆｌｏｗ）を設計、実行、および管理するためのクラウドベースの統合プラットフォームを提供できる。ＩＣＳは、エンタープライズ・クラウド環境（たとえば、Ｏｒａｃｌｅ  Ｐｕｂｌｉｃ  Ｃｌｏｕｄ）１０１のアプリケーション・サーバ１１７上で実行中のウェブ・アプリケーション１０９およびＩＣＳランタイム１１５を含むことができる。ウェブ・アプリケーションは、開発者がＩＣＳ統合フローを設計、開始、管理、およびモニタリングできるように、複数のユーザ・インターフェースをエクスポーズする設計時間を提供できる。開始されたＩＣＳ統合フローは、ＩＣＳランタイム上でデプロイして実行できる。
【０００８】
実施形態によると、複数のアプリケーション・アダプタ１１３を提供できる。複数のアプリケーション・アダプタ１１３は、複数のアプリケーションへの接続の基礎をなす複雑性を処理することによって、これらのアプリケーションへの接続を構成するタスクを簡素化できる。アプリケーションは、ＩＣＳベンダー（たとえば、Ｏｒａｃｌｅ  ＲｉｇｈｔＮｏｗ）のエンタープライズ・クラウド・アプリケーション１０５と、サードバーティ・クラウド・アプリケーション（たとえば、Ｓａｌｅｓｆｏｒｃｅ）１０３と、オンプレミス・アプリケーション１１９とを含むことができる。これらのアプリケーションとの通信の際に使用するために、ＩＣＳは、簡易オブジェクトアクセスプロトコル（ＳＯＡＰ）およびｒｅｐｒｅｓｅｎｔａｔｉｏｎａｌ  ｓｔａｔｅ  ｔｒａｎｓｆｅｒ（ＲＥＳＴ）のエンドポイントをこれらのアプリケーションに対してエクスポーズできる。
【０００９】
実施形態によると、ＩＣＳ統合フロー（または、ＩＣＳ統合）は、ソース接続、ターゲット接続、および２つの接続の間のフィールドのマッピングを含むことができる。各接続は、アプリケーション・アダプタに基づくことができ、アプリケーションの特定インスタンスと通信するためにアプリケーション・アダプタが必要な追加情報を含めることができる。
【００１０】
実施形態によると、ＩＣＳ統合フローは、ＩＣＳプロジェクトにおいて定義できる。ＩＣＳプロジェクトは、たとえば、メタデータ、Ｊａｖａ（登録商標）コネクタアーキテクチャ（ＪＣＡ）ファイル、およびウェブサービス記述言語（ＷＳＤＬ）ファイルなど、構造化された一連のアーティファクトを含むことができる。ＩＣＳプロジェクトは、ＩＣＳランタイムにおいてデプロイおよび実行でき、ＩＣＳプロジェクトを使用して、クラウド・アプリケーションとオンプレミス・アプリケーションとを統合できる。このように、ＩＣＳプロジェクトは、統合プロジェクトである。本明細書全体において、用語「ＩＣＳプロジェクト」および「ＩＣＳ統合プロジェクト」は、互いに入れ替えて使用される。両方の用語は、統合プロジェクトについて言及するために使用される場合がある。
【００１１】
抽象化レイヤ
上述したように、ＩＣＳは、ＩＣＳ開発者がＩＣＳプロジェクトを設計するためのウェブＵＩアプリケーションと、プロジェクトを実行するためのランタイムとを含むことができる。
【００１２】
ＩＣＳプロジェクトのライフサイクルの間、開発者は、複数のインターフェースを使用する必要がある場合が多い。たとえば、開発フェーズの間、開発者は、プロジェクトに対してＣＲＵＤ（生成、読み取り、更新、および削除）操作を行う場合がある。デプロイメント・フェーズの間、開発者は、プロジェクトをコンパイルしたり、デプロイしたりする場合がある。これらの操作は、互いに異なるインターフェースにおいて行われる可能性がある。加えて、ＩＣＳプロジェクトは、特定のランタイム・エンジンに特有のフォーマットで開発される可能性があり、追加作業なしでは、異なるランタイム・エンジン用に再利用できない。
【００１３】
実施形態によると、システムは、基礎技術からウェブ・インターフェース・アプリケーションを隔離する抽象化レイヤを提供できる。抽象化レイヤは、統合プロジェクトの全ライフサイクルにおいて使用するための複数のサービスをウェブ・インターフェース・アプリケーションに対してエクスポーズするアプリケーション・プログラミング・インターフェースを含む。ウェブ・インターフェース・アプリケーションは、統合プロジェクトを永続化する基礎フレームワーク、および統合プロジェクトを実行することになるランタイム・エンジンを問わない。アプリケーション・プログラミング・インターフェースは、ランタイム・エンジン・ニュートラルフォーマットで統合プロジェクトを永続化でき、デプロイメント時に、統合プロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジン特有フォーマットに変換できる。
【００１４】
実施形態によると、抽象化レイヤは、ＩＣＳランタイムに含まれる１つ以上のランタイム・エンジンと、ウェブ・インターフェース・アプリケーションとの間に存在できるため、基礎統合技術からＩＣＳウェブ・インターフェース・レイヤを隔離できる。
【００１５】
実施形態によると、複数のハンドラを提供できる。複数のハンドラは、各々、特定のランタイム・エンジン用である。ランタイム・エンジンに特有のハンドラを使用して、ＩＣＳプロジェクトをランタイム・エンジン・ニュートラルフォーマットからランタイム・エンジンに特有のフォーマットに変換できる。
【００１６】
加えて、抽象化レイヤを使用して、ＩＣＳパッケージを生成したり、検証したり、ＩＣＳプロジェクトをエクスポートしたり、インポートしたり、あらかじめ定義されたＩＣＳプロジェクトおよびデータを使って永続ストアをブートしたり、ＩＣＳデータをＩＣＳプロジェクト・インスタンス間で移動したりすることができる。
【００１７】
図２は、実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからＵＩアプリケーションを隔離するためのシステムを説明する図である。
【００１８】
図２に示すように、抽象化レイヤ２０９は、ＩＣＳプロジェクトのライフサイクルを管理する際に使用するための複数の機能をウェブＵＩアプリケーションに対してエクスポーズするＡＰＩを含むことができる。たとえば、ＣＲＵＤ（生成、読み取り、更新、および削除）２１１、開始２１３、モニタリング２１５といった機能の各々は、ウェブＵＩアプリケーションでの１つのインターフェース上で見える。
【００１９】
実施形態によると、抽象化ＡＰＩは、基礎技術（たとえば、永続性フレームワークおよびランタイム・エンジン）からこれらの機能を隔離するために、複数のクラス／オブジェクトを使用する、たとえば、永続性マネージャ２１７およびオペレーション・マネージャ２１９などの複数のサービスを提供できる。これによって、柔軟性が与えられ、基礎技術が変更された場合、コードを再利用できる。
【００２０】
実施形態によると、ＩＣＳプロジェクトの開発フェーズの間、開発者は、複数のＩＣＳオブジェクト（たとえば、接続オブジェクト、および統合フロー・オブジェクト）を生成できる。これらのオブジェクトは、読み取り、更新、または削除される必要がある。抽象化レイヤには、複数の永続性フレームワーク２２３をプラグインでき、オペレーション・マネージャは、ウェブＵＩアプリケーションの知識がなくても、複数の永続性フレームワーク２２３を使用してＣＲＵＤ操作を行うことができる。オペレーション・マネージャは、エクスポーズされた機能を実行するように構成された永続性フレームワークから当該機能を隔離することができる一連のインターフェースを提供する。
【００２１】
さらに示すように、抽象化レイヤは、さらに、プロジェクト・ハンドラ２２７および複数のプロジェクト・テンプレート（たとえば、ＯＳＢテンプレート）を含むことができる。プロジェクト・ハンドラ２２７は、ＩＣＳプロジェクトのホストとして動作する特定のランタイムのユーザによる選択に基づいて、ランタイム・エンジン特有ハンドラ（たとえば、ＯＳＢハンドラ）を自動的に選択できる。選択されたランタイム・エンジン特有ハンドラは、オペレーション・マネージャによって永続ストアから読み出されたランタイム・エンジンにニュートラルなプロジェクトを、１つ以上のプロジェクト・テンプレート２２５を用いた、ランタイム・エンジン特有プロジェクトに変換できる。オペレーション・マネージャは、ランタイム・エンジン特有プロジェクトを特定のランタイム・エンジンにデプロイ２３３できる。ランタイム・エンジン・ニュートラルフォーマットでＩＣＳプロジェクトを開発して、デプロイメント時にそれをランタイム・エンジン特有フォーマットに変換することによって、抽象化レイヤは、ランタイム・エンジンからウェブＵＩアプリケーションを効果的に隔離する。
【００２２】
実施形態によると、ＩＣＳランタイムによってエクスポーズされたＡＰＩによって集められたランタイム・メトリックス２３１をフォーマットして表示するために、抽象化ＡＰＩは、さらに、ランタイム・メトリックス・プレゼンタ２２１を含む。たとえば、ランタイム・メトリックスは、所定のＩＣＳ統合フローについての秒毎のトランザクションおよび失敗したトランザクションの数、成功した呼び出し毎のロギング情報、たとえば、最後の２０レコード間を表示するアクティビティ・ストリームを含むことができる。また、ＩＣＳランタイムによってエクスポーズされたＡＰＩを使用して、トランザクション・ログ・ファイルをダウンロードしたり、特定の種類のランタイム・メトリックスについてのユーザ指定の要求を読み出したりできる。
【００２３】
図３は、実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシステムを説明する図である。
【００２４】
図３に例示するように、ウェブＵＩアプリケーションは、ランタイム・エンジン・ニュートラルフォーマットのプラガブル永続性フレームワークを使用して永続ストア３１５に永続化され得るＩＣＳプロジェクト３０５をＩＣＳ開発者が生成できるインターフェースを提供できる。
【００２５】
実施形態によると、ランタイム・エンジン・ニュートラルＩＣＳプロジェクトは、特定のランタイム／統合エンジンに特有ではない、ウェブＵＩアプリケーションによって定義され得るプロジェクト構造を表すことができる。ランタイム・エンジン・ニュートラルプロジェクトは、ソース・アプリケーション、ターゲット・アプリケーション、統合パターン、およびスキーマなど、構成を表す、ＸＭＬフォーマットで定義されたメタデータを含むことができる。
【００２６】
実施形態によると、ＩＣＳプロジェクト・クラスは、ランタイム・エンジン・ニュートラルフォーマットのプロジェクトを表すことができ、必要なメタデータをカプセル化できる。ＩＣＳプロジェクト・クラス（ＩＣＳプロジェクト・アーティファクト３１４）のインスタンスは、永続ストアに格納できる。
【００２７】
実施形態によると、永続性マネージャは、ＩＣＳプロジェクトの開発中に、セッション管理３１１およびリソースのロック／ロック解除３１３を行うことができる。永続性マネージャは、各リソース（たとえば、ファイルおよびメタデータ）の状態を常にモニタリングし、別の開発者がロックしているリソースを開発者がロック解除してしまうことを防ぐことができる。
【００２８】
実施形態によると、互いに異なる永続性フレームワーク（たとえば、ＯＳＢ構成フレームワークおよびＯｒａｃｌｅ  Ｅｎｔｅｒｐｒｉｓｅ  Ｒｅｐｏｓｉｔｏｒｙ（ＯＥＲ））を、永続性マネージャにプラグインできるため、永続性フレームワークからウェブＵＩアプリケーションを隔離できる。
【００２９】
図４は、実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシステムをさらに説明する図である。
【００３０】
実施形態によると、オペレーション・マネージャを使用して、ＩＣＳプロジェクトを開始できる。
【００３１】
抽象化レイヤがない場合、ＩＣＳプロジェクトを開始するには、エンタープライズ・アーカイブ（ＥＡＲ）ファイルを生成するための「構築」動作をＩＣＳプロジェクトから明示的に実行し、ウェブ・インターフェースからＥＡＲファイルを選択してデプロイし、デプロイされたプロジェクトを第３のインターフェースを使用してモニタリングする必要がある。抽象化レイヤは、ＥＡＲファイルの生成、ならびにＩＣＳプロジェクトのデプロイメントおよびモニタリングを、特定のインターフェースにおいて１つのステップにまとめることができる。
【００３２】
実施形態によると、ＩＣＳプロジェクト名の横に開始ボタンを配置できる。ボタンがクリックされると、ＩＣＳ開発者は、ＩＣＳプロジェクトをデプロイするための特定のランタイムを選択するように要求され得る。選択に応答して、オペレーション・マネージャは、永続性マネージャを使用して、永続ストアからランタイム・エンジン・ニュートラルプロジェクトを読み出し４１１、ＩＣＳプロジェクトをランタイム・エンジン特有フォーマットに変換し、ＥＡＲファイルを生成し、特定のランタイム・エンジン（たとえば、Ｏｒａｃｌｅ  Ｓｅｒｖｉｃｅ  Ｂｕｓランタイム・エンジン（ＯＳＢ））によってエクスポーズされたＡＰＩを呼び出して、ＥＡＲファイルをその上でデプロイできる。
【００３３】
実施形態によると、オペレーション・マネージャは、プロジェクト・ハンドラを呼び出すことができる。これによって、ＩＣＳ開発者によって選択されたランタイムに基づいて、プロジェクトを変換するための、ランタイム・エンジン特有ハンドラを選択できる。
【００３４】
図４に示すように、実施形態によると、永続性マネージャは、ランタイム・エンジン・ニュートラルプロジェクト４１５をプロジェクト・ハンドラに渡すことができる。プロジェクト・ハンドラは、ランタイム・エンジン特有プロジェクトをオペレーション・マネージャに返すことができる。プロジェクト・マネージャは、特定のランタイム・エンジンに変換されたプロジェクトをデプロイ４１９して、プロジェクトを実行できる。
【００３５】
実施形態によると、抽象化レイヤによって、複数のランタイム・エンジン特有ハンドラ（たとえば、Ｏｒａｃｌｅ  Ｓｅｒｖｉｃｅ  Ｂｕｓ（ＯＳＢ）ハンドラ４２７、およびビジネス・プロセス実行言語（ＢＰＥＬ）ハンドラ４４７）を提供できる。ＯＳＢハンドラが選択されると、ＯＳＢハンドラは、たとえばデータベースからＯＳＢテンプレートを読み出し、当該テンプレートおよび関連するメタデータを使用して、ＩＣＳプロジェクトがＯＳＢランタイム・エンジン上で走るために必要な詳細を追加できる。読み出されたテンプレートおよびメタデータを使用するＩＣＳプロジェクトは、複数の方法を用いて変換できる。
【００３６】
実施形態によると、プロジェクトがデプロイされた後、上述の開始ボタンが配置された同じユーザ・インターフェースによって、デプロイされたプロジェクトのモニタリングを行うことができる。
【００３７】
実施形態によると、ＩＣＳランタイムは、所定のＩＣＳ統合フローについての秒毎のトランザクションおよび失敗したトランザクションの数、成功した呼び出し毎のロギング情報、たとえば、最後の２０レコードを表示するアクティビティ・ストリームなど、ランタイム・メトリックスを表示するために使用される一連のＡＰＩをエクスポーズできる。また、エクスポーズされたＡＰＩを使用して、すべてのトランザクションのログ・ファイルをダウンロードしたり、特定の種類のランタイム・メトリックスについてのユーザ指定の要求を受け付けたりできる。
【００３８】
図５は、実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するためのシーケンス図を説明する図である。
【００３９】
図５に示すように、ＩＣＳウェブＵＩアプリケーション５０１を使用してＩＣＳプロジェクトを保存（ステップ５１１）できる場合、永続性マネージャ５０４を呼び出し、永続性フレームワークＡＰＩ５０５を使用してリソースを生成（ステップ５１２）できる。リソースの作成には、ＩＣＳプロジェクト・ファイルを永続性フレームワークＡＰＩの基礎データベースに対して永続化することを含むことができる。
【００４０】
さらに図５に示すように、ＩＣＳウェブＵＩアプリケーションから、開発者は、ＩＣＳプロジェクトを開始（ステップ５１５）できる。プロジェクトの開始によって、オペレーション・マネージャ５０６に、永続ストアから読み出された、永続化されたリソースを使用してパッケージを生成（ステップ５１４）させることができる。
【００４１】
実施形態によると、オペレーション・マネージャは、生成されたパッケージを受け付け（ステップ５１６）、プロジェクト・ハンドラ５０８を呼び出して、変換されたプロジェクトを生成（ステップ５１８）できる。さらに、オペレーション・マネージャは、ランタイム・デプロイメント・ビーン（ｂｅａｎ）５０９を呼び出して、変換されたプロジェクトをデプロイ（ステップ５２１）できる。
【００４２】
上述したように、ＩＣＳプロジェクトを開始するためにボタンをクリックすることによって、ランタイム・エンジン・ニュートラルプロジェクトを読み出すステップと、プロジェクト・パッケージを作成する（プロジェクトをコンパイルする）ステップと、プロジェクトをランタイム・エンジン特有プロジェクトに変換するステップと、変換されたプロジェクトをデプロイするステップとを実行できる。
【００４３】
実施形態によると、ＩＣＳプロジェクトがうまくデプロイされたことを示す内容をＩＣＳウェブＵＩアプリケーションが受け付けた（ステップ５２５）後、モニター画面を自動的に表示でき、ここで、デプロイされたプロジェクトのホストとして動作しているＩＣＳランタイムに、ランタイム・メトリックス要求を送る（ステップ５２６）ことができる。モニター用インターフェースによってランタイム・メトリックスが受け付けられ（ステップ５２７）、さまざまなフォーマット（たとえば、棒グラフ）で表示できる。
【００４４】
図６は、実施形態に係る、ＩＣＳランタイムに含まれるランタイム・エンジンからウェブＵＩアプリケーションを隔離するための方法を説明する図である。
【００４５】
図６に示すように、ステップ６１１において、マイクロプロセッサを含んだコンピュータ上にウェブＵＩアプリケーションを提供し、ここで、ウェブＵＩアプリケーションは、ＩＣＳを設計する時間を提供する。
【００４６】
ステップ６１３において、ＩＣＳプロジェクトを設計、デプロイ、およびモニタリングする際に使用するための複数のサービスをウェブＵＩアプリケーションに対してエクスポーズする抽象化アプリケーション・プログラミング・インターフェース（ＡＰＩ）を提供する。
【００４７】
ステップ６１５において、ＩＣＳプロジェクトを、ランタイム・エンジン・ニュートラルフォーマットで永続化する。
【００４８】
ステップ６１６において、デプロイメント時に、ＩＣＳプロジェクトを、ＩＣＳランタイムに含まれるランタイム・エンジンのうちの１つに特有のフォーマットに変換する。
【００４９】
本発明の実施形態は、本開示の教示に従ってプログラムされた１つ以上のプロセッサ、メモリ、および／またはコンピュータ読み取り可能な記憶媒体を含む、１つ以上の従来の汎用または専用のデジタル・コンピュータ、コンピューティング・デバイス、機械、またはマイクロプロセッサによって好都合に実現されてもよい。当業者であるプログラマは、ソフトウェア技術を身につけた者に明らかなように、本開示の教示に基づいて、適切なソフトウェア・コーディングを容易に用意できる。
【００５０】
いくつかの実施形態において、本発明は、指示を格納した非一時的な記憶媒体またはコンピュータ読み取り可能な記憶媒体（複数のコンピュータ読み取り可能な記憶媒体）であるコンピュータ・プログラム・プロダクトを含む。コンピュータ・プログラム・プロダクトを使用して、コンピュータを本発明のいずれの処理も実行するようにプログラムできる。たとえば、記憶媒体は、これらに限定されないが、フロッピー（登録商標）ディスク、光ディスク、ＤＶＤ、ＣＤ−ＲＯＭ、マイクロドライブ、および光磁気ディスクを含む任意の種類のディスク、ＲＯＭ、ＲＡＭ、ＥＰＲＯＭ、ＥＥＰＲＯＭ、ＤＲＡＭ、ＶＲＡＭ、フラッシュメモリデバイス、磁気カードもしくは光カード、ナノシステム（分子メモリＩＣＳを含む）、または指示および／またはデータを格納するのに適した任意の種類の媒体またはデバイスを含むことができる。
【００５１】
上記の本発明の実施形態の説明は、例示および説明のために提供されている。これは、本発明を包括的であったり、開示された厳密な形態に限定したりすることを意図していない。多くの変更例および変形例は、当業者に明らかであろう。変更例および変形例は、開示の特徴の任意の適切な組み合わせを含む。実施形態は、本発明の原理およびその実用的な適用を最も適切に説明するために選ばれて記載されているため、他の当業者が、考えられる特定の使用に適したさまざまな変更例を用いて、さまざまな実施形態について本発明を理解できるようになっている。
【図１】
0006691554.tif 000002
【図２】
0006691554.tif 000003
【図３】
0006691554.tif 000004
【図４】
0006691554.tif 000005
【図５】
0006691554.tif 000006
【図６】
0006691554.tif 000007