Have a peak at:
The 40 or so tutorials listed here progressively build up a logical
3-tier architecture (i.e., the three tiers are logically seperated out within a single solution). In a real-world solution, you'd typically implement each tier as a seperate class library, enabling a physical
3-tier architecture if desired.
The tutorials implement the business logic layer as a strongly-typed dataset, rather than as a set of custom business objects.