In other words, why should you use a business logic layer, data access layer, etc. I'm fairly new to ASP.NET programming. I've worked on a .net client/server app in the past however. What is the theory behind using a multi tier design? Also, if there are any resources/links you may have for learnin this, I would appreciate it!