MSDN Architecture Center

Architecture

News

Follow us!

Responsible

César de la Torre
Architect Advisor – Microsoft

Architecture Journal

Architecture Newsletter

Architecture Portal

FAQ

DDD NLayered .NET 4.0 Architecture Guide

Guide/eBook - 1st Edition
PDF y Ebook Readers (Kindle .mobi y epub)  

Free download of the 'Domain Oriented NLayered .NET 4.0 Architecture Guide'

Formats:

DDD_NLayered_NET40_Architecture_Guide_Microsoft.zip

Architecture Sample Application (NLayerApp V1 .0)
.NET4 Core, Windows Server AppFabric and Windows Azure flavors | Silverlight, WPF, ASP.NET MVC clients

 

 

• Download the Sample Application (Published at CODEPLEX)

http://microsoftnlayerapp.codeplex.com/

 

• Global technical presentation of the DDD Architecture

DDD_NLayered_Architecture_Presentation.zip(16'1 MB)

 

• Feedback

Here you can see feedback from other architects and developers

 

• Objectives

Microsoft Spain(Microsoft Ibérica) has noticed, in multiple customers and partners, the need to have a “.NET Base Architecture Guide” that can serve as an outline for designing and implementing complex and mission critical enterprise .NET applications with long term life and long evolution. This frame of common work defines a clear path to the design and implementation of business applications of great importance with a considerable volume of business logic. Following these guidelines offers important benefits regarding quality, stability, and especially, an improvement of future maintenance of the application, due to the loose-coupling between components, homogeneity, and similarities of the different developments that will be done based on these guidelines.

To see higher resolution, click over the image

To see higher resolution, click over the image

To see higher resolution, click over the image

Microsoft Spain defines this ‘Architecture Guide’ as a pattern and base model; however, this guide could be extended by any company so it fits specific requirements. This guide is only the first step of a staircase, an initial asset that could be customized and modified by each organization that adopts it, focusing on the specific needs, adapting it and adding specific functionality according to the target needs.

Related Technologies

Implementation of typical DDD (Domain Driven Design) Architecture and desing patterns using the following technologies:

Visual Studio 2010, .NET 4.0, Entity Framework 4.0, UNITY 2.0, Silverlight 4.0, WPF 4.0, ASP.NET MVC, PEX&MOLES, Windows Server AppFabric, Cache, Windows Azure, SQL Server and SQL Azure.

What is DDD (Domain Driven Design)?

We're talking about complex and long life apps…, all their business rules (Domain logic) are points that, in most of the cases, need to be changed quite a lot during the app life. So it is critical to be able to change the app and test it in an easy way and independently from infrastructure areas (technology, data stores, data access technolgies, O/RMs, etc.). Because of that, it is important to have the Domain/Business Layer (domain logic, entities, etc.) decoupled from the other layers. Having said so, in our opinion, the best actual architectural style that fits with those requirements is a Domain Oriented N-Layered Architecture which is part of DDD (Domain Driven Design). And this Architecture Guidance is showing a way to implement a Domain Oriented N-Layered Architecture. But, and this is extremely important, DDD is on the other hand, much more than just a proposed Architecture and patterns. DDD is a way to build apps, a way for the team, to work in projects. According to DDD, the project team should work in a specific way, should have direct communication with the Domain Experts (the customer, in many cases). The development team should use an ‘Ubiquitous Language’ which has to be the same language/terms used by the domain experts, etc. But, in our guidance, we are not covering all those ways of working, because it is process, kind of ALM, so, if you really want to “Do DDD”, you’ll need to read Eric-Evans' book (‘Domain-Driven Design: Tackling Complexity in the Heart of Software’) or any other DDD book where they talk about the DDD process, about the project and the team, not just the Architecture and patterns. Architecture and patterns are only a small part of DDD, but, in our case, those are the points we are showing here (DDD architecture patterns and mapping it all to a specific implementation based on Microsoft technology). But we want to highlight that DDD is much more than Architecture and design patterns.

Architecture available in Spanish
Architecture available in English

 

Distinguished collaborator

Unai Zorrilla has been developing software during more than 10 years as independent consultant and in several companies, performing architecture and development tasks, usually on .NET platform.He is actually working as Principal Architect and developer-lead at PlainConcepts, where he is also a co-founder.

Architecture Newsletter (Spain)

In order to know events/conferences especially made for Software Architects here.

Subscribe to our Architects Newsletter (Spain)

 

 

 

Blogs

César de la Torre – Architect Advisor – Microsoft
https://blogs.msdn.com/cesardelatorre/rss.xml

Unai Zorrilla – Development Lead – Plain-Concepts
http://geeks.ms/blogs/unai/

Javier Calvarro – Software Architect
http://geeks.ms/blogs/jcalvarro/

Roberto Gonzalez – Software Architect - Renacimiento
http://blogs.renacimiento.com/rgon/

Israel Garcia Mesa (Microsoft)
https://blogs.technet.com/israelg/

Ricardo Minguez Pablos (RIDO)
https://Blogs.msdn.com/rido

Pierre Milet LLobet
https://blogs.msdn.com/pierreml/

Miguel Angel Ramos - Microsoft
https://blogs.msdn.com/marblogging/

News

Accelerate the initial development of DDD applications.
Radarc provides a DSL and a specific code generator for DDD application. It allows modeling and complete code generation to the DDD N-Layered .NET 4.0 architecture.

Technical Articles

Model-Driven SOA con“Oslo”
Service-oriented architecture (SOA) must evolve toward a more agile design, development, and deployment process. Most of all, it must close the gap be... More...