Middleware and n-tier application exercices.