Network time and work tracker
First Claim
1. A computer-implemented automatically-operated user-activity monitoring system for automatically collecting and analyzing information about time and continuous work performed on a computer without manually starting and stopping a clock or having a user specify that work is being performed prior to the user beginning the work, comprising:
- automatic data collector means for monitoring certain portions of a user'"'"'s computer network activity;
automatic data collector means for logging into a log file certain portions of a user'"'"'s computer network activity;
data analyzer means for determining, by means of rules defining work previously defined by a user, which portions of a user'"'"'s computer network activity constitutes work;
wherein the log file includes a series of events including file activity and one or more external user input activities;
wherein the data analyzer means include means for reading the series of chronologically ordered events from the log file and for categorizing activities as belonging to a certain predetermined task;
wherein for each task a respective timer is provided by the data analyzer means for accumulating actual time worked on a task for time intervals greater than an idle time limit interval;
wherein a respective timer is started by the data analyzer means when an activity for a task is detected and wherein the timer stops after expiration of a preset idle time limit interval;
wherein the timer is restarted when another subsequent activity for a task is detected; and
such that when an idle time limit interval is determined to have elapsed in the log file between activities belonging to a work task, means are provided for totaling the time for the task as a work period.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system for automatically collecting and for analyzing information about time and work performed on a computer network which includes the following elements: a data collector for monitoring certain portions of a user'"'"'s computer network activity and for logging into a log file those certain portions of a user'"'"'s computer network activity; a data analyzer for determining by following user-defined rules showing which portions of those certain portions of a user'"'"'s computer network activity constitutes continuous work activities, and how this work should be categorized by project and task with project; and an external interface for building the rules defining work. The data collector includes a resident module, such as a TSR (terminate-and-stay-resident) module, which extends the file system of the computer so that detailed records are kept of file activities. The data collector also routes information about file and keyboard activity, and tabulates and writes such information to a user'"'"'s disk periodically.
179 Citations
42 Claims
-
1. A computer-implemented automatically-operated user-activity monitoring system for automatically collecting and analyzing information about time and continuous work performed on a computer without manually starting and stopping a clock or having a user specify that work is being performed prior to the user beginning the work, comprising:
-
automatic data collector means for monitoring certain portions of a user'"'"'s computer network activity; automatic data collector means for logging into a log file certain portions of a user'"'"'s computer network activity; data analyzer means for determining, by means of rules defining work previously defined by a user, which portions of a user'"'"'s computer network activity constitutes work; wherein the log file includes a series of events including file activity and one or more external user input activities; wherein the data analyzer means include means for reading the series of chronologically ordered events from the log file and for categorizing activities as belonging to a certain predetermined task; wherein for each task a respective timer is provided by the data analyzer means for accumulating actual time worked on a task for time intervals greater than an idle time limit interval; wherein a respective timer is started by the data analyzer means when an activity for a task is detected and wherein the timer stops after expiration of a preset idle time limit interval; wherein the timer is restarted when another subsequent activity for a task is detected; and such that when an idle time limit interval is determined to have elapsed in the log file between activities belonging to a work task, means are provided for totaling the time for the task as a work period. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. An event analyzer module which reads a computer network activity log file over a date range for a plurality of network tasks, comprising:
-
wherein a network task includes one or more activities; wherein for each network task there are associated four times, including;
a) total time, which is all time cumulated for a task since a last system reset, b) current time, which is all time since the current start of the task, c) active time, which is the real-time time of a last event for the task, and d) idle time limit, which is a predetermined interval of time;an analyzer loop, including; means for loading all of the total times for all tasks from an activity log file; means for zeroing all of the current times for each of the tasks; means for determining to which task an activity belongs; means for determining if an event is not to be analyzed and for then providing means for checking active times; means for determining if an event is to be analyzed and then providing means for setting current time equal to the differences between a current activity time and a previous activity time; means for setting active time of a task equal to the current event time; means for checking the active times for all other tasks to determine if any are idle; wherein the means for checking the active times is a loop including; means for determining if the active time interval between this activity time and a previous activity time for this task is greater than the idle time limit and, if so, for then determining that the task is idle; means for setting current time an event equal to a previous time for an event plus the idle time limit so that the total time for a task is an accumulation of such current times for a task; means for accumulating total time for each task into current time; and means for writing time information to a file. - View Dependent Claims (21, 22)
-
-
23. A computer-implemented method for automatically collecting and analyzing information about time and work performed on a computer through a network without the manual starting and stopping of a clock or specifying that work is being performed prior to beginning work, comprising the steps of:
-
automatically logging into a log file certain portions of a user'"'"'s computer network activity; determining, by means of rules previously defined by a user, which portions of a user'"'"'s computer network activity constitutes a measurable work task; when a certain user-defined and task-specific time period has elapsed between certain activities in the log file for a given task, accumulating the time as a work period for the given task; wherein the step of determining which portions of a user'"'"'s computer network activity constitutes a measurable work task includes the steps of; loading current times for each of a number of events from a cumulative time file; for each event in the event file; (a) getting the event from the log file; (b) determining the owner of the task to which the event belongs; (c) if an event is to be included in a task, then accumulating job time; (d) if an event is not to be included in a task, then checking time duration of the active time for the event; (e) checking the active time for the event; wherein the step of checking the active time for an event includes for each task; (a) calculating the difference between a current activity and a previous activity for a task; (b) if the difference is greater than an idle time limit interval, accumulating task time; and (c) accumulating total time for each task; and writing time data for each task to a file. - View Dependent Claims (24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41)
-
-
42. A computer-implemented method for automatically collecting information about time and work performed on a computer without the manual starting and stopping of a clock or specifying that work is being performed prior to beginning the work, comprising the steps of:
-
automatically monitoring certain portions of a user'"'"'s computer network activity; automatically logging into a log file those certain portions of a user'"'"'s computer network activity; determining, by means of rules previously defined by a user, which portions of those certain portions of a user'"'"'s computer network activity constitutes work and how this work is categorized by sets and subsets within a set; wherein, when a certain user-defined and task-specific time period has elapsed between certain activities in the log file, the time for the certain activities is cumulated as a work period; wherein the step of determining includes reading the contents of the activity log file over a particular range of days for a plurality of tasks, comprising; wherein for each task there are associated four times, including;
a. total time, which is time total cumulated for a task since a last system reset, b. current time, which is time total since start of the task, c. active time, which is the real-time time of a last event for the task, and d. idle time limit , which is a predetermined interval of time;analyzing the contents of the activity log file, including the steps of; for each activity, determining to which task the activity belongs; if this event is not to be included in a task to be measured, then identifying this event as a system event and begin checking active times; if this event is to be included in a task to be measured, then updating current time for a task and setting the active time equal to the event time; checking active time for each task as follows; if the difference between the time of this activity and the time of a previous activity is greater that the idle time limit interval, then identifying the task as an idle task; if the difference between the time of this activity and the time of a previous activity is less that the idle time limit interval, then setting the current time equal to the time of the previous activity plus the idle time limit; accumulating the current time into the total time; and if any totals are updated, then writing such totals to a file for a corresponding task.
-
Specification