Multi-tier application (Presentation Layer, Business Layer, and pluggable Data Repositories)