Layered Applications: Let's Talk About Business

 I  remember a time when applications were just end to end programs, collections of lines of code with no distinction between presentation, domain logic and data access. Such kind of applications is remembered as spaghetti code

Fortunately nowadays enterprise applications are made in a better organized way: Layered Architectures helped reach that goal, separating in a clear and clean way the presentation logic from the domain logic, and at the same time, from the data-access code as well

Some month ago we started commenting a webcast series on Architecting Modern Applications, hosted by PhD Joe Hummel. This time is the turn of the Business Layer. In his fifth webcast, Hummel starts by revisiting the MVC pattern his series is about, showing where a business tier fits in the holistic picture

Then, he explains the Business Layer in depth, the need for it and the expected benefits (no, I don't gonna tell you: I want to encourage you to watch the webcast). But wait, because there's more

It follows an examination of the business tier in three case studies, and it's amazing how different teams implement a same idea in different ways, emphasizing different features in each case. Hummel explains each project background, showing how the application executes, some implemented code samples and, the most important, explaining the pros and contras of each approach

I strongly recommend you to check the three cases and think what you would take of everyone

The webcast finishes with a revealing discussion about Application Frameworks. Because developing enterprise applications is hard and critical issues arise, frameworks aid to speed development up, reaching higher production rates

Particularly two wanted cases are covered

  • Object / Relational Mappers, those are, frameworks to solve the impedance mismatch between business objects and relational tables. Here you'll know some of available ones for the .NET platform
  • Rocky Lhotka's Component-based, Scalable, Logical Architecture (CSLA), a very famous framework, used in numberous world class projects, available for different versions of .NET framework and other platforms, and analysis material of Lhotka's Business Objects books series

Surely we will devote some space to discuss a little further both and other kinds of application frameworks. In the meanwhile c'mon, join us and let's watch Hummel's

MSDN Webcast: Architecting Desktop Applications with 2.0 (Part 05 of 15): Designing the Business Tier