Design Document for UPDATESCH

UPDATESCH

AUTHOR: Tim Baltzer

Functional Summary:

UPDATESCH calls SCHEDIT to incorporate scheduling directives into the master schedule.

Comments:

UPDATESCH will typically be called by a daemon in production.

Background:

AVHRR scheduling at EDC has historically been performed on the VAXH (VMS platform). However, this functionality is being moved to edcsgs4 (Unix platform) for several reasons: (1) DOMSAT scenes will now be acquired via ftp to the NOAA server or from the local DOMSAT satellite dish, (2) since LAS/ADAPS is no longer supported on VMS platforms it is very difficult to rebuild parts of the scheduling software on the VAX, (3) it is difficult to rebuild a Y2K compliant version of the software on the VAX because of the reason sited in (2), and (4) the software on the VAX is slow and contains known bugs. UPDATESCH will replace the functionality of the update.com command procedure existing on the VAX.

Requirements:

- Must process the following schedule directive files (much like the
  functionality on the vax):
        add          - scenes to be added to the schedule
        delete       - scenes listed by date to be deleted
        delsid       - scenes listed by scene id to be deleted
        modify       - scenes to be modified based on date range
        modsid       - scenes to be modified based on scene id
        modsta       - scenes to be modified based on date range
                       and station
        sort         - indicates the schedule is to be sorted

- Every time this routine updates the master schedule, it must push it
  over to the VAXH.
- Only one master schedule (will include DOMSAT and live scenes).  This
  master schedule will be maintained on edcsgs4 and pushed to VAXH.
- All schedule processing will be done on edcsgs4, the only scheduling
  file pushed to VAXH will be the master schedule.  No scheduling
  files will be pushed from VAXH to edcsgs4.

Scope/Limitations:

AUDITSCH, NOAAFTP (if acquiring DOMSAT scenes from the NOAA server),
and the acquisition software on the VAXH must all be executing
concurrently with UPDATESCH in order for it to function properly.

Overall design:

Algorithm:

  • for all directive files found do
  • end for
  • If (the master schedule was modified above)

  • Module Design(s):

    UPDATESCH:

    UPDATESCH calls SCHEDIT to incorporate scheduling directives into the master schedule.

    PARAMETERS:

    LOGFILE
    Log file. Name of the log file to write all processing messages to. If defaulted, "auditsch" within the ADAPSLOG directory will be used. LOGFILE will have a ;log extension.


    Module Design(s):

    UPDATESCH_DAEMON:

    UPDATESCH_DAEMON periodically calls UPDATESCH in a continuous loop to update the master schedule file.

    Testing criteria:

    - Test each of the schedule directive files to ensure the master
      schedule is updated appropriately.
    - Verify that the master schedule is being copied to the VAX,
      and old versions deleted.
    - Verify that back-up copies are being made on edcsgs4, and that
      old versions are deleted.
    - Test with duplicate directives (for example, make two "delete"
      directive files both specifying the deletion of the same scene).