furniture-service/docs/application/use-case-boundaries.md
2026-03-09 11:57:46 -06:00

996 B

Furniture Service Use-Case Boundaries

Orchestration Responsibilities

  • Application use cases orchestrate domain workflows.
  • Use cases depend on DAL-facing ports, not persistence implementations.
  • Use cases consume BuildingBlock capability contracts through adapter and port boundaries.
  • Transport handlers map to use-case contracts and do not own orchestration logic.
  • Demo/runtime aliases (demo-context, FURN-*, PROD-FURN-*) are normalized at use-case orchestration before port calls.

Current Skeleton

  • IGetFurnitureAvailabilityUseCase: orchestration boundary contract.
  • GetFurnitureAvailabilityUseCase: orchestration implementation.
  • IFurnitureAvailabilityContractAdapter: maps service contracts to inventory and catalog contracts.
  • ICatalogProductReadPort: catalog capability read boundary.
  • IFurnitureAvailabilityReadPort: inventory capability read boundary.
  • IFurnitureAvailabilityGrpcContractAdapter: gRPC translation boundary for service contracts.