モダン・アプリケーション開発

一般的に、モダン・アプリケーションの適切な稼働は難しいものだと言われています。というのも、ツールや制約、その展望があまりにも急速に変化しているからです。オラクルのアプリケーション開発のためのフレームワークは、アプリケーションの構築・実行において、アーキテクチャに関する意思決定をシンプルなものにします。具体的には、一連の設計原則とテクノロジーの推奨事項を使用して、高い可用性やセキュリティ、耐障害性、およびコンプライアンスの遵守を実現します。

GitHubで入手可能なリファレンス・アプリケーションUniversal Health Organization(UHO)を参照しながら最新のアプリケーション開発についてご紹介します。このアプリケーションは、最新のアプリケーション開発フレームワークのプリンシパルとパターンに準拠しています。特に、Webまたはモバイル、メッセージングおよびイベントドリブン・アーキテクチャ・パターンの要素を実装します。最新のアプリケーション開発の原則とパターンについてさらに学習するには、参照アプリケーションをご覧ください。

コア要件

モダン・アプリケーションに適用される共通要件。


セキュリティとコンプライアンス

セキュリティ・ポリシーを業界のベストプラクティスに沿ったものにし、アプリケーション・スタックのレイヤー全体にポリシーを適用します。また、データの機密性と整合性を担保します。そして、権限管理を使用して、特定のタスクを実行できるユーザーの識別・管理をします。セキュリティ・イベントの検出と診断を容易にします。


可用性

アプリを24時間365日稼働できるようにします(計画の如何を問わず、ダウンタイムを発生させない)。


拡張性

数十人、数千人、数百万人と規模を拡大することができます。大量のデータを処理しても、将来的にアプリを再設計する必要はありません。


パフォーマンス

優れたユーザーエクスペリエンスの実現に向けて必要な、最小の遅延で最大のスループットを提供します。


アジリティ

モダンな自動化ツールと手法を活用して、構築とデプロイのプロセスを実行します。これにより、手動タスクによるボトルネックを回避します。


監視

パフォーマンス・メトリックを記録し、低下がないかシステム・パフォーマンスを監視します。これらの測定値が予想される閾値を超えた場合、チームは自動的にアラームを生成することができます。


耐障害性

問題が発生した場合は、アプリを正常に回復させ、失われた機能をすばやく復元し、データの損失を防ぎ、ユーザー・エクスペリエンスに悪影響を与えないようにします。


コストの最適化

他のすべての要件とのバランスを取りながら、可能な限り低いトータル・コストで実行します。


移植性

アプリケーションのアーキテクチャがオープン・スタンダードに準拠していることを確認し、オンプレミスからクラウドへの移行やベンダー間の移行を容易にします。

カテゴリおよび推奨テクノロジーとその説明 この図は、前後の文章で説明されているカテゴリーと推奨テクノロジーを示しています。カテゴリー間の関係を図示すると、以下のようになります。「Languages and Frameworks」カテゴリは、「DevOps」カテゴリへのインプットとなり、さらに「Application」カテゴリへのインプットとなります。この3つのカテゴリは、「Security and Governance」カテゴリにサポートされており、それ自体は「Observability and Management」カテゴリにサポートされています。各カテゴリには、そのカテゴリで最も代表的なテクノロジーを示す画像が含まれています。