How should my team decide between 3-tier and 2-tier architectures?
        Posted  
        
            by j0rd4n
        on Stack Overflow
        
        See other posts from Stack Overflow
        
            or by j0rd4n
        
        
        
        Published on 2010-04-27T16:04:41Z
        Indexed on 
            2010/04/28
            23:47 UTC
        
        
        Read the original article
        Hit count: 288
        
My team is discussing the future direction we take our projects. Half the team believes in a pure 3-tier architecture while the other half favors a 2-tier architecture.
Project Assumptions:
- Enterprise business applications
 - Business logic needed between user and database
 - Data validation necessary
 - Service-oriented (prefer RESTful services)
 - Multi-year maintenance plan
 - Support hundreds of users
 
3-tier Team Favors:
- Persistant layer <==> Domain layer <==> UI layer
 - Service boundary between at least persistant layer and domain layer. Domain layer might have service boundary between it.
 - Translations between each layer (clean DTO separation)
 - Hand roll persistance unless we can find creative yet elegant automation
 
2-tier Team Favors:
- Entity Framework + WCF Data Service layer <==> UI layer
 - Business logic kept in WCF Data Service interceptors
 - Minimal translation between layers - favor faster coding
 
So that's the high-level argument. What considerations should we take into account? What experiences have you had with either approach?
© Stack Overflow or respective owner