5. Client User interface Layer ORM Test Fixture DTO / ViewModel Message/Event ASP.NET, ASP.NET MVC, WPF... Anti Corruption Layer Application Services Domain Services Domain Model Direction of Flow (DIP) nHibernate, LLBLGEN, Linq To Sql, XPO... Application Core Database Continous Integration Server Tests Infrastructure Message Bus External Systems TFS, Team City, Cruise Control... NServiceBus, MassTransit, proprietary...
22. Read my blog http://iridescence.no Follow me on Twitter http://twitter.com/fkalseth THANK YOU STUNNED SILENCE. APPLAUSE? FOR STAYING AWAKE! Fredrik Kalseth, Senior Consultant at Capgemini in Stavanger
Editor's Notes
Emphasizes use of interfaces for behavior contractsExternalization of infrastructureDomain model – state and behaviorDomain services – typically interfaces for repositories etc.Application services – orchestrate the finer grained domain services. Concerns such as transactionality and persistence are typically dealt with by application services. ”Task services”Outer layer reserved for things that change often. UI, implementations of infrastructure stuff (Repository) etc.