Chapter 2: Architecture CHAPTER 2: ARCHITECTURE Objectives Introduction The objectives are: Review the Microsoft Dynamics NAV 5.0 Architecture Understand the Microsoft Dynamics NAV 2009 Architecture Microsoft Dynamics NAV 2009 is built on a three-tier architecture model, departuring significantly from the two-tier architecture of Microsoft Dynamics NAV 5.0. Microsoft Dynamics NAV 2009 introduces a new layer in the architecture. This additional layer, or tier, is designed to host and execute all the business logic. In the two-tier architecture of Microsoft Dynamics NAV 5.0, the business logic resides at the client layer. It improves security to execute the business logic on another layer that does not provide an interface, or access point, to the user. Scalability is also improved in the three-tier architecture. 2-1
What s New for Microsoft Dynamics NAV 2009 Installation and Development Microsoft Dynamics NAV 5.0 Architecture Two-tier architecture models are used in the true Client/Server Distributed Data solution. In two-tier architectures, the data and data manipulation layers reside on the server, whereas the application logic, presentation logic, and presentation layers reside on the client. Microsoft Dyanamics NAV 5.0 is designed according to the two-tier architecture model. It puts the application logic (Business Logic) and presentation logic/layers (User Interface) on the client computer. the two-tier architecture also puts the data and data manipulation layers (DML) on the server in the native database and SQL Server configurations. FIGURE 2.1 THE MICROSOFT DYNAMICS NAV 5.0 ARCHITECTURE The Client Tier The C/Side Client is located on the client tier. It consists of an administration component for administrators and Microsoft Dynamics NAV 4.0/5.0 super users and client access for the C/Side client user. 2-2
Chapter 2: Architecture Additionally, the client tier has specific connections for data transfer to the server tier and the database management component. These connections consist of the client, security approved access to the database components on the server tier, and administration access to the database management The Server Tier The server tier consists of the database management system and the native database for Microsoft Dynamics NAV 4.0/5.0 or the Microsoft SQL Server database. The existing application server or Navision Application Server (NAS) is an integration point to the Microsoft Dynamics NAV 4.0/5.0 application. Therefore it enables connection to Microsoft BizTalk Server, for example. The Navision Application Server represents an effort to achieve three-tier architecture benefits. However, it is limited to only one process at a time. Therefore, multiple Navision Application Servers are needed for many production environments. Microsoft Dynamics NAV 2009 Architecture The three-tier architecture is used in the Client/Server Distributed Data and Application system. With this architecture, in which the data and data manipulation layers are put on their own servers, the application logic is put on its own server, and the presentation and presentation logic are put on the client. Microsoft Dynamics NAV 2009 is designed according to the three-tier architecture model. This version puts the presentation logic/ layers (User Interface) on the client computer. It puts the Business logic on another layer available in the three-tier architecture called the service tier. It puts the data and data manipulation layers (DML) on the database server tier. The new three-tier architecture is multithreaded so that it can handle more than one process at a time. This architecture overcomes the intrinsic limitations of the two-tier architecture. 2-3
What s New for Microsoft Dynamics NAV 2009 Installation and Development The first level of the architecture is the client. The second tier is the multithreaded middle tier. This is the service tier that is based on Web services. The third tier is where the SQL Server database resides. FIGURE 2.2 THE MICROSOFT DYNAMICS NAV 2009 ARCHITECTURE Client Tier The Client Tier consists fo the following components: The Microsoft Business Framework (MBF) is located on the client tier. The Client is built on Microsoft Windows Forms (Winforms) technology for smart client applications. Microsoft Windows Forms is the set of classes in the.net Framework that enables the rapid development of powerful smart client applications. This logical form is a device independent representation of forms/ui parts and Web parts. 2-4
Chapter 2: Architecture The User Interface (UI) in the client determines the User Experience (UX) for the user. Content is delivered to the client from the data binder layer in MBF. It will be possible for end-users to customize their user experience. The Data Binder consists of the data binding layer which transports data, data state, and notifications about data from the underlying business logic to forms and controls in the display target client. it also has reverse functionality and transports input data, data state and notifications form the client to the underlying business logic. The Form Builder requests reading metadata for a form and building a logical form with data-binding, controls and behavior. The logical form provides the functionality that is shared by all display targets: data-binding, input-validation, navigation and possible business logic. UX Controls are necessary because the MBF client will not deliver all the Microsoft Dynamics NAV 2009 controls. Therefore, native controls, or managed win forms controls, are wrapped in a thin abstraction. This is the physical control. The Service Tier The Service Tier consists of five main components: The Microsoft Dynamics NAV Service The Application Code The metadata provider Business Web services Navision Class Library (NCL) Briefly, the Microsoft Dynamics NAVService functions as a hub that services requests coming from the new clients through Web services. The Web service is hosted by Internet Information Services (IIS). This is responsible for authentication (security) and thread management (performance). As soon as a request is received and validated, it is passed on to the relevant component, metadata provider, application, or reporting service for execution. When execution is complete, the executing component sends a response to the calling client. The Microsoft Dynamics NAV Service represents the started state of the system and provides an interface between the application and the clients. The service exposes its functionality as methods on a Web service hosted by IIS. Within the Web service framework, IIS handles authentication and thread management. Tracing and logging of starts is also performed by the NAV Service. 2-5
What s New for Microsoft Dynamics NAV 2009 Installation and Development Summary The Business Web Services Components purpose is to provide a platform by which developers can use the existing Navision development environment to build and customize Web services that are based on standard definitions such as SOAP and Windows Services Enhancements (WSE). Business Web Services functionality includes invocation of all related business logic that accompanies such operations on such objects. This includes but not limited to field validation, and assignment of Identification (ID's) from number series and other code associated with the entry and manipulation of data in Navision, such as data modify triggers like OnCreate, OnModify and OnDelete. The new three-tier multithreaded architecture model of Microsoft Dynamics NAV 2009 provides process benefits beyond the two-tier architecture model's capability. Understanding the Microsoft Dynamics NAV 2009 architecture enables IT professionals, system implementers and developers to install and customize Microsoft Dynamics NAV 2009 2-6
Chapter 2: Architecture Test Your Knowledge 1. The following are benfits of a three-tier architecture ( ) It can accomodate up to 20 users ( ) The business rules are located on the client tier ( ) Business logic rules and execution are isolated from the client. ( ) Process logic is postioned at the client tier for optimal access by the end user 2. What is the purpose of the External Component in the NAV 4.0 and 5.0 twotier architecture? ( ) It represents another application that inegrates by means of the Navision Application Server ( ) It represents remote access to the NAV 4.0 and 5.0 system ( ) It provides three tier functionality to the two teir architecture ( ) Is of no real use 3. The purpose of the Data Binder component in the NAV 2009 three-tier architecture does the following. (Select all that apply.) ( ) Determins the user experience for the end-user. ( ) Saves input data, data state and data notifications only on the client ( ) Sends data, and data state and notifications form the business logic ot the client and vice - versa ( ) Builds a logical form with data-binding, controls and behaviour. 2-7
What s New for Microsoft Dynamics NAV 2009 Installation and Development Quick Interaction: Lessons Learned Take a moment and write down three key points you have learned from this chapter: 1. 2. 3. 2-8
Chapter 2: Architecture Solutions Test Your Knowledge 1. The following are benfits of a three-tier architecture ( ) It can accomodate up to 20 users ( ) The business rules are located on the client tier ( ) Business logic rules and execution are isolated from the client. ( ) Process logic is postioned at the client tier for optimal access by the end user 2. What is the purpose of the External Component in the NAV 4.0 and 5.0 twotier architecture? ( ) It represents another application that inegrates by means of the Navision Application Server ( ) It represents remote access to the NAV 4.0 and 5.0 system ( ) It provides three tier functionality to the two teir architecture ( ) Is of no real use 3. The purpose of the Data Binder component in the NAV 2009 three-tier architecture does the following. (Select all that apply.) ( ) Determins the user experience for the end-user. ( ) Saves input data, data state and data notifications only on the client ( ) Sends data, and data state and notifications form the business logic ot the client and vice - versa ( ) Builds a logical form with data-binding, controls and behaviour. 2-9
What s New for Microsoft Dynamics NAV 2009 Installation and Development 2-10