Skip to main content

Application Layer

Audience​

Developers, QA engineers, support engineers, security engineers, solution architects, and implementation partners.

Reference Content​

This page records source-verified technical behavior and boundaries for the workforce-scheduling capability.

Summary​

The application layer is implemented with scoped concrete services. Command methods orchestrate validation, repositories, aggregates, the unit of work, audit, and timeline. Query methods compose tenant-filtered read models. The effective-policy resolver is a separate application service consumed by attendance workflows.

Result model​

Operations return a typed result with success, validation, not-found, conflict, forbidden, and general error categories. API adapters translate those categories into transport responses. Domain exceptions are caught by commands and returned as validation results.

Transaction shape​

Some writes save the aggregate first to obtain its identifier, then append audit and timeline records and save again. Default-policy changes can also require a preliminary save to demote the former default before promoting another record. These multi-save workflows are not proven atomic as one application transaction.

Coupling​

Queries use repository-provided queryables. Audit and timeline projections know infrastructure entity types. No mediator, pipeline behaviors, or standalone application project boundary was verified.

Source References​

  • microservices/src/attendance-service/Application/Common/Abstractions.cs
  • microservices/src/attendance-service/Application/Common/Cqrs.cs
  • microservices/src/attendance-service/Application/Services/ShiftPolicyCommands.cs
  • microservices/src/attendance-service/Application/Services/ShiftPolicyQueries.cs

See Also​

Keywords​

  • Workforce scheduling
  • Shift policy
  • Attendance integration

Revision Information​

  • Status: Draft
  • Last reviewed: 2026-07-20
  • Next review: 2026-10-20