up

EP 0394160:
Dynamic progress marking icon.

Data Sheet

EC Classification:
G06F3/023A3 ; G06F9/44W
IPC Classification:
G06F9/44 ; G06F9/46
Priority Number(s):
US19890325600 19890320
Application Number:
EP19900480028 19900220
Requested Patent:
[_] EP0394160, A3, B1
Applicant(s)::
IBM (US)
Inventor(s):
JAASKELAINEN WILLIAM (US)
Publication date:
1990-10-24
Patent Number:
EP0394160
Invention:
Dynamic progress marking icon.

Application

Description


   Description

   DYNAMIC PROGRESS MARKING ICON
   This invention relates to the data processing field. More
   particularly, this invention is an icon which dynamically marks the
   progress of a monitored computer task. The icon of the invention is
   displayed to the computer user, thereby keeping him informed as to the
   progress of a task without resorting to language sensitive messages.
   Computers have dutifully performed billions of tasks commanded of them
   from computer users worldwide. Many of these tasks were quite simple
   for the computer to perform, and were completed with results displayed
   to the user almost instantaneously. However, some tasks requested by
   users of computers are much more complex, and require a considerable
   amount of processing power and time to complete.
   Some of these complex tasks can take several seconds, minutes, or even
   several hours or days to complete. Even though a computer may be
   working frantically under the covers to satisfy a complex task
   requested by a user, the user quite often is given no indication as to
   what progress, if any, is being made in completing the task. Often
   after a large amount of time has elapsed, a user will erroneously
   conclude that the computer has encountered an error and has "hanged"
   or "gone casters up", and needs to be restarted. This scenario is
   frustrating to a computer user, who feels uninformed as to the
   progress of his requested task. More importantly, valuable computer
   resources are wasted if a computer is erroneously restarted in the
   middle of a complex task just because of poor or non-existent progress
   feedback to the user.
   Attempts to address this problem have so far been quite primitive.
   Some programs display only a number, such as 100 or 10, and count down
   to zero as a task is being processed. Other programs display a
   message, such as "Working on your request" over and over again,
   alternately displaying the message highlighted and non-highlighted.
   Neither of these techniques truly inform the user as to the progress
   of a task - they merely give the user something that changes on the
   screen to look at. Although these techniques may help in discouraging
   a user from restarting a system for awhile, the feedback provided does
   not give a user a warm feeling that progress is really being made on
   his task.
   A better attempt at solving this problem is to repeatedly display a
   truly useful message to the user, such as "Now processing object
   number 12 out of 100", or "This task will complete in 5.05 minutes".
   Unfortunately, these messages need to be translated into several
   different languages when the computer is sold around the world, and
   this requirement can be quite burdensome and yield unpredictable
   results. In addition, these messages can be quite wasteful of space,
   and some languages require more space than other languages to
   communicate the same meaning.
   Summary of the Invention
   It is a principle object of the invention to provide feedback to a
   computer user as to the progress of a task.
   It is another object of the invention to provide feedback to a
   computer user as to the progress of a task in an efficient manner.
   It is another object of the invention to provide feedback to a
   computer user as to the progress of a task in a manner that does not
   require burdensome and unpredictable language translations.
   These and other objects are accomplished by the dynamic progress
   marker icon disclosed herein.
   A dynamic progress marker icon is disclosed that dynamically changes
   to mark the progress of a task. In this manner, the user is kept
   informed of the status of a task being performed without resorting to
   language sensitive messages such as "Now processing object number 12
   of 100". The icon does not require a graphics display to be used and
   therefore can be used on both graphics and non-graphics displays. The
   icon of the prepared embodiment has five rows consisting of four
   percent (%) symbols surrounded by a border. At the beginning of a
   task, a task monitor quantifies the task into substantially equivalent
   task work units. All twenty "%" symbols are present and displayed to
   the user. When the task monitor determines that one task work unit has
   completed, one "%" symbol is replaced in the icon by a replacement
   character, such as a blank or null character. The replacement of one
   "%" symbol each time a task work unit completes continues until all of
   the "%" symbols are replaced, indicating 100% completion of the task.
   The order in which symbols inside the icon are replaced is determined
   by a pattern array which can be modified if desired. The symbols used
   inside the icon and for the border are selected to be available in
   virtually all languages, and can also be modified to meet the needs of
   a particular user.
   Fig. 1 shows a block diagram of the computer system of the invention.
   Figs. 2A-2U show the icon of the preferred embodiment of the invention
   as displayed to a user as a monitored task progresses.
   Figs. 3A-3D show the icons of various alternate embodiments of the
   invention.
   Figs. 4A-4B show the icon matrix and programmable pattern array of the
   invention that determines the order in which the symbols inside the
   icon are replaced.
   Figs. 5-8 show a flow chart of the generation of the dynamic progress
   marking icon of the invention.
   Fig. 1 shows a block diagram of the computer system of the invention.
   Computer system 10 contains processor 11 and display 12. Processor 11
   contains task 13, task monitor 14, and icon generator 15. Icon 20 is
   displayed on display 12.
   Computer system 10 can be any computer system, such as a personal
   computer, a minicomputer, or a mainframe computer. In the preferred
   embodiment, computer system 10 is an IBM System/36 with an attached
   display. Note that processor 11 can be directly connected to display
   12, or connected remotely over communications lines such as telephone
   lines, local area networks, etc. Note also that although only
   processor 11 is shown, more than one processor and/or special purpose
   hardware may be used to perform the function of task 13, task monitor
   14, or icon generator 15.
   Task 13 represents the item of work requested of computer system 10 by
   the computer user. An example of a task would be a request to back up
   a hard disk to magnetic tape. Task monitor 14 quantifies the amount of
   work required to complete task 13, and divides this quantified
   workload into a plurality of substantially equivalent task work units.
   Task monitor 14 then monitors task 13 and sends a message to icon
   generator 15 each time a task work unit has been completed. Responsive
   to receiving the message, icon generator 15 updates icon 20 displayed
   to the user on display 12 by replacing one of the symbols contained in
   icon 20. The operation of computer system 10 will be described in more
   detail in conjunction with the discussion of Figs. 5-8.
   Figs. 2A - 2U shows how icon 20 is displayed to a user as task 13
   progresses. Icon 20 contains a plurality of symbols 21 arranged in
   rows and columns. In the preferred embodiment, symbols 21 are all
   represented by the "percent sign" character (ASCII code 037, EBCDIC
   code 6C) although this can be changed by the user if desired. In
   addition, symbols 21 could be represented by a plurality of different
   characters. Also, the character or characters used to represent
   symbols 21 could be graphics or non-graphics characters. The
   non-graphics character "%" was chosen in the preferred embodiment to
   represent symbols 21 because it could be used on either graphics or
   non-graphics displays. In addition, the "%" character was available in
   substantially all character sets worldwide. Since the "%" character is
   used to represent a percentage of a whole, it was a good choice to
   represent symbols 21.
   Symbols 21 in icon 20 are surrounded by a border made up of horizontal
   border segments 22 and vertical border segments 23. Although icon 20
   can be used without a border at all, a border is used in the preferred
   embodiment to enhance usability. In the preferred embodiment,
   horizontal border segments 22 are represented by the "-" character
   (ASCII code 045, EBCDIC code 60) although this can be changed by the
   user if desired. Another possible character that could be used is the
   "-" character (ASCII code 095, EBCDIC code 6D). In addition,
   horizontal border segments 22 could be represented by a plurality of
   different characters. For example, the corners may be represented by a
   different character than the middle section. Also, the character or
   characters used to represent horizontal border segments 22 could be
   graphics or non-graphics characters. The non-graphics character "-"
   was chosen in the preferred embodiment to represent horizontal border
   segments 22 because it could be used on either graphics or
   non-graphics displays. In addition, the "-" character was available in
   substantially all character sets worldwide.
   Vertical border segments 23 are represented by the ":" character ASCII
   code 058, EBCDIC code 7A) in the preferred embodiment, although this
   can be changed by the user if desired. Other possible character that
   could be used are the "(" character (ASCII code 040, EBCDIC code 4D),
   or the ")" character (ASCII code 041, EBCDIC code 5D). In addition,
   vertical border segments 23 could be represented by a plurality of
   different characters. Also, the character or characters used to
   represent vertical border segments 23 could be graphics or
   non-graphics characters. The non-graphics character ":" was chosen in
   the preferred embodiment to represent vertical border segments 23
   because it could be used on either graphics or non-graphics displays.
   In addition, the ":" character was available in substantially all
   character sets worldwide.
   Fig. 2A shows how icon 20 is displayed to the user when a task has
   just begun. In the preferred embodiment, icon 20 is displayed in the
   lower right hand corner of display 12 (Fig. 1), and remains in the
   same location for the duration of the task. Of course, icon 20 could
   be displayed in a different location of display 12 or move from
   location to location as the task progresses.
   Note that all symbols 21 are represented by the "%" characters in the
   preferred embodiment shown in Fig. 2A. When task monitor 14 indicates
   to icon generator 15 that one task work unit has been completed, icon
   generator 15 replaces one "%" character from icon 20 with a
   replacement character, such as a blank or null character. Fig. 2B
   shows what icon 20 looks like after one task work unit has been
   completed.
   Figs. 2C through 2T, respectively, show how icon 20 is displayed to
   the user after each additional task work unit has been completed. The
   order in which symbols 21 are replaced is determined by a programmable
   pattern array, which is shown in Fig. 4B and will be discussed in more
   detail later.
   Fig. 2U shows how icon 20 is displayed to the user after the last task
   work unit has been completed. Note that all symbols 21 have been
   replaced, and only the border remains. Icon 20 shown in Fig. 2U is
   displayed to the user momentarily to indicate completion of the task,
   and then the border is removed, thereby causing icon 20 to disappear
   from display 12.
   Fig. 3A shows icon 31 of an alternate embodiment of the invention.
   Icon 31 still contains symbols 21, horizontal border segments 22 and
   vertical border segments 23. Note that instead of having symbols 21
   arranged in rows and columns, they are arranged horizontally. The
   preceding discussion relating to icon 20 of Figs. 2A-2U is equally
   applicable to icon 31 shown in Fig. 3A.
   Fig. 3B shows icon 32 of an alternate embodiment of the invention.
   Icon 32 still contains symbols 21, horizontal border segments 22 and
   vertical border segments 23. Note that instead of having symbols 21
   arranged in rows and columns, they are arranged vertically. The
   preceding discussion relating to icon 20 of Figs. 2A-2U is equally
   applicable to icon 32 shown in Fig. 3B.
   Fig. 3C shows icon 33 of an alternate embodiment of the invention.
   Icon 33 still contains symbols 21, horizontal border segment 22 and
   vertical border segment 23. Note that horizontal border segments 22
   are represented by a plurality of characters: the " +& " character
   (ASCII code 218), the "-" character (ASCII code 196), the " +&
   "character (ASCII code 191), the " +& " character (ASCII code 192),
   and the " +& " character (ASCII code 217). Vertical border segments 23
   are represented on the "" character (ASCII code 179). Icon 33 uses
   non-graphics extended ASCII codes available for use by the IBM PC,
   PC/XT, PC/AT, PS/2, and associated compatibles. Icon 33 may be
   preferred over icon 20 in computing environments where the characters
   used to make up the border are available for use.
   Fig. 3D shows icon 34 of an alternate embodiment of the invention.
   Icon 34 still contains symbols 21, horizontal border segments 22 and
   vertical border segments 23. Note that both horizontal border segments
   22 and vertical border segments 23 are made up a single character, a
   "*" (ASCII code 042, EBCDIC code 5C).
   Figs. 4A-4B show the icon matrix and programmable pattern array of the
   invention that determines the order in which symbols 21 inside icon 20
   are replaced. Fig. 4A shows icon matrix 40. Icon matrix 40 is arranged
   in rows and columns corresponding to the rows and columns of icon 20.
   Icon matrix 40 contains a plurality of cells 41. Each cell corresponds
   to a symbol 21 of icon 20. The cell numbers shown in cells 41 indicate
   the relative position of the cell in icon matrix 40.
   Fig. 4B shows programmable pattern array 45. Pattern array 45 contains
   a plurality of array locations 46A-T. Each array location contains the
   cell number of a cell 41 in icon matrix 40. Array location 46A in
   pattern array 45 indicates the cell number for which the first
   corresponding symbol 21 of icon 20 is replaced when the first work
   unit has been completed. For example, the cell number in array
   location 46A is a "four". This indicates that the first symbol to be
   replaced in icon 20 is located in cell number four of icon matrix 40.
   Cell number four is located in the upper right hand corner of icon
   matrix 40. Fig. 2B shows what icon 20 looks like when the symbol
   located in cell number four has been replaced.
   Pattern array 45 contains pointer 47. Pointer 47 indicates the array
   location to be processed next. Pointer 47 is incremented to the next
   array location each time a symbol 21 is replaced from icon 20. Pattern
   array 45 shows that the symbol corresponding to cell number four is
   replaced when pointer 47 is pointing to array location 46A. Then
   pointer 47 is incremented to the next array location 46B. The symbol
   corresponding to cell number three is replaced next, followed by cell
   numbers eight, two, seven, twelve, and so on. The symbol corresponding
   to cell number seventeen is the last symbol to be replaced. Note that
   when icon 20 looks like that shown in Fig. 2A, pointer 47 is pointing
   to array location 46A. Likewise, when icon 20 looks like that shown in
   Fig. 2B, pointer 47 is pointing to array location 46B, and so on,
   until when icon 20 looks like that shown in Fig. 2T, pointer 47 is
   pointing to array location 46T.
   Note that pattern array 45 can be modified as desired to create a
   different order of replacing characters from icon 20 other than that
   indicated in Fig. 4B. Note also that pattern array 45 would be
   modified if icon 31 or icon 32 of Figs. 3A or 3B were used instead of
   icon 20. Although pattern array 45 contains twenty array locations in
   the preferred embodiment, it can be shorter or longer depending on the
   number of symbols 21 contained in the icon.
   Figs. 5-8 show a flow chart of the generation of the dynamic progress
   marking icon of the invention. Processing begins in block 60 of Fig.
   5, where the quantify task work unit subroutine is called to quantify
   a task work unit of task 13. Task monitor 14 (Fig. 1) is responsible
   for performing this quantification.
   The quantify task work unit subroutine of Fig. 6 will now be
   discussed. Task monitor 14 first determines in block 61 if this
   particular task can be quantified by an estimate of time required to
   complete the task. If an estimate of the time required to complete
   this task is ascertainable, either because it is known or can be
   determined, the estimated task completion time is saved in time units,
   such as seconds, in block 62. Block 63 divides the total task
   completion time into a plurality of substantially equal task work
   units. Each task work unit corresponds to one of the symbols 21 of
   icon 20. For example, if task monitor 13 is able to ascertain that
   task 12 will take approximately sixty seconds to complete, block 63
   divides sixty seconds by twenty, the number of symbols of the icon.
   This results in a task work unit of three seconds. Therefore, a symbol
   21 of icon 20 will be erased every three seconds to indicate the
   completion of another task work unit. After block 63 determines the
   duration of a task work unit, control is returned in block 64 to Fig.
   5.
   If block 61 indicates that the estimated time required to complete the
   task is not ascertainable, block 65 looks to see if the number of work
   items in the task is ascertainable. For example, in the IBM System/3x
   and AS/400 environment, a work item is referred to as an object. Other
   definitions of work items could be easily made to fit a particular
   application. If the number of work items is ascertainable, this number
   is saved in block 66. Block 67 divides the number of work items into a
   plurality of substantially equal task work units, similar to the
   function of block 63. Each task work unit corresponds to one of the
   symbols 21 of icon 20. For example, if task monitor 13 is able to
   ascertain that task 12 contains two hundred work items, block 67
   divides two hundred by twenty, the number of symbols of icon 20. This
   results in a task work unit of ten work items. Therefore, a symbol 21
   of icon 20 will be replaced every ten work items to indicate the
   completion of another task work unit.
   If the quantified task work unit is not an integer multiple of work
   items or time units it is rounded up or down to the nearest number of
   work items or time units. The last task work unit covers the remaining
   work items, time units, or fractions thereof.
   Note that in some examples, more than one symbol will be replaced for
   a single work item or time unit. For example, if task 12 contains ten
   work items, block 67 divides ten by twenty which results in a task
   work unit of one-half of a work item. Therefore, two symbols of icon
   20 will be replaced for each work item.
   After block 67 determines the duration of a task work unit, control is
   returned in block 64 to Fig. 5. If block 65 is answered negatively, an
   icon cannot be generated and the program ends in block 68.
   Referring again to Fig. 5, block 51 checks to see if the user wants to
   change the character representing symbols 21, horizontal border 22, or
   vertical border 23 of icon 20, or change pattern array 45. Block 51
   would normally be defaulted to answer no and control would move on to
   block 52. If block 51 is answered affirmatively, the change icon
   subroutine of Fig. 7 is called in block 70. Icon generator 15 (Fig. 1)
   is responsible for the changing the icon defaults if desired by the
   user.
   The change icon subroutine of Fig. 7 will now be discussed. Icon
   generator 15 first asks the user if the "%" character is acceptable
   for symbol 21 in block 69. If not, the user is prompted for a new
   character in block 70. Note that the new character can be either a
   graphics or a non-graphics character.
   Block 71 asks the user if the replacement character of " " (null or
   blank) is acceptable. If not, block 72 prompts the user for a new
   replacement character. Note that if a replacement character of blank
   or null or other non-displayable character is used, the user perceives
   that the symbol has been erased. If the replacement character is
   displayable, an entirely different perception is given to the user.
   For example, if a "*" was the replacement character, a "*" would
   replace a "%" each time a task work unit completed. Fig. 2R, for
   instance, would have three "%" symbols and seventeen "*" characters.
   Block 73 asks the user if the "-" character is acceptable for
   horizontal border 22. If not, the user is prompted for a new character
   in block 74. Note that the new character can be either a graphics or a
   non-graphics character. Block 75 asks the user if the ":" character is
   acceptable for vertical border 23. If not, the user is prompted for a
   new character in block 76. Note again that the new character can be
   either a graphics or a non-graphics character.
   Block 77 asks the user if the default pattern array 45 (indicating the
   order in which symbols 21 are replaced from icon 20) is acceptable. If
   not, the user is prompted for a new pattern array in block 78.
   Flow of control returns to Fig. 5 in block 79. The change icon
   subroutine would get slightly more complex if it was desirable to use
   more than one character for symbol 21 or horizontal border 22 or
   vertical border 23 for the icon, such as icon 33 (Fig. 3C), but this
   modification is well within the scope of those skilled in the art.
   Referring again to Fig. 5, icon generator 15 (Fig. 1) displays icon 20
   to the user on display 12 in block 53. At the beginning of the task,
   icon 20 shown in Fig. 2A is displayed. Block 80 then calls the update
   icon subroutine. Icon generator 15 (Fig. 1) is responsible for
   updating the icon.
   The update icon subroutine of Fig. 8 will now be discussed. Block 81
   sets a counter to be equal to the number of symbols 21 in icon 20, and
   moves pointer 47 to array location 46A in pattern array 45. In the
   preferred embodiment, the counter would be set to twenty. Block 82
   continually checks to see if task monitor 14 has told task generator
   15 that a task work unit has been completed. If so, block 83 checks to
   see if the counter is equal to zero. If the counter is not equal to
   zero, block 84 finds array pointer 47 in pattern array 45 (Fig. 4B)
   and reads the cell number stored in the indicated array location 46.
   Here, pointer 47 is pointing to array location 46A, and cell number
   four is read. Block 85 replaces the symbol contained in cell number
   four with the replacement character. If the replacement character is a
   blank or null or other non-displayable character, the symbol will
   appear to the user to have been erased. Block 86 refreshes display 12,
   thereby displaying to the user the updated icon. Block 87 increments
   array pointer 47 to the next array location 46B. Block 88 decrements
   the counter by one, and the flow of control returns to block 82, where
   the subroutine waits until the next task work unit is done. As each
   task work unit is completed, blocks 83-88 are performed, and icon 20
   as shown in Figs. 2B-2U is generated one by one and displayed to the
   user. When block 83 determines that the counter is zero, indicating
   that the task has been completed and the last symbol 21 has been
   replaced in icon 20, the subroutine returns in block 89 to block 54 of
   Fig. 5, where the border of icon 20 is removed.
   In the situation where more then one symbol is replaced for a single
   work item or time unit, block 82 is repeatedly answered affirmatively
   and blocks 83-88 are performed until the correct number of symbols are
   replaced. For example, if task 12 contains ten work items, a task work
   unit is equal to one half of a work item. Therefore, each time a work
   item is done, task monitor 14 informs icon generator 15 that two task
   work units have been completed. Blocks 82-88 are performed twice,
   thereby replacing two symbols. Block 82 then waits for an indication
   that two more task work units have been completed.
   While this invention has been described with respect to the preferred
   and alternate embodiments, it will be understood by those skilled in
   the art that various changes in detail may be made therein without
   departing from the spirit, scope and teaching of the invention. For
   example, an attribute, such as blinking, underscore or highlight,
   could be used to indicate the next symbol to be replaced from the
   icon. In addition, the icon drawn in Fig. 2U can indicate the
   beginning of a task and symbols can be added to the icon instead of
   erased as the task progresses. This could be done easily by reversing
   the order of the pattern array, defining the symbol as " " (null or
   blank), and defining the replacement character as "%".
     _________________________________________________________________

   Data supplied from the esp@cenet database - l2

Claims


   Claims

   1) In a computer system, a method of dynamically modifying an icon
   having a plurality of symbols, said method comprising the steps of:
   quantifying the amount of work required to complete a task;
   dividing said quantified work into a plurality of substantially
   equivalent task work units, wherein each of said task work units
   corresponds to one of said plurality of symbols in said icon;
   monitoring the progress of said task;
   replacing one of said plurality of symbols with a replacement
   character when one task work unit has been completed; and
   repeating said replacing step as said task progresses until all of
   said plurality of symbols have been replaced, thereby indicating the
   completion of said task.
   2) The method of claim 1, wherein said quantifying step identifies the
   number of work items that need to be processed in order to perform
   said task.
   3) The method of claim 1, wherein said quantifying step identifies the
   estimated amount of time required to perform said task.
   4) The method of any one of claims 1-3, wherein said replacing step
   further comprises the step of:
   checking a pointer in a pattern array, said pointer identifying the
   array location which contains the cell number of the next symbol of
   said icon to be replaced.
   5) The method of claim 4, wherein said replacing step further
   comprises the step of: :
   moving said pointer in said pattern array to the next array location.
   6) The method of any one of claims 1-5, further comprising the step
   of:
   selecting a single character code to be used for all of said plurality
   of symbols.
   7) The method, of any one of claims 1-5, further comprising the step
   of:
   selecting a plurality of character codes to be used for said plurality
   of symbols.
   8) The method of any one of claims 1-5, further comprising the step
   of:
   selecting a single non-graphics character code to be used for all of
   said plurality of symbols.
   9) The method of any one of claims 1-5, further comprising the step
   of:
   selecting a non-displayable character for said replacement character.
   10) The method of any one of claims 1-5 further comprising the step
   of: :
   selecting a displayable character for said replacement character.
   11) The method of any one of claims 1-5, further comprising the step
   of:
   initializing a pattern array to indicate the order in which said
   symbols of said icon are replaced responsive to said replacing step,
   said pattern array having an array location corresponding to each of
   said symbols in said icon and having a pointer to indicate the next
   symbol in said icon to be replaced.
   12) A computer system for efficiently keeping a user informed as to
   the progress of a task, comprising:
   monitor means for monitoring said task;
   an icon displayed to said user; and
   generating means, connected to said monitor means and said icon, for
   generating and dynamically modifying said icon,
   said icon further comprising:
   a plurality of symbols, wherein said plurality of symbols are replaced
   one by one by a replacement character as said task progresses by said
   generating means,
   wherein all of said symbols are replaced when said task is completed.
   13) The computer system of claim 12, wherein said monitor means
   further comprises:
   quantifying means for quantifying the amount of work required to
   complete a task; and
   dividing means for dividing said quantified work into a plurality of
   substantially equivalent task work units, wherein each of said task
   work units corresponds to one of said plurality of symbols
   in said icon.
   14) The computer system of claim 13, wherein said generating means
   further comprises: :
   replacing means for replacing one of said plurality of symbols with
   said replacement character when one task work unit has been completed
   as determined by said monitor means,
   said replacing means repeatedly replacing one of said plurality of
   symbols as said task progresses until all of said plurality of symbols
   have been replacing, thereby indicating the completion of said task.
   15) The computer system of claim 14, wherein said quantifying means
   identifies the number of work items that need to be processed in order
   to perform said task.
   16) The computer system of claim 14, wherein said quantifying means
   identifies the estimated amount of time required to perform said task.
   17) The computer system of any one of claims 12-16, wherein said
   generating means further comprises: :
   a pattern array corresponding to said icon, said pattern array having
   a array location corresponding to each of said symbols in said icon
   and also having a pointer to indicate the next symbol in said icon to
   be replaced by said replacing means.
   18) The computer system of any one of claims 12-17 further comprising:
   initializing means for initializing said pattern array to indicate the
   order in which said symbols of said icon are replaced by said
   replacing means.
     _________________________________________________________________

   Data supplied from the esp@cenet database - l2


Granted Patent


Claims as Graphics

OCR result

 
gocr ep0394160-001

                   Europäisches Patentamt
_  _   European patent ofice
Ofice europeen des brevets       _ publication number. O 39_ 1 60 B 1
_             EUROPEA_ PATE_T SPECIFICATIO_
g Date or publ_icat_ion or patent spec_ircat_ion.      _,nt. c,.6. _06F 91_6, G06F 9144
08.,,.95 Bulletin 951,5
_ Application number. 9o,8oo28.,
_ Date of filing. 2o.o2.9o
_ Dynamic progress marking icon.
_ priority. 2o.o3.8a us 3256oo             _ Rererences cited.
l.E.E.E. SOFTWARE, VOl.,, nO.,, JänUäy
,981, pages 29.39, IEEE, hlew York, US; S..K.
g Date of publication of application.            CHAhIG. ''ViSUäl längUägeS. A tUtOfiäl änd
2,.,O.90 Bulletin 901_                 SUfVeY''
RESEARCH DISCLOSURE, no. 305, September
,989, page 65,, disclosure no. 30535, hlew
g Publication of the grant of the patent =          YOfkl US, ''Animäted iCOnS''
08.,,.95 Bulletin 951,5               _ proprietor.,nternationa, Business Mac,ines
_ Designated Contracting States =              C,O,,fP,O,f,ä,ti,O,n,,o,,
DE ES FR GB IT                     Armonk, hl.Y.,050, (US)
_,R,efe,re,nc,e,s,c_dÄ,, vo,,,o,,,,,,,,    _,,,,,,,,..,,,,,,,,.,,,,, w.,,,.,,m
pä__s.g.,g,EEE _'ew ÿork _s.'s,soDA et     6,O WeSt Center
a,.= __v,ps= 'A visu'a, debugge'r__  '  .          OrOnOCO, MinneSO_ 55960 IUS)
_ Representative. Lattard, nlico,e
COmpägnie IBM Ffän Ce
Departement de Propriete lntellectuelle
F.066,O La Gaude (FR)
_
_
__
_
__
_    No,e. w.i,h.i,,.i,e mo,,hs f,om,he publ.ica,.io, of,he me,,.io, of,he g,a,, of,he Eu,opea, pa,e,, a,y
_    penon may give notice to the European patent orrice or opposition to the European patent gra'nted.
_    Notice of opposition shall be fled in a written reasoned statement. It shall not be deemed to have been
W    fled until the opposition fee has been paid (Art. 99(1) European patent convention).
Jouve, 18, rue Saint-Denis, 75001 PARIS


gocr ep0394160-002

                        1              EP O 39_ _ 60 B_             2
Description                            other languages to communicate the same meaning.
This invention relates to the data processing      Summary of the lnvention
field. More particularly, this invention is an icon which
dynamically marks the progress of a monitored com-   5     lt is a principle object of the invention to provide
putertask. The icon ofthe invention is displayed to the      feedback to a computer user as to the progress of a
computer user, thereby keeping him informed as to      task.
the progress of a task without resorting to language        lt is another object of the invention to provide
sensitive messages.                        feedback to a computer user as to the progress of a
Computers have dutifully performed billions of   1o   task in an efficient manner.
tasks commanded of them from computer users        lt is another object of the invention to provide
worldwide. Many of these tasks were quite simple for      feedback to a computer user as to the progress of a
the computerto perform, and were completed with re-      task in a manner that does not require burdensome
sults displayed to the user almost instantaneously.      and unpredictable language translations.
However, some tasks requested by users of comput-   15     These and other objects are accomplished by the
ers are much more complex, and require a consider-      dynamic progress marker icon disclosed herein.
able amount of processing power and time to com-        A dynamic progress marker icon is disclosed that
plete.                                 dynamically changes to mark the progress of a task.
Some of these complex tasks can take several      ln this manner, the user is kept informed ofthe status
seconds, minutes, or even several hours or days to   2o   of a task being performed without resorting to lan-
complete. Even though a computer may be working      guage sensitive messages such as ''Now processing
frantically under the covers to satisfy a complex task      object number 12 of 1 OO''. The icon does not require
requested by a user, the user quite often is given no      a graphics display to be used and therefore can be
indication as to what progress, if any, is being made      used on both graphics and non-graphics displays.
in completing the task. Often after a large amount of   25   The icon of the prepared embodiment has five rows
time haS elapSed, a uSef will effoneouSly Con Clude      ConSiSting offouf pefCent (l_) SymboIS Suffounded by
that the computer has encountered an error and has      a border. At the beginning of a task, a task monitor
''hanged'' or ''gone casters up'', and needs to be re-      quantifies the task into substantially equal task work
started. This scenario is frustrating to a computer      units, with a quantification method as claimed in
u Sef, who f_eIS uninfofmed aS to the pfogfeSS of hiS   30   Claim 1. All twenty ''l_'' SymboIS afe pfeSent and diS-
requested task. More importantly, valuable computer      played to the user. When the task monitor determines
feSoufCeS afe waSted if a Computef iS effoneouSly fe-      that one taSk wofk unit haS Completed, one ''l_'' Sym-
started in the middle of a complex task just because      bol is replaced in the icon by a replacement character,
of poor or non-existent progress feedback to the user.      such as a blank or null character. The replacement of
AttemptS to addfeSS thiS pfoblem have So f_f   35   one ''l_'' Symbol eaCh time a taSkwofk unit CompleteS
been quite pfimitive. Some pfogfamS diSplay only a      ContinueS until all ofthe ''l_'' SymboIS afe feplaCed, in-
numbef, SuCh aS 1 OO of 1 O, and Count down to zefo      di Cating 1 OOl_ Completion of the taSk. The ofdef in
as a task is being processed. Other programs display      which symbols inside the icon are replaced is deter-
a message, such as ''Working on your request'' over      mined by a pattern array which can be modified ifde-
and over again, alternately displaying the message   4o   sired. The symbols used inside the icon and for the
highlighted and non-highlighted. Neither of these      border are selected to be available in virtually all lan-
techniques truly inform the user as to the progress of      guages, and can also be modified to meet the needs
a task - they merely give the user something that      of a particular user.
changes on the screen to look at. Although these        Fig. 1 shows a blockdiagram ofthe computersys-
techniques may help in discouraging a user from re-   45   tem of the invention.
starting a system for awhile, the feedback provided        Figs. 2A-2U show the icon of the preferred em-
does not give a user a warm feeling that progress is      bodiment of the invention as displayed to a user as a
really being made on his task.                   monitored task progresses.
A better attempt at solving this problem is to re-        Figs. 3A-3D show the icons of various alternate
peatedly display a truly useful message to the user,   5o   embodiments of the invention.
such as ''Now processing object number 12 out of        Figs. 4A-4B show the icon matrix and program-
1 OO'', or ''This task will complete in 5.05 minutes''. Un-      mable pattern array of the invention that determines
fortunately, these messages need to be translated      the order in which the symbols inside the icon are re-
into several different languages when the computer is      placed.
sold around the world, and this requirement can be   55     Figs. 5-8 show a flow chart of the generation of
quite burdensome and yield unpredictable results. In      the dynamic progress marking icon of the invention.
addition, these messages can be quite wasteful of        Fig. 1 shows a blockdiagram ofthe computersys-
space, and some languages require more space than      tem of the invention. Computer system 1 O contains
2


gocr ep0394160-003

                        3              EP O 39_ _ 60 B_             4
processor 11 and display 12. Processor 11 contains      EBCDIC code 6D). In addition, horizontal border seg-
task 1 3, task monitor 14, and icon generator 1 5. Icon      ments 22 could be represented by a plurality of dif-
20 is displayed on display 12.                   ferent characters. For example, the corners may be
Computer system 1 O can be any computer sys-      represented by a different character than the middle
tem, such as a personal computer, a minicomputer, or   _   section. Also, the characterorcharacters used to rep-
a mainframe computer. In the preferred embodiment,      resent horizontal bordersegments 22 could be graph-
computer system 1 O is an IBM Systeml36 with an at-      ics or non-graphics characters. The non-graphics
tached display. Note that processor 1 1 can be directly      character ''-'' was chosen in the preferred embodi-
connected to display 12, or connected remotely over      ment to represent horizontal border segments 22 be-
communications lines such as telephone lines, local   1o   cause it could be used on either graphics or non-
area networks, etc. Note also that although only proc-      graphics displays. In addition, the ''-'' character was
essor 1 1 is shown, more than one processor andlor      available in substantially all character sets world-
special purpose hardware may be used to perform the      wide.
function of task 1 3, task monitor 14, or icon generator        Vertical border segments 23 are represented by
1 5.                               1_   the ''.'' character ASCll code 058, EBCDIC code 7A)
Task 1 3 represents the item ofwork requested of      in the preferred embodiment, although this can be
computer system 1 O by the computer user. An exam-      changed by the user if desired. Other possible char-
ple ofa taskwould be a request to back up a hard disk      acter that could be used are the ''('' character (ASCll
to magnetic tape. Task monitor 14 quantifies the      code 040, EBCDIC code 4D), or the '')'' character (AS-
amount ofwork required to complete task 1 3, and div-   2o   Cll code 041, EBCDIC code 5D). In addition, vertical
ides this quantified workload into a plurality of sub-      border segments 23 could be represented by a plur-
stantially equivalent task work units. Task monitor 14      ality of different characters. Also, the character or
then monitors task 1 3 and sends a message to icon      characters used to represent vertical border seg-
generator 1 5 each time a task work unit has been      ments 23 could be graphics or non-graphics charac-
completed. Responsive to receiving the message,   2_   ters. The non-graphics character ''.'' was chosen in
icon generator 1 5 updates icon 20 displayed to the      the preferred embodiment to represent vertical bor-
user on display 12 by replacing one of the symbols      der segments 23 because it could be used on either
contained in icon 20. The operation of computer sys-      graphics or non-graphics displays. In addition, the ''.''
tem 1 O will be described in more detail in conjunction      character was available in substantially all character
with the discussion of Figs. 5-8.               3o   sets worldwide.
Figs. 2A - 2U shows how icon 20 is displayed to        Fig. 2Ashows how icon 20 is displayed to the user
a user as task 1 3 progresses. Icon 20 contains a plur-      when a task has just begun. In the preferred embodi-
ality of symbols 21 arranged in rows and columns. In      ment, icon 20 is displayed in the lower right hand cor-
the preferred embodiment, symbols 21 are all repre-      ner of display 12 (Fig. 1), and remains in the same lo-
sented by the ''percent sign'' character (ASCll code   3_   cation for the duration of the task. Of course, icon 20
037, EBCDIC code 6C) although this can be changed      could be displayed in a different location ofdisplay 12
by the user if desired. In addition, symbols 21 could      or move from location to location as the task pro-
be represented by a plurality of different characters.      gresses.
Also, the character or characters used to represent        Note that all symbols 21 are represented by the
SymboIS 21 Could be gfaphiCS of non-gfaphiCS Chaf-   40   ''l_'' Chafa CtefS in the pfef_ffed embodiment Shown in
a CtefS. The non-gfaphiCS ChafaCtef ''l_'' waS ChoSen      Fig. 2A. When taSk monitof 14 indi CateS to i Con gen-
in the preferred embodiment to represent symbols 21      erator 1 5 that one taskwork unit has been completed,
beCau Se it Could be uSed on eithef gfaphiCS of non-      i Con genefatof 1 5 feplaCeS one ''l_'' ChafaCtef ffom
gfaphiCS diSplayS. In addition, the ''l_'' ChafaCtef waS      i Con 20 with a feplaCement ChafaCtef, SuCh aS a blank
available in substantially all character sets world-   4_   or null character. Fig. 2B shows what icon 20 looks
wide. Sin Ce the ''l_'' ChafaCtef iS uSed to fepfeSent a      like aftef one taSk wofk unit haS been Completed.
percentage of a whole, it was a good choice to repre-        Figs. 2C through 2T, respectively, show how icon
sent symbols 21.                          20 is displayed to the user after each additional task
Symbols 21 in icon 20 are surrounded by a border      work unit has been completed. The order in which
made up of horizontal border segments 22 and verti-   _o   symbols 21 are replaced is determined by a program-
cal border segments 23. Although icon 20 can be      mable pattern array, which is shown in Fig. 4B and
used without a border at all, a border is used in the      will be discussed in more detail later.
preferred embodiment to enhance usability. In the        Fig. 2U shows how icon 20 is displayed to the
preferred embodiment, horizontal border segments      user after the last taskwork unit has been completed.
22 are represented by the ''-'' character (ASCll code   __   Note that all symbols 21 have been replaced, and only
045, EBCDIC code 60) although this can be changed      the border remains. Icon 20 shown in Fig. 2U is dis-
by the user ifdesired. Another possible characterthat      played to the user momentarily to indicate completion
could be used is the ''-'' character (ASCll code 095,      of the task, and then the border is removed, thereby
3


gocr ep0394160-004

                        5              EP O 39_ _ 60 B_             6
causing icon 20 to disappear from display 1 2.          ''four''. This indicates that the first symbol to be re-
Fig. 3A shows icon 31 of an alternate embodi-      placed in icon 20 is located in cell number four of icon
ment of the invention. Icon 31 still contains symbols      matrix 40. Cell number four is located in the upper
21, horizontal bordersegments 22 and vertical border      right hand corner of icon matrix 40. Fig. 2B shows
segments 23. Note that instead of having symbols 21   _   what icon 20 looks like when the symbol located in
arranged in rows and columns, they are arranged hor-      cell number four has been replaced.
izontally. The preceding discussion relating to icon 20        Pattern array 45 contains pointer 47. Pointer 47
of Figs. 2A-2U is equally applicable to icon 31 shown      indicates the array location to be processed next.
in Fig. 3A.                              Pointer 47 is incremented to the next array location
Fig. 3B shows icon 32 of an alternate embodi-   1o   each time a symbol 21 is replaced from icon 20. Pat-
ment of the invention. Icon 32 still contains symbols      tern array 45 shows that the symbol corresponding to
21, horizontal bordersegments 22 and vertical border      cell number four is replaced when pointer 47 is point-
segments 23. Note that instead of having symbols 21      ing to array location 46A. Then pointer 47 is incre-
arranged in rows and columns, they are arranged      mented to the next array location 46B. The symbol
vertically. The preceding discussion relating to icon   1_   corresponding to cell number three is replaced next,
20 of Figs. 2A-2U is equally applicable to icon 32      followed by cell numbers eight, two, seven, twelve,
shown in Fig. 3B.                          and so on. The symbol corresponding to cell number
Fig. 3C shows icon 33 of an alternate embodi-      seventeen is the last symbol to be replaced. Note that
ment of the invention. Icon 33 still contains symbols      when icon 20 looks like that shown in Fig. 2A, pointer
21, horizontal border segment 22 and vertical border   2o   47 is pointing to array location 46A. Likewise, when
segment 23. Note that horizontal border segments 22      icon 20 looks like that shown in Fig. 2B, pointer 47 is
are represented by a plurality of characters. the ''_''      pointing to array location 46B, and so on, until when
character (ASCll code 21 8), the ''-'' character (ASCll      icon 20 looks like that shown in Fig. 2T, pointer 47 is
code 1 96), the ''_'' character (ASCll code 1 91), the ''L''      pointing to array location 46T.
character (ASCll code 1 92), and the ''_'' character   2_     Note that pattern array 45 can be modified as de-
(ASCll code 21 7). Vertical border segments 23 are      sired to create a different order of replacing charac-
represented on the __ l __ character (Ascll code 1 79).      ters rrom icon 2o other than that indicated in Fig. 4B.
Icon 33 uses non-graphics extended ASCll codes      Note also that pattern array 45 would be modified if
available for use by the IBM PC, PCIXT, PCIAT, PS12,      icon 31 or icon 32 of Figs. 3Aor 3B were used instead
and associated compatibles. Icon 33 may be prefer-   3o   of icon 20. Although pattern array 45 contains twenty
red over icon 20 in computing environments where      array locations in the preferred embodiment, it can be
the characters used to make up the border are avail-      shorter or longer depending on the number of sym-
able for use.                             bols 21 contained in the icon.
Fig. 3D shows icon 34 of an alternate embodi-        Figs. 5-8 show a flow chart of the generation of
ment of the invention. Icon 34 still contains symbols   3_   the dynamic progress marking icon of the invention.
21, horizontal bordersegments 22 and vertical border      Processing begins in block 60 of Fig. 5, where the
segments 23. Note that both horizontal border seg-      quantify task work unit subroutine is called to quan-
ments 22 and vertical border segments 23 are made      tify a task work unit of task 1 3. Task monitor 14 (Fig.
up a single character, a ''_'' (ASCll code 042, EBCDIC      1) is responsible for performing this quantification.
code 5C).                           4o     The quantify task work unit subroutine of Fig. 6
Figs. 4A-4B show the icon matrix and program-      will now be discussed. Task monitor 14 first determi-
mable pattern array of the invention that determines      nes in block61 ifthis particulartaskcan be quantified
the order in which symbols 21 inside icon 20 are re-      by an estimate of time required to complete the task.
placed. Fig. 4A shows icon matrix 40. Icon matrix 40      lf an estimate of the time required to complete this
is arranged in rows and columns corresponding to the   4_   task is ascertainable, either because it is known or
rows and columns of icon 20. Icon matrix 40 contains      can be determined, the estimated task completion
a plurality ofcells 41. Each cell corresponds to a sym-      time is saved in time units, such as seconds, in block
bol 21 of icon 20. The cell numbers shown in cells 41      62. Block 63 divides the total task completion time
indicate the relative position of the cell in icon matrix      into a plurality of substantially equal task work units.
40.                               _o   Each task work unit corresponds to one of the sym-
Fig. 4B shows programmable pattern array 45.      bols 21 of icon 20. For example, if task monitor 1 3 is
Pattern array 45 contains a plurality ofarray locations      able to ascertain that task 1 2 will take approximately
46A-T. Each array location contains the cell number      sixty seconds to complete, block 63 divides sixty sec-
ofa cell 41 in icon matrix 40. Array location 46A in pat-      onds by twenty, the number of symbols of the icon.
tern array 45 indicates the cell number for which the   __   This results in a task work unit of three seconds.
first corresponding symbol 21 of icon 20 is replaced      Therefore, a symbol 21 of icon 20 will be erased every
when the first work unit has been completed. For ex-      three seconds to indicate the completion of another
ample, the cell number in array location 46A is a      taskwork unit. After block 63 determines the duration
_


gocr ep0394160-005

                        7              EP O 39_ _ 60 B_             8
of a task work unit, control is returned in block 64 to      placement character is displayable, an entirely differ-
Fig. 5.                                ent perception is given to the user. For example, if a
If block 61 indicates that the estimated time re-      ''_'' was the replacement character, a ''_'' would re-
quifed to Complete the taSk iS not aSCeftainable, bloCk      pla Ce a ''l_'' eaCh time a taSkwofk unit Completed. Fig.
65 lookS to See ifthe numbef ofwofk itemS in the taSk   5   2R, fof in Stan Ce, would have thfee ''l_'' SymboIS and
is ascertainable. For example, in the IBM Systeml3x      seventeen ''_'' characters.
and AS1400 environment, a work item is referred to as        Block 73 asks the user if the ''-'' character is ac-
an object. Other definitions of work items could be      ceptable for horizontal border 22. If not, the user is
easily made to fit a particular application. If the num-      prompted for a new character in block 74. Note that
ber of work items is ascertainable, this number is   1o   the new character can be either a graphics or a non-
saved in block 66. Block 67 divides the number of      graphics character. Block 75 asks the user if the ''.''
work items into a plurality of substantially equal task      character is acceptable for vertical border 23. If not,
work units, similar to the function of block 63. Each      the user is prompted for a new character in block 76.
task work unit corresponds to one of the symbols 21      Note again that the new character can be either a
of icon 20. For example, if task monitor 1 3 is able to   15   graphics or a non-graphics character.
ascertain that task 12 contains two hundred work        Block 77 asks the user ifthe default pattern array
items, block 67 divides two hundred by twenty, the      45 (indicating the order in which symbols 21 are re-
number of symbols of icon 20. This results in a task      placed from icon 20) is acceptable. If not, the user is
work unit of ten work items. Therefore, a symbol 21      prompted for a new pattern array in block 78.
of icon 20 will be replaced every ten work items to in-   2o     Flow of control returns to Fig. 5 in block 79. The
dicate the completion of another task work unit.         change icon subroutine would get slightly more com-
If the quantified task work unit is not an integer      plex if itwas desirable to use more than one character
multiple of work items or time units it is rounded up      for symbol 21 or horizontal border 22 or vertical bor-
or down to the nearest number of work items or time      der 23 for the icon, such as icon 33 (Fig. 3C), but this
units. The last task work unit covers the remaining   25   modification is well within the scope of those skilled
work items, time units, or fractions thereof.           in the art.
Note that in some examples, more than one sym-        Referring again to Fig. 5, icon generator 1 5 (Fig.
bol will be replaced for a single work item or time unit.      1) displays icon 20 to the user on display 12 in block
For example, iftask 1 2 contains ten work items, block      53. At the beginning ofthe task, icon 20 shown in Fig.
67 divides ten by twenty which results in a task work   3o   2A is displayed. Block 80 then calls the update icon
unit of one-half of a work item. Therefore, two sym-      subroutine. Icon generator 1 5 (Fig. 1) is responsible
bols of icon 20 will be replaced for each work item.       for updating the icon.
After block 67 determines the duration of a task        The update icon subroutine of Fig. 8 will now be
work unit, control is returned in block 64 to Fig. 5. If      discussed. Block 81 sets a counter to be equal to the
block 65 is answered negatively, an icon cannot be   35   number of symbols 21 in icon 20, and moves pointer
generated and the program ends in block 68.          47 to array location 46A in pattern array 45. In the pre-
Referring again to Fig. 5, block 51 checks to see      ferred embodiment, the counterwould be set to twen-
if the user wants to change the character represent-      ty. Block 82 continually checks to see if task monitor
ing symbols 21, horizontal border 22, or vertical bor-      14 has told task generator 1 5 that a taskwork unit has
der 23 of icon 20, or change pattern array 45. Block   4o   been completed. If so, block 83 checks to see if the
51 would normally be defaulted to answer no and con-      counter is equal to zero. If the counter is not equal to
trol would move on to block 52. If block 51 is answered      zero, block 84 finds array pointer 47 in pattern array
affirmatively, the change icon subroutine of Fig. 7 is      45 (Fig. 4B) and reads the cell number stored in the
called in block 70. Icon generator 1 5 (Fig. 1) is respon-      indicated array location 46. Here, pointer 47 is point-
sible for the changing the icon defaults if desired by   45   ing to array location 46A, and cell numberfour is read.
the user.                               Block 85 replaces the symbol contained in cell num-
The change icon subroutine of Fig. 7 will now be      ber four with the replacement character. If the re-
discussed. Icon generator 1 5 first asks the user ifthe      placement character is a blank or null or other non-
''l_'' ChafaCtef iS aCCeptable f_f Symbol 21 in bloCk 69.      diSplayable ChafaCtef, the Symbol will appeaf to the
If not, the user is prompted for a new character in   5o   user to have been erased. Block 86 refreshes display
block 70. Note that the new character can be either a      1 2, thereby displaying to the user the updated icon.
graphics or a non-graphics character.               Block 87 increments array pointer47 to the next array
Block 71 asks the user if the replacement char-      location 46B. Block 88 decrements the counter by
acter of '' '' (null or blank) is acceptable. If not, block      one, and the flow ofcontrol returns to block 82, where
72 prompts the userfor a new replacement character.   55   the subroutine waits until the next task work unit is
Note that if a replacement character of blank or null      done. As each taskwork unit is completed, blocks 83-
or other non-displayable character is used, the user      88 are performed, and icon 20 as shown in Figs. 2B-
perceives that the symbol has been erased. If the re-      2U is generated one by one and displayed to the user.
5


gocr ep0394160-006

                        9              EP O 39_ _ 60 B_             IO
When block 83 determines that the counter is zero, in-            by said icon generator of an icon (20) rep-
dicating that the task has been completed and the last            resentative of the progress of said task.
symbol 21 has been replaced in icon 20, the subrou-
tine returns in block 89 to block 54 of Fig. 5, where the      2.  The method ofclaim 1 wherein said icon compris-
border of icon 20 is removed.                _     es a plurality of symbols (21) arranged in a plur-
In the situation where more then one symbol is re-        ality of numbered cells (41) and wherein each of
placed for a single work item or time unit, block 82 is        said symbols corresponds to one of said plurality
repeatedly answered affirmatively and blocks 83-88        of task work units.
are performed until the correct numberofsymbols are
replaced. For example, if task 12 contains ten work   1o   3.  The method of claim 4 wherein updating step
items, a task work unit is equal to one half of a work        comprises replacing said symbol corresponding
item. Therefore, each time a work item is done, task        to said particular task work unit with a replace-
monitor 14 informs icon generator 1 5 that two task        ment character.
work units have been completed. Blocks 82-88 are
performed twice, thereby replacing two symbols.   1_   _.  The method of claim 5, wherein said replacing
Block 82 then waits for an indication that two more        step further comprises the step of checking a
task work units have been completed.                 pointer (47) in a pattern array (45), said pointer
An attribute, such as blinking, underscore or        identifying the array location which contains the
highlight, could be used to indicate the next symbol to        number ofthe cell corresponding to the next sym-
be replaced from the icon. In addition, the icon drawn   2o     bol (46) to be replaced in said icon.
in Fig. 2U can indicate the beginning of a task and
symbols can be added to the icon instead of erased      5.  The method of claim 6, wherein said replacing
as the task progresses. This could be done easily by        step further comprises the step of moving said
reversing the order of the pattern array, defining the        pointer in said pattern array to the next array lo-
symbol as '' '' (null or blank), and defining the replace-   2_     cation.
ment Chafa Ctef aS ''l_''.                       6.  The method of claim 6 further comprising the
step of initializing said pattern array to indicate
Claims                                  the order in which said symbols are replaced re-
3o     sponsive to said replacing step.
_.  In a computer system (1 O) comprising a display
device (12) a method of automatically and dy-      l.  A computer system for keeping a user informed
namically providing feedback to a user of said        as to the progress ofa taskcomprising the means
computer system as to the progress ofa task (1 3)        claimed in claims 1 to 8 to carry-out the method
composed of a number of task work items, said   3_     of anyone of claims 1 to 8.
method comprising the steps of.
- at the beginning ofsaid task, quantifying by
means of a task monitor (14) said task into      Patentansprüche
a plurality of substantially equivalent task
work units, said quantifying comprising the   4o   _.  In einem Computersystem (1 O) bestehend aus ei-
steps of                            nem Anzeigegerät (12) ein Verfahren zurautoma-
- estimating said task completion time; and         tischen und dynamischen Bereitstellung einer
- dividing said task completion time into a        Rückmeldung an den Benutzer des Computersy-
plurality of substantially equal task work        stems über den Fortgang einer Aufgabe (1 3), die
units;                        4_     aus einer Anzahl Aufgabenarbeitspunkte zusam-
or, if the estimated time required to com-        mensetzt ist, wobei das Verfahren die folgenden
plete the task is not ascertainable.             Schritte umfa_t.
- estimating a number of ascertainable work          - am Anfang der Aufgabe quantifizieren der
items in said task; and                       Aufgabe mit Hilfe eines überwachungspro-
- dividing said number of ascertainable work   _o        gramms (14) für die Quantifizierung in eine
items into a plurality of substantially equal            Vielzahl von im wesentlichen gleichen Ar-
task work units;                           beitseinheiten  der Aufgabe,  wobei  die
- monitoring progress of said task by means            Quantifizierung die folgenden Schritte um-
ofsaid task monitorand sending a message            fa_t.
to an icon generator (1 5) each time a par-   __       - Ermitteln der Aufgabenfertigstellungszeit;
ticular task work unit has been completed;            und
and                                - Einteilen der Aufgabenfertigstellungszeit in
- upon reception of said message updating            eine Vielzahl von im wesentlichen gleichen
6


gocr ep0394160-007

                          1 1              EP O 39_ _ 60 B_              12
Arbeitseinheiten der Aufgabe;              Revendications
oder, wenn die ermittelte Zeit, die erforderlich ist,
um die Aufgabe fertigzustellen, nicht festgestellt      _.  Dans un système informatique (1 O) comprenant
werden kann.                              un visuel (12), procédé pourfournir automatique-
- Ermitteln einer Anzahl von feststellbaren   _      ment et dynamiquement des informations en re-
Arbeitspunkten in der Aufgabe; und             tour à un utilisateur du dit système informatique
- Einteilen der Anzahl feststellbarer Arbeits-         au fur et mesure de l'exécution d'une tache (1 3)
punkte in eine Vielzahl von im wesentlichen         composée de plusieurs unités de travail, ledit
gleichen Arbeitseinheiten der Aufgabe;           procédé comprenant les étapes consistant à.
- überwachen des Fortganges der Aufgabe   1o     au début de la tache, quantifier au moyen d'un
mit  Hilfe des  überwachungsprogramms         controleur de tache (14) ladite tache en une plu-
und  senden  einer  Nachricht  an  einen         ralité d'unités de travail sensiblement égales, la-
Ikongenerator (1 5) immer dann, wenn eine         dite tache de quantification comprenant les éta-
bestimmte  Arbeitseinheit  der  Aufgabe         pes consistant à.
fertiggestllt wurde; und               1_         estimer le temps d'exécution de ladite ta-
- bei Empfang der Nachricht aktualisieren ei-         che; et
nes lkons (20), das den Fortgang der Auf-             diviser ledit temps d'exécution en une plu-
gabe anzeigt, durch den lkongenerator.           ralité d'unités de travail sensiblement égales;
ou, si le temps estimé nécessaire pour
2.  Verfahren nach Anspruch 1, wobei das lkon aus   2o     exécuter la tache ne peut etre déterminé.
einer Vielzahl von Symbolen (21) besteht, die in             estimer un nombre d'éléments de travail
einer Vielzahl numerierter Zellen angeordnet sind         dans ladite tache; et
und wobei jedes der Symbole mit einer aus der             diviser ledit nombre d'éléments de travail
Vielzahl von Arbeitseinheiten der Aufgabe korre-         déterminable en une pluralité d'unités de travail
spondiert.                          2_     sensiblement égales;
controler l'avancement de l'exécution de ladite
3.  Verfahren nach Anspruch 2, wobei der Aktualisie-         tache au moyen d'un controleurde tache ettrans-
rungsschritt den Ersatz des Symbols durch ein         mettre un message à un générateur d'icone (1 5)
Ersetzungszeichen umfa_t, das mit der jeweili-         à chaque fin d'exécution d'une unité de travail
gen Arbeitseinheit der Aufgabe korrespondiert.    3o     particulière; et
à réception du dit message par ledit générateur
_.  Verfahren nach Anspruch 3, wobei der Erset-         d'icone, mettre à jour une icone (20) représenta-
zungsschritt weiterhin den Schritt zur überprü-         tive de l'avancement de l'exécution de ladite ta-
fung eines Zeigers (47) in einer Mustermatrix         che.
(45) enthält, wobei der Zeiger den Ort in der Ma-   3_
trix kennzeichnet, der die Nummer der Zelle ent-      2.  Procédé selon la revendication 1, dans lequel la-
hält, die mit dem nächsten Symbol (46) korre-         dite icone comprend une pluralité de symboles
spondiert, das in dem lkon zu ersetzen ist.            (21) disposées selon une pluralité de cellules nu-
mérotées (41), et où chacun des dits symboles
5.  Verfahren nach Anspruch 4, wobei der Erset-   4o     correspond à l'une des dites unités de travail.
zungsschritt weiterhin den Schritt zum Bewegen
des Zeigers in der Mustermatrix zu dem nächsten      3.  Procédé selon la revendication 2, dans lequel
Matrixort enthält.                            l'étape de mise àjour comprend le remplacement
du dit symbole correspondant à ladite unité de
6.  Verfahren nach Anspruch 4, das weiterhin den   4_     travail particulière par un caractère de remplace-
Schritt zur lnitialisierung der Mustermatrix ent-         ment.
hält, um die Reihenfolge anzuzeigen, in der die
Symbole als Folge von dem Ersetzungsschritt er-      _.  Procédé selon la revendication 3, dans lequel la-
setzt werden.                              dite étape de remplacement comprend, de plus,
_o     l'étape consistant à controler un pointeur (47)
l.  Computersystem, um den Benutzer über den         dans une barre de configuration (45), ledit poin-
Fortgang einer Aufgabe informiert zu halten, be-         teur identifiant l'emplacement de la barre qui
stehend aus den in den Ansprüchen 1 bis 6 be-         contient le numéro de la cellule correspondant au
anspruchten Mitteln zur Ausführung des Verfah-         symbole suivant (46) à remplacer dans ladite ico-
rens von einem der Ansprüche 1 bis 6.         __      ne.
5.  Procédé selon la revendication 4, dans lequel la-
dite étape de remplacement comprend, de plus,
l


gocr ep0394160-008

                          1 3              EP O 39_ _ 60 B_              14
l'étape consistant à déplacer ledit pointeur dans
Iadite barre de configuration sur l'emplacement
suivant.
6.  Procédé selon la revendication 4, comprenant,   5
de plus, l'étape consistant à initialiser la barre de
configuration pour indiquerl'ordre dans lequel les
symboles sont remplacés en réaction à l'étape de
remplacement.                       IO
l.  Système informatique permettant de tenir un uti-
Iisateur informé quant à l'avancement de l'exécu-
tion d'une tache, comprenant les éléments dé-
crits dans les revendications 1 à 6 pour appliquer
Ie procédé selon l'une quelconque des dites re-   15
vendications 1 à 8.                     20
25
30
35
40
45
50
55
8