アプリケーションのデタッチプロセス

OutSystems Platformの利用を停止する場合でも、アプリケーションの生成済みコードをデタッチし、標準の.NETまたはJavaのウェブアプリケーションサーバスタックにデプロイすることができます。ただし、コードをデタッチする前に必要な作業があるほか、考慮すべき依存関係もあります。

デタッチせずにソースコードを参照する

開発者がアプリケーションのソースコードをデタッチすると、OutSystems Platformで使い続けることができなくなります。
このチュートリアルでは、デタッチせずにソースコードを参照する手順を説明します。

ソースコードをデタッチする前に

ビジュアルモデルと生成されたコードの間には密接なマッピング関係が存在することから、OutSystemsは、OutSystems Platformの中で構築されたオリジナルのアプリケーションのビジネスロジックを理解している人が、コード中のロジックをアプリケーション中のビジュアルロジックにマッピングし、将来的にそのアプリケーションのメンテナンスを担当する人にその情報を引き継ぐことをお奨めします。
また、基盤となっているスタックテクノロジーと標準の.NETまたはJavaウェブアプリケーションアーキテクチャ、および該当する言語で記述されたコードについて理解している開発者が必要になります。

組織がソースコードのデタッチを決定した場合は、次の事項も考慮する必要があります。

  • OutSystems Platformのアプリケーション開発、管理、および運用の機能はすべて失われます。
  • 内蔵されていたフィードバック、パフォーマンス監視、およびログの機能に関して、代替ツールが必要となります。
  • ビジュアル開発環境、統合環境、環境管理コンソール、およびインフラ管理コンソールを含むOutSystems Platformのツールおよびサービスはすべて利用できなくなります。 また、それらから提供されていた機能もすべて利用できなくなります。ただし、IDEを使って開発されたアプリケーションの基本機能はすべて保持されます。
  • 生成されたソースコードに関するすべての依存関係、およびその中でもOutSystems Platformの環境外でアプリケーションを実行するのに必要な依存関係について、今の時点で記録しておく必要があります。ここで述べた依存関係には、OutSystemsのサービス、OutSystemsのランタイムライブラリ、およびデータベースが含まれます。
  • アプリケーションをEclipseまたはVisual StudioからOutSystems Platformに戻すためのリバースエンジニアリングプロセスは存在しません。

ソースコードのデタッチを希望されるお客様へのサポートは、他のお客様へのサポートと変わりありません。OutSystems Platformからソースコードをデタッチするためにサポートが必要な場合は、貴社の営業担当か、sales@bluememe.jpまでご連絡ください。

デタッチとOutSystems Public Cloud

アプリケーションのソースコードをデタッチする場合、まず初めに、オンプレミスまたは別のパブリッククラウド上にOutSystems環境を1つインストールしたハイブリッドデプロイ環境を構築する必要があります。

以下の説明はすべて、上記の環境がインストール済みであることを想定しています。

OutSystems Public Cloudからオンプレミス環境へ移行するための詳細手順を確認してください。(英語)

ソースコードのデタッチ方法

アプリケーションのソースコードをデタッチしてOutSystems Platformの利用を停止する手順は、以下のとおりです。

  1. アプリケーションのソースコードをダウンロードします。
    Service Centerの管理コンソールおよび運用コンソールを使って、各アプリケーションのソースファイル一式をダウンロードします。これにより、ページファイル、コントロール、JavaScriptファイル、CSSファイル、ウェブサービス、その他すべてのアプリケーションコンポーネントを含む全プロジェクトファイルにアクセスすることができます。
  2. Visual StudioまたはEclipseを使って、アプリケーションのコンパイルとビルドを行います。
    Service Centerから取り出したプロジェクトファイルには、Visual StudioまたはEclipseのような標準の.NETまたはJavaの統合開発環境を使ってアプリケーションのコンパイルとビルドを行うためのすべてのリソースと依存関係が含まれています。これで、アプリケーションをアプリケーションサーバにデプロイすることができます。
  3. データベース/スキーマを新しいデータベースサーバーに移行します(オプション)。
    お客様のアプリケーションデータは、同じデータベースサーバーを使用するか、既存のデータベース/スキーマを現在のデータベースサーバからデタッチ/バックアップし、新しいデータベースサーバにアタッチ/リストアすることにより、再利用することができます。



ソースコードの依存関係の取り扱い方法

アプリケーションがデタッチされた後でも、ソースコードには外部の依存関係が残っています。ここで述べた依存関係には、OutSystemsのサービス、OutSystemsのランタイムライブラリ、およびデータベースが含まれます。それらに関しては、デタッチ後に別の方法で処理する必要があります。



OutSystems ServicesとScheduler Service

OutSystems Platformの利用を停止した後、コードの最適化とサービスの一部が利用できなくなります。
利用できなくなるサービスには、Log Service、Deployment Services、Service Center、およびLifeTimeが含まれます。
このような依存関係は、アプリケーションの安定性とパフォーマンスを監視する仕組み(OutSystems Platformによって自動的に追加される機能)、および自動化されたデプロイ管理および構成管理の機能とともに取り除かれます。

時間ベースのバッチ処理ロジックを使用している組織は、ソースコードのデタッチを行った後でも、この機能を使い続けることができます。Scheduler Serviceのソースコードが提供されているのは、この目的のためです。別の外部ツールでこの依存関係を処理することを決定した場合は、手動で取り除くことができます。

OutSystemsのランタイムライブラリ

アプリケーションが必要とするOutSystems Platformライブラリのソースコードは公開されており、利用可能です。これは、このコードが変更可能であることを意味しています。最初はアプリケーションがコードを必要とする場合でも、変更を加えることによりこの依存関係を取り除くことができます。

データベース

アプリケーションの中で定義されるデータモデルは、追加作業を行うことなく、かつ特殊なデータベース構成や複雑な管理知識を用いることなく、データベースの中で作成され、更新されます。コンパイルおよび公開を行っている間、OutSystems Platformは、ランタイムデータベースに対して実行される標準の差分SQL DDL(データ定義言語)スクリプトを生成します。生成されたソースコードは、モデル(スキーマと構成データの両方)が適切に作成されていることを想定しており、また、個別のデータベース製品ベンダーから提供されたドライバー、SQL構文、およびその他の仕様に依存しています。

OutSystemsの使用を止めて別のデータベースサーバの使用を決定することは、データベース、スキーマ、またはその両方を手作業で移動し、それに応じてアプリケーションサーバを設定しなければならないことを意味します。データベースやスキーマを作成し、データを投入するためのSQLスクリプトは、OutSystemsからは提供されないということに留意してください。また、アプリケーションのソースコードは、新しいデータベースエンジンに合わせて変更しなければなりません。