Introduction to developing with Dynamic 365 FO
Introduction to developing with Dynamic 365
Dynamics 365 Finance and Operations architecture
Dynamics 365 for Finance and Operations is designed and architected for the cloud. It can be deployed as an on-premises system or on the cloud. On the cloud, it can be deployed to Azure, and the production environment is fully managed by Microsoft. It can also be deployed to a data center on-premise and can be fully managed by an internal engineering team.
Identity Layer
The identity layer forms the foundation of the conceptual architecture for D365 FnO. This layer is responsible for the authentication and identity aspects of the overall architecture. In a cloud deployment scenario, it uses Azure Active Directory (AAD) for authentication. AAD is a multi-tenant, cloud-based directory, and identity management solution. AAD is provided as part of the subscription to FnO. In an on-premises deployment, it uses Active Directory Federation Services for authentication.
Data Layer
The data layer hosts the databases used to store the core business configuration and transaction data. In a cloud deployment scenario, the database is hosted on Azure SQL. In case of an on-premises deployment, the data layer consists of Microsoft SQL Server databases either enterprise or standard edition. On the cloud database availability, reliability, and other factors are catered for by Azure. In an on-premises deployment, these factors must be designed and built by the implementation team.
Platform Layer
The platform layer consists of the compute infrastructure that host the various components of D365 Finance and Operations. These components include the operating systems and their various features that together provide the underlying functionality. In a cloud environment, this layer is hosted on Windows server containers on Azure Compute. An on-premises deployment uses service fabric to stitch across the various components hosted on virtual machines in the data center environment.
Application Layer
This layer consists of the core application components of D365 Finance and Operations. It is composed of application components, code, and metadata. This layer is composed of the application platform, application foundation and application suite.
Client Layer
This layer consists of the client components needed to access D365 Finance and Operations. This layer caters to different form factors such as web browsers, mobile devices, etc. but also, to other integrations such as Microsoft 365.
Development Tools
This layer consists of tools, languages, and frameworks to enable further enhancements or customization. Visual Studio is an exclusive IDE for development. Visual Studio contains the necessary project templates, element designers, and the code editor.
Lifecycle Services
This layer provides the necessary tools to manage the lifecycle of a D365 instance. It includes the deployment, updates, monitoring, and other aspects of managing a D365 instance. It also provides functionality for software development, customer provisioning, service level agreement (SLA) monitoring, and reporting capabilities.
The Finance + Operations on-premises and cloud-based Finance and Operations apps
Cloud architecture
The finance and operations application cloud architecture contain all the elements that are common to all Microsoft cloud offerings, as described in Subscriptions, licenses, accounts, and tenants for Microsoft's cloud offerings. Beyond this, it also includes services that automate software deployment and provisioning, operational monitoring and reporting, and seamless application lifecycle management
The architecture for cloud deployment includes several main components:
Subscription - A subscription to Finance and Operations apps gives you an online cloud environment.
Licenses - Customers must purchase subscription licenses (SLs) for their organization or for their affiliates' employees and on-site agents, vendors, or contractors who directly or indirectly access Finance and Operations apps. Finance and Operations apps are licensed through Volume Licensing and the Cloud Solution Provider (CSP) program. See Microsoft Dynamics 365 Licensing guide for more information.
Azure Active Directory (Azure AD) - Azure AD is the multi-tenant, cloud-based directory and identity management service from Microsoft that combines core directory services, application access management, and identity protection in a single solution. Finance and Operations uses Azure AD as the store for identity. Access to Azure AD is provided as part of a subscription to Finance and Operations apps.
Tenant - In Azure AD, a tenant represents an organization. This is a dedicated instance of the Azure AD service that an organization receives and owns when it creates a relationship with Microsoft (for example, by signing up for a Microsoft cloud service such as Azure, Intune, or Microsoft 365). Every Azure AD tenant is distinct and separate from other Azure AD tenants.
Microsoft 365 Admin help center - A subscription management portal that Microsoft 365 provides for administrators. It's used to provide management functions through Azure AD as well as subscriptions. As part of these management functions, it provides information about service health.
Lifecycle Services (LCS) - LCS is a collaboration portal that provides an environment and a set of regularly updated services that can help you manage the application lifecycle of your Finance and Operations implementations.
Azure DevOps - Used primarily for code version control and to deploy a build environment. Azure DevOps is also used to track support incidents, such as work items in Azure DevOps that are submitted to Microsoft through cloud-powered support, and to integrate the Business Process Modeler (BPM) library hierarchy into your Azure DevOps project as a hierarchy of work items. Azure DevOps is also used during code upgrades.
On-premises architecture
Finance + Operations can be deployed on-premises. This means that the application is deployed locally within the customer's data center, and the data center is managed by the customer. It is important to remember that because an on-premises deployment is locally deployed, system requirements, hardware sizing, and functionality of the application differ from cloud deployments.
When an on-premises deployment is selected, the application servers and the Microsoft SQL Server database are run in the customer's data center. Identical to a cloud deployment, LCS is used to manage the on-premises deployment. To build and manage an enterprise-class, high-scale application, and on-premises deployments use Microsoft Azure Server Service standalone clusters. The Service Fabric standalone clusters can be installed on any machine that is running Windows Server. There are two types of clusters: one for sandboxes and one for production environments. Application Object Servers (AOS), Financial Reports Designer (formally named Management Reporter), and SQL Server Reporting Services (SSRS) are roles that are deployed in both the production and sandbox clusters.
When deciding which type of deployment your organization should use, you should consider the overall approach of the implementation and the management of the infrastructure. Additional considerations include the organizational preferences to meet regulatory and compliance needs of the business. With a cloud deployment, the structure is completely managed by Microsoft. With an on-premises deployment, the customer takes on more responsibility and has additional costs. Examples of additional costs could include standing up your own infrastructure, configuring a high-availability disaster recovery solution, standing up sandbox environments, and managing the infrastructure.
Keep in mind that there are differences in features that are available for cloud and on-premises deployments. Microsoft offers a list of specific features that differ from each of the deployment types. For more information, see the Summary unit at the end of this module.
Logical diagram of the node types deployed in a Service Fabric standalone cluster.
Use LCS to help manage their on-premises deployments
The architecture of the development environment
The architecture of the development environment resembles the architecture of the cloud instance.
It also includes the software development kit (SDK), which consists of the Visual Studio development tools and other components.
Source control through Team Foundation Server or Visual Studio Online enables multiple-developer scenarios, where each developer uses a separate development environment.
Deployment packages can be compiled and generated on a development environment and deployed to cloud instances by using LCS.
The following diagram shows how the key components interact in a development environment.
D365 FO Environments for new implementation
No comments:
Post a Comment