モダン・アプリケーション開発-ロー・コード

ローコード・プラットフォームを使用すると、エンタープライズ・アプリケーションの構築、テストおよびデプロイを従来のハンドコーディングより高速に行うことができます。これらのプラットフォームは、ビジネスの利害関係者とのコラボレーション、データ・レポートおよび分析アプリケーションの構築、SaaSアプリケーションの拡張、レガシー・アプリケーションの最新化に、便宜上のアプリの構築に適しています。

ローコード・プラットフォームによって、従来の開発の複雑さに対処するのではなく、ビジネスの問題の解決に集中できます。このような複雑さには、データ・ビジュアライゼーション、データ収集、データ分析、セキュリティ、アクセシビリティ、パフォーマンスおよびグローバリゼーションが含まれます。ローコード・プラットフォームは、これらの複雑さを大幅に軽減し、保守するコードの量を大幅に削減します。

Oracle Application Express (APEX)は、フォーム、チャート、UIウィジェットなどの高レベルのコンポーネントを提供するロー・コード・プラットフォームです。APEXは、直感的なグラフィカル開発環境を通じて一般的な設計パターンも提供します。APEXを使用して開発したアプリケーションは、SQLを介してローカル・データにアクセスし、REST APIを使用して外部サービスと統合できます。さらに、APEXで開発した機能を外部で使用するためのREST APIとして公開できます。

設計方針

ローコード・パターンを実装する場合は、次の最新のアプリケーション開発設計原則を使用します。
  • 完全管理型のサービスを使用して、アプリケーション開発、ランタイムおよびデータ管理の複雑さを排除

    Oracle Autonomous Database上のOracle APEXなどの完全に管理されたサービスを使用して、スケーラブルで安全、かつ高性能なローコード・アプリケーションのデプロイメントと操作を簡素化します。また、Oracle Data GuardなどのOracle Autonomous Databaseの機能により、ローコード・アプリケーションを24時間365日利用可能にできます。

  • ビルド、テストおよびデプロイメントの自動化

    OCIリソース・マネージャを使用して、Oracle Autonomous DatabasesおよびAPEX環境のプロビジョニングを自動化します。Oracle SQL Developer Command Line (SQLcl)とLiquibaseを使用して、データ・モデルに対する変更のデプロイメントを自動化します。

  • アプリ層をステートレスに保ちます

    すべての状態がデータベースに永続化されるため、Oracle APEXアプリケーションはステートレスです。このアプローチは、強力なトランザクション保証を提供し、アプリケーションのフェイルオーバーとバックアップを簡単に行えるようにして、障害から簡単にリカバリできるようにします。

  • すべてのデータでフル機能装備の付いたマルチモデル・データベースを使用します

    このアプリは、表形式(リレーショナル)、非構造化、XML、JSON、空間、グラフなど、様々な形式でデータを使用できます。統合されたテキスト検索、あいまいな照合、分析、機械学習により、高度なアプリが促進されます。Oracle Autonomous Database上のOracle APEXを使用すると、トランザクションを使用して、すべてのデータ形式の一貫性と分離を保証できます。アクセス制御やデータ・マスキングなど、Oracle Data Safeのセキュリティ機能を使用して機密データを保護することもできます。

  • 自動化されたデータ・レプリケーションと障害リカバリにより、単一障害点を排除

    Oracle Autonomous DatabaseのAPEXは、可用性の高いアーキテクチャを使用してデプロイされます。Autonomous Data Guardを使用してシームレスなフェイルオーバーを実現することで、アプリケーションの可用性をさらに高めることができます。

  • アプリケーション・ライフサイクルを保護するための多層防御アプローチの導入

    OCI Identity and Access Management (IAM)を使用して、APEXアプリケーションへのアクセスを制御します。APEXアプリケーション(およびそのコンポーネント)に認可スキームを割り当て、ユーザー・ロールまたは権限に基づいてアクセス制御を適用します。APEXの組込み宣言機能を使用して、セッション・ステート保護(SSP)およびアイテム・レベルの暗号化を処理し、アプリケーションおよびデータを保護します。SQL問合せでバインド変数を使用して、SQLインジェクションを回避します。アプリケーションに適したタイムアウトを構成して、非アクティブなセッションが自動的に終了するようにします。組込みのAPEXアドバイザを実行して、保護されていないページ、項目、ボタンなどの潜在的なセキュリティ上の問題を検出します。宣言的なエスケープおよびプログラムによるエスケープAPIを使用して、クロスサイト・スクリプティング(XSS)から保護します。

アーキテクチャ

ロー・コード・アプリケーションの開発およびデプロイメントには、このアーキテクチャをお薦めします。Oracle REST Data Servicesに事前パッケージされたOracle Autonomous Database上のOracle APEXを使用します。REST APIを公開して、データベース内のデータと対話できます。

low-code-arch.pngの説明が続きます
図low-code-arch.pngの説明

low-code-arch-oracle.zip

このアーキテクチャでは、ゲートウェイおよびロード・バランサを使用して、Autonomous Databaseを個別のプライベート・サブネットに分離します。NATゲートウェイは、外部REST APIを安全に消費するために使用されます。

推奨されないアーキテクチャ

ロー・コード・プラットフォームは、構造化データを中心としたビジュアル・アプリケーションを構築するためのパターンとして選択する必要があります。市民およびLOB開発者は、そのようなプラットフォームを効果的に利用し、複雑さを軽減し、敏捷性を高めることができます。これらのシナリオでの従来のアプリケーション開発を使用すると、セキュリティ、アクセシビリティ、効率的なデータ・アクセス、パフォーマンスおよびグローバリゼーションなど、様々な複雑さに対応できます。

例のユースケース

ローコード開発の例を次に示します。
  • 機会獲得アプリケーション

    新しいビジネス・チャンスが生まれるとき、多くの場合、新しいアプリケーションを迅速に構築する必要があります。組織は、変化するビジネス・ニーズに対応し、競争力を維持するために必要となる大量のアプリをバックログしています。このバックログは適切に定義されていない可能性があり、ビジネスの優先順位が急速に変化する可能性があるため、アプリケーションはすぐに構築でき、必要に応じて簡単に更新できる必要があります。このようなアプリケーションは、APEXを使用して簡単に構築および保守できます。

  • データ・レポートおよび分析

    組織全体または部門内でも、完全で正確な状況を把握することは多くの場合、困難です。データは多数のシステムで保持され、既存のレポートは限られており、情報に基づいたビジネス上の意思決定に必要な詳細を必ずしも提供しているわけではありません。誰が状況を把握してデータ漏洩を回避したり、定型報告の実行に数時間かかる可能性があるかを制限することは困難です。APEXおよびその広範なレポート機能とデータ・ビジュアライゼーション機能を使用すると、様々なユーザー・コミュニティに適切なダッシュボードを簡単に開発できます。

  • SaaSおよびEBS拡張

    ERPシステムは広範な機能を提供しますが、必要な特定のレポートや、業界や組織に固有の機能がない可能性は常にありません。一般的なビジネス・プロセスがあり、完了するステップが多すぎて非効率になる場合もあります。このような場合、APEXを使用して拡張を構築すると、適切な情報を提供したり、生産性とユーザー・エクスペリエンスを大幅に向上させることができます。

  • 従来のアプリケーションの最新化

    Oracle Formsアプリケーションは、多くの場合、古いクライアント/サーバー・ユーザー・エクスペリエンスを提供します。これらのレガシー・アプリケーションは、操作性やアクセシビリティの問題を伴うことが多く、様々なブラウザでの作業に苦労しており、モバイルに対応していません。Oracle APEXは、Oracle Formsアプリケーションを最新のWebアプリケーションに簡単に移行するための明確なプラットフォームです。同じストアド・プロシージャおよびPL/SQLパッケージがAPEXでネイティブに機能するため、開発が容易になります。

  • スプレッドシート置換

    ほとんどすべての組織がスプレッドシートを使用して、データの分析とレポート作成を行っています。どうしてですか?スプレッドシートは作成も簡単です。データがある場合に誰でもスプレッドシートをまとめることができます。作成後、多くの場合、スプレッドシートを同僚に送信して更新を支援します。これにより、様々なデータと欠陥のあるビジネス・プロセスで多数のコピーにつながります。より優れたソリューションは、すべてのユーザーがデータを保守するために使用できるブラウザベースのアプリケーションを使用して、完全に保護されたデータベースに単一のデータ・ソースを格納することです。

確認

  • 作成者: Sajan Parihar、Shakeeb Rahman、Marc Sewtz
  • 貢献者: Todd Bottger、Matthias Brantner、James Emerson、Bernard Horan、Harshad Kasture、Parvez Syed Mohamed、Joshua Stanley

変更ログ

このログには、重要な変更がリストされます。