The SchedulingApplication can be used to create and manage patterns ready for operation. Created patterns can be used to supply the facility with data.
Planning a schedule
- As an operator I want to remove a pattern from the planned schedule when it's no longer needed.
- As an operator I want to set the default pattern to make sure this pattern is executed when no other pattern fulfills its defined execution conditions.
- As an operator I want to define the repetition count for a scheduled pattern to ensure that the secondary experiments get enough beam.
- As an operator I want to define execution conditions for an alternate pattern to make sure the pattern is executed only when intended.
- As an operator I want to add an existing pattern to the planned schedule in order to use it for experiments.
- As an operator I want to filter patterns by appropriate criteria to find the required chain as quickly as possible.
- As an operator I want to supply the facility with the planned schedule.
Running schedule handling
- As an operator I want to monitor which schedule is running in the facility.
- As an operator I want to perform trims in a running schedule.
- As an operator I want to stop to a running schedule.
Create a new pattern / edit a pattern
- As an operator I want to create a new pattern from scratchto define simultaneous operation of the facility.
- As an operator I want to create a new pattern based on an existing in order to modify it to my needs.
Create a edit pattern
- As an operator I want to see a visualization of the pattern which visualizes the chain order and facility utilization in order to see the optimization potential.
- As an operator I want to rearrange the chains in a pattern to improve the utilization of the facility.
- As an operator I want to see the duration of level-maintaining beamout beam processes to estimate the potential for inserting texts.
- As an operator I want to fit a chain into a gap between already added chains to use the facility as efficient as possible.
- As an operator I want to add pre and post to a pattern to avoid hysteresis effects.
- As an operator I want to remove a chain from a pattern when it's no longer needed.
Create a new chain / edit a chain
- As an operator I want to create a new chain in order to supply devices with data for an experiment.
- As an operator I want to add an existing chain to a pattern to start with a set of tried and tested settings.
- As an operator I want to filter chains by appropriate criteria to find the required chain as quickly as possible.
- As an operator I want to select experiments from beamtime plannning to support chain creation.
- As an operator I want to edit chain user settings.
- As an operator I want to define missing global beam settings for a chain to make the chain computable.
- As an operator I want to define the beam line to define the sequence of particle transfers.
- As an operator I want to define beam structure defining settings for a distinct template chain selection.
- As a machine physicist I want to ensure that operators perform trims based on appropriate optic settings.
- As an operator I want to select optic presets for each super particle transfer before the chain is scheduled.
Requirements out of scope
This is a collection of requirements which are NOT part of the scheduling application. They may be implemented in other applications.
- As a machine physicist I want to create a beam processes which can be used to create template chains.
- As a machine physicist I want to delete no longer needed beam processes.
- As a machine physicist I want to create a template chain which can be used to create timed and init chains.
- As a machine physicist I want to delete a template chain which can be used to create timed and init chains.
- As a machine physicist I want to set settings for beam processes and template chains.
- As a Cryring commissioning engineer I want to set settings for the currently active pattern.
- As an operator I want to display one of the previous schedules to use them as a template for the current schedule.
Create a beamtime schedule
- As a beamtime coordinator I want to define an experiment including its global beam parameters.
- As a beamtime coordinator I want to define in which time frame an experiment should run.
- As a beamtime coordinator I want to define which experiments are processed in parallel.
- As a beamtime coordinator I want to define which experiment is the main experiment.
- As a beamtime coordinator I want to define the order of parallel experiments.
Topics which haven't been clarified so far.
There are currently different approaches to beamline selection. Based on an existing target (HESR) and source selection the user can pick one of 6 beamlines (short way without HEBT has been omitted). Link to prototype
Development specification (work in progress)
A clickdummy prototype used as a base for discussion during conceptual design of the application. The scope of this prototype is not the first dryrun but the final release of the application.
The current iteration can be found here
(please copy link and paste in new tab).
Alternate version (v7a)
(last update 27.04.17)
(last update 27.04.17)
(last update 27.04.17)
Potentially overlapping chains
(last update 27.04.17)
Contexts in lists
Shift between monitoring and scheduling
Prerequirements for development
The following aspects must be ready before the related features can be added to scheduling application.
- Automatic creation of PRE and POST chains for patterns
- Mark a pattern as in preparation
- mark a pattern as 'planned for supply'
- Pattern groups
- Repetition count of a pattern
- Execution conditions
- Several context metadata
- Graph containing facility structure data (paeticle transfer graph)
- Transfer line defintions
- Backward propragation when performing a trim
- Beamout computation for patterns. This includes a meachnism to find out the 'idle time' between leveling up and down.
Development milestones as of 21.02.2017
- Create/edit pattern (containing a single chain)
- Create chain
- Select beamline for chain
- Define beam process structure defining user settings
- Define missing top-level parameters
- Display list of chains ready to add to pattern
- Place chain in pattern
- Remove chain from pattern
- Display planned patterns
- Remove pattern from planned schedule
- Supply facility
- Define execution conditions
- Set pattern repetition count
- Set pattern type
- Monitoring a schedule
- Pre and post
- Create chain from library
- Add more than one chain to a pattern
- Rearrange chains
- Duplicate a pattern
- Duplicate a chain
- Set experiment type (main, secondary)
- Set non-timing relevant settings
- Create chain based on beamtime planning
- Create pattern from library
Network folder for documents exchange
Issue tracking in Bugzilla
- 21 Feb 2017