2019.08.09Mendixガイド , アーキテクチャ

Mendixアーキテクチャの原則

  • このエントリーをはてなブックマークに追加

1. Mendixプラットフォームの背景にある重要なアーキテクチャの原則は何ですか?

Mendixプラットフォームには、エンタープライズ対応アプリケーションを保証するための(技術的)原則が組み込まれています。Mendixの場合、「エンタープライズ対応」とは、アプリが保守性、パフォーマンス、拡張性に優れていることを意味します。これはまた、アプリがバックエンドエンタープライズシステムの複雑な機能に対応できるため、あらゆるエンタープライズランドスケープに統合できることを意味します。

 

2. Mendixはどのようにモデル駆動型開発を可能にしますか?

モデル駆動型開発(MDD)は、迅速なアプリケーション開発を可能にするための主要なアプローチの1つとして注目されています。アプリケーションロジック、プロセスのフロー、ユーザーインターフェイスを定義するためにビジュアルモデルを使用するため、MDDは開発者とビジネスユーザーの両方が、手間のかかるコーディングを必要とせずに高速でアプリケーションを構築できるようにします。C#やJavaなどの従来のプログラミング言語よりもはるかに高速です。ビジネスユーザーがアプリケーションの設計と開発へ積極的に参加できるように、ビジュアルMDDアプローチを採用しました。MDDは、ビジネス側とIT側の関係者を連携させるための優れたコミュニケーションメカニズムを提供し、高い品質と成功への結果を導きます。

 

3. なぜMendixはコード生成よりもモデル解釈を優先するのですか?

Mendixランタイムはモデルを直接実行します。つまり、モデルはアプリケーションであり、仲介者ではありません。視覚的にモデル化されたデザインがコードを生成するアプローチ(Javaや.NETなど)とは対照的に、Mendixのモデル解釈アプローチには多くのユニークな特徴と利点があります。

詳細については、「モデル駆動型開発:コード生成?モデル解釈?」を参照してください。

 

4. Mendixはマイクロサービス、コンテナ、デプロイの標準化をどのように活用していますか?

マイクロサービスは、小規模のアジャイルDevOpsチームに最適なソフトウェアアーキテクチャを提供します。このアーキテクチャーは、コンテナの特性から大きな利点を得ることができます。コンテナを使用すると、アプリケーションをあらゆるクラウドに簡単にデプロイし、品質、再現性、高速を保証します。デプロイを標準化することにより、小規模なDevOpsチームは運用に関するあらゆる作業ができます。

 

5. Mendixではステートレスはどのように機能していますか?

最新のWebアプリケーションは、スケーラビリティとレジリエンスを高めるために、ステートレスアーキテクチャを利用しています。ステートレス性は、増加するユーザーや処理負荷をサポートするために、必要に応じてリソースの追加を簡単にできるようにすることで、水平方向のスケーラビリティーをサポートします。すべてのユーザーリクエストとすべてのトランザクションは、利用可能なランタイムインスタンスによって処理できます。パフォーマンスのニーズから、より多くのトランザクションやユーザーからのリクエストを処理する必要がある場合は、一部の処理のために別のランタイムインスタンスを追加することができます。状態はランタイム外で管理されるため、あるランタイムインスタンスから別のランタイムインスタンスへのフェイルオーバーがより容易になることで、レジリエンスも向上します。

 

6. Mendixはどのようにオープン性と拡張性を提供しますか?

オープン性は、現代のあらゆるアプリケーションプラットフォームの基本的なアーキテクチャ要件です。プラットフォームは、他のアプリケーションやアプリケーションサービスを容易に共存させて利用できるようにする必要があります。これはまた、プラットフォーム自体がITランドスケープに収まり、コア開発プロセスと開発標準をサポートすることを意味します。

「漏れのある抽象化」が生じるため、企業の機能要件および非機能要件は、モデル駆動型の開発アプローチからおこなうことは非常に困難です。拡張性は、企業向けアプリケーションの機能要件および非機能要件のすべてに対処するためには不可欠です。モデル解釈によって生成コードを変更できない場合は、拡張性が必須です。

この重要なトピックの詳細については、Openness&Extensibilityを参照してください。

 

7. Mendixは12要素アプリの原則にどのように従っていますか?

12要素アプリの方法論は、厳密には一連のアーキテクチャーの原則ではありませんが、(元々Herokuチームによって開発された)一連のベストプラクティスであり、クラウドネイティブアプリを構築する際の一般的な体系的な間違いを回避することを目的としています。

 

翻訳元:

https://www.mendix.com/evaluation-guide/enterprise-capabilities/architecture-principles

  • このエントリーをはてなブックマークに追加

このエントリーにコメントする

必須項目は全て入力してください。

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)