Program and batch scheduling
Programs are represented separately from their scheduled batches, allowing the organization to manage upcoming sessions without duplicating program information.
The scheduling model supports recurring upcoming sessions while keeping the actual session dates explicit and manageable.