home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-387-Vol-3of3.iso / c / civil-ab.zip / GANTT.ZIP / SCHEDULE.DOC < prev    next >
Text File  |  1988-10-18  |  163KB  |  5,017 lines

  1.  
  2.  
  3.  
  4.  
  5.  
  6.  
  7.  
  8.  
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15.  
  16.  
  17.  
  18.  
  19.  
  20.  
  21.  
  22.  
  23.  
  24.  
  25.         ▀▀▀▀▀▀▀    ▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀▀▀▀▀
  26.          ▀▀▀▀▀      ▀▀▀▀▀    ▀▀▀▀▀   ▀▀▀▀▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀▀▀▀▀
  27.           ▀▀▀        ▀▀▀      ▀▀▀       ▀▀▀▀▀        ▀▀▀▀▀
  28.            ▀▀▀▀▀▀▀▀▀▀▀▀        ▀         ▀▀▀          ▀▀▀
  29.            ▀▀▀▀▀▀▀▀▀▀▀▀        ▀          ▀            ▀
  30.           ▀▀▀        ▀▀▀      ▀▀▀        ▀▀▀          ▀▀▀
  31.          ▀▀▀▀▀      ▀▀▀▀▀    ▀▀▀▀▀      ▀▀▀▀▀        ▀▀▀▀▀
  32.         ▀▀▀▀▀▀▀    ▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀    ▀▀▀▀▀▀▀      ▀▀▀▀▀▀▀
  33.                           PERSONAL SOFTWARE
  34.  
  35.  
  36.  
  37.      SCHEDULE
  38.      Shareware Version 1.2
  39.      (C) Copyright 1984,88 Donald C. Hitt
  40.  
  41.      HITT Personal Software Company
  42.  
  43.      13 Rosalind Road
  44.      Poughkeepsie, N.Y. 12601
  45.      914-471-5354
  46.  
  47.  
  48.      10-18-1988
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  
  61.  
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.                                     SCHEDULE
  70.  
  71.  
  72.  
  73.      PROGRAM LICENSE AGREEMENT
  74.  
  75.  
  76.  
  77.  
  78.  
  79.      SCHEDULE Shareware version 1.2 is the property of
  80.  
  81.            HITT Personal Software Company
  82.            13 Rosalind Road
  83.            Poughkeepsie, New York 12601
  84.  
  85.      Using this program indicates your acceptance of the terms, conditions,
  86.      and limitations for  the use of this program. If you do not agree with
  87.      these conditions,  you should destroy the material immediately without
  88.      attempting to use or copy it.
  89.  
  90.  
  91.  
  92.      LICENSE
  93.  
  94.  
  95.      You may
  96.  
  97.      1.  Use the program for educational or personal purposes.
  98.  
  99.      2.  Copy the program for backup purposes in support of your use of the
  100.          program.
  101.  
  102.      3.  Copy  the program for  another party  if the other party agrees to
  103.          accept the terms and conditions of this agreement.
  104.  
  105.      4.  Terminate the  license at any time by  destroying  or transferring
  106.          the program along with all copies.
  107.  
  108.      You must
  109.  
  110.      1.  Reproduce  and  include  the  copyright   notice  on  all  copies,
  111.          modifications, or portions of this program.
  112.  
  113.      2.  Purchase the commercial version of the program from "HITT Personal
  114.          Software Company"  if  you are using  the program  for  commercial
  115.          applications.
  116.  
  117.      You understand that
  118.  
  119.      1.  There is no warranty.
  120.  
  121.      2.  There is no  oblication  on  the part of  "HITT  Personal Software
  122.          Company" to provide  any level of service for the  free  Shareware
  123.          version.
  124.  
  125.      3.  The program has  a limited capacity  designed  to  satisfy student
  126.          homework problems.
  127.  
  128.  
  129.      HITT Personal Software          Page ii
  130.  
  131.  
  132.  
  133.  
  134.  
  135.                                     SCHEDULE
  136.  
  137.  
  138.  
  139.      ABSTRACT
  140.  
  141.  
  142.  
  143.  
  144.  
  145.      SCHEDULE provides a system which allows task  and resource modeling to
  146.      be  done independently from start/end  times. CPM and  PERT techniques
  147.      are used to establish scheduling priorities.  The AON grid is  created
  148.      automatically at the time the schedule is processed.
  149.  
  150.      A  rich assortment of  resource types are provided to allow  realistic
  151.      modeling. The program works with resource limits to provide a schedule
  152.      which  is  consistent  with  the  constraints  and  is  based  on  the
  153.      priorities established by the requested completion times.
  154.  
  155.      The program control allows for background processing of the scheduling
  156.      and  printing while providing keyboard and  display  services  in  the
  157.      foreground.
  158.  
  159.  
  160.  
  161.  
  162.  
  163.  
  164.  
  165.  
  166.  
  167.  
  168.  
  169.  
  170.  
  171.  
  172.  
  173.  
  174.  
  175.  
  176.  
  177.  
  178.  
  179.  
  180.  
  181.  
  182.  
  183.  
  184.  
  185.  
  186.  
  187.  
  188.  
  189.  
  190.  
  191.  
  192.  
  193.  
  194.  
  195.      HITT Personal Software         Page iii
  196.  
  197.  
  198.  
  199.  
  200.  
  201.                                     SCHEDULE
  202.  
  203.  
  204.  
  205.      PREFACE
  206.  
  207.  
  208.  
  209.  
  210.  
  211.      The  first  version  of  "SCHEDULE"  was  developed in the  1960's  to
  212.      optimize the computer resources  of a  multiple  computer installation
  213.      while prioritizing the schedule based  on requested completion  times.
  214.      Those principles have  been  applied to this  system to provide a real
  215.      time interactive resource scheduling system.
  216.  
  217.      The principles of  CRITICAL PATH SCHEDULING are used in an environment
  218.      of  resource constraints.  This system generates  its  own matrix grid
  219.      based on the requested end results.
  220.  
  221.      This system provides REAL TIME task coordination and dispatching while
  222.      providing  INTERACTIVE  updating,  status  inquiries,  and   new   job
  223.      scheduling.
  224.  
  225.      These features  allow the  program to be used effeciently  in a  broad
  226.      range of applications.
  227.  
  228.      o   Project  managers   will   be   better  able  to  control  project
  229.          interdependincys.
  230.  
  231.      o   Managers of small businesses  will  discover improvements in their
  232.          ability to predict  when  a  job  will  be completed  as  well  as
  233.          improvements in their resource utilization.
  234.  
  235.      o   Planners will find real answers to  difficult management questions
  236.          concerning new resource assumptions or changes during the project.
  237.  
  238.  
  239.  
  240.  
  241.  
  242.  
  243.  
  244.  
  245.  
  246.  
  247.  
  248.  
  249.  
  250.  
  251.  
  252.  
  253.  
  254.  
  255.  
  256.  
  257.  
  258.  
  259.  
  260.  
  261.      HITT Personal Software          Page iv
  262.  
  263.  
  264.  
  265.  
  266.  
  267.                                     SCHEDULE
  268.  
  269.  
  270.  
  271.      USING THIS DOCUMENT
  272.  
  273.  
  274.      The following is a general outline of the document.
  275.  
  276.      Chapters 1,  2, and 3 contains information  of general interest but is
  277.      not required to use the program.
  278.  
  279.      Chapters 4,  and  5  is not required  if  you know your system has the
  280.      required  features and you know how  to backup  your disks  using  DOS
  281.      commands.
  282.  
  283.      Chapters 6, 7, 8, 9, and 10 describe the operation of the program.
  284.  
  285.      Chapters  11 defines the special types  of resources supported  by the
  286.      program.  When you  start making  complex  task models this chapter is
  287.      required reading.
  288.  
  289.      Chapter 12, 13,  and 14 describe three types of applications which you
  290.      may wish to read. Also the STATION project is described in appendix B.
  291.  
  292.      Chapter 15 is  a collection  of  ideas on ways to use the program. You
  293.      should review it to give yourself ideas.
  294.  
  295.      Chapter 16  is a list  of ways that others have had trouble. Review it
  296.      if you think the  program is  acting strangely. It is required reading
  297.      before getting serious.
  298.  
  299.      Chapter 17, and  18 is reference material which describes  the command
  300.      language and the  program  exit codes.  This is useful when setting up
  301.      automatic batch procedures.
  302.  
  303.      Appendix  A contains  an explanation  of  the  messages  which  may be
  304.      produced by the program.
  305.  
  306.      Appendix B is the detailed data used with the STATION project.
  307.  
  308.  
  309.  
  310.  
  311.  
  312.  
  313.  
  314.  
  315.  
  316.  
  317.  
  318.  
  319.  
  320.  
  321.  
  322.  
  323.  
  324.  
  325.  
  326.  
  327.      HITT Personal Software          Page v
  328.  
  329.  
  330.  
  331.  
  332.  
  333.                                     SCHEDULE
  334.  
  335.  
  336.  
  337.      FEATURES
  338.  
  339.  
  340.      Editing functions
  341.  
  342.      o   Full frame field editing
  343.      o   Insert
  344.      o   Delete
  345.      o   Cursor control
  346.      o   Field definition
  347.  
  348.      Overlapped operation
  349.  
  350.      o   Foreground entry/display
  351.      o   Background processing
  352.      o   Background (overlapped) printouts
  353.      o   Continually active task display
  354.  
  355.      Multiple Job Mode
  356.  
  357.      o   Task definitions used for multiple jobs
  358.      o   Resources shared across jobs
  359.      o   Real time job additions/changes/control
  360.  
  361.      Calendar/time controls
  362.  
  363.      o   Calendars specified by resource
  364.      o   Two time spans per day
  365.      o   Calculations to the minute
  366.  
  367.      Five resource types
  368.  
  369.      o   Inventory (use once)
  370.      o   Capital equipment (use repeatedly)
  371.      o   Labor (restricted calendar/time)
  372.      o   Job (associated with individual jobs)
  373.      o   Buffer (can be added as well as deleted)
  374.  
  375.      Automatic network grid generation
  376.  
  377.      o   Based on task prerequisites.
  378.  
  379.      Built in Data Base Management
  380.  
  381.      o   Access by name
  382.      o   Automatic additions and deletion
  383.      o   ASCII format (editor compatible)
  384.  
  385.      Command Language
  386.  
  387.      o   Disk data used as keyboard input
  388.      o   Direct display
  389.      o   Conditional testing of screen data
  390.  
  391.  
  392.  
  393.      HITT Personal Software          Page vi
  394.  
  395.  
  396.  
  397.  
  398.  
  399.                                     SCHEDULE
  400.  
  401.  
  402.  
  403.      TABLE OF CONTENTS
  404.  
  405.  
  406.  
  407.  
  408.  
  409.      PROGRAM LICENSE AGREEMENT . . . . . . . . . . . . . . . . . . . . . II
  410.      LICENSE . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . ii
  411.  
  412.      Abstract  . . . . . . . . . . . . . . . . . . . . . . . . . . . .  iii
  413.  
  414.      Preface . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . iv
  415.      Using this document . . . . . . . . . . . . . . . . . . . . . . . .  v
  416.      Features  . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vi
  417.  
  418.      Chapter 1. About the Author . . . . . . . . . . . . . . . . . . . .  1
  419.  
  420.      Chapter 2. CPM and PERT . . . . . . . . . . . . . . . . . . . . . .  2
  421.        A discussion of CPM and PERT  . . . . . . . . . . . . . . . . . .  2
  422.          PERT, CPM, and MAP  . . . . . . . . . . . . . . . . . . . . . .  2
  423.          Arrow and precedence methods  . . . . . . . . . . . . . . . . .  3
  424.          Definitions for Project, Job, Task, and Activities  . . . . . .  3
  425.          Time considerations . . . . . . . . . . . . . . . . . . . . . .  4
  426.          Resource types  . . . . . . . . . . . . . . . . . . . . . . . .  4
  427.          Decision making . . . . . . . . . . . . . . . . . . . . . . . .  5
  428.        Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . .  6
  429.  
  430.      Chapter 3. Concepts of scheduling . . . . . . . . . . . . . . . . .  7
  431.  
  432.      Chapter 4. Minimum system requirements  . . . . . . . . . . . . . .  8
  433.  
  434.      Chapter 5. Preparing your diskette  . . . . . . . . . . . . . . . .  9
  435.  
  436.      Chapter 6. Operation description  . . . . . . . . . . . . . . . . . 10
  437.      Function control keys . . . . . . . . . . . . . . . . . . . . . . . 10
  438.      Display formats and control . . . . . . . . . . . . . . . . . . . . 11
  439.      Edit and record selection conventions . . . . . . . . . . . . . . . 12
  440.      Cursor controls . . . . . . . . . . . . . . . . . . . . . . . . . . 13
  441.  
  442.      Chapter 7. Creating the data base . . . . . . . . . . . . . . . . . 15
  443.      Job description . . . . . . . . . . . . . . . . . . . . . . . . . . 15
  444.      Task description  . . . . . . . . . . . . . . . . . . . . . . . . . 16
  445.      Resource description  . . . . . . . . . . . . . . . . . . . . . . . 17
  446.      Calendar definition . . . . . . . . . . . . . . . . . . . . . . . . 18
  447.  
  448.      Chapter 8. Starting and ending tasks  . . . . . . . . . . . . . . . 20
  449.  
  450.      Chapter 9. Interactive status displays  . . . . . . . . . . . . . . 21
  451.  
  452.      Chapter 10. Control frame . . . . . . . . . . . . . . . . . . . . . 23
  453.      Printer output selections . . . . . . . . . . . . . . . . . . . . . 23
  454.      Background processing control . . . . . . . . . . . . . . . . . . . 24
  455.      Data Base Maintenance . . . . . . . . . . . . . . . . . . . . . . . 25
  456.  
  457.  
  458.  
  459.      HITT Personal Software         Page vii
  460.  
  461.  
  462.  
  463.  
  464.  
  465.                                     SCHEDULE
  466.  
  467.  
  468.  
  469.  
  470.      Chapter 11. Special Resources . . . . . . . . . . . . . . . . . . . 27
  471.      Inventory Resources . . . . . . . . . . . . . . . . . . . . . . . . 27
  472.      Buffer Resources  . . . . . . . . . . . . . . . . . . . . . . . . . 27
  473.      Job Resources . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
  474.  
  475.      Chapter 12. Assignment tracking . . . . . . . . . . . . . . . . . . 30
  476.      Job Definition  . . . . . . . . . . . . . . . . . . . . . . . . . . 31
  477.      Task Definition . . . . . . . . . . . . . . . . . . . . . . . . . . 31
  478.      Resource Definition . . . . . . . . . . . . . . . . . . . . . . . . 31
  479.      Job file listings . . . . . . . . . . . . . . . . . . . . . . . . . 32
  480.      Frame 10 controls . . . . . . . . . . . . . . . . . . . . . . . . . 32
  481.      Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32
  482.  
  483.      Chapter 13. Meeting Calendars . . . . . . . . . . . . . . . . . . . 33
  484.      Job Description . . . . . . . . . . . . . . . . . . . . . . . . . . 33
  485.      Task Description  . . . . . . . . . . . . . . . . . . . . . . . . . 33
  486.      Resource Description  . . . . . . . . . . . . . . . . . . . . . . . 34
  487.      Meeting calendar listings . . . . . . . . . . . . . . . . . . . . . 34
  488.      Interactive meeting reminders . . . . . . . . . . . . . . . . . . . 34
  489.      Automatic operation . . . . . . . . . . . . . . . . . . . . . . . . 34
  490.  
  491.      Chapter 14. Development project planning  . . . . . . . . . . . . . 36
  492.      Detail level 1: . . . . . . . . . . . . . . . . . . . . . . . . . . 37
  493.        JOB definition  . . . . . . . . . . . . . . . . . . . . . . . . . 37
  494.        TASK definition . . . . . . . . . . . . . . . . . . . . . . . . . 37
  495.        RESOURCE definition . . . . . . . . . . . . . . . . . . . . . . . 38
  496.        The critical path . . . . . . . . . . . . . . . . . . . . . . . . 39
  497.      Detail level 2  . . . . . . . . . . . . . . . . . . . . . . . . . . 39
  498.        JOB definition  . . . . . . . . . . . . . . . . . . . . . . . . . 39
  499.        TASK definition . . . . . . . . . . . . . . . . . . . . . . . . . 40
  500.        RESOURCE definition . . . . . . . . . . . . . . . . . . . . . . . 40
  501.        The critical path . . . . . . . . . . . . . . . . . . . . . . . . 40
  502.      Detail level 3  . . . . . . . . . . . . . . . . . . . . . . . . . . 41
  503.        JOB definition  . . . . . . . . . . . . . . . . . . . . . . . . . 41
  504.        TASK definition . . . . . . . . . . . . . . . . . . . . . . . . . 41
  505.        RESOURCE definition . . . . . . . . . . . . . . . . . . . . . . . 41
  506.        The critical path . . . . . . . . . . . . . . . . . . . . . . . . 41
  507.      Detail level 4  . . . . . . . . . . . . . . . . . . . . . . . . . . 42
  508.        TASK descriptions . . . . . . . . . . . . . . . . . . . . . . . . 42
  509.        RESOURCE descriptions . . . . . . . . . . . . . . . . . . . . . . 42
  510.        CALENDAR descriptions . . . . . . . . . . . . . . . . . . . . . . 42
  511.      Quality programs  . . . . . . . . . . . . . . . . . . . . . . . . . 42
  512.  
  513.      Chapter 15. Ideas for the expert  . . . . . . . . . . . . . . . . . 44
  514.      Introduction to the expert section  . . . . . . . . . . . . . . . . 44
  515.      Using SCHEDULE output as data for other programs or printers  . . . 44
  516.      Building large similar files  . . . . . . . . . . . . . . . . . . . 45
  517.      Creating calendars  . . . . . . . . . . . . . . . . . . . . . . . . 46
  518.      Data base maintenance . . . . . . . . . . . . . . . . . . . . . . . 46
  519.      Sorting the data base . . . . . . . . . . . . . . . . . . . . . . . 46
  520.      Resolving multiple action required messages . . . . . . . . . . . . 47
  521.          TASK "     " NOT FOUND FOR JOB "    " . . . . . . . . . . . . . 48
  522.          CALENDAR " " NOT FOUND FOR RESOURCE " " . . . . . . . . . . . . 48
  523.  
  524.  
  525.      HITT Personal Software         Page viii
  526.  
  527.  
  528.  
  529.  
  530.  
  531.                                     SCHEDULE
  532.  
  533.  
  534.  
  535.          RESOURCE "" IS NOT AVAILABLE FOR TASK ""  . . . . . . . . . . . 49
  536.      Redefining the keyboard . . . . . . . . . . . . . . . . . . . . . . 49
  537.      Header line printing  . . . . . . . . . . . . . . . . . . . . . . . 50
  538.  
  539.      Chapter 16. SCHEDULE TRAPS  . . . . . . . . . . . . . . . . . . . . 51
  540.      Resource Names  . . . . . . . . . . . . . . . . . . . . . . . . . . 51
  541.      HOURS/DAY field in the Task descriptions. . . . . . . . . . . . . . 51
  542.      Creating GANTT files. . . . . . . . . . . . . . . . . . . . . . . . 51
  543.      SCHEDULING late and CALENDAR NOT FOUND messages . . . . . . . . . . 52
  544.      Editing the data base . . . . . . . . . . . . . . . . . . . . . . . 52
  545.  
  546.      Chapter 17.  Command File . . . . . . . . . . . . . . . . . . . . . 53
  547.      Command definitions . . . . . . . . . . . . . . . . . . . . . . . . 53
  548.      Additional control  . . . . . . . . . . . . . . . . . . . . . . . . 55
  549.  
  550.      Chapter 18. Program exit return codes to DOS  . . . . . . . . . . . 56
  551.  
  552.      Appendix A. Messages  . . . . . . . . . . . . . . . . . . . . . .  A-1
  553.  
  554.      Appendix B. SERVICE project environment and data base . . . . . .  B-1
  555.  
  556.      INDEX . . . . . . . . . . . . . . . . . . . . . . . . . . . .  INDEX-1
  557.  
  558.  
  559.  
  560.  
  561.  
  562.  
  563.  
  564.  
  565.  
  566.  
  567.  
  568.  
  569.  
  570.  
  571.  
  572.  
  573.  
  574.  
  575.  
  576.  
  577.  
  578.  
  579.  
  580.  
  581.  
  582.  
  583.  
  584.  
  585.  
  586.  
  587.  
  588.  
  589.  
  590.  
  591.      HITT Personal Software          Page ix
  592.  
  593.  
  594.  
  595.  
  596.  
  597.                                     SCHEDULE
  598.  
  599.  
  600.  
  601.      CHAPTER 1. ABOUT THE AUTHOR
  602.  
  603.  
  604.  
  605.      Donald C. Hitt  is a  Senior Engineer Manager for the IBM Corporation.
  606.      He has been in the computer business for over 25 years with a majority
  607.      of that  time in large system  design at IBM's Poughkeepsie,  New York
  608.      Laboratory.
  609.  
  610.      While  Mr.  Hitt recognizes that IBM  holds the  rights  to all of its
  611.      employee's  intellectual output, IBM has released  Mr.  Hitt to retain
  612.      the rights  to this program. It was  developed independently  from his
  613.      work at  IBM. IBM has reviewed this work, and has no objections to Mr.
  614.      Hitt's marketing or distributing this program as submitted to them.
  615.  
  616.      Mr.   Hitt's  experience  with  development  projects  has  given  him
  617.      knowledge  of management  techniques  and an appreciation  for project
  618.      management systems. He feels  that PERT/CPM programs which cannot deal
  619.      with constrained resources offer few benefits. The  program "SCHEDULE"
  620.      was  created  because of the frustrations in trying  to use both  main
  621.      frame and mini project management systems.
  622.  
  623.      According  to  Mr. Hitt, "SCHEDULE  does  what no other  program  even
  624.      attempts to  do". He expects it  to set  new  precedents not  only  in
  625.      scheduling technology but also in what he calls "expert friendliness".
  626.      New users will spend extra time pressing the HELP key, with experience
  627.      no keystrokes are wasted.
  628.  
  629.      The  company  "HITT  Personal  Software"  is  structured  to  be  cost
  630.      effective. It operates out of the home of  Don and his wife Joan. Joan
  631.      is a key contributor to this private business endeavor.
  632.  
  633.  
  634.  
  635.  
  636.  
  637.  
  638.  
  639.  
  640.  
  641.  
  642.  
  643.  
  644.  
  645.  
  646.  
  647.  
  648.  
  649.  
  650.  
  651.  
  652.      ----------------
  653.      1  IBM is the trademark of International Business Machines
  654.         Corporation.
  655.  
  656.  
  657.      HITT Personal Software          Page 1
  658.  
  659.  
  660.  
  661.  
  662.  
  663.                                     SCHEDULE
  664.  
  665.  
  666.  
  667.      CHAPTER 2. CPM AND PERT
  668.  
  669.  
  670.  
  671.      A discussion of CPM and PERT
  672.  
  673.  
  674.      The Critical Path Method and Program Evaluation and Review Technique
  675.  
  676.      Many text  books  are  available on the subject  of project management
  677.      using  CPM and  PERT techniques. These techniques have received  mixed
  678.      reviews partly  because the models they  produced did not  necessarily
  679.      represent reality, and partly because  the effort required to use them
  680.      can  be extensive  and untimely.  With the  introduction  of  the  IBM
  681.      Personal Computer  an interactive, real time tool that overcomes these
  682.      criticisms is now possible..
  683.  
  684.      This  document is not intended to teach CPM/PERT  techniques. A search
  685.      of  the subject will reveal  numerous methods for optimizing resource,
  686.      schedule, and  cost. These techniques do not provide a single solution
  687.      to all  three parameters because  they remain independent or separated
  688.      and  do not  converge. SCHEDULE  is  designed  to  help  you  optimize
  689.      resource utilization  (indirectly cost), and  prioritize  according to
  690.      the schedule.  In  addition  it provides a tracking/control tool which
  691.      represents the project plan.
  692.  
  693.      The  remainder of this section is devoted  to  bridging  the text book
  694.      definitions and SCHEDULE's  operation for  those who  are  interested.
  695.      This understanding is not necessary to use the program.
  696.  
  697.  
  698.  
  699.      PERT, CPM, and MAP
  700.  
  701.  
  702.      SCHEDULE is not a PERT program. It  uses single  task  times and these
  703.      are considered  to be absolute. Normally  the  PLAN  of  a  project is
  704.      considered to be  absolute but we all know it changes. When exceptions
  705.      occur we  "change the plan"  so SCHEDULE is designed  to allow changes
  706.      during the execution of the plan. Rescheduling is done at any time and
  707.      actual start/end  of tasks are indicated to the program as  they occur
  708.      so that it can track and adjust for changes.
  709.  
  710.      SCHEDULE is not a CPM program. It does not display to you the Critical
  711.      Path or Slacks although it uses this information to establish resource
  712.      priorities.  When  resources  are  committed  there  are  interlocking
  713.      dependencies not  described by these parameters. It is possible that a
  714.      delay in a low priority task (with lots  of  slack) could delay a high
  715.      priority task because  it requires the  same  resource.  For a program
  716.      like SCHEDULE, which is designed to operate with resource constraints,
  717.      it is Resource Slack that is important.
  718.  
  719.      SCHEDULE is a MAP (Multiple-resource Allocation Procedure) program. It
  720.      does not vary  resource  levels to maintain  a schedule  (it will  use
  721.  
  722.  
  723.      HITT Personal Software          Page 2
  724.  
  725.  
  726.  
  727.  
  728.  
  729.                                     SCHEDULE
  730.  
  731.  
  732.  
  733.      additional resources  to  obtain the  required number  if  a  task  is
  734.      critical).  It does give you the schedule based on the resource levels
  735.      specified.  Resource leveling  to the  specified limits is its  normal
  736.      mode and is the primary  advantage of this program over other programs
  737.      of this type.
  738.  
  739.  
  740.  
  741.      Arrow and precedence methods
  742.  
  743.  
  744.      Some   texts  use  arrow   diagrams  to   describe  tasks  and   their
  745.      interconnections. The  problem with using a  single line  to represent
  746.      both is that it introduces DUMMY tasks to interlock multiple nodes and
  747.      requires that we describe the entire grid manually.
  748.  
  749.      The Precedence method  was  introduced later  and is a simpler concept
  750.      which  allows  independent  definition  of each  task  by  listing the
  751.      predecessor tasks required before the task can begin.  The program can
  752.      then construct the equivalent of the  arrow diagram internally (called
  753.      AON or Activity On Node diagrams).  MILE-STONES or EVENTS become tasks
  754.      with zero time and no resources with this method.
  755.  
  756.      SCHEDULE  incorporates the Precedence Method of task description. This
  757.      provides the ability  to define  the tasks in the form of a model that
  758.      can be used repeatedly. Task descriptions are used to construct a grid
  759.      for each job  based on  the  Job  specifications. These  JOB grids are
  760.      combined  into a  common  Project grid which  represents all the  jobs
  761.      which share  a  single resource pool. In most  project definitions  we
  762.      find  many  processes  repeated  even  though  the  output  product is
  763.      different.  SCHEDULE  allows   a   single  definition   to   be   used
  764.      independently in each JOB.
  765.  
  766.  
  767.  
  768.      Definitions for Project, Job, Task, and Activities
  769.  
  770.  
  771.      Texts may  use  these words  interchangeably.  Since they are normally
  772.      discussing a single level of arrow diagrams this is understandable.
  773.  
  774.      SCHEDULE however  has specific  definitions  which  will be  described
  775.      here. It will be up to you to determine the similarities with the text
  776.      descriptions.
  777.  
  778.      A Project:  is the entire group of  jobs which are considered within a
  779.      single  grid.  A project has  a single resource  pool.  When  schedule
  780.      processing   is   done  it  is  for   the   project.  There   are   no
  781.      interrelationships (unless manually introduced) between projects.
  782.  
  783.      A Job:  is a set of tasks. It has  a requested starting and completion
  784.      time which establishes its  earliest starting time and priority. A job
  785.      also specifies the name(s)  of  the  task(s)  which will  produce  the
  786.      desired end result(s). A grid  is then created, by the program, of the
  787.  
  788.  
  789.      HITT Personal Software          Page 3
  790.  
  791.  
  792.  
  793.  
  794.  
  795.                                     SCHEDULE
  796.  
  797.  
  798.  
  799.      tasks required to produce the JOB.
  800.  
  801.      A Task:  is  a single job step.  It specifies  the  time duration, the
  802.      resources required, and the immediate  predecessor tasks which must be
  803.      completed before it  can begin. The same task descriptions can be used
  804.      with  other jobs and  produces independent activities. Tasks cannot be
  805.      linked between jobs using predecessors (resources can be used for this
  806.      purpose).
  807.  
  808.      An Activity:  may be a task or a piece of a task which has been split.
  809.      For  example, if a  task  lasts  many days  and the resource  calendar
  810.      specifies only  8 hours per  day availability, the task will be  split
  811.      into a number  of activities. Also one  resource may be  used on first
  812.      shift and an alternate  resource used  on second shift, resulting in a
  813.      task being split into a number of activities.
  814.  
  815.  
  816.  
  817.      Time considerations
  818.  
  819.  
  820.      Project management programs  normally  deal  in  some  arbitrary  time
  821.      duration which could be considered to be  hours, days,  weeks, months,
  822.      or years,  as appropriate to the problem. Some  have the concept  of a
  823.      calendar which allows the program to expand the output schedule into a
  824.      schedule  bar chart or listing with work days, holidays, and  weekends
  825.      taken into consideration.
  826.  
  827.      SCHEDULE specifies duration  in hours and  minutes since  that  is the
  828.      only scale which is not ambiguous. A calendar can be specified for all
  829.      the  resources,  or  separate  calendars can  be  specified  for  each
  830.      resource.  This  level of  flexibility allows scheduling  of resources
  831.      with defined availability hours and individualized vacation, holidays,
  832.      etc.
  833.  
  834.  
  835.  
  836.      Resource types
  837.  
  838.  
  839.      Resources  are  normally  defined  as  an  object  which  can be  used
  840.      repeatedly and is required for the duration of the task to which it is
  841.      assigned.  This  would be a  standard  definition  and  some  programs
  842.      support multiple resources of this type.
  843.  
  844.      SCHEDULE  not only supports multiple resources  but it also supports a
  845.      number of resource types. This allows modeling to be more realistic.
  846.  
  847.      Capital  resources, machines or  tools are in  the  standard  resource
  848.      class. They  are available 24 hours per day 7 days a week. They can be
  849.      used repeatedly and  there  usage starts  and stops with the scheduled
  850.      activity.
  851.  
  852.      In some  cases however a resource is  committed even though  it is not
  853.  
  854.  
  855.      HITT Personal Software          Page 4
  856.  
  857.  
  858.  
  859.  
  860.  
  861.                                     SCHEDULE
  862.  
  863.  
  864.  
  865.      being  used.  For example: A job requires a truck to  drive to another
  866.      city, the truck is unloaded, and then returns. If the unload or return
  867.      tasks  are  delayed  the truck will still not  be  available for other
  868.      tasks since  it is in the wrong city. The ability to secure a resource
  869.      with  one  task  and release it  with  another  is required.  SCHEDULE
  870.      provides this capability with "Bxx" class resources.
  871.  
  872.      Labor  resources can  be  used  repeatedly and there usage starts  and
  873.      stops with the scheduled activity. They are not available 24 hours per
  874.      day however, so we use a calendar with working hours to describe there
  875.      availability. With SCHEDULE any resource can have a calendar.
  876.  
  877.      Some resources cannot be  used repeatedly. Once they are used they are
  878.      gone  (like money).  This  type  of resource has an availability start
  879.      date associated with it and the stocking rate may gate some schedules.
  880.      SCHEDULE  provides  an  "Ixx"  class resource  for  this function  and
  881.      availability start dates can be specified for any resource.
  882.  
  883.      Some resources are created as the result of a process we would like to
  884.      schedule. We could construct  prerequisite jobs to  the  one requiring
  885.      the resource  but  that  would  force  the  creation  of a  large  job
  886.      consisting of  all  the jobs  requiring the resource.  SCHEDULE allows
  887.      resources to be created by one job for use by others.
  888.  
  889.      Some times there are a number of tasks within a job that could be done
  890.      in  parallel  except that they are all operating on  the same part. To
  891.      specify the tasks  as prerequisites  would  be preventing  the program
  892.      from shifting the sequence based  on resource availabilities. The same
  893.      kind  of  condition  can exist with  sequences  of tasks. Any one of a
  894.      number of sequences can be started but once that choice is made, other
  895.      sequences cannot be started. SCHEDULE provides JOB resources which are
  896.      used within  jobs  to  force  sequential scheduling  while  allowing a
  897.      variety of sequences depending on resource availability.
  898.  
  899.      Resources  of the  same  type  may  not  be  interchangeable  in  both
  900.      directions. We might use a car or a pickup truck to go across town but
  901.      we  cannot use a car  to carry a load  of  plywood.  SCHEDULE provides
  902.      generic names and size codes to account for LEVELS of resources.
  903.  
  904.  
  905.  
  906.      Decision making
  907.  
  908.  
  909.      In development projects there  are points  in the project plans  where
  910.      decisions must be made.  SCHEDULE allows alternative task models to be
  911.      described  and the  most probable  (or other criteria) selected in the
  912.      job description. As decisions are make the job description is modified
  913.      to reflect  the  choice  and  rescheduling done. The use  of Job class
  914.      resource funneling allows for optional prerequisite specifications.
  915.  
  916.  
  917.  
  918.  
  919.  
  920.  
  921.      HITT Personal Software          Page 5
  922.  
  923.  
  924.  
  925.  
  926.  
  927.                                     SCHEDULE
  928.  
  929.  
  930.  
  931.      Summary
  932.  
  933.  
  934.      SCHEDULE provides a rich assortment  of resource types to allow a more
  935.      realistic  task  modeling  process.  It  does  not  impose  artificial
  936.      constraints  while providing valid schedules. It also provides  a real
  937.      time update  and tracking  capability to  bridge  between the plan and
  938.      reality.
  939.  
  940.      The book "RESOURCES MANAGEMENT" by R.  L. Martino, Ph.D.  published by
  941.      MANAGEMENT   DEVELOPMENT  INSTITUTE,  INC.  and  copyrighted  1968  is
  942.      recommended reading.
  943.  
  944.      The tables used by SCHEDULE can be displayed using the Ctl-F1/F2/F3/F4
  945.      keys. This capability was left active but increases processing time by
  946.      orders of magnitude while the display is active. These displays may be
  947.      of interest to those interested in the academics of the subject.
  948.  
  949.  
  950.  
  951.  
  952.  
  953.  
  954.  
  955.  
  956.  
  957.  
  958.  
  959.  
  960.  
  961.  
  962.  
  963.  
  964.  
  965.  
  966.  
  967.  
  968.  
  969.  
  970.  
  971.  
  972.  
  973.  
  974.  
  975.  
  976.  
  977.  
  978.  
  979.  
  980.  
  981.  
  982.  
  983.  
  984.  
  985.  
  986.  
  987.      HITT Personal Software          Page 6
  988.  
  989.  
  990.  
  991.  
  992.  
  993.                                     SCHEDULE
  994.  
  995.  
  996.  
  997.      CHAPTER 3. CONCEPTS OF SCHEDULING
  998.  
  999.  
  1000.  
  1001.      Scheduling  (from  WEBSTER's)  is  "a  tabular statement  of  times of
  1002.      projected operations, recurring events, arriving  and departing times,
  1003.      etc.;(a timetable)."
  1004.  
  1005.      To create a SCHEDULE there are several things that must be understood.
  1006.  
  1007.      o   The TASKs or steps required to accomplish the objective.
  1008.  
  1009.      o   The TIME required to do each task.
  1010.  
  1011.      o   The SEQUENCE in which each task must be done.
  1012.  
  1013.      o   The RESOURCES that are required to do each task.
  1014.  
  1015.      We all do scheduling everyday. When the number of tasks gets large and
  1016.      there interactions complex,  then Computers  can help to keep track of
  1017.      the complexity.
  1018.  
  1019.      The  objective  of  this  scheduling program is  to  process the  data
  1020.      supplied in a systematic  way to optimize the resource utilization and
  1021.      minimize the overall time required.
  1022.  
  1023.      Unfortunately there is no  "OPTIMUM"  schedule since  the  value  of a
  1024.      short  schedule  verses  the  minimum number  of resources  is one  of
  1025.      judgement not easily specified. A schedule  program  can  provide  the
  1026.      ability to locate  the areas  of  sensitivity,  it can  calculate  the
  1027.      interactions fast enough  to do "what if's", and it can be a means for
  1028.      projecting and tracking progress.
  1029.  
  1030.      One of  the objectives of  this scheduling system  is to allow  you to
  1031.      define  the TASKS, TIMES,  SEQUENCES,  and RESOURCES in  a way that is
  1032.      independent  of  the  interactions  that  result from  conflicts  over
  1033.      resources and priorities, and to provide the results in a timely way.
  1034.  
  1035.      Schedule processing consists of the following steps:
  1036.  
  1037.  
  1038.      o   Input from the user (PROCESSING JOBS)
  1039.          -   Job requested
  1040.          -   Desired completion date/time
  1041.          -   Desired start date/time
  1042.      o   From the data base (PROCESSING TASKS)
  1043.          -   Get the tasks required to accomplish the job
  1044.      o   Build a table with the task data (CONNECTING GRID)
  1045.      o   Build a table with the resource data (PROCESSING RESOURCES)
  1046.      o   Build a table with the calendar data (PROCESSING CALENDARS)
  1047.      o   Calculate earliest start time (CALCULATING EST)
  1048.      o   Calculate latest start time (CALCULATING LST)
  1049.      o   Determine the next task to schedule (SCHEDULING)
  1050.      o   Loop until done and output the completed schedule
  1051.  
  1052.  
  1053.      HITT Personal Software          Page 7
  1054.  
  1055.  
  1056.  
  1057.  
  1058.  
  1059.                                     SCHEDULE
  1060.  
  1061.  
  1062.  
  1063.      CHAPTER 4. MINIMUM SYSTEM REQUIREMENTS
  1064.  
  1065.  
  1066.  
  1067.      In order to operate this system you must have the following:
  1068.  
  1069.      o   An IBM Personal Computer with a minimum of 192K-bytes of storage.
  1070.      o   One diskette drive.
  1071.      o   The  IBM Personal  Computer  Disk  Operating System  (DOS  2.0  or
  1072.          above).
  1073.      o   One additional IBM Personal Computer compatible diskette.
  1074.  
  1075.      In addition the following is recommended but not required
  1076.  
  1077.      o   An IBM Matrix or Graphics Printer, adapter, and cable.
  1078.      o   Two displays, one 80 character per line and one 40.
  1079.      o   A high performance fixed  disk as  with the IBM Personal  computer
  1080.          XT/AT,  or extra  storage to  emulate  a  disk, or both. This will
  1081.          provide improved performance and a smoother operation.
  1082.  
  1083.  
  1084.  
  1085.  
  1086.  
  1087.  
  1088.  
  1089.  
  1090.  
  1091.  
  1092.  
  1093.  
  1094.  
  1095.  
  1096.  
  1097.  
  1098.  
  1099.  
  1100.  
  1101.  
  1102.  
  1103.  
  1104.  
  1105.  
  1106.  
  1107.  
  1108.  
  1109.  
  1110.  
  1111.  
  1112.  
  1113.  
  1114.  
  1115.  
  1116.  
  1117.  
  1118.  
  1119.      HITT Personal Software          Page 8
  1120.  
  1121.  
  1122.  
  1123.  
  1124.  
  1125.                                     SCHEDULE
  1126.  
  1127.  
  1128.  
  1129.      CHAPTER 5. PREPARING YOUR DISKETTE
  1130.  
  1131.  
  1132.  
  1133.      SCHEDULE  is a program  that runs under the IBM Personal  Computer DOS
  1134.      (Disk Operating System). "SCHEDULE" need  not  be on the  same disk as
  1135.      DOS but DOS must be loaded before SCHEDULE can be run.
  1136.  
  1137.      The diskette contains a number of programs which support a menu system
  1138.      using batch and command files. These files are  setup to run from  the
  1139.      A: diskette but can  be changed to support any disk.  You will need an
  1140.      editor  program to  make modifications  to  the xxx.BAT,  xxx.SKB, and
  1141.      xxx.GKB files  if you  want to use the  menu's from other  than the A:
  1142.      diskette.
  1143.  
  1144.      1.  In the xxx.BAT  files look for  all occurrences of "A:" and change
  1145.          them to the disk of your choice.
  1146.  
  1147.      2.  In the  xxx.SKB and xxx.GKB files look of all occurences of  "ODA"
  1148.          and change the "A" to the disk of your choice.
  1149.  
  1150.      Normal DOS commands are used to backup your master diskette.
  1151.  
  1152.      With the master diskette in the A: drive.
  1153.  
  1154.      o   Create a backup of the master diskette using:
  1155.                                    DISKCOPY A: B:
  1156.  
  1157.      o   Move the program  to a disk with  other programs (DOS for example)
  1158.          use:
  1159.                               COPY A:SCHEDULE.EXE B:/V
  1160.  
  1161.      o   or
  1162.                               COPY A:SCHEDULE.EXE C:/V
  1163.  
  1164.  
  1165.  
  1166.  
  1167.  
  1168.  
  1169.  
  1170.  
  1171.  
  1172.  
  1173.  
  1174.  
  1175.  
  1176.  
  1177.  
  1178.  
  1179.  
  1180.  
  1181.  
  1182.  
  1183.  
  1184.  
  1185.      HITT Personal Software          Page 9
  1186.  
  1187.  
  1188.  
  1189.  
  1190.  
  1191.                                     SCHEDULE
  1192.  
  1193.  
  1194.  
  1195.      CHAPTER 6. OPERATION DESCRIPTION
  1196.  
  1197.  
  1198.  
  1199.      You may  wish  to  follow the descriptions given in this section  with
  1200.      your Personal Computer in actual operation.  While not necessary it is
  1201.      sometimes helpful to observe what is being described.
  1202.  
  1203.      Place the Version 1.2 (backup copy) in drive A:
  1204.  
  1205.      Load "SCHEDULE" by responding to the DOS prompt.
  1206.  
  1207.                              A>A:SCHEDULE A:STATION
  1208.  
  1209.      When  the  program  loading  is  complete,  execution  starts  in  the
  1210.      copyright frame. Press any key to continue.
  1211.  
  1212.      There  are a  number  of different  frames  used to  control different
  1213.      aspects of the scheduling process and  we will  discuss the details of
  1214.      each  separately. These  frames are  under  control of the  FOREGROUND
  1215.      processing  control and have priority over the  BACKGROUND processing.
  1216.      Background  processing  occurs  when the  foreground  is  waiting  for
  1217.      keyboard  input  and  includes  print  jobs  as  well  as  the  actual
  1218.      scheduling calculations. This foreground/background technique provides
  1219.      the real time interactive capability of this program.
  1220.  
  1221.      First lets see how we get from one frame to another using the Fn keys.
  1222.  
  1223.  
  1224.  
  1225.      FUNCTION CONTROL KEYS
  1226.  
  1227.  
  1228.      Each of the function keys  is assigned to a control frame. The meaning
  1229.      of  these keys are not changed  throughout  "SCHEDULE". You can always
  1230.      get from any frame to any frame. Press each key as it is discussed and
  1231.      observe the FRAME format.
  1232.  
  1233.      Esc will  terminate the program and return to DOS. There will normally
  1234.      be a checkpoint taken  in a  file named "xxxx.STA" so re-starting  the
  1235.      program does not  start from scratch unless  you ERASE xxxx.STA before
  1236.      starting the program. If you have hit this key re-start the program by
  1237.      responding to the DOS prompt as before.
  1238.  
  1239.                                A>SCHEDULE STATION
  1240.  
  1241.      F1 key:  Is  for  HELP.  Pressing F1  again  will  provide  additional
  1242.      detail. Pressing F1  while operating  within frames will display  help
  1243.      about the particular field the cursor is in.
  1244.  
  1245.      F2 key:  Displays tasks  which  are to be started or stopped. On  this
  1246.      frame placing the cursor next to the task desired and pressing the "X"
  1247.      key will indicate to Schedule that  this task  has indeed  started  or
  1248.      ended. This allows rescheduling to be done with real  information when
  1249.  
  1250.  
  1251.      HITT Personal Software          Page 10
  1252.  
  1253.  
  1254.  
  1255.  
  1256.  
  1257.                                     SCHEDULE
  1258.  
  1259.  
  1260.  
  1261.      things don't work out as expected.
  1262.  
  1263.      F3  key:  Selects  the  JOB REQUEST  frame.  This frame  controls  the
  1264.      contents of a data set named "xxxx.JOB". (xxxx=the project name)
  1265.  
  1266.      F4 key:  Will page the interactive activity display backwards.
  1267.  
  1268.      F5 key:  Selects the TASK DEFINITION frame where  tasks are described.
  1269.      This frame controls the contents of a file named "xxxx.TSK".
  1270.  
  1271.      F6  key:  Is  used  with  the  auxiliary  monitor  to  display  detail
  1272.      information for the interactive environment.
  1273.  
  1274.      F7 key:  Is for RESOURCE DEFINITION where each resource  is described.
  1275.      This frame controls the contents of a file named "xxxx.RES".
  1276.  
  1277.      F8 key:  Will page the interactive activity display forward.
  1278.  
  1279.      F9 key:  Is  for the CALENDAR  DEFINITION where calendars and  working
  1280.      hours are described. This frame  controls the contents of a file named
  1281.      "xxxx.CAL"
  1282.  
  1283.      F10   key:  Provides   the    output    selections   and    processing
  1284.      controls.:  Note:xxxx  is the project name specified when SCHEDULE was
  1285.      invoked.  A<B:SCHEDULE  C:xxxx  is  possible.  The  default  name   is
  1286.      "PROJECT".
  1287.  
  1288.  
  1289.  
  1290.      DISPLAY FORMATS AND CONTROL
  1291.  
  1292.  
  1293.      The top 23  lines of  the 80  column display are  used by the Frame in
  1294.      control.
  1295.  
  1296.      The  bottom two  lines are under  control of the background processing
  1297.      routines and are independent of the selected frame.
  1298.  
  1299.      The left side of line 25 (the bottom line) displays the status  of the
  1300.      background processing and  will be  blank  when  no processing  is  in
  1301.      process.  Status messages  such as "CONNECTING GRID"  will  be seen in
  1302.      this  location  of the screen.  These  are  status only  messages  and
  1303.      require no action from you.
  1304.  
  1305.      The  right side of line 25 displays the current date and time (24 hour
  1306.      time) as provided to the  program by DOS.  The  display  is updated as
  1307.      task switching occurs  from the  background to the  foreground. If the
  1308.      date or time  is incorrect it should be corrected  by  exiting  to DOS
  1309.      (Esc) and using the DOS command "DATE" or "TIME".
  1310.  
  1311.      Line 24  (one up from the bottom) is used by the background processing
  1312.      to  display  problems  encountered  while  attempting to  perform  the
  1313.      background  tasks. Messages such as "PRINTER NOT READY"  are displayed
  1314.      on  this line.  See "MESSAGE APPENDIX" for details of  the meaning  of
  1315.  
  1316.  
  1317.      HITT Personal Software          Page 11
  1318.  
  1319.  
  1320.  
  1321.  
  1322.  
  1323.                                     SCHEDULE
  1324.  
  1325.  
  1326.  
  1327.      these messages.
  1328.  
  1329.      The remainder of the screen is under control of the foreground program
  1330.      (the frame selected). The frames which control  and  update files (F3,
  1331.      F5,  F7, F9) use common editing and  record selection  conventions  as
  1332.      follows:
  1333.  
  1334.  
  1335.  
  1336.      EDIT AND RECORD SELECTION CONVENTIONS
  1337.  
  1338.  
  1339.      The keyboard  operates in one of  three modes  depending on  the  data
  1340.      field  being   entered.   The  modes  are  upper  case  alpha-numeric,
  1341.      upper-lower case alpha-numeric, and numeric.
  1342.  
  1343.      Upper case alpha:  In these  fields the  program allows all characters
  1344.      to be entered but will translate lower  case characters to upper case.
  1345.      This mode is used for fields with significance  to the program in that
  1346.      they must be compared or matched  with other names. Forcing upper case
  1347.      removes the problem of inadvertent mismatches do to case mismatches.
  1348.  
  1349.      Upper/lower case  alpha:  In these fields both  upper and lower cases,
  1350.      special  characters,  and  numerals  are  allowed.   It  is  used  for
  1351.      information only fields such as TASK DESCRIPTION that becomes  part of
  1352.      the output listings but are not compared or matched with other names.
  1353.  
  1354.      Numeric  only:  In these fields  only numbers 0 through 9,  and, space
  1355.      are  allowed. Any other  character or special  character  will sound a
  1356.      note on the built in speaker and the entry is ignored. This  mode will
  1357.      also force the  cursor to jump  over slashes  (/) and colons (:).  The
  1358.      jump function  is used for  date  and  time fields and speeds entry in
  1359.      these cases.
  1360.  
  1361.      Insert and  delete are  not allowed in numeric fields as  this becomes
  1362.      ambiguous with fixed position fields.
  1363.  
  1364.      Field  definition:  Brackets  are  used  to  define  the  entry  field
  1365.      associated with the current cursor  position. The  brackets  will move
  1366.      under control of the cursor controls. Square brackets [ ] are used for
  1367.      alphabetic fields and { } brackets are used for numeric fields.
  1368.  
  1369.      Record selection:  The first field of most frames (F3,F5,F7,F9) is the
  1370.      CONTROL field.  This  field  specifies a specific  record in the  data
  1371.      base. When the cursor is moved out of this field the data base will be
  1372.      scanned comparing the  characters from the start of the  field  to the
  1373.      cursor (before it was moved). An information message will be displayed
  1374.      to the right of the entry field indicating whether or not a record was
  1375.      found. If a name match was found  the remaining  data  fields will  be
  1376.      filled in. If a  match was  not  found the  data fields  will  be left
  1377.      unchanged.
  1378.  
  1379.      Leaving the frame (or re-selecting the same frame), using the Fn  keys
  1380.      while  the cursor is in  any location other than the first field, will
  1381.  
  1382.  
  1383.      HITT Personal Software          Page 12
  1384.  
  1385.  
  1386.  
  1387.  
  1388.  
  1389.                                     SCHEDULE
  1390.  
  1391.  
  1392.  
  1393.      update  the data base to  the changes  made. Changes can  be prevented
  1394.      from altering the data base by first pressing "PgUp" before pressing a
  1395.      Fn key.
  1396.  
  1397.  
  1398.  
  1399.      CURSOR CONTROLS
  1400.  
  1401.  
  1402.      Full screen  editing is allowed within the defined  fields. The cursor
  1403.      controls are used to select  the field to be entered or modified.  The
  1404.      following describes the rules followed  by the program in  controlling
  1405.      the cursor position.
  1406.  
  1407.      Right:  Steps the  cursor right  one position. If the end of field  is
  1408.      reached the cursor will  go  down and  to the  left  side of  the next
  1409.      field.
  1410.  
  1411.      Left:  Steps the cursor left  one  position. If  the  beginning of the
  1412.      field is reached the cursor will  go up and to  the right side  of the
  1413.      previous field.
  1414.  
  1415.      Up:  Sets the cursor  in the same position of the next field up unless
  1416.      the  new field is not long enough in which case it will be set to  the
  1417.      right margin of the new field.
  1418.  
  1419.      Down:  Sets the  cursor in  the same position  of the  next field down
  1420.      unless the new field is not long enough  in which case it will be  set
  1421.      to the right margin of the new field.
  1422.  
  1423.      Home:  Sets the cursor to the left  margin of the current field, or if
  1424.      already there, to the left margin of the  first field on the frame (as
  1425.      with PgUp).
  1426.  
  1427.      End:  Sets the cursor to the right margin of the current field.
  1428.  
  1429.      PgUp:  Sets the cursor to the first entry field in the frame.
  1430.  
  1431.      PgDn:  Sets the cursor to the last entry field in the frame.
  1432.  
  1433.      Backspace:  (long  left arrow)  Steps the cursor left one position and
  1434.      places a  blank in the  new position.  Trying  to backspace  past  the
  1435.      beginning of the field will leave the cursor in the beginning position
  1436.      and will sound a note.
  1437.  
  1438.      Tab right:  (key above Ctrl) Moves the cursor to the first position of
  1439.      the next field to the right, or if none, down.
  1440.  
  1441.      Tab left:  (upper case shift and the key above Ctrl): Moves the cursor
  1442.      to the  first position of the current field, or if  already  there, to
  1443.      the first position of the previous field.
  1444.  
  1445.      Enter:  (down  left arrow): Sets the cursor at the left  margin of the
  1446.      next field  down. It  is not required for commands as it provides only
  1447.  
  1448.  
  1449.      HITT Personal Software          Page 13
  1450.  
  1451.  
  1452.  
  1453.  
  1454.  
  1455.                                     SCHEDULE
  1456.  
  1457.  
  1458.  
  1459.      the carriage return line feed cursor positioning function.
  1460.  
  1461.  
  1462.  
  1463.  
  1464.  
  1465.  
  1466.  
  1467.  
  1468.  
  1469.  
  1470.  
  1471.  
  1472.  
  1473.  
  1474.  
  1475.  
  1476.  
  1477.  
  1478.  
  1479.  
  1480.  
  1481.  
  1482.  
  1483.  
  1484.  
  1485.  
  1486.  
  1487.  
  1488.  
  1489.  
  1490.  
  1491.  
  1492.  
  1493.  
  1494.  
  1495.  
  1496.  
  1497.  
  1498.  
  1499.  
  1500.  
  1501.  
  1502.  
  1503.  
  1504.  
  1505.  
  1506.  
  1507.  
  1508.  
  1509.  
  1510.  
  1511.  
  1512.  
  1513.  
  1514.  
  1515.      HITT Personal Software          Page 14
  1516.  
  1517.  
  1518.  
  1519.  
  1520.  
  1521.                                     SCHEDULE
  1522.  
  1523.  
  1524.  
  1525.      CHAPTER 7. CREATING THE DATA BASE
  1526.  
  1527.  
  1528.  
  1529.      In order to  do effective  scheduling  we must  be able to  define the
  1530.      steps required to do a job  using our knowledge and  experience.  This
  1531.      task description process is best approached by  thinking about the end
  1532.      result desired and working the problem backwards.
  1533.  
  1534.  
  1535.  
  1536.      JOB DESCRIPTION
  1537.  
  1538.  
  1539.      First go to  the  JOB entry frame by  pressing the  "F3"  key. This is
  1540.      where we  will describe  the final  result desired and  the  dates and
  1541.      times  of  our  request.  There  are  three  fields  which  effect the
  1542.      processing.
  1543.  
  1544.      The  NAME field  identifies the  requestor who is  requesting  an  end
  1545.      result JOB  to be STARTED and  COMPLETED at specified times. The other
  1546.      fields are used for output listings but do not effect processing.
  1547.  
  1548.      Fill in the fields (use your name in the name field)  and  specify the
  1549.      name of the task  which results  in the desired end  result as the JOB
  1550.      REQUESTED. (for example enter "INSPECTION")
  1551.  
  1552.      When  the cursor  was moved  from the  NAME field  the data  base  was
  1553.      searched  for a  match of  as many characters as  the  cursor position
  1554.      would indicate were entered.  A  message  "NAME NOT FOUND" should have
  1555.      been displayed if this was the  first time  this name was entered.  If
  1556.      this was not the first time  then the remaining fields will  be filled
  1557.      in according  to the data  base, and a  message  "NAME FOUND" will  be
  1558.      displayed.
  1559.  
  1560.      Background schedule processing will be started when exiting from  this
  1561.      frame (if in auto start). Pressing  "F10" in this example will request
  1562.      the processing  (exiting from  the job request frame) and will take us
  1563.      to  the process control  frame. If  an arrow  is pointing to  the  "A"
  1564.      control, processing will  have  started, if not press "S" to start the
  1565.      processing.
  1566.  
  1567.  
  1568.  
  1569.  
  1570.  
  1571.  
  1572.  
  1573.  
  1574.  
  1575.  
  1576.  
  1577.  
  1578.  
  1579.  
  1580.  
  1581.      HITT Personal Software          Page 15
  1582.  
  1583.  
  1584.  
  1585.  
  1586.  
  1587.                                     SCHEDULE
  1588.  
  1589.  
  1590.  
  1591.      TASK DESCRIPTION
  1592.  
  1593.  
  1594.      Press F5. This is the task definition frame.
  1595.  
  1596.      Enter the task name for the job we requested.
  1597.                                   (INSPECTION)
  1598.  
  1599.      Tasks which  require  more  resources  or prerequisites  than  can  be
  1600.      described  on  a single frame  are accommodated by  specifying as many
  1601.      records  as  required (max  9, 3 for  our  example).  If you  wish  to
  1602.      completely delete a task enter 0.
  1603.  
  1604.      Note the resources required to accomplish this task. (MECHANIC)
  1605.  
  1606.      A blank quantity field implies "1".
  1607.  
  1608.      Note the prerequisites that must be accomplished before this task  can
  1609.      begin. (BRAKE CHECK)
  1610.  
  1611.      Since we have a record number greater than 1  we can get to the second
  1612.      record  by pressing  F5. At  this  record  we can see  the  additional
  1613.      resources or prerequisites. (TIRE CHECK)
  1614.  
  1615.      Keep pressing  F5 for  as  many records  as  requested  and  make  the
  1616.      appropriate entries. (LIGHT CHECK)
  1617.  
  1618.      You can  look  at and/or  modify any  task description using  the full
  1619.      screen  edit  controls.  You can  find  the other task descriptions by
  1620.      entering the name (BRAKE CHECK) and moving the cursor down.
  1621.  
  1622.      In  our example  the  tasks  are described in  the sample data base so
  1623.      scheduling should complete.  If you get  any line 24 messages see  the
  1624.      message appendix for an explanation.
  1625.  
  1626.      You may find  the  example task descriptions interesting in that there
  1627.      is a variety of  acceptable  forms that may be used. Some  fields  can
  1628.      have multiple  entries which are  parsed  (separated with a comma) and
  1629.      numeric right  alignment is normally performed by the program. You can
  1630.      look at  and  or  modify these  data  base records  by  selecting  the
  1631.      appropriate  frame  and  entering the  name (F5, TIRE CHECK,  move the
  1632.      cursor down).
  1633.  
  1634.  
  1635.  
  1636.  
  1637.  
  1638.  
  1639.  
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645.  
  1646.  
  1647.      HITT Personal Software          Page 16
  1648.  
  1649.  
  1650.  
  1651.  
  1652.  
  1653.                                     SCHEDULE
  1654.  
  1655.  
  1656.  
  1657.      RESOURCE DESCRIPTION
  1658.  
  1659.  
  1660.      F7 Selects the resource  description frame.  There  are  many ways and
  1661.      levels to specify resources so a general discussion about resources is
  1662.      probably appropriate before describing each field.
  1663.  
  1664.      One kind of resource is a piece of equipment which is required to do a
  1665.      task. The equipment can be  used over and  over  again but can only be
  1666.      used  for one  task  at a time. This is a  CAPITAL resource and we can
  1667.      give it a particular name like "PICKUP TRUCK".
  1668.  
  1669.      Another  kind of resource is a consumable which can  be used only once
  1670.      and is  then gone. This is an  INVENTORY resource and we can give it a
  1671.      particular name like "OIL BATCH 15".
  1672.  
  1673.      The third kind of resource is things which  are only available for use
  1674.      at  particular times. People normally are in this category and require
  1675.      a  calendar  of  available  times.  We  can  give  these  resources  a
  1676.      particular name like "JOHN DOE"  or a  name which represents otherwise
  1677.      interchangeable resources like "ENGINE MECHANIC". The later case could
  1678.      have a quantity other than 1 since there could be any number of engine
  1679.      mechanics to choose from.
  1680.  
  1681.      The last kind  of  resource  is  an  item to be  operated  on  that is
  1682.      particular to  a job. A JOB resource  allows us to define items  which
  1683.      might  be  provided  by  the customer such  as  a  car  which needs an
  1684.      inspection.
  1685.  
  1686.      Within   a   given   category  there   may   also  exist   an   upward
  1687.      interchangeability that should be considered. For example a task which
  1688.      required  a "PICKUP  TRUCK" could  also use a "ONE TON  TRUCK"  if the
  1689.      pickup was not available.  However  a  task which  required a "ONE TON
  1690.      TRUCK" could not use the "PICKUP TRUCK".
  1691.  
  1692.      The  program  provides   two   facilities   to   account   for   these
  1693.      possibilities. One is the GENERIC NAME  which can be added in addition
  1694.      to the specific  name. The other facility is the  resource size  which
  1695.      can be a number from 0 to 99.
  1696.  
  1697.      In  our  example  both the  pickup  and one  ton truck  would have the
  1698.      generic name "TRUCK" and an appropriate difference in the size  field.
  1699.      Each task description also  contains a size field  which indicates the
  1700.      minimum size resource that can be used.
  1701.  
  1702.      The scheduling process will  option the resources  for use in order by
  1703.      the size field starting at the minimum size specified in the task. The
  1704.      size being optioned for use will be  increased a maximum of 30, unless
  1705.      the  task  is critical (earliest  start  time = latest start  time) in
  1706.      which case it may be increased  to 99. The exception is if  there does
  1707.      not exist enough resource either already scheduled  or not, unless the
  1708.      number is increased.
  1709.  
  1710.      This   generic   resource   size   capability  provides   a   powerful
  1711.  
  1712.  
  1713.      HITT Personal Software          Page 17
  1714.  
  1715.  
  1716.  
  1717.  
  1718.  
  1719.                                     SCHEDULE
  1720.  
  1721.  
  1722.  
  1723.      schedule/cost optimizing capability.  It  is assumed that  the smaller
  1724.      resource size number represents a lower cost  and the +30 limit limits
  1725.      the  amount  of cost  allowed  unless  the  task  is  critical.  It is
  1726.      necessary  to keep the forgoing in  mind when  choosing resource sizes
  1727.      and generic names.
  1728.  
  1729.      A task can specify either the specific name or the generic name  for a
  1730.      required resource as appropriate.
  1731.  
  1732.  
  1733.  
  1734.      CALENDAR DEFINITION
  1735.  
  1736.  
  1737.      Resources which  use a calendar have  a one character  code which must
  1738.      match the code specified on the  F9 frame. Using a blank allows you to
  1739.      specify a month  and  year and see  a  calendar for  that date without
  1740.      effecting the data base. A blank in the calendar field of the resource
  1741.      definition  indicates that the resource is available 24 hours per day,
  1742.      7 days per week.
  1743.  
  1744.      Many resources may use the same calendar. A separate calendar would be
  1745.      required for multiple shifts  or other special conditions such as part
  1746.      time employees working individualized shifts. The STATION project uses
  1747.      two calendar codes "A" and "B".
  1748.  
  1749.      Moving the cursor  below the year will invoke  a data  base search for
  1750.      the code, month, and year  specified. A message will indicate  whether
  1751.      or  not a match  was  found. If  a match is found the remainder of the
  1752.      screen  will be filled in from the data base. If a match is not  found
  1753.      the old data is retained.
  1754.  
  1755.      A calendar  is calculated  and  displayed on the  right  side  of  the
  1756.      display.
  1757.  
  1758.      Two time  span's  can be defined for the  days of the  month. If  both
  1759.      spans are used in any day (#3) then the span's cannot overlap and span
  1760.      2 must be later than span 1.
  1761.  
  1762.      Each day of the month can specify a number from 0 to 3 (blank=0).
  1763.  
  1764.          0 is for days when the resource is not available.
  1765.          1 is for days when the resource is available during time span #1.
  1766.          2 is for days when the resource is available during time span #2.
  1767.          3 is  for days when  the  resource  is available during  both time
  1768.          spans.
  1769.  
  1770.      The normal usage of this facility would be  to specify normal  working
  1771.      hours (1=starting  time to  lunch,  2=lunch to  end of work day).  The
  1772.      calendar  would then contain 3's  for normal working days  and 0's  or
  1773.      blanks for days not worked.
  1774.  
  1775.      Leaving this display (or re-entering it) by pressing any  function key
  1776.      while the cursor  is  below the year entry  area will update  the data
  1777.  
  1778.  
  1779.      HITT Personal Software          Page 18
  1780.  
  1781.  
  1782.  
  1783.  
  1784.  
  1785.                                     SCHEDULE
  1786.  
  1787.  
  1788.  
  1789.      base to reflect the data that was displayed.
  1790.  
  1791.  
  1792.  
  1793.  
  1794.  
  1795.  
  1796.  
  1797.  
  1798.  
  1799.  
  1800.  
  1801.  
  1802.  
  1803.  
  1804.  
  1805.  
  1806.  
  1807.  
  1808.  
  1809.  
  1810.  
  1811.  
  1812.  
  1813.  
  1814.  
  1815.  
  1816.  
  1817.  
  1818.  
  1819.  
  1820.  
  1821.  
  1822.  
  1823.  
  1824.  
  1825.  
  1826.  
  1827.  
  1828.  
  1829.  
  1830.  
  1831.  
  1832.  
  1833.  
  1834.  
  1835.  
  1836.  
  1837.  
  1838.  
  1839.  
  1840.  
  1841.  
  1842.  
  1843.  
  1844.  
  1845.      HITT Personal Software          Page 19
  1846.  
  1847.  
  1848.  
  1849.  
  1850.  
  1851.                                     SCHEDULE
  1852.  
  1853.  
  1854.  
  1855.      CHAPTER 8. STARTING AND ENDING TASKS
  1856.  
  1857.  
  1858.  
  1859.      The  process of scheduling  produces a table in storage  that contains
  1860.      projected start  and completion times. This  table  is  maintained  by
  1861.      copying it onto  the disk when  exiting from SCHEDULE and is  restored
  1862.      when  SCHEDULE  is started.  The  name  of  this  checkpoint  data  is
  1863.      "xxxx.STA"  and  allows you to  use  the  personal computer  for other
  1864.      purposes without loosing the current scheduling status.
  1865.  
  1866.      When the F2 frame is activated  the table is searched to determine  if
  1867.      there are any tasks with a  start  time  equal to or  later  than  the
  1868.      current time  and that  have  the prerequisites  completed. These  are
  1869.      tasks which  should be started, according to the schedule. Placing the
  1870.      cursor  next to the selected task and pressing the X key will indicate
  1871.      to the program that this task has indeed  been  started  and the table
  1872.      will be updated to indicate the current time (actual start time).
  1873.  
  1874.      Tasks  which  have  not  been started  at  the  scheduled time  may be
  1875.      rescheduled  by  going  to the  F10 frame and re-running  the schedule
  1876.      program  (S).  Since they have not been declared to have been  started
  1877.      they will be rescheduled.
  1878.  
  1879.      At the time a  task is  declared  to  have been  started any inventory
  1880.      (Ixx) or buffer (Bxx) resources, used by the task, will  be updated in
  1881.      the resource (xxxx.RES) data base.
  1882.  
  1883.      The  table is also searched for tasks which are in process (previously
  1884.      declared to have been started) and who's  scheduled completion time is
  1885.      equal to or later than the current time. These tasks will be listed on
  1886.      the right side of the screen. Placing the cursor next  to the task and
  1887.      pressing the X key will indicate to the program that the task has been
  1888.      completed. The table  will be updated to  indicate the current time as
  1889.      the completed time  and if the indicated task was the last  task  of a
  1890.      job, the job will be removed from the table and the xxxx.JOB data base
  1891.      will be updated to erase the JOBS TO BE DONE field.
  1892.  
  1893.      These procedures  are designed  to  allow  new jobs to be added at any
  1894.      time and for rescheduling  dynamically  as  real  time  events  occur.
  1895.      Listings of the schedule will include an * between  the  date and time
  1896.      fields if the time indicated is actual rather than scheduled.
  1897.  
  1898.  
  1899.  
  1900.  
  1901.  
  1902.  
  1903.  
  1904.  
  1905.  
  1906.  
  1907.  
  1908.  
  1909.  
  1910.  
  1911.      HITT Personal Software          Page 20
  1912.  
  1913.  
  1914.  
  1915.  
  1916.  
  1917.                                     SCHEDULE
  1918.  
  1919.  
  1920.  
  1921.      CHAPTER 9. INTERACTIVE STATUS DISPLAYS
  1922.  
  1923.  
  1924.  
  1925.      In the interactive job shop environment  there  is a requirement to be
  1926.      able  to  re-schedule at any time  to  adjust for the unexpected. If a
  1927.      piece  of  equipment breaks down  or an employee  becomes  ill, we can
  1928.      access the resource in the data base, set a date and time the resource
  1929.      is expected back, and re-compute the  schedule. If a customer does not
  1930.      provide an item required to start  the job we can access the job file,
  1931.      set a new requested start time, and re-compute the schedule. If things
  1932.      are getting backed up, re-compute the schedule.
  1933.  
  1934.      With this type of  interaction it is  desirable to be able to  inquire
  1935.      into the system rather than getting the detailed printouts each time a
  1936.      change is made. For this purpose  the F4, F6, F8 functions can be used
  1937.      with an optional color or black and white monitor (40 x 25).
  1938.  
  1939.      Pressing  the  F6 key  causes detail  displays  to be  placed  on  the
  1940.      optional monitor. Using the optional display has the advantage that it
  1941.      can  be  broadcast to  multiple displays and the  display  will remain
  1942.      until changed (you can even exit to DOS and run other programs between
  1943.      scheduled events).
  1944.  
  1945.      There are three  displays that  are supported  on the  monitor for the
  1946.      interactive job shop environment.
  1947.  
  1948.      1.  Job status display
  1949.      2.  Start task detail
  1950.      3.  Activity detail
  1951.  
  1952.      Job  status display:  In order to answer the  question  "how is my job
  1953.      coming" select F3, enter  the name, move the cursor down to select the
  1954.      job in question, press F6 to display the status summary.
  1955.  
  1956.      Start task  detail:  Frame F2 displays the tasks to be started. To get
  1957.      the details about one of these,  select it with  the cursor and  press
  1958.      F6.
  1959.  
  1960.      Activity detail:  When in other than the first two states the activity
  1961.      file  detail  can  be  displayed  by  pressing  F6. This  has  special
  1962.      considerations but will normally display the next task to be started.
  1963.  
  1964.      The  advantage and disadvantage  of  this display is that  it does not
  1965.      require  the internal tables as do the other two interactive displays.
  1966.      Detail status can be displayed when the  tables are  being re-computed
  1967.      but the logic  of what has  to  be completed before something else can
  1968.      start will not be present. Also  milestones (tasks  without resources)
  1969.      do not exist on the activity file as they are not activities.
  1970.  
  1971.      F6 will locate the first activity which is scheduled after the current
  1972.      time. This is normally the next task if you are on schedule.
  1973.  
  1974.      F8  will  advance to  the next task in the activity  file. If the horn
  1975.  
  1976.  
  1977.      HITT Personal Software          Page 21
  1978.  
  1979.  
  1980.  
  1981.  
  1982.  
  1983.                                     SCHEDULE
  1984.  
  1985.  
  1986.  
  1987.      sounds the end of file has been reached.
  1988.  
  1989.      F4  will move  back  one activity  in the  activity file. If the  horn
  1990.      sounds the first record is being displayed.
  1991.  
  1992.      The  activity  file  records  are  in  the  scheduled  sequence   (not
  1993.      necessarily in time sequence).
  1994.  
  1995.  
  1996.  
  1997.  
  1998.  
  1999.  
  2000.  
  2001.  
  2002.  
  2003.  
  2004.  
  2005.  
  2006.  
  2007.  
  2008.  
  2009.  
  2010.  
  2011.  
  2012.  
  2013.  
  2014.  
  2015.  
  2016.  
  2017.  
  2018.  
  2019.  
  2020.  
  2021.  
  2022.  
  2023.  
  2024.  
  2025.  
  2026.  
  2027.  
  2028.  
  2029.  
  2030.  
  2031.  
  2032.  
  2033.  
  2034.  
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040.  
  2041.  
  2042.  
  2043.      HITT Personal Software          Page 22
  2044.  
  2045.  
  2046.  
  2047.  
  2048.  
  2049.                                     SCHEDULE
  2050.  
  2051.  
  2052.  
  2053.      CHAPTER 10. CONTROL FRAME
  2054.  
  2055.  
  2056.  
  2057.      Key letters and numbers are used to activate a variety of functions on
  2058.      the F10 frame as follows:
  2059.  
  2060.  
  2061.  
  2062.      PRINTER OUTPUT SELECTIONS
  2063.  
  2064.  
  2065.      It should be  noted that  the actual printing is done  as a background
  2066.      task and  overlaps the disk operations with  the printers line buffer.
  2067.      Most SPOOL packages provide no  advantage in print time, require extra
  2068.      memory, and delay attempts to terminate unwanted printouts.
  2069.  
  2070.      Print  selection  1:  Requests a  listing for the entire Project. This
  2071.      lists all  scheduled  jobs and tasks in  order  by  the  start  times.
  2072.      Included in the listing is Job name, Task name, Start and Stop times.
  2073.  
  2074.      Print  selection 2:  Requests  a  Schedule by Job listing. This  lists
  2075.      separately the tasks  for each job. Included in the listing is the job
  2076.      name field,  job  description  field,  jobs to be done field, and  the
  2077.      requested  start  and  stop times  as the header. The  task name, task
  2078.      description, and scheduled start and stop times are tabulated in order
  2079.      by the start time.
  2080.  
  2081.      Print  selection 3:  Requests  a Schedule by Job listing as  in #2 but
  2082.      includes the resources  assigned to each task.  This  listing contains
  2083.      the maximum amount of detail about the jobs.
  2084.  
  2085.      Print selection 4:  Requests a Schedule for the  Jobs just  started or
  2086.      changed. The  format is the same  as #2. This  request does  not reset
  2087.      itself  after  the printout  as it is  intended  for  the  interactive
  2088.      environment and will  start a printout each time a new job is  entered
  2089.      and will print only the new jobs schedule.
  2090.  
  2091.      Print  selection  5:  Requests an  ACTUAL  time  listing  for the  job
  2092.      completed.  The format is the same as #2. When the last  task of a job
  2093.      is  marked as  being  complete (on the F4 frame)  this  printout  will
  2094.      capture the  actual data before the table is deleted from memory. This
  2095.      request does  not reset  itself as it  is meant to capture the  actual
  2096.      task performance in the job shop interactive environment.
  2097.  
  2098.      Print selection 6:  Requests a listing of activities for each resource
  2099.      selected. The class field in the resource record has 3 characters, and
  2100.      the  frame suggests you use "INV, CAP, LAB, or JOB". However there are
  2101.      other selections that can be used to make this printout selection more
  2102.      meaningful. The only  requirement the  program places on this field is
  2103.      that any class that has a first letter of "I", "B", or "J" get special
  2104.      attention,  the remainder of the field can be used to select groups of
  2105.      resources to print with a single request.
  2106.  
  2107.  
  2108.  
  2109.      HITT Personal Software          Page 23
  2110.  
  2111.  
  2112.  
  2113.  
  2114.  
  2115.                                     SCHEDULE
  2116.  
  2117.  
  2118.  
  2119.      If  you  would  like to  provide  an  activity  listing  for a  single
  2120.      resource, give  it a  unique class code within  the first letter class
  2121.      desired.
  2122.  
  2123.      Print selections 7, 8, 9, and 0:  Requests  a listing of the data base
  2124.      files.  When  developing  complex  project  task  definitions   it  is
  2125.      sometimes useful to have a hard copy reference. Also when decoding the
  2126.      internal  tables  the  numeric  codes  refer  to  the  record  numbers
  2127.      displayed in these listings.
  2128.  
  2129.      Selection H:  Allows you to enter  a line of data to be printed as the
  2130.      first line of each  page of printer output. This is  normally used  to
  2131.      print the security classification.
  2132.  
  2133.      Selection R:  Resets all print requests. Any printout in  process will
  2134.      continue.
  2135.  
  2136.      Selection T:  Terminates  the printout in process.  The next  printout
  2137.      selected will start  after the termination unless they are reset using
  2138.      "R" or multiple terminate "T"s are entered.
  2139.  
  2140.  
  2141.  
  2142.      BACKGROUND PROCESSING CONTROL
  2143.  
  2144.  
  2145.      Selection  S:  Starts   the   scheduling  program   to   schedule   or
  2146.      re-schedule. This  can be  done at any time but may obsolete  previous
  2147.      resource  allocations   and  job   estimates   (in  process   resource
  2148.      allocations are  preserved). Tasks marked as started or completed will
  2149.      be accounted for as the  process is  not starting over by rescheduling
  2150.      (unless you first erase the "xxxx.STA" file).
  2151.  
  2152.      Selection A:  Provides an automatic "S" function each time the F3 (JOB
  2153.      REQUEST) frame updates the data base with a new or changed job request
  2154.      or when a task is completed (X in frame F2 IN PROCESS).
  2155.  
  2156.      Selection E:  Tasks to be started or ended can be displayed before the
  2157.      actual time has arrived. The amount it will be early is determined  by
  2158.      the value entered here.
  2159.  
  2160.  
  2161.  
  2162.  
  2163.  
  2164.  
  2165.  
  2166.  
  2167.  
  2168.  
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  
  2174.  
  2175.      HITT Personal Software          Page 24
  2176.  
  2177.  
  2178.  
  2179.  
  2180.  
  2181.                                     SCHEDULE
  2182.  
  2183.  
  2184.  
  2185.      Selection C:  The color attributes can be set using this function.
  2186.  
  2187.          CODE      COLOR      MONOCHROME      Use F1 HELP to find the position
  2188.  
  2189.         @ or 0 = Non Display  Non Display       1 = 40x25 Date/time
  2190.         A or 1 = Blue         Underscored       2 = 80x25   "
  2191.         B or 2 = Green        Green             3 = 40x25 Fixed format
  2192.         C or 3 = Cyan            "              4 = 80x25   "
  2193.         D or 4 = Red             "              5 = 40x25 Data base data
  2194.         E or 5 = Magenta         "              6 = 80x25   "
  2195.         F or 6 = Brown           "              7 = 40x25 Disk command display
  2196.         G or 7 = White           "              8 = 80x25   "
  2197.         H or 8 = Gray         Non Display       9 = 80x25 Background processing
  2198.         I or 9 = Light Blue   Bright Green     10 = 80x25 Help displays
  2199.         J or : = Light Green     "             11 = 80x25 Keyboard data
  2200.         K or ; = Light Cyan      "
  2201.         L or < = Light Red       "
  2202.         M or = = Light Magenta   "
  2203.         N or > = Yellow          "
  2204.         O or ? = Bright White    "
  2205.  
  2206.  
  2207.  
  2208.      DATA BASE MAINTENANCE
  2209.  
  2210.  
  2211.      Data  base  maintenance  provides  for   the   automatic  deletion  of
  2212.      individual records  in  the  data base. The  file  size will  not  get
  2213.      smaller but space will be created so that records can be added without
  2214.      increasing the file size.
  2215.  
  2216.      Selection D:  When the arrow  is pointing  to the "D", records will be
  2217.      deleted as follows.
  2218.  
  2219.      Job Request records  will be deleted at the completion of the job. The
  2220.      REQUESTED JOBS field is made blank when the last task is completed and
  2221.      the record will be deleted the next time scheduling is done.
  2222.  
  2223.      Task  records are not  automatically deleted. Entering  a zero for the
  2224.      number of records required will delete task definitions.
  2225.  
  2226.      Resource  Definition records  are deleted when the quantity is "0000".
  2227.      If you would like to delete a record put "0000" in the quantity field.
  2228.      Inventory records will have this value when used up.
  2229.  
  2230.      Calendar records will be deleted when the year  and month is less than
  2231.      the current time. Be sure the DOS  date is correct  or  you  may loose
  2232.      some calendars.
  2233.  
  2234.      Selection U:  Task and resource data base files can be protected  from
  2235.      accidental  alteration by locking these files. Each depression of  "U"
  2236.      reverses the state of the lock.
  2237.  
  2238.  
  2239.  
  2240.  
  2241.      HITT Personal Software          Page 25
  2242.  
  2243.  
  2244.  
  2245.  
  2246.  
  2247.                                     SCHEDULE
  2248.  
  2249.  
  2250.  
  2251.      Selection  M:  Max Activities  set  the  maximum  number  of  activity
  2252.      records that will  be written by the scheduling process. Each activity
  2253.      record is  24 characters in length so  a space of 24 times the  number
  2254.      entered in maximum activities could be required for the activity file.
  2255.      In addition  a xxxx.TMP file  is  created and is  renamed xxxx.ACT  so
  2256.      additional space is actually required.
  2257.  
  2258.      You  will normally want all the scheduled activities recorded. However
  2259.      there  are  cases where a huge number of activities  are generated and
  2260.      are of little value. For example: in project planning over a number of
  2261.      years it is not necessary to see each employee go to lunch and go home
  2262.      (2 activities) each day when the task lasts  for  months. Limiting the
  2263.      size of  the  activity file has the effect  of being able  to  see the
  2264.      detail activity for the next n days without generating huge  listings.
  2265.      You can play with the number to get the desired detail look ahead.
  2266.  
  2267.      The effect of loosing activity records is that a resource  will not be
  2268.      listed with the task  and inventory records will not be updated if the
  2269.      task is started. You should allow enough activity records to cover the
  2270.      period between re-scheduling.
  2271.  
  2272.      Running   out   of  disk  space  while  scheduling  is  normally   not
  2273.      catastrophic  as long as there is room to take a checkpoint. Recording
  2274.      of  activities  will  stop  but  scheduling  will  continue.  The  MAX
  2275.      ACTIVITIES number  will  be  automatically  adjusted downward  to  the
  2276.      actual available space.
  2277.  
  2278.  
  2279.  
  2280.  
  2281.  
  2282.  
  2283.  
  2284.  
  2285.  
  2286.  
  2287.  
  2288.  
  2289.  
  2290.  
  2291.  
  2292.  
  2293.  
  2294.  
  2295.  
  2296.  
  2297.  
  2298.  
  2299.  
  2300.  
  2301.  
  2302.  
  2303.  
  2304.  
  2305.  
  2306.  
  2307.      HITT Personal Software          Page 26
  2308.  
  2309.  
  2310.  
  2311.  
  2312.  
  2313.                                     SCHEDULE
  2314.  
  2315.  
  2316.  
  2317.      CHAPTER 11. SPECIAL RESOURCES
  2318.  
  2319.  
  2320.  
  2321.      There are three types of resources that the program handles in special
  2322.      ways.  These  resources provide  some  of  the  powerful task modeling
  2323.      abilities of the program.
  2324.  
  2325.  
  2326.  
  2327.      INVENTORY RESOURCES
  2328.  
  2329.  
  2330.      Resources which use a  type code which starts  with the letter "I" are
  2331.      considered to be  inventory type resources. These  are subtracted from
  2332.      the data base when used.
  2333.  
  2334.      The generic name of the resource can be used to allow selection from a
  2335.      number of inventory specifications which may be available at different
  2336.      times.  The size code  can  be  used  to control the  sequence  of the
  2337.      selection.
  2338.  
  2339.      This  facility can also be  used  to control the rate  at which things
  2340.      (like money)  are  used.  Making the  resources  available  using  the
  2341.      resource availability date  and specifying the amount required in  the
  2342.      task description will constrain the starting time of tasks.
  2343.  
  2344.  
  2345.  
  2346.      BUFFER RESOURCES
  2347.  
  2348.  
  2349.      The  name  comes from  the idea  of  modeling  a production line where
  2350.      buffers  separate  operations  which  are defined  as  tasks.  A given
  2351.      station  can stop for a period  of  time  without stopping  the  other
  2352.      stations to the limit of the buffer.
  2353.  
  2354.      One example  of  the use of this buffer type resource is  available in
  2355.      the TUTOR use of  a resource named  "BLD".  The generic  name of  this
  2356.      resource is "XBLD" and the  data base shows a  quantity of 3. When the
  2357.      task "CAR TO GARAGE" is started it requires one BLD resource. When the
  2358.      task "CAR TO LOT" is started it requires one XBLD resource.
  2359.  
  2360.      What is happening is that when  the NAME of a buffer resource is  used
  2361.      the resource  is subtracted  from the available  quantity in  a manner
  2362.      similar to inventory resources. That  is the resource is  not returned
  2363.      for use when  the task is completed. When the GENERIC NAME is used the
  2364.      quantity is  added to the available quantity.  In  this way the number
  2365.      of cars in the building  is limited to three  by the original quantity
  2366.      of this resource.
  2367.  
  2368.      The same function  can be used to create  a  resource with one job for
  2369.      use by  others.  If a  number  of  jobs  cannot  be  started  until  a
  2370.      specification is available and this specification is the end result of
  2371.  
  2372.  
  2373.      HITT Personal Software          Page 27
  2374.  
  2375.  
  2376.  
  2377.  
  2378.  
  2379.                                     SCHEDULE
  2380.  
  2381.  
  2382.  
  2383.      scheduling a job. This could be  modeled by defining a "SPECIFICATION"
  2384.      resource with a generic name of "RELEASE SPEC" and a quantity of zero.
  2385.      The  tasks which  require  the  specification  before  they can start,
  2386.      specify  a resource requirement of "SPECIFICATION" with  a quantity of
  2387.      one. The task which releases the specification and is gating the other
  2388.      jobs  would  specify a resource  requirement  of "RELEASE SPEC"  and a
  2389.      large quantity (9999).
  2390.  
  2391.      The generic names of Bxx class resources should be unique.
  2392.  
  2393.  
  2394.  
  2395.      JOB RESOURCES
  2396.  
  2397.  
  2398.      Job  resources  allow  a  single  resource  specification to  be  used
  2399.      independently within a job.  The  program  will create  an  additional
  2400.      resource for each job that uses it. This concept provides for the idea
  2401.      that a number of tasks could be preformed on this  job resource except
  2402.      that there are restrictions on how many can be preformed at once.
  2403.  
  2404.      Generic name job  resources:  The  task specifies the generic  name of
  2405.      the resource  which is a type Jxx. This will limit the number of tasks
  2406.      which can be executed in parallel  to  the  quantity provided  without
  2407.      restricting the sequence in which they are done.
  2408.  
  2409.      An example of this  is in the  TUTOR resource  "CUSTOMER  CAR"  with a
  2410.      quantity of 1.  The generic name "CAR" is specified in the tasks which
  2411.      require the car as the object to  be operated on.  Only one  operation
  2412.      within the job which specifies this resource can be executed at a time
  2413.      because  the quantity of this resource is 1. Specifying a  quantity of
  2414.      two  would  allow  any  two  tasks  (within  the  constraints  of  the
  2415.      prerequisite task requirements) to be executed simultaneously.
  2416.  
  2417.      The resource  name should be selected to describe the  resource in the
  2418.      printouts and display.
  2419.  
  2420.      Specific name job resources:  When the specific name of a job resource
  2421.      is  used  it is  handled  in  a  vary  special  way which  allows  for
  2422.      controlling task sequences in addition to allowing for  the concept of
  2423.      job parameters and decision points within a job/task model.
  2424.  
  2425.      The  TUTOR data base uses this  feature to  control  the start of task
  2426.      sequences  which  cannot  be  interrupted  as  well  as  allowing  the
  2427.      individual task  requests (LUB, OIL,  FILTER,  ETC.)  to  be specified
  2428.      within the  job description  and inserted  at  the  appropriate points
  2429.      within the  job grid.  This  facility essentially  provides a resource
  2430.      method of describing task sequences.
  2431.  
  2432.      The rules followed by the program for specific named job resources are
  2433.      as follows:
  2434.  
  2435.  
  2436.      o   Of the tasks which have their prerequisites satisfied.
  2437.  
  2438.  
  2439.      HITT Personal Software          Page 28
  2440.  
  2441.  
  2442.  
  2443.  
  2444.  
  2445.                                     SCHEDULE
  2446.  
  2447.  
  2448.  
  2449.      o   Select  the  tasks  which  do  not specify  a  specific  name  job
  2450.          resource.
  2451.      o   If none select the  tasks with the lowest size requirement for the
  2452.          specific name job resource.
  2453.      o   Of the  tasks  selected  apply the other  resource constraints  to
  2454.          select the task to schedule.
  2455.  
  2456.      It may be helpful to study the TUTOR.TSK file to gain an understanding
  2457.      of how this facility is used.
  2458.  
  2459.  
  2460.  
  2461.  
  2462.  
  2463.  
  2464.  
  2465.  
  2466.  
  2467.  
  2468.  
  2469.  
  2470.  
  2471.  
  2472.  
  2473.  
  2474.  
  2475.  
  2476.  
  2477.  
  2478.  
  2479.  
  2480.  
  2481.  
  2482.  
  2483.  
  2484.  
  2485.  
  2486.  
  2487.  
  2488.  
  2489.  
  2490.  
  2491.  
  2492.  
  2493.  
  2494.  
  2495.  
  2496.  
  2497.  
  2498.  
  2499.  
  2500.  
  2501.  
  2502.  
  2503.  
  2504.  
  2505.      HITT Personal Software          Page 29
  2506.  
  2507.  
  2508.  
  2509.  
  2510.  
  2511.                                     SCHEDULE
  2512.  
  2513.  
  2514.  
  2515.      CHAPTER 12. ASSIGNMENT TRACKING
  2516.  
  2517.  
  2518.  
  2519.      If you happen  to be managing a  group of people who's assignments are
  2520.      to respond  to individual questions (staff work)  then SCHEDULE can be
  2521.      used to track  these assignments without really  doing any scheduling.
  2522.      Some people call these assignments "ToDo's".
  2523.  
  2524.      In this environment the program is used to track the ToDo's
  2525.  
  2526.      o   Name of the assignment and the description
  2527.  
  2528.      o   Name of the employee assigned the task
  2529.  
  2530.      o   Amount of time before a review should be done
  2531.  
  2532.      o   Date and time the assignment was entered into the system
  2533.  
  2534.      o   Date and time the employee was told of the assignment
  2535.  
  2536.      o   Reminder when the task should be completed
  2537.  
  2538.      o   Date and time the assignment was completed
  2539.  
  2540.      o   Printouts of all active assignments
  2541.  
  2542.      o   Printouts of all active assignments by employee
  2543.  
  2544.      o   Printouts of completed tasks for the department activity file
  2545.  
  2546.      As  the questions arise the new jobs are entered into  the system. The
  2547.      name and description field of  frame 3  (F3)  are  filled in. SCHEDULE
  2548.      will  automatically set the  starting and ending time  to  the current
  2549.      time thus providing the first  time stamp. If the  name  of the person
  2550.      that is  to receive the  assignment is known,  it should be entered in
  2551.      the  JOBS TO  BE DONE field.  If the name is  unknown  a name  such as
  2552.      "ASSIGN" should be entered.
  2553.  
  2554.      Processing the schedule will cause this job to be  displayed on the F2
  2555.      frame  under "TASKS TO BE STARTED". This  is  the  list of assignments
  2556.      which must be communicated to  the employees. Pressing  an "X" next to
  2557.      the task will indicate to  the program that the task has been assigned
  2558.      and the time will be recorded.
  2559.  
  2560.      Pressing  F2  again  will  display  all  the  ToDo's  that  are  to be
  2561.      completed. When  they are completed, position  the cursor  next to the
  2562.      task and press  "X". This will indicate to the program  that the  task
  2563.      has been completed and the actual time will be recorded.
  2564.  
  2565.      When the task completion time is due it will appear on the  right side
  2566.      of the F2 frame under "TASKS TO BE COMPLETED".
  2567.  
  2568.      The  F10  5 function will provide an automatic printout  of  completed
  2569.  
  2570.  
  2571.      HITT Personal Software          Page 30
  2572.  
  2573.  
  2574.  
  2575.  
  2576.  
  2577.                                     SCHEDULE
  2578.  
  2579.  
  2580.  
  2581.      tasks  which  can  be  placed  in the  department  activity  file  for
  2582.      posterity. The  requested start time is the time you first entered the
  2583.      ToDo.  The  task  start  time  is  equal  to the  time  the  task  was
  2584.      communicated to the employee. The  task completion  time was the  time
  2585.      the answer was communicated to you.
  2586.  
  2587.  
  2588.  
  2589.      JOB DEFINITION
  2590.  
  2591.  
  2592.      Each task is defined as a job. The person  to  be  assigned the job is
  2593.      entered into the "JOBS TO  BE DONE" field. If a time duration  is also
  2594.      to be set the duration becomes part of the name. For  example "JOHN  1
  2595.      WEEK" for employee JOHN and a duration of 1 WEEK.
  2596.  
  2597.  
  2598.  
  2599.      TASK DEFINITION
  2600.  
  2601.  
  2602.      Each employee's  name (nickname etc.) can  be used as a task name. One
  2603.      task should also be created with the name "ASSIGN".
  2604.  
  2605.      The tasks which are given  a name that implies an  unlimited  duration
  2606.      should  be given  a large duration  (9999). The tasks which  specify a
  2607.      time  in  addition to  the  name  are  given appropriate  durations (1
  2608.      week=7x24=168 hours). The hours/day field should be left blank.
  2609.  
  2610.      In the resource field, enter the name of the person referred to in the
  2611.      task name. The quantity and size fields should be left blank.
  2612.  
  2613.      No prerequisites should be specified.
  2614.  
  2615.  
  2616.  
  2617.      RESOURCE DEFINITION
  2618.  
  2619.  
  2620.      Each  employee  is defined as a  resource by  using their name  as the
  2621.      resource name. An entry is also made for a resource named "ASSIGN".
  2622.  
  2623.      A type  of Lxx is  used where  xx is unique (such  as initials).  This
  2624.      allows  us  to use the L**  option with the  F10 print  6  function to
  2625.      provide listings  of all the employees, or we can use  the Lxx  to get
  2626.      individual listings.
  2627.  
  2628.      The quantity field is set to a large number (9999).
  2629.  
  2630.      The size and calendar fields are left blank.
  2631.  
  2632.  
  2633.  
  2634.  
  2635.  
  2636.  
  2637.      HITT Personal Software          Page 31
  2638.  
  2639.  
  2640.  
  2641.  
  2642.  
  2643.                                     SCHEDULE
  2644.  
  2645.  
  2646.  
  2647.      JOB FILE LISTINGS
  2648.  
  2649.  
  2650.      Printing  the entire  job file will  provide  a  listing  with all the
  2651.      description  information of the outstanding jobs. If  you wish to sort
  2652.      this file it should  first be  copied  to a new project  name, sorted,
  2653.      then printed from that new  name.  A batch file and .SKB  command file
  2654.      can be  setup to provide  a single operation  that will copy the file,
  2655.      sort it using DOS sort,  start SCHEDULE using  the new  project  name,
  2656.      enter the keys to cause the printout, and exit SCHEDULE.
  2657.  
  2658.  
  2659.  
  2660.      FRAME 10 CONTROLS
  2661.  
  2662.  
  2663.      For this application the F10 controls should be set as follows:
  2664.  
  2665.      o   5 on to provide automatic summary task listings.
  2666.  
  2667.      o   A on to provide automatic recalculation when new jobs are entered.
  2668.  
  2669.      o   D on to provide  automatic  job  record  deletion  when tasks  are
  2670.          completed.
  2671.  
  2672.      o   M set to 9999 to save all started activities.
  2673.  
  2674.  
  2675.  
  2676.      SUMMARY
  2677.  
  2678.  
  2679.      There are other  ways of  structuring the task data base  which may be
  2680.      more appropriate for your  application.  For example the  persons name
  2681.      could specify  a start and end task and optional duration tasks  could
  2682.      be inserted by the  program using  the Jxx resource funneling function
  2683.      with appropriate size  codes. This approach would not require  as many
  2684.      task descriptions if a large number of  different time  durations were
  2685.      required for a large number of employees.
  2686.  
  2687.      The example here is simpler and  is offered as a suggestion to get you
  2688.      started.
  2689.  
  2690.  
  2691.  
  2692.  
  2693.  
  2694.  
  2695.  
  2696.  
  2697.  
  2698.  
  2699.  
  2700.  
  2701.  
  2702.  
  2703.      HITT Personal Software          Page 32
  2704.  
  2705.  
  2706.  
  2707.  
  2708.  
  2709.                                     SCHEDULE
  2710.  
  2711.  
  2712.  
  2713.      CHAPTER 13. MEETING CALENDARS
  2714.  
  2715.  
  2716.  
  2717.      Keeping track of your meeting calendar  is  a useful  application that
  2718.      can  be  combined  with  project   management  and   staff  assignment
  2719.      applications  into  a  single department project file. It  can also be
  2720.      done independently to produce a daily listing of your meeting calendar
  2721.      to be carried by you.
  2722.  
  2723.      This application will provide the following:
  2724.  
  2725.      o   Time stamp of the date/time the item was entered
  2726.      o   Scheduled date/time of the meeting
  2727.      o   Time stamp of the date/time the meeting was started
  2728.      o   Time stamp of the date/time the meeting ended
  2729.      o   Optional listing of each meeting for your activity file
  2730.      o   Optional listing of all pending meetings in order by date/time
  2731.      o   Optional listing of all pending meeting conflicts
  2732.  
  2733.  
  2734.  
  2735.      JOB DESCRIPTION
  2736.  
  2737.  
  2738.      The name of the meeting will be entered as a job on the F3 frame.
  2739.  
  2740.      The duration of the meeting will be the "JOB TO BE DONE". For example:
  2741.      ".5 HRS" for a one half hour meetings.
  2742.  
  2743.      The requested start time must be set to the date/time of the meeting.
  2744.  
  2745.      The requested completion  time was  set by the program to the  current
  2746.      time and  should be left unchanged as it represents the the time stamp
  2747.      for the time the meeting was entered into the system.
  2748.  
  2749.  
  2750.  
  2751.      TASK DESCRIPTION
  2752.  
  2753.  
  2754.      A task description is created for each possible meeting time duration.
  2755.      For example:  ".5 HRS", "1 HR", "1.5 HRS" ... "8 HRS" would be used as
  2756.      the task names.
  2757.  
  2758.      The task duration is set to the duration indicated by the task name.
  2759.  
  2760.      The hours/day field is left blank.
  2761.  
  2762.      The resource field will  specify your name (nickname) and the resource
  2763.      "REP". For example: "JOHN,REP".
  2764.  
  2765.      The quantity, size, and prerequisite fields are left blank.
  2766.  
  2767.  
  2768.  
  2769.      HITT Personal Software          Page 33
  2770.  
  2771.  
  2772.  
  2773.  
  2774.  
  2775.                                     SCHEDULE
  2776.  
  2777.  
  2778.  
  2779.      RESOURCE DESCRIPTION
  2780.  
  2781.  
  2782.      One resource is created with your name  as the resource  name and with
  2783.      your nickname as  the generic name. Make the  class equal to "Lxx" and
  2784.      the quantity field equal to "9999".
  2785.  
  2786.      The next resource is created with "CONFLICT" as the resource  name and
  2787.      with "REP" as the generic name. Make the class equal to "Lxx" where xx
  2788.      is  the same as was  used  with your  name so the CONFLICTs will print
  2789.      anytime  your resource class  is requested for  print.  Make the  size
  2790.      field equal to "1" and the quantity field equal to "9999".
  2791.  
  2792.      The  last resource  is created  with "DUMMY" as the  resource name and
  2793.      with "REP" as the generic name. Leave the  class and size fields blank
  2794.      and make the quantity field equal to "1". The  quantity represents the
  2795.      number of meeting you can attend simultaneously.
  2796.  
  2797.  
  2798.  
  2799.      MEETING CALENDAR LISTINGS
  2800.  
  2801.  
  2802.      The  F10 print 6 of  "Lxx"  will print a listing of all the  scheduled
  2803.      meetings in  order by the date  and time.  If  any conflicts  exist an
  2804.      additional listing will be created which indicates the conflicts.
  2805.  
  2806.      You may wish to send this file to the disk using the "ODx" command and
  2807.      setting the lines per page  to zero using the "L00" command. This will
  2808.      allow you to browse your schedule using an editor program such  as the
  2809.      "IBM Personal Editor".
  2810.  
  2811.  
  2812.  
  2813.      INTERACTIVE MEETING REMINDERS
  2814.  
  2815.  
  2816.      Using the F10 "E" command  you  can set the amount of advanced  notice
  2817.      you would like  to  have regarding the upcoming meetings. For example:
  2818.      setting 8 hours would allow you to see all of todays  events on the F2
  2819.      frame.
  2820.  
  2821.  
  2822.  
  2823.      AUTOMATIC OPERATION
  2824.  
  2825.  
  2826.      A  batch  file in combination  with  a command  file can be  setup  to
  2827.      automatically display  your events according to your own routine.  You
  2828.      may wish  to have your days agenda displayed  when  you first turn  on
  2829.      your system, press Esc  and enter a mode where each event is displayed
  2830.      five minutes prior  to its scheduled time,  press Esc  again and print
  2831.      the entire calendar to disk, exit the program and invoke and editor to
  2832.      display your entire schedule on the screen.
  2833.  
  2834.  
  2835.      HITT Personal Software          Page 34
  2836.  
  2837.  
  2838.  
  2839.  
  2840.  
  2841.                                     SCHEDULE
  2842.  
  2843.  
  2844.  
  2845.      See  the chapters  "Keyboard  Command File", "Ideas  for  the expert",
  2846.      "Program  exit return codes to DOS" and  your DOS manual under "BATCH"
  2847.      for details.
  2848.  
  2849.  
  2850.  
  2851.  
  2852.  
  2853.  
  2854.  
  2855.  
  2856.  
  2857.  
  2858.  
  2859.  
  2860.  
  2861.  
  2862.  
  2863.  
  2864.  
  2865.  
  2866.  
  2867.  
  2868.  
  2869.  
  2870.  
  2871.  
  2872.  
  2873.  
  2874.  
  2875.  
  2876.  
  2877.  
  2878.  
  2879.  
  2880.  
  2881.  
  2882.  
  2883.  
  2884.  
  2885.  
  2886.  
  2887.  
  2888.  
  2889.  
  2890.  
  2891.  
  2892.  
  2893.  
  2894.  
  2895.  
  2896.  
  2897.  
  2898.  
  2899.  
  2900.  
  2901.      HITT Personal Software          Page 35
  2902.  
  2903.  
  2904.  
  2905.  
  2906.  
  2907.                                     SCHEDULE
  2908.  
  2909.  
  2910.  
  2911.      CHAPTER 14. DEVELOPMENT PROJECT PLANNING
  2912.  
  2913.  
  2914.  
  2915.      SCHEDULE  provides  a  number of  features which allow  the process of
  2916.      "Development Project Planning" to be  done in levels,  while providing
  2917.      continuity in the projects scheduling and tracking functions.
  2918.  
  2919.      The service  station  job shop environment is a  situation  where  the
  2920.      tasks have been  done  before  and  are very well understood.  In that
  2921.      environment  "tasks" and  "resources" remain  relatively  constant and
  2922.      jobs become the variable. Not so with development projects.
  2923.  
  2924.      With  development  projects  the  plan  has varying  detail  available
  2925.      depending on how far out we  are looking.  Typically we  will  have  a
  2926.      general idea  of how to go about attacking the project but do not know
  2927.      details. Therefore we would like  to be able to schedule with variable
  2928.      levels of detail.
  2929.  
  2930.      Most development projects have major phases like:
  2931.  
  2932.      o   Research
  2933.  
  2934.      o   Plan
  2935.  
  2936.      o   Design
  2937.  
  2938.      o   Prototype (simulate or model)
  2939.  
  2940.      o   Debug
  2941.  
  2942.      o   Release (to manufacturing)
  2943.  
  2944.      o   Product Support
  2945.  
  2946.      These phases represent  the points where the responsibility moves from
  2947.      one  organization  to  the   next.  These  are   normally   considered
  2948.      MILE-STONES and represent the points at which an output from one group
  2949.      is available as an input to the next group.
  2950.  
  2951.      It  is  important  for  the project model  to  have  boundaries  which
  2952.      represent  the actual organizational  responsibility boundaries of the
  2953.      project.  Most  organizations  have hierarchies and  the detail levels
  2954.      described here could be considered to be levels in this hierarchy.
  2955.  
  2956.      Another way  of looking at the levels  is as a "TOP  DOWN DESIGN", and
  2957.      since the final detail is added to the bottom, it becomes a "BOTTOM UP
  2958.      PLAN" much like the Eastern Cultural Methods.
  2959.  
  2960.      "QUALITY plans" also have characteristics which can be mapped into the
  2961.      process.  Defining the  input/output and  required steps  to produce a
  2962.      measurable quality process independently  from  schedule  and resource
  2963.      constraints is a powerful  tool. As pressure is applied  (schedule  or
  2964.      resource)  the steps being bypassed become  apparent. Choices can then
  2965.  
  2966.  
  2967.      HITT Personal Software          Page 36
  2968.  
  2969.  
  2970.  
  2971.  
  2972.  
  2973.                                     SCHEDULE
  2974.  
  2975.  
  2976.  
  2977.      be made intelligently to compromise the quality, schedule, or cost.
  2978.  
  2979.      The following detail levels describe ways or  levels that SCHEDULE can
  2980.      be applied to  development type projects.  You may  wish to jump in at
  2981.      some level  with your  project, or  you may choose to use  the  entire
  2982.      process.  SCHEDULE allows  you to  plan,  track, and  project from any
  2983.      level. It is unique in its ability to allow a great deal of detail.
  2984.  
  2985.  
  2986.  
  2987.      DETAIL LEVEL 1:
  2988.  
  2989.  
  2990.      This detail level is  equivalent to the level provided by most project
  2991.      management programs.  We specify an unconstrained resource environment
  2992.      and  impose the market requirements  (requested  completion).  If  the
  2993.      requested completion time cannot be  accomplished the critical path is
  2994.      defined so that we can adjust our assumptions accordingly.
  2995.  
  2996.      The  objective of  this  level is to bring the  planning  to the point
  2997.      where each of  the  independent areas  can independently  asses  there
  2998.      ability to  meet the overall  schedule. The output  from this level is
  2999.      used to commit  resources from  each of the effected areas to complete
  3000.      the definition of detail level 2.
  3001.  
  3002.      Our first pass would define each of the  phases, of the project,  as a
  3003.      task with a duration and the previous phase as a prerequisite task. As
  3004.      the responsible  areas  estimate the  resource requirements  they  are
  3005.      added to the task descriptions.
  3006.  
  3007.  
  3008.  
  3009.      JOB definition
  3010.  
  3011.  
  3012.      There is only one  job. It requests the final task (PRODUCT  SUPPORT),
  3013.      and has a requested start  and completion time. These same assumptions
  3014.      are used by the planning department, along with a product description,
  3015.      to estimate quantities etc.
  3016.  
  3017.  
  3018.  
  3019.      TASK definition
  3020.  
  3021.  
  3022.      Each phase becomes a task with the previous phase as its prerequisite.
  3023.      It is an over simplification to imply that there would be only 7 tasks
  3024.      however. The grid should contain as  much detail as  is available from
  3025.      historic information  or planning judgement.  There may be hundreds of
  3026.      tasks defined at this level. This level of scheduling is equivalent to
  3027.      the only level provided by most project  management systems. The  task
  3028.      duration  is estimated in hours but we normally  are not  thinking  at
  3029.      this detail  level.  The  number  to  use  is derived  by  doing  some
  3030.      multiplication.
  3031.  
  3032.  
  3033.      HITT Personal Software          Page 37
  3034.  
  3035.  
  3036.  
  3037.  
  3038.  
  3039.                                     SCHEDULE
  3040.  
  3041.  
  3042.  
  3043.          With 8 hour days and 5 day weeks
  3044.  
  3045.              1 day = 8 hours
  3046.  
  3047.              1 week = 40 hours
  3048.  
  3049.              1 month = 150 hours (173 without holidays/vacations)
  3050.  
  3051.              1 quarter = 500 hours (520 without holidays/vacations)
  3052.  
  3053.              1 year = 2000 hours (2080 without holidays/vacations)
  3054.  
  3055.      SCHEDULE allows you  to define up to 5 years (9999 hours)  as a single
  3056.      task duration (assuming 40 hour weeks).
  3057.  
  3058.      Since the resources will not  have calendars, at this detail level, we
  3059.      will set the HOURS PER DAY to match our assumptions.  With 8 hour days
  3060.      and 5 day weeks the hours/week will be 40 so we should use 6 hours/day
  3061.      (6x7=42) since the program will assume 7 day weeks.  This field allows
  3062.      us  to  specify approximate time scales  without requiring  calendars.
  3063.      When we  start specifying  calendars with  resources we will  make the
  3064.      hours/day = 24.
  3065.  
  3066.            32 to 38 hour weeks use 5 hours/day
  3067.  
  3068.            39 to 45 hour weeks use 6 hours/day
  3069.  
  3070.            46 to 52 hour weeks use 7 hours/day
  3071.  
  3072.            53 to 59 hour weeks use 8 hours/day   hours/week / 7 = hours/day
  3073.  
  3074.            60 to 66 hour weeks use 9 hours/day
  3075.  
  3076.            67 to 73 hour weeks use 10 hours/day
  3077.  
  3078.            74 to 80 hour weeks use 11 hours/day
  3079.  
  3080.      Usually,  at  this  level,  projects  are  estimated  as  people-days,
  3081.      people-weeks,  or  people-months and  assume  calendar durations.  The
  3082.      estimated effort required  to accomplish  a task should  always be the
  3083.      product of the resources specified times the duration specified.
  3084.  
  3085.      SCHEDULE  always uses hours  as the  duration  so that functions  like
  3086.      putting  on a  2nd shift or  scheduling  overtime  will  automatically
  3087.      reduce  the calendar time. Increasing the hours/day field, over normal
  3088.      working hours, is equivalent to adding overtime.
  3089.  
  3090.  
  3091.  
  3092.      RESOURCE definition
  3093.  
  3094.  
  3095.      Only  the main resources are specified  and these are  specified  at a
  3096.      high  level.  For  example we  might  require  Researchers,  Planners,
  3097.  
  3098.  
  3099.      HITT Personal Software          Page 38
  3100.  
  3101.  
  3102.  
  3103.  
  3104.  
  3105.                                     SCHEDULE
  3106.  
  3107.  
  3108.  
  3109.      Engineers, Technicians, Manufacturing Engineers,  etc. We  will create
  3110.      one  resource definition  for  each  of  these  and  specify  a  large
  3111.      available quantity to allow an unconstrained (best possible) schedule.
  3112.  
  3113.  
  3114.  
  3115.      The critical path
  3116.  
  3117.  
  3118.      The  output listing prints  an "*" before the task  name if the  float
  3119.      time is zero  or negative. With an unconstrained resource environment,
  3120.      as described here, this  will be the tasks which must  be improved  to
  3121.      improve the schedule (The Critical Path).
  3122.  
  3123.  
  3124.  
  3125.      DETAIL LEVEL 2
  3126.  
  3127.  
  3128.      This level  becomes  appropriate  when each  area of the  business  is
  3129.      committed  to the  schedule derived  by detail level 1. Here we define
  3130.      the output product of each area that is required before the next group
  3131.      can  start, and  we will set the requested start and completion  times
  3132.      for each area to the committed times negotiated using detail level 1.
  3133.  
  3134.      To do this  we will  define additional JOBs, one for each of the steps
  3135.      previously defined at  the points where the  responsibility moves to a
  3136.      different organization.  We  will also alter the  task descriptions so
  3137.      that  rather  than connecting the  tasks  with  prerequisites  we will
  3138.      specify a  resource  as being the product  produced  by  one group and
  3139.      required by  the next. This allows  us  to  plan  and track  based  on
  3140.      organizational boundaries.
  3141.  
  3142.      You may find later that it  is desirable to break  the  project into a
  3143.      number of projects based on the  same organizational boundaries.  This
  3144.      will allow scheduling at a lower  level within organizations that have
  3145.      responsibilities to multiple projects.  Here we would create a project
  3146.      that is really jobs from multiple  projects  that are sharing the same
  3147.      resource  pool.  In this case the schedules  are manually  controlled,
  3148.      between projects, using the availability dates of the output resource.
  3149.  
  3150.      SCHEDULE  is  unique  in its  ability to use "Bxx" class  resources to
  3151.      represent  a  resource  created  as the result of  executing a set  of
  3152.      scheduled tasks. This resources  creation represents a "Mile Stone" in
  3153.      most project management systems but  is more  realistically a resource
  3154.      as described here.
  3155.  
  3156.  
  3157.  
  3158.      JOB definition
  3159.  
  3160.  
  3161.      Add a  job for  each organization that  will have responsibilities  to
  3162.      this project.  The requested  start and  end times  were  derived  and
  3163.  
  3164.  
  3165.      HITT Personal Software          Page 39
  3166.  
  3167.  
  3168.  
  3169.  
  3170.  
  3171.                                     SCHEDULE
  3172.  
  3173.  
  3174.  
  3175.      agreed to  during detail level 1 planning. Under JOB REQUESTS we  will
  3176.      specify the task(s) that produce the end result resource.
  3177.  
  3178.  
  3179.  
  3180.      TASK definition
  3181.  
  3182.  
  3183.      Modify   the  task  descriptions  for   the  tasks  which  called  out
  3184.      prerequisite  tasks  from  other  organizations.  We will  remove  the
  3185.      prerequisite requirement and  instead specify the resource created  by
  3186.      the other organization.
  3187.  
  3188.      The  tasks,  specified  as  the  requested  tasks  in  the  added  job
  3189.      definitions,  will be  modified to  add  the creation  of the resource
  3190.      which is its end result product.
  3191.  
  3192.  
  3193.  
  3194.      RESOURCE definition
  3195.  
  3196.  
  3197.      The  "Bxx" class resources  are added as appropriate with the quantity
  3198.      field left blank. This describes the  resource even though it does not
  3199.      exist until the  task which creates  it is  executed. The GENERIC name
  3200.      will be used  in tasks descriptions which  are  adding to the pool and
  3201.      the  SPECIFIC name  (top line) will be used in task descriptions which
  3202.      are using Bxx class resources.
  3203.  
  3204.      At this point it may also be appropriate to increase the detail of the
  3205.      labor resource. Rather than a single resource "ENGINEER" we could keep
  3206.      that name as the generic name and use specific names such as ASSOCIATE
  3207.      ENGR, STAFF ENGR, ADVISORY ENGR, SR ENGR, with appropriate level codes
  3208.      and quantities. If  we were thinking ahead, we would  already have the
  3209.      levels specified in the tasks.
  3210.  
  3211.      [Caution: The specific name(s) should not equal generic name(s).]
  3212.  
  3213.  
  3214.  
  3215.      The critical path
  3216.  
  3217.  
  3218.      The output  listing  prints an "*"  before the  task name if the float
  3219.      time  is zero  or  negative. Since this detail level  is  not resource
  3220.      constrained this will be the critical path. Each job's  start/end time
  3221.      was specified independently in this case so some jobs may  not display
  3222.      critical paths while others (in sequence) may.
  3223.  
  3224.      At this level  we  should be making adjustments between the amount  of
  3225.      resources, and the duration of the tasks, to balance the schedule. For
  3226.      example we might decrease the  resource of  the noncritical  tasks and
  3227.      increase  the resource of critical  tasks while adjusting the duration
  3228.      appropriately until an acceptable schedule is obtained.
  3229.  
  3230.  
  3231.      HITT Personal Software          Page 40
  3232.  
  3233.  
  3234.  
  3235.  
  3236.  
  3237.                                     SCHEDULE
  3238.  
  3239.  
  3240.  
  3241.      DETAIL LEVEL 3
  3242.  
  3243.  
  3244.      The objective of this level  is to obtain agreement and commitment for
  3245.      the  resources required  to  accomplish  the  tasks  on  the  schedule
  3246.      previously determined.
  3247.  
  3248.      This is not as easy  as  it might sound. Normal variables are Quality,
  3249.      Resource, and  Schedule. Quality gets compromised  by bypassing  steps
  3250.      (tasks)  in the defined process (like documenting your work).  Here we
  3251.      can only vary resource and schedule, and we will track the steps.
  3252.  
  3253.  
  3254.  
  3255.      JOB definition
  3256.  
  3257.  
  3258.      Unchanged
  3259.  
  3260.  
  3261.  
  3262.      TASK definition
  3263.  
  3264.  
  3265.      Unchanged
  3266.  
  3267.  
  3268.  
  3269.      RESOURCE definition
  3270.  
  3271.  
  3272.      The  resource  definition is modified to reflect the assumed  resource
  3273.      levels.
  3274.  
  3275.      Some  reductions of  resource will cause little or no  schedule change
  3276.      due  to  the  resource  smoothing that  will  be accomplished  by  the
  3277.      program. Printing the resource utilization of the resources will  give
  3278.      you the data required to determine the peeks and valleys.
  3279.  
  3280.  
  3281.  
  3282.      The critical path
  3283.  
  3284.  
  3285.      When scheduling is  done while resource constrained it is possible for
  3286.      the job to be noncritical when scheduling the first tasks but, because
  3287.      of delays acquiring resources, later tasks become critical. To see the
  3288.      entire  critical   path  you  can  temporarily  change  the  requested
  3289.      completion time to force the "*" display in the early  tasks (SCHEDULE
  3290.      used "local float" for this determination).
  3291.  
  3292.  
  3293.  
  3294.  
  3295.  
  3296.  
  3297.      HITT Personal Software          Page 41
  3298.  
  3299.  
  3300.  
  3301.  
  3302.  
  3303.                                     SCHEDULE
  3304.  
  3305.  
  3306.  
  3307.      DETAIL LEVEL 4
  3308.  
  3309.  
  3310.      This is the level where calendars are  imposed on  the plan. With this
  3311.      level of  detail  it  is possible  to  use the interactive  update and
  3312.      re-schedule functions of the program to track and  project changes. If
  3313.      delays occur corrective  actions can  be taken (more resource applied,
  3314.      more shifts, etc) and the corrections effect projected.
  3315.  
  3316.      At this  level the program is allowed  to switch resources at calendar
  3317.      hour/minute boundaries  depending on the priority  of the tasks.  When
  3318.      rescheduling  with calendars  for  the  first time there  may  be some
  3319.      critical  task  improvements  because  of  resource switches  and task
  3320.      splits.
  3321.  
  3322.      Also the program may  allocate one resource on first  shift and others
  3323.      on 2nd shift  to improve the  schedule  as  allowed by  the calendars.
  3324.      Without calendars the HOURS/DAY field allowed the idea of overtime but
  3325.      not  resource   changes.  With  calendars  overtime   and  shifts  are
  3326.      controlled by the calendars.
  3327.  
  3328.  
  3329.  
  3330.      TASK descriptions
  3331.  
  3332.  
  3333.      Clear the hours/day field (blank = 24).
  3334.  
  3335.  
  3336.  
  3337.      RESOURCE descriptions
  3338.  
  3339.  
  3340.      Specify the appropriate calendar(s).
  3341.  
  3342.      Split resources  (same generic  name) into  as many groups  as require
  3343.      separate calendars.
  3344.  
  3345.  
  3346.  
  3347.      CALENDAR descriptions
  3348.  
  3349.  
  3350.      Describe the appropriate working hours for each calendar.
  3351.  
  3352.  
  3353.  
  3354.      QUALITY PROGRAMS
  3355.  
  3356.  
  3357.      Quality is defined as  "Meeting the  Requirements"  and is emphasizing
  3358.      the  idea  of  doing it right the  first  time  rather  than  building
  3359.      expensive  techniques  for fixing it  later. Some  would  consider the
  3360.      techniques being discussed as just good management style, while others
  3361.  
  3362.  
  3363.      HITT Personal Software          Page 42
  3364.  
  3365.  
  3366.  
  3367.  
  3368.  
  3369.                                     SCHEDULE
  3370.  
  3371.  
  3372.  
  3373.      believe its a new way of doing business.
  3374.  
  3375.      Quality is  currently  getting a lot  of attention from U.S. business.
  3376.      Most are modeling their programs after Japanese business. A  number of
  3377.      things provide the foundation of most quality programs:
  3378.  
  3379.      o   Understand the customer's requirements.
  3380.  
  3381.      o   Involve the implementers in developing the plan.
  3382.  
  3383.      o   Develop a process which emphasizes early detection and  correction
  3384.          of flaws.
  3385.  
  3386.      o   Define quality measures so that improvement can be identified.
  3387.  
  3388.      o   Identify the cost of quality.
  3389.  
  3390.      o   Involve your suppliers in defining your requirements to them.
  3391.  
  3392.      One technique currently being used to help manage  quality programs in
  3393.      some corporations is known as DAA (Department Activity Analysis).
  3394.  
  3395.      DAA defines every operation or task as a PROCESS.
  3396.  
  3397.      Each PROCESS has inputs, value added action, and outputs. The input is
  3398.      treated  as coming from  suppliers and  the output  is that  going  to
  3399.      customers.  The discipline for defining this process is much the  same
  3400.      as  that  required  for  the   project  management   steps  previously
  3401.      described.
  3402.  
  3403.      Applying DAA to  the  project management  approach makes  it a quality
  3404.      program rather than just a planning tool.
  3405.  
  3406.      Each task of a process should be  described in detail and developed by
  3407.      the  group responsible for  implementing the  tasks. Quality standards
  3408.      and measures should also be defined by the people responsible.
  3409.  
  3410.      SCHEDULE allows the durations and  required resources to  be described
  3411.      independently from the schedule  and  available resources. Quality  is
  3412.      sometimes compromised by skipping steps in an effort to meet schedules
  3413.      with  limited  resources.   SCHEDULE  varies  the  schedule  with  the
  3414.      available resources but keeps the process the same.
  3415.  
  3416.      SCHEDULE  provides tracking  which  insures that  all  the  steps  are
  3417.      executed. Resources  can  be  defined to  represent the product  being
  3418.      developed  by  one  group  and  required  for  the next  step  in  its
  3419.      completion.
  3420.  
  3421.      SCHEDULE will not automatically  insure quality, but it can provide an
  3422.      important component in the control of the process and resources  which
  3423.      will  effect the quality of the product or  output. SCHEDULE used with
  3424.      DAA helps  departments to understand the  product they  are producing,
  3425.      the  processes required to  produce  it,  and  the interdependences on
  3426.      other organizations.
  3427.  
  3428.  
  3429.      HITT Personal Software          Page 43
  3430.  
  3431.  
  3432.  
  3433.  
  3434.  
  3435.                                     SCHEDULE
  3436.  
  3437.  
  3438.  
  3439.      CHAPTER 15. IDEAS FOR THE EXPERT
  3440.  
  3441.  
  3442.  
  3443.      INTRODUCTION TO THE EXPERT SECTION
  3444.  
  3445.  
  3446.      SCHEDULE was written for the expert. Prompts don't get  in your way as
  3447.      they are  provided only with error detection or  requests for help. It
  3448.      is meant to be  fast and efficient if  you know what you would like to
  3449.      do.
  3450.  
  3451.      SCHEDULE  is  vary  flexible  and  can  be  used  in   any  number  of
  3452.      applications. It can  also  be  setup  by the expert for use by people
  3453.      with  limited  knowledge.  A  particular  application  can  limit  the
  3454.      flexibility to keep people out of trouble.
  3455.  
  3456.      This section is devoted to ideas that may improve  your efficiency  in
  3457.      using the  program. Ideas  which may  have  general applicability  are
  3458.      described here  and may stimulate your own ideas. Its a  list of hints
  3459.      that may be of help to the experienced user.
  3460.  
  3461.      You will find  that  SCHEDULE's disk  command language in  combination
  3462.      with DOS's batch facilities  will  allow  you to tailor your operating
  3463.      environment to  your  particular needs.  These command  languages were
  3464.      used  to provide the demonstration material which demonstrates some of
  3465.      its power and flexibility.
  3466.  
  3467.  
  3468.  
  3469.      USING SCHEDULE OUTPUT AS DATA FOR OTHER PROGRAMS OR PRINTERS
  3470.  
  3471.  
  3472.      The  normal listing outputs can be  directed to a selected  disk using
  3473.      the F10 output unit selection  parameters.  This  creates a  data file
  3474.      which  if  directed to the  printer  will  produce  exactly  the  same
  3475.      printout as would be  produce  if it  had been  printed directly. This
  3476.      file  contains  all  the  printer  control   characters,   page  eject
  3477.      characters, headers, and page numbers  with  spacing  appropriate with
  3478.      the page size setting.
  3479.  
  3480.      Making  the number of lines per page parameter on the  F10 frame equal
  3481.      to  "00" eliminates the  headers and printer  control characters. Each
  3482.      line  is  ended  with  the  normal  ASCII  carriage  return line  feed
  3483.      characters (13,10) with the exception of the last line of each listing
  3484.      which contains a carriage return eject (13,12). Other printer controls
  3485.      have been stripped and an infinite page length is assumed.
  3486.  
  3487.      This form is more  easily used by other programs which would otherwise
  3488.      have to deal with the control characters and  is also in a better form
  3489.      for other printers which do not use the IBM matrix printer controls.
  3490.  
  3491.      You may also wish to  use this form when communicating thru the RS-232
  3492.      serial  adapter or  when connected via terminal  (327x) type emulation
  3493.  
  3494.  
  3495.      HITT Personal Software          Page 44
  3496.  
  3497.  
  3498.  
  3499.  
  3500.  
  3501.                                     SCHEDULE
  3502.  
  3503.  
  3504.  
  3505.      adapters to your central system.
  3506.  
  3507.  
  3508.  
  3509.      BUILDING LARGE SIMILAR FILES
  3510.  
  3511.  
  3512.      With some applications a large number of  tasks and/or  resources must
  3513.      be  created  which are  similar  except  for  small changes. There are
  3514.      methods which will reduce the amount of data entry required.
  3515.  
  3516.      Solution 1:  Takes advantage of the zero length name entry function to
  3517.      re-select the last record.
  3518.  
  3519.  
  3520.      1.  Enter the first task (or resource).
  3521.      2.  Press "F5" (or "F7") to record it and clear the frame.
  3522.      3.  Press "Enter" to re-select the last one recorded.
  3523.      4.  Press "Home" and modify the name.
  3524.      5.  Press "Enter" to select the new task/resource.
  3525.      6.  Modify the data (rather than re-key it) as required.
  3526.      7.  Repeat from step 2 until done.
  3527.  
  3528.      Solution 2:  Is  accomplished  by using the  .SKB command file and  an
  3529.      editor program to build it. Some editors allow block copies and global
  3530.      changes. Refer to the appendix which defines command files.
  3531.  
  3532.      The initial data should look as follows:
  3533.  
  3534.          "\.\0?"    This will get you to the F5 frame.
  3535.  
  3536.              "\." Gives the background a chance to start.
  3537.              "\0?" Selects F5.
  3538.              Note: Do not enter the quotes.
  3539.  
  3540.          "\0A"     Gets you to the F7 frame.
  3541.  
  3542.      You can use the "Alt Number" keyboard function to enter extended ASCII
  3543.      codes. These codes  can be  found in  the BASIC Manual Appendix  which
  3544.      describes extended codes that have a null as the first character.
  3545.  
  3546.      The "\0"  command  provides  the null and the ASCII code for F5 can be
  3547.      entered  by using "Alt,6,3" or  by entering the  equivalent  character
  3548.      "?".
  3549.  
  3550.      Solution 3:  The ".SKB"  file  used for solution 2  can  be created by
  3551.      writing a  program  in  BASIC  or  some other language. This might  be
  3552.      appropriate if the data  is already  in  existence in some other form.
  3553.      For example a list of resources or names.
  3554.  
  3555.      This technique would provide automated maintenances of  the data since
  3556.      the process could be repeated when the source was changed.
  3557.  
  3558.  
  3559.  
  3560.  
  3561.      HITT Personal Software          Page 45
  3562.  
  3563.  
  3564.  
  3565.  
  3566.  
  3567.                                     SCHEDULE
  3568.  
  3569.  
  3570.  
  3571.      CREATING CALENDARS
  3572.  
  3573.  
  3574.      If  you intend to create a large number of calendars or a calendar for
  3575.      extended periods it may be easier to create a command file that can be
  3576.      reused after minor modifications with an editor.
  3577.  
  3578.      Refer to the COMMAND Appendix for an explanation of the commands.
  3579.  
  3580.  
  3581.  
  3582.      DATA BASE MAINTENANCE
  3583.  
  3584.  
  3585.      Normal  data base maintenance should  be preformed  as described using
  3586.      the  "D" function on  the  F10 frame.  This  insures that records  are
  3587.      deleted  at appropriate times  so  that continuous  scheduling  is not
  3588.      adversely effected.
  3589.  
  3590.      There is an alternate method which applies in some circumstances using
  3591.      the Ctl" key  in  conjunction with "Pg Up", "Pg Dn",  and "End"  keys.
  3592.      There are cautions however with using this method.
  3593.  
  3594.      Individual records  can  be deleted from the Job, Task, Resource,  and
  3595.      Calendar data bases (x.JOB, x.TSK,  x.RES, and x.CAL) by selecting the
  3596.      record  on  the appropriate frame (F3,  F5, F7,  F9) and  holding  the
  3597.      "Ctl" key while pressing the "End" key. The record will be deleted and
  3598.      the  next record  in  the  data base displayed. *Caution* Holding down
  3599.      "Ctl,End" will delete multiple records at a type-o-matic rate.
  3600.  
  3601.      Once a record is selected (whether or not you  intend to delete it) it
  3602.      is possible to step through the data base records by pressing "Ctl, Pg
  3603.      Up"  or "Ctl, Pg  Dn". This is required when deleting TASK DESCRIPTION
  3604.      records which have  more than one record associated with it (NUMBER OF
  3605.      RECORDS > 1). It is essential that you find and delete all the records
  3606.      associated with the task name.
  3607.  
  3608.      **CAUTION**  Deleting records using the "Ctl,End" function should only
  3609.      be done  when there is  nothing being processed in the background  and
  3610.      there are no jobs partially completed.
  3611.  
  3612.  
  3613.  
  3614.      SORTING THE DATA BASE
  3615.  
  3616.  
  3617.      You  can only  sort the  data  base  when there are no incomplete jobs
  3618.      since the checkpointed tables refer to records in the data base by the
  3619.      record  numbers, and these numbers  will change  when the data base is
  3620.      sorted. If the project  has  been  started  (the  first task  has been
  3621.      marked  as having started) you must  copy the  files to  a new project
  3622.      name and use this procedure on the temporary project data.
  3623.  
  3624.      DOS 2.x and above comes  with a SORT and  FIND filter that can be used
  3625.  
  3626.  
  3627.      HITT Personal Software          Page 46
  3628.  
  3629.  
  3630.  
  3631.  
  3632.  
  3633.                                     SCHEDULE
  3634.  
  3635.  
  3636.  
  3637.      to  sort  the .JOB,  .TSK, .RES, and the .CAL files. The DOS SORT only
  3638.      works for files less the 60,000 bytes so watch your file size and keep
  3639.      a backup copy of your  data base.  If  your files get larger that this
  3640.      you will need one of the other sort programs available on  the market.
  3641.      Use the  following commands where  %1 equals the project name. This is
  3642.      in a form appropriate for a batch (BAT) file.
  3643.  
  3644.  
  3645.          SORT <%1.JOB >%1.TMP
  3646.          FIND ":" <%1.TMP >%1.JOB
  3647.          SORT <%1.TSK >%1.TMP
  3648.          FIND ":" <%1.TMP >%1.TSK
  3649.          SORT <%1.RES >%1.TMP
  3650.          FIND ":" <%1.TMP >%1.RES
  3651.          SORT <%1.CAL >%1.TMP
  3652.          FIND ":" <%1.TMP >%1.CAL
  3653.          ERASE %1.TMP
  3654.  
  3655.      The  FIND filter  is  required  to eliminate a null  record  which  is
  3656.      somehow created by the SORT filter.
  3657.  
  3658.      These files are standard ASCII files and can be  edited  with standard
  3659.      editors. Care must be  taken to maintain  the  record length  and  tab
  3660.      substitution is not allowed.  The other files  used by SCHEDULE (.STA,
  3661.      .ACT, .TMP) are binary files and will probably be destroyed by editors
  3662.      that expect ASCII files.
  3663.  
  3664.      The  .TSK  file  has some special considerations.  The records contain
  3665.      numbers which  are  record  number pointers to  the previous extension
  3666.      record.
  3667.  
  3668.      After the sort is completed it  will be  necessary  to  reconnect  the
  3669.      extension records in the .TSK data file. This can be accomplished with
  3670.      the following manual procedure.
  3671.  
  3672.      1.  Start the SCHEDULE program with the sorted data base.
  3673.      2.  Press F5 then enter to select the first record.
  3674.      3.  Press F5 repeatedly until no more extensions appear.
  3675.      4.  Press enter to re-select the record.
  3676.      5.  Press Ctl-PgDn until you get to the next 1st of N records
  3677.      6.  Repeat from step 3 until there are no more records.
  3678.  
  3679.      The above procedure will reconnect the record extension pointers. This
  3680.      procedure can be described in a command file.
  3681.  
  3682.  
  3683.  
  3684.      RESOLVING MULTIPLE ACTION REQUIRED MESSAGES
  3685.  
  3686.  
  3687.      While developing a new  project data  base  it  is  not unusual to get
  3688.      multiple messages about unresolved names or calendar codes.
  3689.  
  3690.      The normal process for resolving these discrepancies is  to start with
  3691.  
  3692.  
  3693.      HITT Personal Software          Page 47
  3694.  
  3695.  
  3696.  
  3697.  
  3698.  
  3699.                                     SCHEDULE
  3700.  
  3701.  
  3702.  
  3703.      the last one first  (it's  the  one  still being  displayed  when  the
  3704.      scheduling has completed). Then  to reschedule again and  work on  the
  3705.      next message.
  3706.  
  3707.      In  some cases  it may  be  more convenient  to  look  at some  of the
  3708.      internal tables  developed by  the  program  to  assist  in  resolving
  3709.      multiple messages without having to reschedule each time.
  3710.  
  3711.      "Ctl,F1" displays the  main matrix task grid. If you  have printed the
  3712.      data base it will help you decode the  numeric substitute numbers such
  3713.      as JOB, TASK, and  RESOURCE, since these are the record numbers listed
  3714.      by the file print functions.
  3715.  
  3716.  
  3717.  
  3718.      TASK "     " NOT FOUND FOR JOB "    "
  3719.  
  3720.  
  3721.      This  message will appear when  a JOB specifies a TASK which is not in
  3722.      the data base or  when a TASK specifies another TASK as a prerequisite
  3723.      which is not in the  data  base.  The "Ctl,F1"  table  will  have  the
  3724.      unresolved task names  displayed  on the right side just  proceeding a
  3725.      status code of 1. You  will find all the unresolved  task names listed
  3726.      in this table.
  3727.  
  3728.      With a working  task description data base  the  message will normally
  3729.      indicate a  typographical error  in the JOB definition  record  and is
  3730.      easily located. With  an incorrect task prerequisite however it is not
  3731.      always obvious.
  3732.  
  3733.      The  task  associated with the mismatched  name can be  determined  by
  3734.      using the  ONODE  number.  If  the  ONODE  is 0000  it is the job name
  3735.      specified which is requesting  the task which cannot be found.  If the
  3736.      ONODE is non-zero find the entry with an equal INODE number. The  task
  3737.      number  specified in this entry is the task specifying  a prerequisite
  3738.      task name which  cannot  be  matched. Find  this  task using the  task
  3739.      number and a task file listing.
  3740.  
  3741.  
  3742.  
  3743.      CALENDAR " " NOT FOUND FOR RESOURCE " "
  3744.  
  3745.  
  3746.      If the  calendar code is correct and the  calendar  does  exist  it is
  3747.      possible that one  of the other  possibilities  listed in  the message
  3748.      section applies.
  3749.  
  3750.      "Ctl,F4" will display all  the calendars found  in the data base which
  3751.      are  associated with resources required for  the  set  of  tasks being
  3752.      scheduled.  You  can  determine  the  Years,  and  Months,  which  are
  3753.      available without requiring a calendar file listing.
  3754.  
  3755.      "Ctl,F3"  will  display  all  the  resources associated with the tasks
  3756.      being  scheduled. Only the Generic  name is directly available but the
  3757.  
  3758.  
  3759.      HITT Personal Software          Page 48
  3760.  
  3761.  
  3762.  
  3763.  
  3764.  
  3765.                                     SCHEDULE
  3766.  
  3767.  
  3768.  
  3769.      resource number is the  record number. The tasks  which are attempting
  3770.      to schedule the resource can be found in the "Ctl,F2" table.
  3771.  
  3772.  
  3773.  
  3774.      RESOURCE "" IS NOT AVAILABLE FOR TASK ""
  3775.  
  3776.  
  3777.      "Ctl,F2"  will display the resource names required for  each task.  If
  3778.      you look  down  the  FLAG column  any FLAG=0 is an unresolved resource
  3779.      name.
  3780.  
  3781.  
  3782.  
  3783.      REDEFINING THE KEYBOARD
  3784.  
  3785.  
  3786.      The "SCHEDULE" program does not provide any facilities for  redefining
  3787.      the keyboard keys directly.
  3788.  
  3789.      If  you are using DOS  2.x there is  an "EXTENDED SCREEN  and KEYBOARD
  3790.      CONTROL"  facility  that  can be used for that  purpose. See  your DOS
  3791.      manual.
  3792.  
  3793.      To  use this  facility  you must  include  "DEVICE=ANSI.SYS"  in  your
  3794.      "CONFIG.SYS" file. You can  then use an editor to create  a file  with
  3795.      the appropriate controls and then use the "TYPE" command to effect the
  3796.      keyboard changes.
  3797.  
  3798.      Since  the changes will be in effect for DOS  as well as for  SCHEDULE
  3799.      you will need to create a second set of redefinition controls  to undo
  3800.      the changes when you are done using SCHEDULE.
  3801.  
  3802.      This can all then be  placed in a .BAT file  to provide single command
  3803.      execution.  The command "SCHED  project" will effect the  change using
  3804.      the following files.
  3805.  
  3806.          SCHED.BAT
  3807.  
  3808.              TYPE change.kbd
  3809.              SCHEDULE %1
  3810.              TYPE undo.kbd
  3811.  
  3812.          CHANGE.KBD
  3813.  
  3814.              -[0;25;"Poughkeepsie, N.Y."p
  3815.  
  3816.          UNDO.KBD
  3817.  
  3818.              -[0;25;0;25p
  3819.  
  3820.      The above  will  cause "Poughkeepsie,  N.Y."  to  be  entered  anytime
  3821.      "ALT-P" is pressed. This process can  be used  to setup macro's  as in
  3822.      the  example or to redefine any of the keys. The  number of characters
  3823.  
  3824.  
  3825.      HITT Personal Software          Page 49
  3826.  
  3827.  
  3828.  
  3829.  
  3830.  
  3831.                                     SCHEDULE
  3832.  
  3833.  
  3834.  
  3835.      that can be translated is limited by the table size in this facility.
  3836.  
  3837.      NOTE:  In the above example the  "-" character  is  an "Esc" character
  3838.      which normally displays as an arrow pointing left.
  3839.  
  3840.  
  3841.  
  3842.      HEADER LINE PRINTING
  3843.  
  3844.  
  3845.      Frame 10  allows you  to enter a line to be printed as the header line
  3846.      of all listings  (F10 "H"). This facility can be used in  a number  of
  3847.      ways  since  it  allows  entry of any  keyboard  character (Null first
  3848.      extended codes cannot be entered).
  3849.  
  3850.      Most commands to the printer  can be issued from this line entry. Esc,
  3851.      Enter, Tab, and all other ASCII keys (Line feed) can  be entered  into
  3852.      this line. The following are ideas which consider this capability:
  3853.  
  3854.      Tired ribbons:  The  life of old ribbons can  be prolonged by printing
  3855.      twice  over each line. The  printer  will print at less  than 1/2  the
  3856.      speed. Double print is a command which  is not used by the program but
  3857.      can be invoked by entering the command on the "H" line.
  3858.  
  3859.          Enter "Esc G" to turn on Double Print. ("Esc H to turn it off)
  3860.  
  3861.      Multiple  header  lines:  Since the  carriage  return  and  line  feed
  3862.      characters  can be  entered  the  header  can  occupy  multiple  lines
  3863.      (limited  to a total  of 78 characters). You must reduce the number of
  3864.      lines per  page  specified in order to compensate for  the  number  of
  3865.      lines over one.  Also you  can  use the  TAB character to position the
  3866.      header line without using up the entry line space with blanks.
  3867.  
  3868.      Header  line control  characters:  The header  line  can be printed in
  3869.      Condensed, Underscored,  Emphasized, Double  strike, etc. by  entering
  3870.      the   appropriate   control   characters.  Some  of   these   will  be
  3871.      automatically reset, others will not.
  3872.  
  3873.      The following printer commands are  reset by the program after the "H"
  3874.      line has printed.
  3875.  
  3876.      o   Double Width
  3877.      o   Compressed Character mode
  3878.      o   Page length (will be set according to the F10 frame)
  3879.  
  3880.      Changing  the header for each page:  Since the  printing is being done
  3881.      in the background  and  the  header  line entry  is being  done in the
  3882.      foreground it is  possible to change  the line  as printing  is  being
  3883.      done.  You can suspend the  printing by making  the printer  not ready
  3884.      (Press on-line button) while you  are changing the header line for the
  3885.      next page. Do not turn the printer  power off  as that would reset all
  3886.      the special controls.
  3887.  
  3888.  
  3889.  
  3890.  
  3891.      HITT Personal Software          Page 50
  3892.  
  3893.  
  3894.  
  3895.  
  3896.  
  3897.                                     SCHEDULE
  3898.  
  3899.  
  3900.  
  3901.      CHAPTER 16. SCHEDULE TRAPS
  3902.  
  3903.  
  3904.  
  3905.      This  chapter is  the  place  I have documented the traps  people have
  3906.      gotten into. Read over the list  and avoid the  problems. If all  else
  3907.      fails ask for Don (Hitt) at HITT Personal Software.
  3908.  
  3909.  
  3910.  
  3911.      RESOURCE NAMES
  3912.  
  3913.  
  3914.      Many  resources may have the same generic name. A generic name  cannot
  3915.      be  the same as a specific  name  of a resource. The program does  not
  3916.      check for this duplication and may allocate the wrong resource.
  3917.  
  3918.  
  3919.  
  3920.      HOURS/DAY FIELD IN THE TASK DESCRIPTIONS.
  3921.  
  3922.  
  3923.      This  field should be left blank if the task also  specifie a resource
  3924.      that  uses a calendar. Using  both (resource  calendar and HR/DY) will
  3925.      cause a problem because the program  will try to  use  the task  HR/DY
  3926.      field  to  create  its  own calendar  from  hour zero  to  the  number
  3927.      specified. See the chapter on PROJECT PLANNING for the appropriate use
  3928.      of this field.
  3929.  
  3930.  
  3931.  
  3932.      CREATING GANTT FILES.
  3933.  
  3934.  
  3935.      If you  set the lines/page  option of  SCHEDULE  frame F10 to zero the
  3936.      printer control  characters will be suppressed  and  the  program will
  3937.      assume a continuous form. That is  the correct form  for GANTT. I like
  3938.      print option 2 and 6*** for my GANTT  charts. Direct  the print to the
  3939.      disk using the "O" option.
  3940.  
  3941.      There is a batch and  command file on the  SCHEDULE diskette that will
  3942.      automatically link the programs. Look for the following files:
  3943.  
  3944.      o   PLAN.BAT
  3945.  
  3946.      o   PLAN.SKB
  3947.  
  3948.      o   VIEW.BAT
  3949.  
  3950.      o   VIEW.GKB
  3951.  
  3952.      You may need  to  modify this  file for  your system configuration and
  3953.      disk structure.
  3954.  
  3955.  
  3956.  
  3957.      HITT Personal Software          Page 51
  3958.  
  3959.  
  3960.  
  3961.  
  3962.  
  3963.                                     SCHEDULE
  3964.  
  3965.  
  3966.  
  3967.      SCHEDULING LATE AND CALENDAR NOT FOUND MESSAGES
  3968.  
  3969.  
  3970.      If you use AM, PM time in the  calendar definition rather than 24 hour
  3971.      time it may look to the program as though the time is going backwards.
  3972.      You must use 24 hour time (00:00 to 24:00).
  3973.  
  3974.      The program does  not check for  this condition  and will not schedule
  3975.      any time for the backward periods. It  therefor runs out  of calendars
  3976.      and gives the no calendar message.
  3977.  
  3978.  
  3979.  
  3980.      EDITING THE DATA BASE
  3981.  
  3982.  
  3983.      The project.JOB, project.TSK,  project.RES,  and project.CAL files are
  3984.      ASCII  and  can  be edited  with most editors.  The record length must
  3985.      remain fixed.
  3986.  
  3987.      Don't use an  editor on the project.STA  or project.ACT  files as they
  3988.      are binary.
  3989.  
  3990.      o   project.STA is the checkpoint file for restarting the program.
  3991.      o   project.ACT  is  an extension  of the checkpoint and contains  the
  3992.          last scheduled resource activities.
  3993.  
  3994.      Always store the files with the NO TABS option.
  3995.  
  3996.      If  you move data  around, read the expert chapter abo7ut  sorting the
  3997.      data base. The project.TSK file has special considerations.
  3998.  
  3999.      The  program deletes records by placing a blank  in the first location
  4000.      of  the appropriate  record(s).  New records are placed in the deleted
  4001.      locations, or if none, at  the end of the  file. This process  retains
  4002.      the  name to  physical  location  relationship required  once you have
  4003.      started the project.
  4004.  
  4005.      The project.TSK file has backward pointers to connect multiple  record
  4006.      task description records. Use the RECONN.KBD command file to reconnect
  4007.      these records if you have moved them around.
  4008.  
  4009.  
  4010.  
  4011.  
  4012.  
  4013.  
  4014.  
  4015.  
  4016.  
  4017.  
  4018.  
  4019.  
  4020.  
  4021.  
  4022.  
  4023.      HITT Personal Software          Page 52
  4024.  
  4025.  
  4026.  
  4027.  
  4028.  
  4029.                                     SCHEDULE
  4030.  
  4031.  
  4032.  
  4033.      CHAPTER 17.  COMMAND FILE
  4034.  
  4035.  
  4036.  
  4037.      When SCHEDULE  is invoked it attempts  to  open  a disk file to use as
  4038.      keyboard  input. The  file has the same  first file name (the  project
  4039.      name) as the remainder of the files and the extension of "SKB". If the
  4040.      file is not present on the same disk as the data base the program will
  4041.      use the normal keyboard.
  4042.  
  4043.      Each character  is  used by  the  programs  as  if  it came  from  the
  4044.      keyboard. In addition the "\" (back slash)  is  used to indicate  that
  4045.      the next character is a command rather than a keyboard character. This
  4046.      technique is used to  provide the  demonstration sessions and can also
  4047.      be used to  predefine a particular setup or to  drive the program much
  4048.      like "PIPING" (a DOS 2.+ function).
  4049.  
  4050.  
  4051.  
  4052.      COMMAND DEFINITIONS
  4053.  
  4054.  
  4055.      \.  Pause 1 second:  Wait for  the next second timer tic. This command
  4056.      can be used to provide delays. The background will continue during the
  4057.      delays. It is sometimes used in conjunction  with the  "\," command to
  4058.      insure  that  the next  printout  has  an  opertunity to start  before
  4059.      looking for completion with the comma command.
  4060.  
  4061.      \, Wait for processing or any key:  Wait  for background processing to
  4062.      complete or for  any key  to be depressed. The  keyboard option allows
  4063.      for problems, such as the printer not being ready, which could prevent
  4064.      the background from ever completing.
  4065.  
  4066.      \
  4067.       Comment.:  All characters on the line after this code are passed over
  4068.      and not  used. This  allows comments to be placed in the command file.
  4069.      In  addition  it can be used to prevent the carriage  return code from
  4070.      being passed to the program  [see Carriage  return  (13)]. Comments do
  4071.      require  time  to  pass  over  during  the  execution of the  keyboard
  4072.      procedure and therefor should be placed after procedures that loop.
  4073.  
  4074.      \Bx Branch to \Nx:  This command resets the command file and  scans it
  4075.      to  find the  position named x as defined  by the \Nx command. Command
  4076.      processing  is  then  restarted  with  the character following the \Nx
  4077.      command. If a matching  \Nx is not found, control is  returned  to the
  4078.      keyboard.  The   branch  can  be  made  conditional  by  using  it  in
  4079.      conjunction with the \U or \E commands on the same line.
  4080.  
  4081.      \C Clear the  display:  Clear  the selected display screen and set the
  4082.      locate address to zero.
  4083.  
  4084.      \D Display:  The characters following this command are directed to the
  4085.      selected display starting at the locate address. The locate address is
  4086.      updated +1 with each character.
  4087.  
  4088.  
  4089.      HITT Personal Software          Page 53
  4090.  
  4091.  
  4092.  
  4093.  
  4094.  
  4095.                                     SCHEDULE
  4096.  
  4097.  
  4098.  
  4099.      The display mode is terminated with the next command  (\).  When using
  4100.      the  graphics display as the  80 character/line display it is selected
  4101.      as the monochrome display and the \G selection is disabled.
  4102.  
  4103.      This display does not affect the cursor position or  display  pointers
  4104.      being used by SCHEDULE.
  4105.  
  4106.      \Ex  If  Equal:  If the character x is equal to the  monochrome screen
  4107.      character pointed  to by the locate address,  Do  the remainder of the
  4108.      line. Else skip the remainder of the line (to the next ASCII 13).
  4109.  
  4110.      \G Select the Graphics 40x25:  Select the graphics display (TV). 40x25
  4111.      (This is the default selection)
  4112.  
  4113.      \Lnnnn Locate:  Locate the display and conditional test pointer to the
  4114.      screen  character position  nnnn where 0000=Top left  and  1999=Bottom
  4115.      Right of the  80  character per line display  and 0999=Bottom Right of
  4116.      the 40 character per line display.
  4117.  
  4118.      \M Select the  Monochrome 80x25:  Select the display being used as the
  4119.      80x25 (This may be the graphics display if it  is being used as the 80
  4120.      character display.)
  4121.  
  4122.      \Nx Name  this position x:  This is  used in  conjunction with the  \B
  4123.      command  to allow  looping within the keyboard procedure. The position
  4124.      of the \Nx marks the  target of the \Bx. (x is any  character and must
  4125.      match the x in the \Bx.)
  4126.  
  4127.      \Ux If Unequal:  If the  character x  is not equal  to the  monochrome
  4128.      screen character pointed to by the locate address, do the remainder of
  4129.      the line. Else skip the remainder of the line (to the next ASCII 13).
  4130.  
  4131.      \W  Wait for any key:  Wait for any key to  be depressed. Used to pace
  4132.      the demonstration to the user speed. The key actually depressed is not
  4133.      used.
  4134.  
  4135.      \X  Exit  to the keyboard:  Keyboard entry is allowed  at this  point.
  4136.      When "Esc" is pressed control  is returned to the  command file at the
  4137.      point following this command.
  4138.  
  4139.      \0x ZERO:  Enters  a null.  This allows you to enter special  keyboard
  4140.      characters  not  normally allowed by  editors. See  your Basic  Manual
  4141.      (Appendixes  G) for  a  definition  of the null-x  extended  character
  4142.      codes. These  codes  are  used to stimulate functions such as function
  4143.      keys or cursor controls.
  4144.  
  4145.  
  4146.  
  4147.  
  4148.  
  4149.  
  4150.  
  4151.  
  4152.  
  4153.  
  4154.  
  4155.      HITT Personal Software          Page 54
  4156.  
  4157.  
  4158.  
  4159.  
  4160.  
  4161.                                     SCHEDULE
  4162.  
  4163.  
  4164.  
  4165.      ADDITIONAL CONTROL
  4166.  
  4167.  
  4168.      In  addition to the "\" command  characters,  the carriage return (13)
  4169.      character is handled as follows.
  4170.  
  4171.      Carriage return (13):  This code is normally inserted  at  the end  of
  4172.      each line by editor programs. It  is then followed  with a  "Line feed
  4173.      (10)" code.
  4174.  
  4175.      The carriage return is used as follows:
  4176.  
  4177.      o   If  in display  mode the  display pointer is advanced to the  next
  4178.          40th position. This forces the display pointer to  the  next  line
  4179.          (or half line on the monochrome display). The line feed characters
  4180.          are skipped.
  4181.  
  4182.      o   If in keyboard input mode  an "ENTER" key is passed to the program
  4183.          and the next character (normally a line feed) is skipped.
  4184.  
  4185.      o   If directly following a "\" the carriage return is skipped and the
  4186.          character  following is  passed to the program (normally  the line
  4187.          feed ASCII 10).
  4188.  
  4189.      o   If following a  "\;" anywhere on the line the carriage return  and
  4190.          the character following (normally a line feed 10) is skipped.
  4191.  
  4192.  
  4193.  
  4194.  
  4195.  
  4196.  
  4197.  
  4198.  
  4199.  
  4200.  
  4201.  
  4202.  
  4203.  
  4204.  
  4205.  
  4206.  
  4207.  
  4208.  
  4209.  
  4210.  
  4211.  
  4212.  
  4213.  
  4214.  
  4215.  
  4216.  
  4217.  
  4218.  
  4219.  
  4220.  
  4221.      HITT Personal Software          Page 55
  4222.  
  4223.  
  4224.  
  4225.  
  4226.  
  4227.                                     SCHEDULE
  4228.  
  4229.  
  4230.  
  4231.      CHAPTER 18. PROGRAM EXIT RETURN CODES TO DOS
  4232.  
  4233.  
  4234.  
  4235.      IBM DOS 2.0 and above supports the ability of a program to set an exit
  4236.      code  that can be interrogated from a batch file  (.BAT) using the "IF
  4237.      [NOT] ERRORLEVEL  n"  DOS  command.  DOS  1.1  does  not support  this
  4238.      command.  Refer to  your  DOS manual  under BATCH  PROCESSING for  the
  4239.      command definition.
  4240.  
  4241.      SCHEDULE attempts to set this code as it terminates (exits to DOS). If
  4242.      the attempt fails  it  then exits with DOS  1.x  conventions  (no exit
  4243.      code).
  4244.  
  4245.      The codes set by SCHEDULE are as follows:
  4246.  
  4247.          0 = Normal exit via the Esc key.
  4248.  
  4249.              The checkpoint was successful.
  4250.              Background processing had completed.
  4251.  
  4252.          1  =  Exit  was  by  the Esc key and  a  "Y" response to the  busy
  4253.          message.
  4254.  
  4255.              The checkpoint  was  successful  but depends on the  state  of
  4256.              processing.
  4257.              Background processing was terminated.
  4258.  
  4259.          2 = Exit was by the Ctl F10 key (A debug mode exit).
  4260.  
  4261.              No checkpoint was taken but all files were closed.
  4262.              The background processing state is unknown.
  4263.  
  4264.          4 = Exit was via the Esc Key.
  4265.  
  4266.              The  checkpoint  attempt  did  not have enough  disk  space to
  4267.              complete.
  4268.              Background processing had completed.
  4269.  
  4270.          5  =  Exit was by the  Esc key  and a  "Y"  response  to the  busy
  4271.          message.
  4272.  
  4273.              The checkpoint attempt did not have enough disk space.
  4274.              Background processing had not completed.
  4275.  
  4276.          6 = During start up it was not possible to open the  required data
  4277.          files. The program also attempted and failed to  create  the  data
  4278.          files.
  4279.  
  4280.              This is normally caused by the  disk  file  index  space being
  4281.              full.
  4282.  
  4283.          8  = There was  not  enough processor storage to support the  data
  4284.          area required.
  4285.  
  4286.  
  4287.      HITT Personal Software          Page 56
  4288.  
  4289.  
  4290.  
  4291.  
  4292.  
  4293.                                     SCHEDULE
  4294.  
  4295.  
  4296.  
  4297.      As with most return codes the  number  increases with the severity  of
  4298.      the  problem.  When  multiple conditions  occur  the highest  code  is
  4299.      indicated.
  4300.  
  4301.      The  batch file "EXITCODE.BAT" will display  the meaning of  the exits
  4302.      and can be used  by other batch files by branching on  the error level
  4303.      of concern to this file.
  4304.  
  4305.      For example:
  4306.  
  4307.      "IF ERRORLEVEL 1 EXITCODE" placed in a batch file will exit that batch
  4308.      file, if it  is a  1 or greater, and  will display  the meaning of the
  4309.      exit code.
  4310.  
  4311.  
  4312.  
  4313.  
  4314.  
  4315.  
  4316.  
  4317.  
  4318.  
  4319.  
  4320.  
  4321.  
  4322.  
  4323.  
  4324.  
  4325.  
  4326.  
  4327.  
  4328.  
  4329.  
  4330.  
  4331.  
  4332.  
  4333.  
  4334.  
  4335.  
  4336.  
  4337.  
  4338.  
  4339.  
  4340.  
  4341.  
  4342.  
  4343.  
  4344.  
  4345.  
  4346.  
  4347.  
  4348.  
  4349.  
  4350.  
  4351.  
  4352.  
  4353.      HITT Personal Software          Page 57
  4354.  
  4355.  
  4356.  
  4357.  
  4358.  
  4359.                                     SCHEDULE
  4360.  
  4361.  
  4362.  
  4363.      APPENDIX A. MESSAGES
  4364.  
  4365.  
  4366.  
  4367.      ACTIVITY FILE DISK FULL:  Activity recording has been terminated prior
  4368.      to the count allowed on the control frame (F10) because the  disk  has
  4369.      run out of space.
  4370.  
  4371.      Scheduling will continue with this reduced activity count. See the MAX
  4372.      ACTIVITIES parameter setting on frame "F10" and the description of the
  4373.      considerations for this setting in the F10 control frame description.
  4374.  
  4375.      Do not attempt  to exit the program at this point as additional  space
  4376.      may be required to take the check point and you may  loose the started
  4377.      and completed task status.
  4378.  
  4379.      Make the MAXIMUM ACTIVITIES smaller than the value now being displayed
  4380.      and re-schedule before attempting to exit.
  4381.  
  4382.      CALCULATING EST:  The schedule processing  is calculating the earliest
  4383.      start  time  for each  task.  This  is  required  after each  task  is
  4384.      scheduled if the task was delayed because of resource constraints.
  4385.  
  4386.      CALCULATING  LST:  The schedule  processing  is calculating the latest
  4387.      start time for each task. This always follows CALCULATING EST.
  4388.  
  4389.      CALENDAR  "  "  NOT  FOUND FOR  RESOURCE  " ":  The  named calendar is
  4390.      required by the named task but it cannot be found in the data base.
  4391.  
  4392.  
  4393.      o   The resource calendar code may be incorrect.
  4394.      o   The calendar data base may not exist.
  4395.      o   The required month/year may not exist in the data base.
  4396.      o   A  task duration may  be incorrect which is extending the schedule
  4397.          past the last available calendar.
  4398.      o   A resource  availability time  may be extending the schedule  past
  4399.          the last available calendar.
  4400.  
  4401.      CAUTION do  not remove disk  "  "  before exiting this program via the
  4402.      "Esc"  key:  The  disk indicated  is being used by the program  and  a
  4403.      number  of  files  have been  opened.  Changing  the disk  could cause
  4404.      erroneous  data to be written or the catalog to be over-written unless
  4405.      the program is  terminated  via the normal  exit (Esc) before changing
  4406.      the diskette.
  4407.  
  4408.      When the message is removed from the screen, this is NOT an indication
  4409.      that the disk can be changed. The CAUTION is still in effect until the
  4410.      program is terminated.
  4411.  
  4412.      CONNECTING GRID:  The background  processing is  connecting the  input
  4413.      and output node numbers to create a critical path grid.
  4414.  
  4415.      ENTER  CHANGES:  Changes can be entered using the full  screen editing
  4416.      controls.
  4417.  
  4418.  
  4419.      HITT Personal Software       Appendix A-1
  4420.  
  4421.  
  4422.  
  4423.  
  4424.  
  4425.                                     SCHEDULE
  4426.  
  4427.  
  4428.  
  4429.      ENTER INFO:  Data  can  be  entered  using  the  full  screen  editing
  4430.      controls.
  4431.  
  4432.      ENTER NAME:  An attempt has  been made to move the cursor up from  the
  4433.      name field.
  4434.  
  4435.      INVALID RUN TIME IN TASK " ":  The  run time or hours per day field of
  4436.      the named task contains one of the following and should be of the form
  4437.      "Hour:minute", "Hours", or ":Minutes".
  4438.  
  4439.  
  4440.      o   Minutes greater than 59
  4441.      o   Hours per day greater than 24
  4442.      o   (note: blank hours per day =24)
  4443.  
  4444.      Must  be P0 to P2 or DA to DD:  Printer port 0, 1, or  2 or Disk A: B:
  4445.      C: or D: may be selected.
  4446.  
  4447.      Must be 0 to 3:  Day code must be 0,1,2,3, or blank (blank = 0)
  4448.  
  4449.      Must be 01 to 12:  Month entry is zero or greater than 12
  4450.  
  4451.      Must be 16  to 99:  The  page size must be in this range  or  00.  The
  4452.      printer is  set to eject to  this number of lines and will print fewer
  4453.      than this number on a page.  If 00 is entered the printer controls are
  4454.      not issued and the printout is treated as a continuous form.
  4455.  
  4456.      NAME FOUND:  The name entered on the first  line has been found in the
  4457.      data base and the  remainder of the  display is displaying the current
  4458.      contents of the record.
  4459.  
  4460.      NAME  NOT FOUND:  The name entered on the first line was not  found in
  4461.      the data base and the  remainder of the display remains  unchanged. If
  4462.      the  name is incorrect move  the cursor to the  name line and make the
  4463.      correction, otherwise this is a new data base record.
  4464.  
  4465.      NO STATUS FILE!:  While attempting to open all the files no "xxxx.STA"
  4466.      file was  found. xxxx = the  project  name specified when evoking  the
  4467.      program. This is a warning message which could indicate that the wrong
  4468.      disk drive is  being used  as the default drive or that the wrong disk
  4469.      has been  placed  in the drive. CAUTION: Do  not  change disks without
  4470.      exiting this program first  (Esc). The program has opened  a number of
  4471.      files  which must first  be closed  by exiting. The  message is normal
  4472.      when starting a new  scheduling session  (to start from scratch  erase
  4473.      "xxxx.STA" and "xxxx.ACT".
  4474.  
  4475.      OUT OF DISK  SPACE:  The disk cannot  be written because of a  lack of
  4476.      space. You must exit to DOS (Esc) and resolve the problem.
  4477.  
  4478.      The attempt to take a checkpoint may also fail if additional space  is
  4479.      required. If this occurs you will see a "NO STATUS FILE!" message when
  4480.      you start again, and you will be starting from scratch (in process and
  4481.      completed activity status will be lost).
  4482.  
  4483.  
  4484.  
  4485.      HITT Personal Software       Appendix A-2
  4486.  
  4487.  
  4488.  
  4489.  
  4490.  
  4491.                                     SCHEDULE
  4492.  
  4493.  
  4494.  
  4495.      PRINTER NOT  READY:  The  printer  is  not in  the ready  state. Press
  4496.      "Online" to make it ready.
  4497.  
  4498.      PRINTER  OUT OF PAPER:  The printer is  indicating  end  of forms. The
  4499.      program will continue to print to the end of the page before stopping.
  4500.  
  4501.      Press the "on-line" button on the printer  to take  it off-line (ready
  4502.      light off)  before putting new paper  in or the printing will start as
  4503.      soon as the end of forms indicator is gone.
  4504.  
  4505.      Align the paper, then press "on-line" to continue with the next page.
  4506.  
  4507.      PRINTER POWERED OFF:  The printer is indicating a power off condition.
  4508.      The system  will wait  indefinitely for it  to  be powered  on, unless
  4509.      terminated.
  4510.  
  4511.      PRINTER TERMINATING:  "T"  has been pressed on frame "F10". The system
  4512.      will complete the print line in the printer, terminate any transfer to
  4513.      the printer, drain  the buffer,  eject the forms, and reset  the print
  4514.      request.
  4515.  
  4516.      PROCESSING CALENDAR:  The background processing is building a table of
  4517.      the  required calendars. The  calendar definition file  "xxxx.CAL"  is
  4518.      being scanned.
  4519.  
  4520.      PROCESSING JOBS:  The background processing is building a table of the
  4521.      requested jobs. The  "xxxx.JOB" file is scanned to find new entries or
  4522.      modifications.
  4523.  
  4524.      PROCESSING  RESOURCES:  The background processing is  building a table
  4525.      of the  required resources. The resource definition file "xxxx.RES" is
  4526.      being scanned.
  4527.  
  4528.      PROCESSING  TASKS:  The background processing is  building  a table of
  4529.      the required  tasks  to  accomplish the  job.  The  "xxxx.TSK" file is
  4530.      scanned to find the required entries.
  4531.  
  4532.      RESOURCE "  "  IS  NOT AVAILABLE FOR TASK " ":  The  named resource is
  4533.      required by the named task but the allocation is not possible. Any  of
  4534.      the following is possible.
  4535.  
  4536.  
  4537.      o   The name is incorrect in the task description.
  4538.      o   The name is incorrect in the resource description
  4539.      o   The size required cannot be satisfied.
  4540.      o   The quantity required cannot be satisfied.
  4541.  
  4542.      RESOURCE QUANTITY NEGATIVE:  A resource quantity has gone negative. If
  4543.      tasks  are  started out  of  sequence  it is  possible  that  you have
  4544.      indicated  that a task  has been started before another  task which is
  4545.      holding a  required resource has been completed. Find  the task  which
  4546.      has been completed and mark it accordingly.
  4547.  
  4548.      This can also occur if the ACTIVITY file is not  in agreement with the
  4549.  
  4550.  
  4551.      HITT Personal Software       Appendix A-3
  4552.  
  4553.  
  4554.  
  4555.  
  4556.  
  4557.                                     SCHEDULE
  4558.  
  4559.  
  4560.  
  4561.      STATUS file. When  starting  over, erase the xxxx.ACT file  as well as
  4562.      the xxxx.STA file. Its also  a good idea to  check  the RESOURCE  file
  4563.      quantities  for inventory (Ixx class) and buffer (Bxx class) resources
  4564.      when starting over.
  4565.  
  4566.      SCHEDULE BY  JOB:  The  requested printout for SCHEDULE  BY JOB  is in
  4567.      process.
  4568.  
  4569.      SCHEDULING:  The schedule processing is determining the priorities  of
  4570.      the tasks and allocating resources.
  4571.  
  4572.      STANDBY:  This message is displayed  during  the data  base search for
  4573.      the named record.
  4574.  
  4575.      START/END PRINT:  An automatic print request for a job just started or
  4576.      ended is in process.
  4577.  
  4578.      TASK " " MUST HAVE A DURATION SINCE IT HAS A RESOURCE:  A milestone is
  4579.      a task  with zero duration  and no resources. If you assign a resource
  4580.      you must have  a  non zero  duration. A  schedule  processing loop may
  4581.      occur with this condition.
  4582.  
  4583.      TAKING   A  CHECKPOINT:  The  background  task  is  writing   a  table
  4584.      checkpoint to disk. This is done at the end of each scheduling run and
  4585.      also when exiting  to  DOS. This allows the  system to pickup where it
  4586.      left off without having to re-process all the information.
  4587.  
  4588.      TASK "  " REQUIRES A DURATION SINCE  IT HAS RESOURCES:  The named task
  4589.      is  not  a Milestone (a  task with zero time  and no resource) since a
  4590.      resource has been  specified. This  could cause  the  program  to  run
  4591.      forever in the SCHEDULING phase depending on the particular situation.
  4592.      You may eliminate  the resource  specification  or provide  a  nonzero
  4593.      duration. If the program is staying in the SCHEDULING phase, it may be
  4594.      necessary to exit the program and restart the program after fixing the
  4595.      task definition.
  4596.  
  4597.      THERE ARE MORE  ACTIVITIES (left side):  The table contains additional
  4598.      tasks which  should be  started.  Moving the cursor down  one past the
  4599.      last  (bottom)  entry will allow you  to see the next 5 entries. It is
  4600.      possible to see some tasks listed which were listed on previous  pages
  4601.      because of the way the table  is ordered,  but no  task will be listed
  4602.      twice on the same page.
  4603.  
  4604.      Moving the cursor up one position above the  top entry will return you
  4605.      to the first page.
  4606.  
  4607.      If  the  list  is  long  you  should  be  considering  re-running  the
  4608.      scheduling program (F10 S) unless you think it is possible to catch up
  4609.      again.
  4610.  
  4611.      THERE ARE MORE ACTIVITIES (right side):  The table contains additional
  4612.      tasks which should  be  completed. Up and down  cursor  controls  will
  4613.      allow you to see the additional tasks.
  4614.  
  4615.  
  4616.  
  4617.      HITT Personal Software       Appendix A-4
  4618.  
  4619.  
  4620.  
  4621.  
  4622.  
  4623.                                     SCHEDULE
  4624.  
  4625.  
  4626.  
  4627.      If  the list is  long  you  should consider re-running  the scheduling
  4628.      program (F10 S) unless you think it is possible to catch up again.
  4629.  
  4630.      THERE  IS NOT  ENOUGH MEMORY  TO  RUN SCHEDULE:  A  test of  available
  4631.      storage has been made  and there is not enough storage to  support the
  4632.      required work space. The program  will normally have enough  available
  4633.      memory on  a 128K Personal Computer using  DOS 1.1  or 2.x. If not you
  4634.      may have to  reduce the size of  DOS  by  reducing the I/O buffers  or
  4635.      other resident routines.
  4636.  
  4637.      TOO MANY  JOBS/TASKS SPECIFIED:  Storage  space  has  been  filled and
  4638.      compression has been unsuccessful. The background scheduling  has been
  4639.      abnormally terminated.
  4640.  
  4641.      It is possible that a task prerequisite loop has been created which is
  4642.      filling  the table with the same tasks or sequence  of  tasks over and
  4643.      over  again. If  so  correct  the  task  prerequisite  definition  and
  4644.      re-schedule.
  4645.  
  4646.      Although storage requirements are a function of many factors it should
  4647.      be possible to contain in excess of 1000 tasks at a time.
  4648.  
  4649.      If you have not created a loop,  you have exceeded the capacity of the
  4650.      system.  The  project  must  be  broken  into  multiple  projects  and
  4651.      interdependences must be manually controlled.
  4652.  
  4653.      UNDEFINED TASK NAME " " FOR JOB " ":  Either the job named by FOR  JOB
  4654.      is  requesting an  incorrect task  name  or a task  description has an
  4655.      incorrect prerequisite name  in the string of tasks  required for  the
  4656.      named job.
  4657.  
  4658.      When developing task descriptions it is sometimes helpful to allow the
  4659.      system  to find  these undefined tasks  as  one  builds  the data base
  4660.      starting  from  the  requested end result. In these  cases the message
  4661.      will lead you through the definition process by using a test case.
  4662.  
  4663.      VIEW  ONLY:  The  data  base  cannot  be modified unless it  is  first
  4664.      unlocked using  the  F10 U  control. Locking  the data  base  prevents
  4665.      accidental  modifications. xxxx.TSK, and  xxxx.RES  are controlled  by
  4666.      this switch.
  4667.  
  4668.      WAITING  FOR PROCESSING:  The  requested  display  cannot be  provided
  4669.      because the  table that is  required to resolve  prerequisite and task
  4670.      start/stop status is being changed.
  4671.  
  4672.      If  you  have  the  2nd  display  option, try  using  the  F4, F6, F8,
  4673.      functions to get the data you need.
  4674.  
  4675.  
  4676.  
  4677.  
  4678.  
  4679.  
  4680.  
  4681.  
  4682.  
  4683.      HITT Personal Software       Appendix A-5
  4684.  
  4685.  
  4686.  
  4687.  
  4688.  
  4689.                                     SCHEDULE
  4690.  
  4691.  
  4692.  
  4693.      APPENDIX B. SERVICE PROJECT ENVIRONMENT AND DATA BASE
  4694.  
  4695.  
  4696.  
  4697.      The  sample  data  base  describes  a  fictitious  automotive  SERVICE
  4698.      STATION.
  4699.  
  4700.      Our  service  station  has  four  people resources  all  of  them  are
  4701.      described by the generic name MECHANIC.
  4702.  
  4703.      OLD  TIMER  is the main  mechanic.   He  can perform  any job  and  is
  4704.      licensed to give automotive inspection stickers.
  4705.  
  4706.      JACK BE  NIMBLE  is the  apprentice and  helper. He can do some of the
  4707.      mechanic type work but is not qualified in most areas.
  4708.  
  4709.      EXTRA HELP is available  sometimes.  When he  is, we  set the quantity
  4710.      field and availability time accordingly. EXTRA HELP is qualified to do
  4711.      mechanic work but is not licensed to give inspections.
  4712.  
  4713.      BOSS is also a  qualified mechanic but steps in only  when  a  job  is
  4714.      going to be late.
  4715.  
  4716.      OLD TIMER and BOSS go to lunch together. They both use calendar "A" to
  4717.      describe their availability hours.
  4718.  
  4719.      JACK  BE NIMBLE and EXTRA HELP have a shorter lunch break but  come to
  4720.      work later. Also,  they  have to watch  the store until the  BOSS gets
  4721.      back. They both use calendar "B" to describe their availability hours.
  4722.  
  4723.      The station has 3 (generic name) WORK AREA's.  Two racks and space for
  4724.      one additional car.
  4725.  
  4726.      At FLOOR SPACE 1 we can do work that does  not require a rack, this is
  4727.      where the wall is marked for headlight adjustments.
  4728.  
  4729.      RACK A and  RACK B can be used interchangeably except that only RACK A
  4730.      has access to the grease gun.
  4731.  
  4732.      A lot  next to the  station  will hold more  cars than  necessary. The
  4733.      station will hold a total of 3 (buffer class resource BLD).
  4734.  
  4735.      Some tools can create  conflicts because they may be required  at more
  4736.      than  one place at a time. We will  define them as resources  so  this
  4737.      conflict  can  be  resolved.  TIMING   LIGHT,  TIRE  TREADGAUGE,  LAMP
  4738.      ALIGNGAUGE are of this type.
  4739.  
  4740.      Normally used inventory items will also be tracked. Cases of OIL  come
  4741.      in  once   a  month.  OIL  10W-40  GRPx  is  added  with   appropriate
  4742.      availability  dates as they are ordered.  SPARK PLUGS, AIR FILTER, OIL
  4743.      FILTER and GREASE will only be tracked by there totals (not by type).
  4744.  
  4745.      The  station  offers normal automotive  maintenance. Customers can ask
  4746.      for a variety of jobs. Most of the jobs are normal everyday items that
  4747.  
  4748.  
  4749.      HITT Personal Software       Appendix B-1
  4750.  
  4751.  
  4752.  
  4753.  
  4754.  
  4755.                                     SCHEDULE
  4756.  
  4757.  
  4758.  
  4759.      we  can specify  in  the task  data base. Jobs  like TUNE UP, SERVICE,
  4760.      INSPECTION, LUB, OIL, AIR FILTER, ANNUAL, and BREAK CHECK  are defined
  4761.      as a model  of task  descriptions. These  models can  be used  by many
  4762.      customers  since  they  will be operating on  different JOB  resources
  4763.      (CUSTOMER CAR).
  4764.  
  4765.      As  customers  come to the station or call  for  appointments we  will
  4766.      select F3 and enter  the  names of  the  jobs they would like done. In
  4767.      addition we enter the  date and time they can make there car available
  4768.      and the time they would like to have it back.
  4769.  
  4770.      If  a  special  or unusual  job  is requested we will ask the boss  to
  4771.      estimate the task and create a new task description model.
  4772.  
  4773.      Sometimes our first assumptions are found to be incorrect.  If we find
  4774.      that  the brakes don't pass  inspection we  can dynamically change the
  4775.      requested job to include BRAKE PADS and reschedule.
  4776.  
  4777.      When the customer  calls and asks  for the  status of his job. We will
  4778.      enter  his name (F3) and display the status (F6) for his job. When the
  4779.      job  is completed we will automatically get a printout of  the  actual
  4780.      start and ending times of each task.
  4781.  
  4782.      On frame F10  we will probably want  print  request 4  and 5 on,  AUTO
  4783.      START  on,  and  DATA  BASE  MAINTENANCE  on.  This  will  normally do
  4784.      everything we need without having to refer to this frame.
  4785.  
  4786.      Normal operation will be to monitor the F2 frame and use  the 25 by 40
  4787.      monitors to display the detail to the mechanics as they start the next
  4788.      task.  We will mark task actual  start and  ending times with  an X on
  4789.      this (F2) frame.
  4790.  
  4791.      The  forgoing   describes  a  fictitious  environment  that  has  been
  4792.      described to  SCHEDULE as a SERVICE  project data base.  The resources
  4793.      and tasks can be displayed and you can make up customers with requests
  4794.      to observe the operation.
  4795.  
  4796.  
  4797.  
  4798.  
  4799.  
  4800.  
  4801.  
  4802.  
  4803.  
  4804.  
  4805.  
  4806.  
  4807.  
  4808.  
  4809.  
  4810.  
  4811.  
  4812.  
  4813.  
  4814.  
  4815.      HITT Personal Software       Appendix B-2
  4816.  
  4817.  
  4818.  
  4819.  
  4820.  
  4821.  
  4822.  
  4823.  
  4824.  
  4825. INDEX
  4826.  
  4827.  
  4828.  
  4829.      A                               CPM  1, 2, 3
  4830.                                      Critical Path  4, 39, 40, 41
  4831. Abstract  3                          Cursor controls  13
  4832. ACT file  47
  4833. Activities  3, 4
  4834. Activity display  21                      D
  4835. Adapters  45
  4836. Alt Number  45                       DAA  43
  4837. AON Activity on node  3              Data base  6, 7, 12, 15, 18,
  4838. Arrow Diagrams  3                       20, 25, 27, 45, 46, 47
  4839. ASCII  47                            Data base listing  24
  4840. Auto processing  24                  Data base maintenance  25
  4841. Aux monitor  11                      Date time display  11
  4842.                                      Decisions  5
  4843.                                      Delete  12, 46
  4844.      B                               Delete a TASK  16, 25
  4845.                                      Deleting records  25
  4846. Background  3, 10                    Development Projects  36
  4847. Background display  11               Disk files  8
  4848. Backup the program  2, 9             Disk space  26
  4849. Basic  45                            Display  8, 55
  4850. Batch  44                            Display Command  53
  4851. Batch files  32, 35                  Display format  11
  4852. Bottom Up Plan  36                   DOS  8, 56
  4853. Brackets  12                         Dummy Tasks  3
  4854. Branch Command  53
  4855. Buffer resource  5, 20, 27
  4856.                                           E
  4857.  
  4858.      C                               Early display  24
  4859.                                      Edit  6
  4860. Calculating EST  7                   Edit controls  13
  4861. Calculating LST  7                   Edit conventions  12
  4862. Calendar  4, 5, 6, 11, 18, 42,       Editing files  52
  4863.    46                                End Key  46
  4864. CALENDAR NOT FOUND  52               Ending tasks  20
  4865. Capital Resources  4                 Equal Command  54
  4866. Carrage Return  55                   Erase records  25
  4867. Clear Command  53                    Esc key  10
  4868. Colons :  12                         Events  3
  4869. Color control  25                    Exit command  54
  4870. Command  44, 45, 46, 47, 50,         Expert  44
  4871.    53                                Expert Friendliness  1
  4872. Command file  32, 35
  4873. Comment Command  53
  4874. Concepts  7                               F
  4875. Connecting grid  7
  4876. Control  23                          File  45, 53
  4877. Control field  12                    Find  47
  4878. Copying the program  2, 9            Foreground  3, 10
  4879.  
  4880.  
  4881.                                                                  Index-1
  4882.  
  4883.  
  4884.  
  4885.  
  4886.  
  4887.  
  4888.  
  4889.  
  4890.  
  4891. Frame 10 controls  32                License  2
  4892. Full screen edit  13                 Limitations of use  2
  4893. Function keys  10                    Line Feed  55
  4894.                                      Locate Command  54
  4895.  
  4896.      G
  4897.                                           M
  4898. GANTT files  51
  4899. Generic name  27, 28                 MAP  2
  4900. Generic Resources  5                 Meeting calendar  33, 34
  4901. Getting started  9                   Message  47, 56, 57
  4902. Graphics Command  54                 Mile-Stone  3, 36, 39
  4903. Grid  6                              Models  3, 6
  4904.                                      Monochrome Command  54
  4905.                                      Multiple jobs  6
  4906.      H
  4907.  
  4908. Header  50                                N
  4909. Header print line  24
  4910. Help  1, 10                          Name command  53, 54
  4911. Hints  44                            Network  6
  4912. Hours                                Null Command  54
  4913.     Day  51
  4914.  
  4915.                                           O
  4916.      I
  4917.                                      Organization  39
  4918. Ideas  44                            Output selections  11
  4919. If Not Errorlevel  56                Overlap  6
  4920. Insert  12
  4921. Interactive display  11, 21
  4922. Inventory resource  5, 20, 27             P
  4923.  
  4924.                                      Pause Command  53
  4925.      J                               PERT  1, 2, 3
  4926.                                      Pg Dn Key  46
  4927. Job  3, 11, 30, 31, 37, 39, 41       Pg Up Key  46
  4928. Job description  15, 33              Piping  53
  4929. Job file  32                         Precedence method  3
  4930. Job resource  5, 28                  Printer  8, 44
  4931. Job status display  21               Printer selections  23
  4932.                                      Problems  51
  4933.                                      Process controls  11
  4934.      K                               Processing calendars  7
  4935.                                      Processing Jobs  7
  4936. Keyboard  49                         Processing resources  7
  4937.                                      Processing tasks  7
  4938.                                      Program operation  10
  4939.      L                               Project  3
  4940.                                      Project Management  43
  4941. Labor Resources  5                   Project Planning  2, 36
  4942.  
  4943.  
  4944.  
  4945.  
  4946.  
  4947.                                                                  Index-2
  4948.  
  4949.  
  4950.  
  4951.  
  4952.  
  4953.  
  4954.  
  4955.  
  4956.  
  4957.      Q                                    T
  4958.  
  4959. Quality  36, 41, 42                  Tab  47, 50
  4960.                                      Tables  6
  4961.                                      Task  3, 4, 11, 28, 31, 37,
  4962.      R                                  40, 41
  4963.                                      Task description  16, 33
  4964. Record deletion  25                  Task detail display  21
  4965. Record selection  12                 Task Duration  37, 38
  4966. Redirect  49                         Task Model  3
  4967. RES file  20                         Tasks  7
  4968. Reset print requests  24             Terminal Emulation  45
  4969. Resource  2, 3, 4, 6, 7, 11,         Terminating printing  24
  4970.    27, 31, 37, 38, 40, 41, 42        Time  4, 7
  4971. Resource description  17, 34         Time date display  11
  4972. Resource names  51                   Time stamp  30
  4973. Ribbons  50                          TMP file  47
  4974. RS-232  44                           Top Down Design  36
  4975.                                      Tracking  30
  4976.                                      Transfer the program  2
  4977.      S                               Traps  51
  4978.                                      TSK  47
  4979. Schedule  2, 7, 41                   Tutor  27, 29
  4980. Security header  24
  4981. Sequence  7
  4982. SKB  53                                   U
  4983. Slashes   12
  4984. Smoothing  41                        Unequal Command  54
  4985. Sort  32, 46, 47                     Updating data  13
  4986. Specific Resources  40
  4987. STA file  20, 47
  4988. Staff assignments  30                     W
  4989. Start processing  24
  4990. Starting tasks  20                   Wait command  53, 54
  4991. STATION  10, 18                      Warranty  2
  4992. Status display  11
  4993. Storage size  8
  4994. System requirements  8                    Z
  4995.  
  4996.                                      Zero Command  54
  4997.  
  4998.  
  4999.  
  5000.  
  5001.  
  5002.  
  5003.  
  5004.  
  5005.  
  5006.  
  5007.  
  5008.  
  5009.  
  5010.  
  5011.  
  5012.  
  5013.                                                                  Index-3
  5014.  
  5015.  
  5016.  
  5017.