The Microsoft Application Platform (MAP) is a technology stack used for the development and deployment of high-end enterprise-level business applications. It provides for both on-premise, cloud and hybrid-based deployments.
Layers of The Microsoft Application Platform
The Microsoft Application Platform is based on the following layers:
- Windows Server provides for the Infrastructure Layer and includes support for the core functionality needed by any application such as security, virtualisation and networking. Windows Azure provides the same for cloud-based deployments
- SQL Server provides the Database Layer and includes support for transactional database programming and data warehousing. SQL Azure provides for cloud deployments
- The Application Services Layer provides a fully functional middle tier and includes facilities such as message handling, workflow, state management and caching. This layer is covered by Microsoft .NET, Windows Server AppFabric and Microsoft BizTalk Server. For the Cloud, it is covered by Windows Azure Platform AppFabric
- The top layer is the Application Layer which encompasses a number of line-of-business applications from the Microsoft Dynamics suite and in particular Microsoft Dynamics CRM, Microsoft SharePoint and Microsoft Exchange. For the Cloud, there is Office 365 for Exchange and SharePoint and Microsoft Dynamics CRM Online.
Other Features of the Microsoft Application Platform
In addition to the application layers, there are supporting tools including Visual Studio for developers and Microsoft System Centre for system administrators to help monitor and manage the infrastructure, particularly relevant with on-premise and hybrid deployments.
Note that SQL Server is used to provide the data layer for all of the key components of MAP including BizTalk, SharePoint, CRM and any custom components.
MAP is not just designed to support the deployment of fixed packaged applications. One of its unique properties is that it provides the core functionality for custom applications without requiring development from scratch, for example:
- SharePoint can be customised by:
- Developing Web Parts that add new functionality to the web pages
- Workflows can be developed to manage the handling of documents and other content
- Event Receivers can add special processing when data changes
- Developing new page layouts that control how pages are edited in the content management system
- Microsoft CRM also has a programming interface that supports the development of custom:
- Data entities
- BizTalk and .NET are development environments and so directly support customisation
- Exchange also supports customisation through its Web Service and Message Filter facilities and the ability to change the appearance of Outlook Web Access
The above demonstrates the power of The Microsoft Application Platform. Windows provides the infrastructure. SQL Server provides the data platform. SharePoint provides the portal with authentication and security to manage permissions and BizTalk provides the message handling and workflow capabilities.
A full-blown enterprise-level system with minimal custom code.