Time-keeping software for use with both standard and flexible working schedules. The system records work session start and end times as well as user activity. Personal smart cards are used to monitor when users clock in and out. On the basis of the data collected, scores are generated for employees in terms of: standard hours and overtime worked and lunch break duration. Events are recorded in a secure format and cannot be edited. In case of a failed server connection, the system saves the information locally. Once the connection to the server is re-established, the data is transferred.