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 the system to determine the ATM based on the precommitted time and weather constraints.
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 scheduler I want to import a list of proposals from past semesters so the time can be filled in the ATM.
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 the system to calculate time dependent weather coefficients so the prediction of available time is accurate.
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 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 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 scheduler I want to define maintenance periods by LST, duration, and date.
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 scheduler I want the modifications I make in date, etc to update the ATM accordingly.
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.
To inspect the ATM, it is most useful to use a pressure plot, which is essentially a histogram of number of the hours requested by the OSDs per time. This tells me how many hours in a certain time bin is being requested or is available. The amount available is many inputs, including weather, frequency, and precommitted time. The amount requested depends on the OSDs of the new proposals. I need to balance the new request against what is available. To do so, I need to really understand the details of both the available time and the requested time. It would also be nice to have a calendar-like view of the ATM, as some of the pre committed time is fixed date.
As a scheduler I want the system to build the Pressure Plots so I can understand the available and requested time demands.
As a scheduler I want to inspect the ATM so I can check it is correct.
As a scheduler I want to modify the ATM manually at any point so it can be accurate.
As a scheduler I want to be able to interact with the visual tools so I can identify ADs:OSDs.
As a scheduler I would like to generate a Pressure Plot to represent the ATM so I have a holistic view of the available Time.
As a scheduler I want the visual tools I use to inspect the ATM to update when I change the ATM so they will be correct.
As a scheduler I want an easy way to modify an OSD I have identified in the pressure plot so I don't waste time tracking it down.
As a scheduler I want to inspect the ATM in detail so I understand where it may be under or over subscribed.
As a scheduler I want a way to identify underutilized LST/GST ranges so I can modify SPs to efficiently fill those ranges.
As a scheduler I want a view that is like a calendar so I can review specific days for fixed date observations of pre-committed time.
As a scheduler I want a way to identify overfilled LST/GST ranges so I can modify SPs as necessary.
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 would like version control on my work so I can easily access different versions of the schedule I am building.
As a scheduler, I want to be able to give the versions a useful name so I can keep track of my work versus other schedulers changes.
Now that I have the ATM, I can start to assess how the new requests will fit into it. I will need to modify the requests but I want to preserve the original request too. I likely will need to do detailed modifications, like to the sources, resources, or requested time, but sometimes I only want to do broad changes, such as total time. 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 each Observation Specification Disposition to have a Scheduling Priority.
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 would like to modify ADs:OSDs as needed so I can update their information.
As a scheduler I want to see the SRP’s review of about the proposal.
As a scheduler I want to set a “Manual Construction Required” flag per OSD so the proposer will know they have to regenerate their OSs before observing.
As a scheduler I want an OSD to have one Scheduling Priorities (SP) of either A, B, C, F, and N.
As a scheduler I want to set manually the Scheduling Priority (SP) for OSDs.
As a scheduler I want to know which OSDs were System Generated vs User Generated.
As a scheduler I want to modify the total duration, repeat count, and LST range of an OSD.**
As a scheduler I want to see the Science Comments to PI, Data Management Comments to PI, Technical Comments to the PI and all of the equivalent Internal Comments.
As a scheduler I want to know which OSDs need to be modified.
As a scheduler I want to update the information in the Science Target List associated with a OSD***.
As a scheduler I want to know the Scientific Merit Metric of the Proposal.
As a scheduler I want to change the SP of an OSD between any defined in the system.
As a scheduler I want to enter Internal Comments for the TAC on each AD so I can keep notes about my process.
As a scheduler I want to be able to filter on the list of ADs:OSDs so I can easily inspect them.
As a scheduler I want to enter TAC Comments to the PI for each AD so I can prepare for the TAC.
As a scheduler I want to bulk edit the SP of a selected set of OSDs.
As a scheduler I want to be able to filter by Proposal ID.
There are some tasks that would be useful if they were automated, as it would take me too long to compile the data by hand. For example, I need to identify source conflicts based on a variety of criteria. I also want OSDs associated with external facilities to be handled differently than OSDs of internal facilities. Finally, I want to use algorithms to help efficiently assign scheduling priorities to OSDs as it may well enough for most cases. That frees up time for me to concentrate on the edge cases and optimization. It is important that I can control which OSDs are having their SPs modified, so I would like a way to "lock" out changes temporarily so neither the system nor a manual edit can be applied until it is unlocked.
As a scheduler I want to identify Source Conflicts in the OSDs so I can make a note of them for the TAC.
As a scheduler I want ADs/OSDs that request multi semester observations to be clearly identified in the UI so I can understand how they impact future semesters.
As a scheduler I want ADs that have external facilities to be automatically marked with N so they won't be accounted for in the scheduling.
As a scheduler I want the system to generate SPs for OSDs because the algorithm may do the majority of the cases sufficiently.
As a scheduler I want to be able to initiate process multiple times so I can iterate on the assigned SPs given a ATM.
As a scheduler I want OSDs with SPs of N to not be modified by the algorithm because these OSDs will not be scheduled.
As a scheduler I want OSDs with SPs that are locked to not be modified by the algorithm so the SPs of those OSDs do not change.
As a scheduler I want OSDs with SPs of F to not be modified by the algorithm because these are fixed dates.
As a VLA scheduler I want the automated algorithm to be the Prioritizer.
As a scheduler I want to be able to modify a system generated SP because I know better.
Once I am satisfied assigning scheduling priorities and providing comments for the TAC, I need to generate some reports for the TAC. I need both a summary of the ATM and the OSDs for my facility as well as an overview of the proposals/OSDs. I want these in different formats and I will both want a way to interact with the information associated with the Proposals in an efficient way when I'm at the TAC. I will likely do a lot of filtering by different proposal/OSD attributes. I also will want a way to generate a printed view of these summaries/reports because the TAC likes to look at pdfs too.
As a scheduler I want to create a Facility Report so I can provide a narrative about the scheduling issues of my Facility which includes an LST (orGST) pressure plot.
As a scheduler I want to create a Proposal Summary so there is a list of relevant information for each proposal which provides context for the TAC meeting discussion