OutSystems Platformの製品構成 (開発及びデプロイ環境)

OutSystems Platformには、アプリケーションライフサイクル全体の管理プロセスをカバーする、環境、ツール、およびコンポーネントが備わっています。


OutSystemsの開発環境 (Service Studio) およびデプロイ環境は、次のとおりです。

  • ビジュアルな開発環境 (Service Studio)
    データモデル、アプリケーションロジック、UI、ビジネスプロセスフロー、連携、およびセキュリティーポリシーといったアプリケーションスタックのすべてのパーツを作成する環境です。

  • 拡張・連携環境 (Integration Studio)
    OutSystems Platformを拡張して、サードパーティーシステムとの連携のためのコンポーネントを作成する環境です。

  • OutSystems Now
    このネイティブなiOS、Android、およびWindowsアプリケーションを使うと、ユーザは同一のアクセスポイントから自分のアプリケーションにアクセスすることができます。このアプリケーションは、ユーザからのフィードバックの機能を備えており、デバッグやQAにおいて非常に便利です。

  • Platform Server
    このサーバコンポーネントは、OutSystems Platformの主要部分です。アプリケーションの生成、最適化、コンパイル、および標準ウェブアプリケーションサーバーへのデプロイを行います。また、スケジュール設定されたバッチジョブとアプリケーションログの管理も行います。

開発環境およびデプロイ環境

OutSystemsの開発環境は、優れたアプリケーションの作成、連携、その他の作業が、可能な限り簡単になるように設計されています。

ビジュアル開発環境 (Service Studio)

この環境では、設計者はビジュアル要素をドラッグ&ドロップすることで、アプリケーションのUI、ビジネスプロセス、ビジネスロジック、およびデータモデルを作成します。また、アプリケーションは、この環境でSOAPおよびRESTウェブサービスを利用、公開します。

すべてのアプリケーションレイヤーにはフックポイントが設けられているため、開発者は、開発環境外で作業する必要がある場合、すべてのレイヤーを自分のコードで拡張することができます。

この環境には、アプリケーションにエラーが生じないように背後で作動し、変更が既存のアプリケーションに影響を与えないようにするための完全な参照チェックおよび自己回復エンジンが備わっています。軽量設計が施されており、設計後の作業のほとんどはOutSystems PlatformのサーバコンポーネントであるPlatform Serverが受け持ちます。

拡張・連携環境 (Integration Studio)

この環境では、既存のサードパーティシステムおよびデータベースとの統合を実現するためのコンポーネントを作成することができます。また、開発者は、自分のコードを使ってOutSystems Platformを拡張することができます。

これらのコンポーネントを一度デプロイすると、OutSystems Platformを使って作成するすべてのアプリケーションで再利用することが可能になります。

  • .NETスタックでは、開発者はVisual Studioを使って連携のためのコードを作成することができます。また、既存の.NETライブラリを活用することも可能です。
  • Javaスタックでは、開発者はEclipseを使って連携のためのコードを作成することができます。また、既存のJavaライブラリを活用することも可能です。

コンポーネントを公開する際、開発環境は標準の.NETコンパイラまたはJavaコンパイラを使ってコンパイルします。生成されたDLLまたはJARは、Platform Serverに送られます。

OutSystems Now

このネイティブなiOS、Android、およびWindowsアプリケーションを使うと、ユーザは同一のアクセスポイントからアプリケーションにアクセスすることができます。OutSystems Nowの内部で実行中のアプリケーションは、連絡先、カレンダー、カメラ、およびGPSなど、デバイスのネイティブ機能を利用することができ、ユーザにネイティブに似たエクスペリエンスを提供します。

アプリケーションに変更を加えた場合、OutSystems Nowで直ちに利用することができます。面倒なアプリストアの承認手続きを経る必要はありません。

OutSystems Nowは、開発チームにフィードバックを送ることができるフィードバックメカニズムを備えているので、デバッグやQAにも有効です。フィードバックの提出は、画面上に書き記すか、音声メモを追加するか、コメントをテキスト入力するかのいずれかの方法で簡単に行うことができます。ユーザーが見たもの、コメントを記したものはすべて、デバイスの仕様とともに開発チームに送られます。

また、OutSystems Nowはオープンソースなので、お客様は自社ブランドに合わせてカスタマイズしたり、新しい機能を追加したりすることができます。

Platform Server

このサーバコンポーネントは、OutSystems Platformの主要部分です。アプリケーションの生成、ビルド、パッケージ化、およびデプロイに必要なすべての処理を行います。

Platform Serverには、以下のような一連の特殊サービスがあります。

  • コードジェネレータ
    IDEでモデル作成されたアプリケーションから、ネイティブの.NETまたはJavaを生成します。これにより、パフォーマンスが最適化され、標準テクノロジー上で実行可能で堅牢なアプリケーションを生成することができます。

  • デプロイサービス
    このサービスは、生成された.NETまたはJavaアプリケーションを標準ウェブアプリケーションサーバー上にデプロイします。これにより、アプリケーションは一貫してサーバファームの各フロントエンドにインストールされます。

  • アプリケーションサービス
    このサービスは、スケジュール設定されたバッチジョブの実行を管理し、エラー、監査、およびパフォーマンス指標などのイベントを保存するために非同期のログサービスを提供します。

アプリケーションをデプロイするときは、作成されたアプリケーションモデルを環境が検証し、Platform Serverに送ります。サーバに送られると、アプリケーションモデルは次のように処理されます。

  1. 内蔵のバージョン管理システムを用いてバージョンが設定される。
  2. ネイティブの.NETまたはJavaにコンパイルされ、パフォーマンスおよびセキュリティの面で最適化される。
  3. お客様のサーバファームにあるすべてのフロントエンドサーバーにデプロイされる。

デプロイ処理プロセス中、Platform Serverは依存関係解析も併せて実行し、変更により他のアプリケーションが影響を受ける場合はその旨をチームに通知します。