Layer Dependencies
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 intended dependency direction is inward: adapters depend on application services; application services depend on domain types and ports; infrastructure implements ports. Because all layers compile in one project, namespace discipline rather than project-level compilation barriers enforces this shape.
Notable coupling
Application projections reference infrastructure audit and timeline entities, so the boundary is not fully clean. Concrete command/query services are resolved directly; no mediator abstraction was verified. Domain repositories expose queryables alongside purpose-built methods, allowing application queries to shape persistence reads.
Consequence
The architecture is practical for a single service but does not mechanically prevent application-to-infrastructure coupling or arbitrary query construction. Refactoring should preserve behavior before splitting projects or narrowing ports.
Source References
microservices/src/attendance-service/Application/Common/Abstractions.csmicroservices/src/attendance-service/Domain/Repositories.csmicroservices/src/attendance-service/Infrastructure/Persistence.csmicroservices/src/attendance-service/Api/AttendanceShiftPolicyEndpoints.cs
Related Articles
See Also
Keywords
- Workforce scheduling
- Shift policy
- Attendance integration
Revision Information
- Status: Draft
- Last reviewed: 2026-07-20
- Next review: 2026-10-20