OutSystems Platformは複雑なビジネスロジックをサポートしていますか?

エンタープライズ規模のシステムには必ず、ビジネスロジックまたはドメインロジックのレイヤーがあります。データがどのように作られ、表示、保管、変更されるかを決める現実世界のビジネスルールが、その中で(通常はバックエンド処理され)コード化されます。


ビジネスロジックは、単一のデータベーステーブルに書き出すように、シンプルな場合があります。また、同時に複数のテーブルに書き出す一方で、ユーザーが受けている許可の内容を確認し、検証と追加データ入力のために複数の外部システムを呼び出すように、非常に複雑な場合もあります。例えば、従来型または標準的な三層構造のウェブアプリケーションアーキテクチャーの場合、ビジネスロジックの多くの部分がデータベースレベルに存在し、一般的にはストアドプロシージャに組み込まれているため、メンテナンスが困難になる可能性があります。

OutSystems Platformは、このような複雑性に対応できるよう設計されており、システム上で複雑なロジックを作成、メンテナンスするプロセスにおいて高い生産性を実現します。以下のような多数の機能と構成要素により、複雑なビジネスロジックのコーディングがシンプルになります。

  • プログラミング構成要素
    複雑なロジックを作成するのに必要な基本要素
  • 拡張性
    Javaおよび.NETを使って新しい機能と構成要素を取り入れる機能
  • データソース操作
    ビジュアル式のデータ集約またはシンプルなSQL記述による、データベース接続およびウェブサービス公開のシンプル化
  • コードの再利用性とモジュール性
    どこでも再利用できるロジック
  • 非同期ロジック
    顧客の情報との定期的な同期を行い、またはスケジューリングを可能にするアクション
  • ビジネスプロセス・オーケストレーション
    人間の連携とバックエンドの活動を調整するため長期間にわたり実行されるトランザクション
  • ビジュアル式のドラッグ&ドロップ、デバッグ、およびモニタリング
    OutSystemsを使うと複雑なロジックの作成が改善される理由とは

プログラミングの構成要素

OutSystems Platformでは、ビジュアル式のドラッグ&ドロップモデルによるコーディングに加え、if文、繰り返し、条件分岐、変数、配列、および複雑なデータタイプなど、複雑なロジックを作成するための基本的なプログラミング構成要素がすべて備わっています。フォーマット指定、変換、数式、テキスト処理関数、その他の機能を備えた完全な表現言語により、複雑なロジックの計算を補助するのに必要な柔軟性が提供されています。

拡張性

プログラミングのための関数および構成要素(例えば、ハッシュテーブルや正規表現など)をC#またはJavaを用いて追加することができます。


データソースの操作

データベースへの接続や、SOAPウェブサービスまたはREST APIの公開と利用も簡単です。ビジュアル式のデータ集約機能により、データ検索も非常にシンプルになります。また、シンプルなSQLの記述機能をいつでも利用することができます。 

プログラミング構成要素と組み合わせることにより、データセットをメモリ内で何階層かの入れ子のループ内で繰り返し適用することができます。また、挿入、付加、削除などの一般的なリスト操作機能を用いて簡単に取り扱うことができます。



コードの再利用性とモジュール性 

OutSystems Platformを用いて書かれたすべてのロジックは、アプリケーション内のどこからでも再利用することができ、ソフトウェアファクトリー内のどのアプリケーションにも公開することができます。この機能によって、包括的モジュールおよびAPIの作成が可能となり、安定的なアーキテクチャと堅牢なモジュール性の実現へとつながります。 

例えば、OutSystems Platformを使って、再帰呼び出しのような古典的なプログラミングパターンを簡単に実装することができます。  

非同期ロジック

特定の処理ルーチンが複雑で、ボタンをクリックしてから完了までの時間が長すぎて待っていられないという状況に置かれることがありますが、OutSystems Platformならどんなロジックも容易に非同期で実行することができます。以下は、定期的にお客様の情報を同期するアクションの例です。

また、オペレーションのスケジュールを設定して、それを監視することもできます。



ビジネスプロセスのオーケストレーション

一般にビジネスプロセスと呼ばれている長期間にわたり実行されるトランザクションは、別のタイプの複雑なロジックです。協調ワークフローを人間の活動と調整するオーケストレーションや、特定のイベントによって作動するバックエンドのオーケストレーションも、OutSystems Platformなら簡単に実現できます。

開発チームは、単一のツールを使って設計、デプロイ、実行、フィードバック収集、モニタリング、およびプロセスとアプリケーション両方の最適化を自動化することができます。それらはすべて、複雑で費用のかかるインテグレーションを必要とせずに実現できます。これは、変更が生じる場合、アプリケーションとプロセスの両方で変更が生じるからです。 

以下は、受注処理プロセスと承認サブプロセスの例です。



OutSystemsを使うと改善される理由とは

OutSystems Platformを使って複雑なロジックを記述する方法が、従来のコーディング言語を用いた場合よりも実際に優れている理由は、次のとおりです。

  • ドラッグ&ドロップにおけるビジュアル表現自体が持つ特質により、何千行ものコードを読む作業に比べ、開発や業務の引き継ぎ、ナレッジトランスファーが大幅に簡単になります。
  • 複雑なロジックは、通常であれば確かに複雑です。ですが、充実した機能を備えるビジュアルデバッガを使うことにより、開発者はビジュアルコードの中を詳しく調べ、どのように動作しているのか理解できるので、トラブルシューティングが非常に簡単になります。
  • モニタリングの機能は、開発チームがパフォーマンス上のボトルネックを解決する助けとなるだけでなく、監査にも利用することができます。さまざまな冗長度の構成を作成し、複雑なシナリオや複雑なメッセージ交換を追跡することができます。