Prep for v0.3
AD - Allocation Disposition
ATM - Available Time Model
OSD - Observation Specification Disposition
To determine what time is available for the new proposals, I first have to build an Available Time Model (ATM). The ATM needs to know about pre-commited time from previous approved proposals (e.g., multi-semester, monitoring), sponsored time, maintenance periods, tests, and then also carry-over from the previous semester. I want to be able to import files to specify this information, inspect the imported information, and modify it on the fly as I need. The ATM also depends on the weather and the hardware sometimes (e.g., VLA configuration).
- As a scheduler I would like to define an available time model (ATM) for my facility so I know how much time is available for new Allocation Requests (ARs) to fill.
- As a scheduler I want to import a list of proposals from past semesters so the time can be filled in the ATM.
- As a VLA scheduler I want to know if the imported proposals are multi semester, tests, or from carry over projects in the UI so I can keep track of the different types of pre-committed time.
- As a GBT scheduler I want to block out time for monitoring projects so I can account for pre committed time that is fixed date accurately.
- As a scheduler I want to define maintenance periods for the facility such that the ATM will not schedule ARs in those blocks of time.
- As a scheduler I want to define maintenance periods by LST, duration, and date.
- As a scheduler I want the system to calculate time dependent weather coefficients so the prediction of available time is accurate.
- As a VLA scheduler I want to set the date ranges for each unique configuration so the system can calculate the time dependent weather coefficients.
- As a VLA scheduler I want to able to make late modifications to the date ranges easily so I don’t have to restart from scratch.
- As a VLA scheduler I want to able to make late modifications to the date ranges for configurations easily so I don’t have to delete all of my work.
- As a scheduler I want the modifications I make in date, etc to update the ATM accordingly.
- As a VLA scheduler I need the ATM to know what configurations are included in the Solicitation so I can be sure to schedule the appropriate ADs.
- As a scheduler I want the system to build the ATM.
- As a scheduler I want to inspect the ATM at any time.
- As a scheduler I want to modify the ATM manually at any point.
Small adjustments in the ATM or and OSD can have big consequences for the available time. As a scheduler, I explore how these changes can make an efficient schedule. As there are a lot of working parts though (many proposals, many inputs to the ATM), I like to return to previous states to assess the impact of a small adjustment. I would like to be able to save a version the schedule so I can return to it later if needed. I would like a detailed version history so I can inspect many different versions if I need to.
As a scheduler, I want to save different versions of the schedule and have a detailed version history, so that I can easily return to previous states to assess the impact of small adjustments in the ATM or OSD on the efficiency of the schedule.
Now that I have the ATM, I can start to assess how the new requests will fit into. I will need to modify the requests but I want to preserve the original request too. I likely will need to do detailed modifications but sometimes I only want to do shallow changes. Sometimes these changes will have profound impacts on the intent of the request so I want to make sure I can let the PI and the TAC know about these proposed changes. My main intent is to determine preliminary scheduling priorities and to make sure the information needed for the TAC is accurate.
- As a scheduler I want to copy the OSs associated within this Solicitation into Observation Specification Dispositions (OSDs) so I can modify the OSDs without modifying the OSs.
- As a scheduler I would like to inspect the ADs:OSDs associated with this Solicitation so I can decide if their information is accurate.
- As a scheduler I want to know which OSDs were System Generated vs User Generated.