WO2017165903A1 - Managing service provision - Google Patents

Managing service provision Download PDF

Info

Publication number
WO2017165903A1
WO2017165903A1 PCT/AU2016/050832 AU2016050832W WO2017165903A1 WO 2017165903 A1 WO2017165903 A1 WO 2017165903A1 AU 2016050832 W AU2016050832 W AU 2016050832W WO 2017165903 A1 WO2017165903 A1 WO 2017165903A1
Authority
WO
WIPO (PCT)
Prior art keywords
activity
user
classification
computer system
processor
Prior art date
Application number
PCT/AU2016/050832
Other languages
French (fr)
Inventor
Grant Chapman
Michael Travia
Peter Lusted
Anil Ravi
Murray Bergin
Richard Hall
Greg Mason
Original Assignee
Bos Global Corporate Services Pty Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AU2016100341A external-priority patent/AU2016100341A4/en
Priority claimed from AU2016100475A external-priority patent/AU2016100475A4/en
Priority claimed from AU2016100520A external-priority patent/AU2016100520A4/en
Priority claimed from AU2016100575A external-priority patent/AU2016100575A4/en
Priority claimed from AU2016902692A external-priority patent/AU2016902692A0/en
Application filed by Bos Global Corporate Services Pty Ltd filed Critical Bos Global Corporate Services Pty Ltd
Priority to AU2017200602A priority Critical patent/AU2017200602B1/en
Priority to AU2017200601A priority patent/AU2017200601B1/en
Publication of WO2017165903A1 publication Critical patent/WO2017165903A1/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management

Definitions

  • the present disclosure generally relates to managing a provision of a service by a service provider.
  • the present disclosure includes computer-implemented methods, software, and computer systems for managing activities performed by the service provider.
  • a task in the current society is often fulfilled by one or more services provided by one or more service providers.
  • the provision of the service may not be in a face-to-face way.
  • the services provided may be conducted sequentially or in parallel by a same service provider or different service providers.
  • a workstation computer system for managing an activity performed by a user, the system comprising: a datastore to store program codes of multiple software applications installed on the workstation computer system and of an agent program; a display device to render a graphical user interface including user interface elements; and a processor configured to: receive a user instruction issued from the user to perform the activity via one or more of the multiple software applications; and execute the program codes of one or more of the multiple software applications and of the agent program, the agent program causing the processor to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render on the display device the graphic user interface to receive a classification of the activity from the user via one or more of the user interface elements; determine activity data indicative of the detected activity based on the handle; store the classification and the activity data in the datastore for automatic classification of subsequent activities; and send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to
  • the processor may be configured to execute the program codes in an operating system (OS), and the agent program may further cause the processor to invoke one or more system functions provided by the OS to obtain the handle of the one or more of the multiple software applications.
  • OS operating system
  • the handle may comprise a reference to the one or more of the multiple software applications.
  • the one or more of the multiple software applications may include one or more of the following applications: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation.
  • the activity data indicative of the detected activity comprises one or more of the following: an application identifier identifying the one or more of the multiple software applications; a first time when the activity starts; a second time when the activity ends; a fee rate for the classification of the activity performed by the user; a user identifier identifying the user; a service identifier identifying a service associated with the activity; and a description about the activity.
  • the agent program may further cause the processor to automatically present on the graphical user interface the classification of the activity and the activity data indicative of the detected activity.
  • the graphic user interface may include a pop-up window
  • the agent program may further cause the processor to render the pop-up window on the display device to present the classification of the activity and the activity data via one or more of the user interface elements in the pop-up window.
  • the agent program may further cause the processor to render the pop-up window upon determining the activity.
  • the agent program may further cause the processor to render the pop-up window at a time interval.
  • the agent program may further cause the processor to receive the activity classifier from the server.
  • the agent program may further cause the processor to detect a subsequent activity performed by the user via the one or more of the multiple software applications based on the handle of the one or more of the multiple software applications; automatically determine a further classification of the subsequent activity based on the activity classifier received from the server; and automatically present the further classification of the subsequent activity on the graphic user interface.
  • the agent program may further cause the processor to determine further activity data indicative of the detected subsequent activity based on the handle; and automatically present the further activity data on the graphic user interface.
  • the agent program may further cause the processor to store the activity data and the classification of the activity in the storage device via a communication network.
  • a computer-implemented method for managing an activity performed by a user comprising: receiving a user instruction issued from the user to perform the activity via one or more of multiple software applications installed on a workstation computer system; and executing the one or more of the multiple software applications and an agent program, the agent program is configured to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render on a display device a graphic user interface to receive a classification of the activity from the user via the graphic user interface; determine activity data indicative of the detected activity based on the handle; store the classification and the activity data in the datastore for automatic classification of subsequent activities; and send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.
  • a server for managing activities performed by users comprising: a datastore to store activity data; a data port to receive and send classification data; a processor configured to receive over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity; determine an activity classifier for activities based on the first classification data and first activity data; and send over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
  • the processor may be further configured to determine a work pattern of the first user based on the first classification data and first activity data.
  • the processor may be further configured to generate a report in relation to the work pattern.
  • the processor may be further configured to: group the activities into one or more groups; and generate a graphical representation based on a number of activities in each of the one or more groups.
  • the one or more groups may comprise one or more of: collaborations; projects; process; and administration.
  • a computer-implemented method for managing activities performed by users comprising: receiving over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity; determining an activity classifier for activities based on the first classification data and first activity data; and sending over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
  • a computer-implemented system for verifying a time-based service provided by a service provider comprising: a first user device connected to a communication network, an agent program being installed on the first user device and configured to instruct the first user device to receive one or more items associated with the time -based service provided by the service provider; a server connected to the communication network, the server is configured to receive the one or more items sent from the first user device over the communication network; and store the one or more items in association with the time-based service in a storage device connected to the communication network; and a second user device connected to the communication network, the second user device is configured to access the one or more items in the storage device via the communication network; and store an indication in the storage device in association with the time-based service indicating the one or more items have been verified.
  • the server may be further configured to generate a report in relation to a work pattern associated with the service provider based on the one or more items.
  • the server may be further configured to determine a target based on a service provision agreement associated with the time- based service; determine if the target has been met based on the one or more items.
  • a computer-implemented system for managing a meeting comprising: a plurality of user devices connected to a communication network, an agent program being installed on each of the plurality of user devices and configured to record activities in relation to the meeting, the activities being performed by a plurality of participants of the meeting on the plurality of user devices; and a server connected to the communication network, the server configured to receive items sent from the plurality of user devices over the communication network representing the activities performed by the plurality of participants of the meeting; determine an outcome of the meeting based on the items; and store the outcome of the meeting in association with at least one of the plurality of participants of the meeting in a storage device connected to the communication network.
  • a computer software program including machine-executable instructions, when executed by a processor, causes the processor to perform any one of the above methods.
  • Fig. 1 illustrates an example service provision management network in accordance with the present disclosure
  • Fig. 2 illustrates an example workstation computer system in accordance with the present disclosure
  • Fig. 3 illustrates an example method for managing an activity performed by a user in accordance with the present disclosure
  • Fig. 4 illustrates an example implementation of the above method in accordance with the present disclosure
  • Fig. 5 illustrates an example server in accordance with the present disclosure
  • Fig. 6 illustrates an example method for managing activities performed by users in accordance with the present disclosure
  • Fig. 7 illustrates an example presentation of a work pattern in accordance with the present disclosure.
  • Fig. 8 illustrates an example graphic user interface of a verification application in accordance with the present disclosure.
  • Fig 9 illustrates another example presentation of a work pattern.
  • Fig 10 illustrates another example presentation of a work pattern.
  • Fig. 11 illustrates another example presentation of a work pattern.
  • Fig. 12 illustrates another example presentation of a work pattern.
  • Fig. 13 illustrates another example presentation of a work pattern.
  • Fig. 14 illustrates a more detailed representation of the work pattern shown in Fig. 13.
  • Fig. 15 illustrates another example presentation of a work pattern.
  • Fig. 16 illustrates another example presentation of a work pattern. Description of Embodiments
  • FIG. 1 illustrates a service provision management network 100 in accordance with the present disclosure.
  • the methods disclosed in the present disclosure may be implemented in the service provision management network 100.
  • API Application Programming Interface
  • HTTP/HTTPS web services acts as the gateway for communication via a communication network 106 (for example, the Internet) with any qualified web client, for example, a custom written agent program running on user devices 107 to 110.
  • the agent program running on each of the user devices 107 to 110 monitors activities performed by one of the users 111 to 114 on the user device via the one or more of software applications.
  • a dashboard server 102 presents authorized performance metrics in the form of dashboards for the professional service providers and the clients of the professional service providers to the assess productivity in relation to a service.
  • the data for determining the performance metrics dashboards are collected from the user devices 107-110 and stored in a data format held in a storage device 104. Additional evidence in the form of electronic files can be stored in either a common cloud storage service provider 103 or a specified network location that links to the storage device 104. If the service activities are verified or approved by the client, an approval to release funds can be sent to an escrow server 105 to make a payment for the service activities performed by the service providers.
  • the service provision management network 100 includes one or more user devices 107 to 110.
  • Users 111 to 114 may use the one or more user devices 107 to 110 to provide services to fulfil a task.
  • the users 111 to 114 can also be referred to as service providers in the present disclosure.
  • the users 111 to 114 provide the services by performing activities using one or more software applications running on the one or more user devices 107 to 110.
  • the one or more software applications include one or more of software applications including: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation. These software applications operate on the one or more user devices 107 to 110.
  • the activities performed by the users 111 to 114 include: writing a report using a work processing application (for example, MS WORD), editing an email and sending the email by using an email application (for example, Outlook), and preparing slides by using a presentation making application (for example, PowerPoint), etc.
  • the user devices 107 to 110 include a workstation computer system 107, a laptop 108, a tablet computer 109 and a smart phone 110.
  • the user devices 107 to 110 may also include other type of computing devices without departing from the scope of the present disclosure.
  • FIG. 2 illustrates an example workstation computer system 107 for managing an activity performed by a user in accordance with the present disclosure.
  • the workstation computer system 107 comprises a datastore 210, a display device 220, and a processor 230.
  • the datastore 210, the display device 220, and the processor 230 are connected each other via a bus 240.
  • the workstation computer system 107 may also include a communication interface 250 and a user interaction device 260.
  • the datastore 210 stores program codes of multiple software applications and of the agent program described above.
  • the program codes of these software application and of the agent program can be installed on the workstation computer system 107 from an optical disk, or a hard disk, or a USB drive. These program codes can also be downloaded from a cloud storage network (not shown in Fig. 2) connected to the workstation computer system 107 through the communication interface 250 of the workstation computer system 107.
  • the display device 220 is able to render a graphical user interface including user interface elements, for example, windows, text boxes, drop-down lists, buttons, etc., to present information to the user or receive information from the user via the user interaction device 260 of the workstation computer system 107.
  • the display device 220 can also include a touch- sensitive device, particularly, a touch-sensitive surface.
  • the display device 220 is not only able to display information to the user, but also to receive user input from the touch- sensitive surface.
  • the display device 220 may include more than one screens on which the graphical user interface is rendered.
  • FIG. 3 illustrates an example method 300 executed by the processor 230 for managing an activity performed by a user in accordance with the present disclosure, the method
  • the agent program is configured to detect 3210 the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render 3220 on the display device 220 a graphic user interface to receive a classification of the activity from the user via the graphic user interface; determine 3230 activity data indicative of the detected activity based on the handle; store 3240 the classification and the activity data in the datastore 210 for automatic classification of subsequent activities; and send 3250 the classification and the activity data to the server 101 to cause the server 107 to store the classification and the activity data on the storage device 104 and to determine a work pattern of the user and an activity classifier.
  • a classification of an activity in general terms is a label or set identifier that gets associated with that activity to classify that activity. That is, the classification indicates that the activity is an element of the set of activities that comprises activities that are classified the same way, that is, are associated with the same label or set identifier.
  • a classification may be an external client and emails to that external client are associated with the client identifier for that client.
  • a classification may simply be external/internal. Activities may also be classified by what is performed during the activity, such as communicating, drafting or costing.
  • the method 300 can be implemented as a computer software program stored in the datastore 210.
  • the computer software program includes machine-executable instructions. When executed by the processor 230, these machine-executable instructions cause the processor 230 to perform processes described above with reference to Fig. 3.
  • the computer software program may also include machine-executable instructions that cause the processor 230 to perform other processes described in the present disclosure.
  • Fig. 4 illustrates an example implementation 400 of the example method 300 in accordance with the present disclosure. Although this example implementation is described with reference to the user 111, it may also be applicable to other users 112 to 114.
  • the processor 230 is configured to execute the program codes of the one or more of the software applications and of the agent program in an operating system (OS) 410, for example, Windows, Unix, Linux, or IOS.
  • OS operating system
  • the operating system provides one or more system functions that can be invoked by the processor 230 to obtain the handle of the one or more of the software applications.
  • the handle comprises a reference to the one or more of the multiple software applications.
  • Application-specific or OS level program interfaces APIs such as REST web services
  • the one or more of the multiple software applications include one or more of the following applications: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation.
  • the software applications may include other productivity applications without departing from the scope of the present disclosure.
  • Fig. 4 two software applications, particularly, a word processing application 401 and an Email application 402 are shown for illustration purposes. The two applications 401 and 402 are presented on the display device 220 of the workstation computer system 107.
  • the word processing application 401 enables the user 111 to perform a document processing activity including one or more actions, for example, opening, editing , saving, reviewing, emailing, printing a document.
  • the user 111 processes documents by using user interface elements of the word processing application 401, for example, a "New" button 4010, a "Save” button 4011, a "Copy” button 4012, a "Paste” button 4013, an "Email” button 4014, and a document area 4015.
  • the Email application 402 enables the user 111 to perform an email processing activity including one or more actions, for example, editing an email, receiving and sending emails, attaching one or more attachments to an email.
  • the user 111 processes emails by using user interface elements of the email application 402, for example, a "Send” button 4020, a “Receive” button 4021, a “Attachment” button 4022, a “From” box 4023, a “To” box 4024, a “Cc” box 4025, a “Subject” box 4026, and an Email area 4027.
  • a "Send” button 4020 a "Receive” button 4021
  • a "Attachment” button 4022 a "From” box 4023, a "To” box 4024, a "Cc” box 4025, a "Subject” box 4026, and an Email area 4027.
  • the user 111 starts the word processing application 401 by inputting a user instruction to the workstation computer system 107.
  • the user 111 may input the user instruction through the user interaction device 260, for example, a pointing device, a keyboard, a touch screen, a gesture or voice recognition device.
  • the user instruction indicates the user 111 will perform a document processing activity for a task via the word processing application 401.
  • the processor 230 receives the user instruction and, in response to this instruction, retrieves the program codes of the word processing application 401 and of the agent program 403 from the datastore 210.
  • the processor 230 executes the program codes and presents the user interface of the word processing application 401 on the display device 220. Therefore, the user 111 is able to edit a document in the document area 4015 using the word processing application 401. In the example shown in Fig. 4, a draft city planning strategy is being edited by the user 111 using the word processing application 401.
  • the processor 230 invokes one or more system functions provided by the Operating System in which the word processing application 401 operates to obtain the handle of the word processing application 401.
  • the agent program 403 further causes the processor 230 to use this handle to track the document processing activity (for example, the actions associated with the document processing activity) performed by the user 111.
  • the processor 230 detects the document processing activity performed by the user 111 while editing the draft city planning strategy on the word processing application 401. For example, the processor 230 detects when the user 111 starts the document processing activity upon detection of a document creation action, for example, the user 111 triggers the "New" button 4010 by clicking on or touching this button.
  • the processor 230 renders on the display device 230 a graphic user interface of the agent program, referred to as a timesheet below.
  • the graphic user interface is a pop-up window.
  • the timesheet includes one or more of multiple user interface elements 4030 to 4039.
  • the user interface elements 4038 and 4039 are entries of the timesheet, and the fields of the entries are shown in labels 4030 to 4037.
  • the graphic user interface or timesheet is used by the processor 230 to present activity data and receive a classification of an activity from the user 111 via one or more of the user interface elements 4030 to 4039, as described below in detail.
  • the processor 230 generates the entry 4038 in the timesheet upon detection of the user 111 triggering the "Email" button 4014.
  • the processor 230 determines activity data indicative of the detected document processing activity based on the handle of the word processing application 401. For example, the processor 230 determines a first time when the document processing activity starts, a second time when the document processing activity ends, an application identifier identifying the productivity application the user 111 uses to perform the document processing activity. In the above example, the user 111 starts the document processing activity at 9:00 am and finishes at 11:30am.
  • the application identifier can be the name of the word processing application 401, for example, "MS WORD".
  • the processor automatically presents the activity data in the corresponding fields of the entry 4038, as shown in Fig. 4.
  • the user 111 inputs the classification of the document processing activity using the field "Activity" 4035 of the entry 4038.
  • the classification of the document processing activity is "General Advice”.
  • the processor 230 determines activity data associated with this activity. For example, the processor 230 determines a fee rate for the classification of "General Advice", for example, $200 per hour, as shown in the field "Rate” 4035 of the entry 4038.
  • the processor 230 also calculates the value of the activity, for example, $500, for the service of two and a half hours from 9:00 am to 11:30 am, as shown in the field "Value" 4036 of the entry 4038.
  • the user 111 may input some description about this activity, for example, "Draft the city planning strategy", as shown in the field "Description" 4037 of the entry 4038.
  • the processor 230 In response to the triggering of the "Email" button 4014, the processor 230 also executes the Email application 402, and the user interface elements 4020 to 4027 of the Email application 402 are presented on the display device 220.
  • the user 111 inputs an sender email address in the "From:” box 4023, for example, ckingsford @ckcons»iiiiig. com.au, a recipient email address in the "To" box 4024, for example, J xv ii : hao m n i uuA-prs uj. a third party email address in the "Cc:” box 4025, for example, pwindsor@ckconsulting.com.au.
  • the user 111 also inputs the subject line of this email in the "Subject:” box 4026, for example, "Draft City Planning Strategy to White Planning (Service ID: 175458)".
  • the processor 230 also obtains the handle of the Email application 402. Based on the handle of the Email application 402, the processor 230 is able to track the email processing activity by the user 111 on the Email application 402 and to determine activity data of the email processing activity. For example, the processor 230 determines a start time when the Email application 402 is launched, and an end time when the user 111 triggers the "Send" button 4020. The processor 230 also determines the email addresses and the subject line of the email input by the user 111 in the user interface elements 4023 to 4026.
  • the processor 230 determines a user identifier identifying the user 111 based on the sender email address, for example, "Carl Kingsford", a service identifier identifying the service from the subject line, for example, "175458", and a client name from the recipient email address, for example, "White Planning”.
  • Some of the activity data of the email processing activity may also be applied to the document processing activity, for example, the service identifier and the client name, as shown in the entries 4038 and 4039.
  • the user 111 inputs a classification of the email processing activity in the field
  • the processor 230 determines a fee rate for this classification, for example, $60 per hour.
  • the processor 230 further determines a value of the email processing activity from 11:30am to 11:40am, for example, $10.
  • the processor 230 automatically presents the classification of the email processing activity and the activity data of the activity in the entry 4039 of the timesheet, as shown in Fig. 4.
  • the processor 230 stores in the datastore 210 the classification(s) and the activity data in relation to the document processing activity and the email processing activity. Particularly, The processor 230 may store in the datastore 210 the classification(s) and the activity data as a human readable file such as plain text, JSON, XML and others, or as a binary file such as a lightweight relational DB, NOSQL or other proprietary format. Depending on the settings, the processor 230 may encrypt the copy to avoid unauthorized data access.
  • the processor 230 stores the activity data and the classification of the activity in the storage device 104 via the communication network 106.
  • the previously stored classification(s) and activity data can be used by the processor 230 to automatically classify subsequent activities.
  • the processor 230 is able to automatically present the classifications of subsequent activities on the display device 220.
  • the processor 230 automatically renders the pop-up window on the display device 220 to present the classification(s) of the subsequent activities and the activity data via one or more of the user interface elements in the pop-up window.
  • processor 230 performs a machine learning method to train an automatic classifier based on previous classifications. For example, processor 230 may process each activity as a learning sample where the activity data retrieved by using the handle constitutes a number of features and the user provided classification constitutes a label for that feature. For example, the classification from the user may be the name of a company, such as "CK Consulting". Every time the user sends an email to an address ending in
  • processor 230 learns that emails with addresses ending in “@ckconsulting. com.au” are classified as “CK consulting”. For example, processor 230 may maintain a Bag-of-Words model and apply a Bayesian learning method to determine the weights between certain words and their classification. That is, each word in the bag of words has a weight for each
  • classification and the weighted sum of all words constitutes a score for each possible classification.
  • the classification with the highest score is selected in the automatic classification by the processor 230.
  • Other examples include self-organising maps, neural networks and regression classifiers.
  • the machine learning that is, the determination of the parameter values of the specific machine learning method, may be performed by processor 230 to suggest automatic
  • the machine learning may be performed by the server 101 based on classifications from multiple users.
  • the server 101 can then updated the agent running on the local machine by sending the machine learning parameter values, such as the word weights discussed above to the agent. This way, the agent can automatically classify activities that have been classified by other users on other machines.
  • the timing of rendering the pop-up window varies.
  • the processor 230 can render the pop-up window upon determining a certain action of an activity, for example, triggering the "Email" button 4014 in the word processing activity on the word processing application 401, or the "Send” button 4020 in the email processing activity on the email processing application 402.
  • the processor 230 renders the pop-up window at a time interval, for example, every thirty minutes.
  • the processor 230 further sends the classification(s) and the activity data to the server 101.
  • the server 101 stores the classification(s) and the activity data in the storage device 104 to determines a work pattern of the user 111 and an activity classifier.
  • the server 101 sends the activity classifier to the workstation computer system 107, and the processor 230 of the workstation computer system 107 receives the activity classifier from the server 101.
  • the processor 230 detects a subsequent activity performed by the user 111 via the one or more of the multiple software applications based on the handle of the one or more of the multiple software applications.
  • the processor 230 automatically determines a further classification of the subsequent activity based on the activity classifier received from the server 101.
  • the processor 230 automatically presents the further classification of the subsequent activity in the graphic user interface of the agent program 403 on the display device 220.
  • the processor 230 may further determine further activity data indicative of the detected subsequent activity based on the handle, and automatically present the further activity data in the graphic user interface on the display device 220.
  • FIG. 5 illustrates an example server 101 for managing activities performed by users 111 to 114 in accordance with the present disclosure.
  • the server 101 comprises a datastore 510, a data port 520, and a processor 530.
  • the datastore 510, the data port 520, and the processor 530 are connected each other via a bus 540.
  • the datastore 510 stores activity data received from one or more of the workstation computer systems 107 tol 10.
  • the data port 520 is used by the processor 530 to receive and send classification data from and to one or more of the workstation computer systems 107 tol 10.
  • the processor 530 is configured to perform one or more steps described below.
  • Fig. 6 illustrates an example method 600 executed by the processor 530 for managing activities performed by users 111 to 114 in accordance with the present disclosure, the method 600 comprising: receiving 610 over the communication network 106 from a first remote workstation computer system 107 first activity data of a first activity detected by a first agent program running on the first remote workstation computer system 107 and first classification data associated with the first activity and provided by a first user 111 performing the first activity; determining 620 an activity classifier for activities based on the first classification data and first activity data; and sending 630 over the communication network 106 the activity classifier to a second remote workstation computer system 108 to cause the second remote workstation computer system 108 to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system 108, wherein the second activity is performed by a second user 112 via one or more of multiple software applications installed on the second remote workstation computer system 108.
  • the method 600 can be implemented as a computer software program stored in the datastore 510.
  • the computer software program includes machine-executable instructions. When executed by the processor 530, these machine-executable instructions cause the processor 530 to perform processes described above with reference to Fig. 6.
  • the computer software program may also include machine-executable instructions that cause the processor 530 to perform other processes described in the present disclosure.
  • the processor 230 of the first remote workstation computer system 107 determines, as caused by the first agent program running on the first remote workstation computer system 107, the first activity data of the first activity performed by the first user 111 and the first classification data indicative of a first classification of the first activity.
  • the processor 230 of the first remote workstation computer system 107 sends to the server 101 the first activity data and the first classification data.
  • the server 101 receives the first activity data and the first classification data, and stores the first activity data and the first classification data in the datastore 510.
  • the datastore 510 can be part of the server 101, or an external storage device, for example, the storage device 104. This way, historical activity data and classification data of the activities performed by the first user 111 are stored in the datastore 510.
  • the processor 530 of the server 101 determines the activity classifier for activities performed by the first user 111. For example, the processor 530 may determine the activity classifier using a machine learning method.
  • the processor 530 sends over the communication network 106 the activity classifier to the second remote workstation computer system 108.
  • the second agent program running on the second remote workstation computer system 108 uses the activity classifier to automatically classify the second activity detected on the second remote workstation computer system 108. For example, the activity classifier for the first user 111, Carl Kingsford, identified by the email address
  • the second user 112 changes the classification via one or more of the user interface elements of the second agent program running on the second remote workstation computer system 108. For example, if Peter Windsor provides substantive advice on the city planning strategy in the email body, the email processing activity should be changed to the "General Advice" category. This may also lead to a fee rate different to that for the "Administration" category.
  • the consolidation/correlation of activities and the machine learning process are performed at the server 101 in this example.
  • the server 101 updates the agent program of each user device 107 to 110 with this knowledge whenever the agent program communicates with the server 101.
  • This updated machine learnt knowledge at the user devices 107 to 110 enhances the end-user experience with lesser manual intervention & data entry, and increases productivity of the entire organization.
  • the server 101 determines the work pattern of the first user 111 based on the first classification data and first activity data.
  • the work pattern represents performance metrics of the first user 111, indicating the first user's 111 activities in a measurable format. Based on the work pattern, management can make fact-based decisions or instruct further analysis to form an opinion as to 'what' is 'productivity' and tailor to its needs to 'how' productivity should be captured and reported.
  • Data indicative of the work pattern is sent to the dashboard server 102 to generate a presentation of the work pattern, for example, in the form of dashboards.
  • Fig. 7 illustrates an example presentation 700 of a work pattern in accordance with the present disclosure.
  • Work Pattern Focus Areas depicts the various modalities 701 and collates them to input of Collectors and Dashboards 702.
  • the service provision management network 100 provides a secure centralized repository in the storage device 104, which is accessible by both the users or professional service providers (for example, Carl Kingsford and Peter Windsor of CK
  • the storage services provided by the storage device 104 can be for example, OneDrive, Dropbox, Google Drive, Box, or Amazon Cloud Drive.
  • the service provision management network 100 securely stores electronic data that arises from the service activities, for example, the items or entries of the timesheet associated with the city planning strategy service provided by the professional service providers of CK consulting.
  • An agent programs is installed on each of the user devices 107 to 110 connected to the communication network 106.
  • the agent program is configured to instruct each of the user devices 107 to 110 to receive one or more items or entries associated with the time-based service provided by each of the profession service providers 111 to 114 during the activities.
  • the agent program may also encrypt the items.
  • the agent program sends the items to the server 101 via the communication network 106, which then stores the data in the storage device 104.
  • the user devices 107 to 110 may send the data to the storage device 104 directly.
  • the items are time- stamped with duration information and are encoded with a unique user identifier.
  • the items stored in the storage device 104 are viewable by the client of the professional service providers, and can be signed off by the client as verified. All material can be restricted in various ways, with differing access levels depending on the type of engagement that occurs. For example, internal meetings notes, calendar appointments, workshops, conference calls, documents may be restricted to various access levels of access. Access levels may include visibility of the document and is time-stamped and was created by a specific individual. Other documents that may constitute contract deliverables may need to be read and verified by the client prior to a milestone payment being made.
  • a verification device 115 connects to the communication network 106.
  • the verification device 115 may be a smart phone, a desktop, a laptop, or a tablet computer.
  • a verification application operates on the verification device 115 for a user 116, typically, the client (for example, Jane White of White Planning) of the profession service providers to use the verification device 115 to review the items(s) stored in the storage device 104.
  • the verification device 115 is configured to access the one or more items in the storage device 104 via the communication network 106.
  • Fig. 8 illustrates an example graphic user interface 800 of the verification application in accordance with the present disclosure.
  • the client 116 provides a Service ID 810 (Particularly, 175458, "City Planning
  • the verification device 115 is configured to retrieve a Service Provider 802 (Particularly, "CK Consulting") of the city planning strategy service and the one or more items 4038, 4039 associated with the time -based service from the storage device 104.
  • the one or more items 4038, 4039 are displayed in the graphic user interface 800. If the one or more items 4038, 4039 associated with the city planning strategy service are satisfactory, the client 116 verifies the items by clicking on or touching a "Verify" button 803 in the graphic user interface 800.
  • the verification device 115 Upon verification of the items by the client 116, the verification device 115 stores, via the communication network 106, an indication in the storage device 104 in association with the time-based service indicating the one or more items have been verified. This indication may also be sent to the accountant of the client 116 or the escrow server 105 to make payments of the service fees listed in the items.
  • the server 101 is further configured to generate a report in relation to a work pattern associated with the service provider based on the one or more items.
  • An example presentation 700 of the work pattern is shown in Fig. 7.
  • the server 101 may be further configured to determine a target based on a service provision agreement associated with the time-based service. The server 101 determines if the target has been met based on the one or more items. If the target is met, the server 101 may send an indication to both the user device 107 of the service provider 111 and the verification device 115 of the client 116 indicating the target is met.
  • Fig. 9 illustrates another example presentation 900 of a work pattern comprising an indication of methods of collaboration 901, associated people 902, involved processes 903, connected team members 904, shareholders 905 and locations 906.
  • the metrics shown in Fig. 9 represent work patterns determined based on the classified activities as described above.
  • Fig. 10 illustrates another example presentation 1000 of a work pattern that is similar to work pattern 900 in Fig. 9 but comprises an indication of projects 1002 and an indication of the number of colleagues 1004 as determined based on the classifications of the activities.
  • Fig. 11 illustrates another example presentation 1100 of a work pattern comprising a collaboration indication 1101 representing the quality and effectiveness of collaboration and an intensity indication 1102 representing the frequency and volume of communication and work output.
  • the presentation 1100 further comprises a pliancy indication 1003 representing the movement in work pattern bias in response to business requirements and an active connections indication representing the recency and frequency of communication.
  • Fig. 12 illustrates another example presentation 1200 of a work pattern that is circular with four sectors.
  • a first sector 1201 indicates collaboration
  • a second sector 1202 indicates projects
  • a third sector 1203 indicates administration
  • a fourth sector indicates process 1204.
  • There are three rings where an inner ring 1211 represents team, a middle ring 1212 represent company and an outer ring 1213 represents external
  • processor 530 changes one of the circles to a solid disc. The selection of this circle is based on the classification.
  • Processor 530 may select a sector based on the type of activity, such as email for collaboration sector 1201, word processing for projects sector 1202, billing service for administration sector 1203 and management tools for process sector 1204.
  • An advantage of this style of representation of a work pattern is that a manager or other user can easily review the work pattern and can see where the majority of activities take place. The manager can then determine whether the spread of activities corresponds to the role of the employee associated with the work pattern.
  • the employee associated with work pattern 1200 has significant collaboration with externals as shown by the large number of solid disks in collaboration sector 1201 and outer ring 1213. If this employees role is an internal coordinator, the manager would see that the large number of external collaborations does not align with her role.
  • Fig. 13 illustrates another example presentation 1300 of a work pattern for a project.
  • Presentation 1300 comprises an activities panel 1301, a team panel 1302 and a time analysis panel 1303.
  • Presentation 1300 further comprises a time line 1304 indicating the total time spent on the project for each day.
  • the activities panel 1301 indicates the proportion of time that is spent on collaborations, processes and administration, respectively.
  • the team panel 1302 indicates the contribution of the individual team members while the time analysis panel 1303 indicates total quantities of the time spent on the project.
  • the time analysis panel 1303 indicates the contribution of the individual team members while the time analysis panel 1303 indicates total quantities of the time spent on the project.
  • the work patterns can be independent solution but customers benefit significantly from the integrated solution with time sheet functionality. This applies to the presentations in other figures where reference is made to hours worked or other time sheet based data.
  • Fig. 14 illustrates a more detailed representation 1400 of the team panel 1302 in Fig. 13.
  • Each team member is represented by a circular sector and the sector grows as that team member contributes more to the project. Connections between team members are indicated by lines between them as determined from the classified activities.
  • Representation 1400 further comprises a meeting panel 1401 that indicates the meetings recorded between the team members.
  • Fig. 15 illustrates another example presentation 1500 of a work pattern of one person for multiple projects where each project is represented by a circular chart as shown in activities panel 1301 in Fig. 13.
  • Fig. 16 illustrates another example presentation 1600 of a work pattern for multiple people.
  • the presentation 1600 comprises a circular chart 1601 as shown in activities panel 1301 in Fig. 13, the number of hours 1602 worked on the project, the number of activities 1603 performed on that project (and classified by the agent as described above), the number of meetings 1604, the number of calls 1605, the number of emails 1606 sent by that person and the history of activities 1607 over the time of the project.
  • the plurality of user devices 107 to 110 are connected to the communication network 106.
  • An agent program is installed on each of the plurality of user devices 111 to 110 and is configured to record activities in relation to a meeting.
  • These activities are performed by a plurality of participants, for example, the user 111 to 114, on the plurality of user devices 107 to 110. These activates include scheduling the meeting, information sharing, group discussions, voting, etc.
  • the user devices 107 to 110 send items representing these activities to the server 101 that is connected to the communication network 106.
  • the server 101 is configured to receive the items from the user devices 107 to 110 over the communication network 106. For example, these items may represent votes by the participants on a proposal proposed by a participant at or before the meeting.
  • the server 101 determines an outcome of the meeting based on the items by for example determining the result of the voting according to a certain rule, for example, the majority rule.
  • the server 101 further stores the outcome of the meeting in association with at least one of the plurality of participants 111 to 114 of the meeting in the storage device 104 connected to the communication network 106.
  • Suitable computer readable media may include volatile (e.g. RAM) and/or non-volatile (e.g. ROM, disk) memory, carrier waves and transmission media.
  • Exemplary carrier waves may take the form of electrical, electromagnetic or optical signals conveying digital data steams along a local network or a publically accessible network such as internet.

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Operations Research (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Data Mining & Analysis (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

There is provided a workstation computer system for managing an activity performed by a user, the system comprising: a datastore to store program codes of multiple software applications installed on the workstation computer system and of an agent program; a display device to render a graphical user interface including user interface elements; and a processor. The processor is configured to: receive a user instruction issued from the user to perform the activity via one or more of the multiple software applications, and execute the program codes of one or more of the multiple software applications and of the agent program. The agent program causes the processor to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications, render on the display device the graphic user interface to receive a classification of the activity from the user via one or more of the user interface elements, determine activity data indicative of the detected activity based on the handle, store the classification and the activity data in the datastore for automatic classification of subsequent activities, and send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.

Description

"Managing service provision"
[0001] The present disclosure claims priority from Australian innovation patents owned by the Applicant, No. 2016100341 filed on 31 March 2016, No. 2016100475 filed on 28 April 2016, No. 2016100520 filed on 4 May 2016, and No. 2016100575 filed on 12 May 2016, Australian provisional patent application No. 2016902692 filed on 8 July 2016 and US provisional patent application No. 62/382678 filed on 1 September 2016, the contents of which are entirely incorporated herein by reference.
Technical Field
[0002] The present disclosure generally relates to managing a provision of a service by a service provider. The present disclosure includes computer-implemented methods, software, and computer systems for managing activities performed by the service provider.
Background
[0003] A task in the current society is often fulfilled by one or more services provided by one or more service providers. The provision of the service may not be in a face-to-face way.
Further, the services provided may be conducted sequentially or in parallel by a same service provider or different service providers.
[0004] Throughout this specification the word "comprise", or variations such as "comprises" or "comprising", will be understood to imply the inclusion of a stated element, integer or step, or group of elements, integers or steps, but not the exclusion of any other element, integer or step, or group of elements, integers or steps.
[0005] Any discussion of documents, acts, materials, devices, articles or the like which has been included in the present disclosure is not to be taken as an admission that any or all of these matters form part of the prior art base or were common general knowledge in the field relevant to the present disclosure as it existed before the priority date of each claim of this application.
Summary
[0006] There is provided a workstation computer system for managing an activity performed by a user, the system comprising: a datastore to store program codes of multiple software applications installed on the workstation computer system and of an agent program; a display device to render a graphical user interface including user interface elements; and a processor configured to: receive a user instruction issued from the user to perform the activity via one or more of the multiple software applications; and execute the program codes of one or more of the multiple software applications and of the agent program, the agent program causing the processor to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render on the display device the graphic user interface to receive a classification of the activity from the user via one or more of the user interface elements; determine activity data indicative of the detected activity based on the handle; store the classification and the activity data in the datastore for automatic classification of subsequent activities; and send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.
[0007] It is an advantage that the classification is received from the user because this makes the subsequent automatic classification more accurate and more granular classification is possible. Further, the more accurate classification leads to a more accurate and more detailed work pattern than would be possible without the user input. As the classification is stored, over time the system will improve automatic classification reducing the additional burden on the user. [0008] The processor may be configured to execute the program codes in an operating system (OS), and the agent program may further cause the processor to invoke one or more system functions provided by the OS to obtain the handle of the one or more of the multiple software applications.
[0009] The handle may comprise a reference to the one or more of the multiple software applications.
[0010] The one or more of the multiple software applications may include one or more of the following applications: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation.
[0011] The activity data indicative of the detected activity comprises one or more of the following: an application identifier identifying the one or more of the multiple software applications; a first time when the activity starts; a second time when the activity ends; a fee rate for the classification of the activity performed by the user; a user identifier identifying the user; a service identifier identifying a service associated with the activity; and a description about the activity.
[0012] The agent program may further cause the processor to automatically present on the graphical user interface the classification of the activity and the activity data indicative of the detected activity.
[0013] The graphic user interface may include a pop-up window, and the agent program may further cause the processor to render the pop-up window on the display device to present the classification of the activity and the activity data via one or more of the user interface elements in the pop-up window.
[0014] The agent program may further cause the processor to render the pop-up window upon determining the activity.
[0015] The agent program may further cause the processor to render the pop-up window at a time interval.
[0016] The agent program may further cause the processor to receive the activity classifier from the server.
[0017] The agent program may further cause the processor to detect a subsequent activity performed by the user via the one or more of the multiple software applications based on the handle of the one or more of the multiple software applications; automatically determine a further classification of the subsequent activity based on the activity classifier received from the server; and automatically present the further classification of the subsequent activity on the graphic user interface.
[0018] The agent program may further cause the processor to determine further activity data indicative of the detected subsequent activity based on the handle; and automatically present the further activity data on the graphic user interface.
[0019] The agent program may further cause the processor to store the activity data and the classification of the activity in the storage device via a communication network.
[0020] There is provided a computer-implemented method for managing an activity performed by a user, the method comprising: receiving a user instruction issued from the user to perform the activity via one or more of multiple software applications installed on a workstation computer system; and executing the one or more of the multiple software applications and an agent program, the agent program is configured to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render on a display device a graphic user interface to receive a classification of the activity from the user via the graphic user interface; determine activity data indicative of the detected activity based on the handle; store the classification and the activity data in the datastore for automatic classification of subsequent activities; and send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.
[0021] There is provided a server for managing activities performed by users, the server comprising: a datastore to store activity data; a data port to receive and send classification data; a processor configured to receive over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity; determine an activity classifier for activities based on the first classification data and first activity data; and send over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
[0022] The processor may be further configured to determine a work pattern of the first user based on the first classification data and first activity data.
[0023] The processor may be further configured to generate a report in relation to the work pattern. [0024] The processor may be further configured to: group the activities into one or more groups; and generate a graphical representation based on a number of activities in each of the one or more groups.
[0025] The one or more groups may comprise one or more of: collaborations; projects; process; and administration. [0026] There is provided a computer-implemented method for managing activities performed by users, the method comprising: receiving over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity; determining an activity classifier for activities based on the first classification data and first activity data; and sending over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
[0027] There is provided a computer-implemented system for verifying a time-based service provided by a service provider, the system comprising: a first user device connected to a communication network, an agent program being installed on the first user device and configured to instruct the first user device to receive one or more items associated with the time -based service provided by the service provider; a server connected to the communication network, the server is configured to receive the one or more items sent from the first user device over the communication network; and store the one or more items in association with the time-based service in a storage device connected to the communication network; and a second user device connected to the communication network, the second user device is configured to access the one or more items in the storage device via the communication network; and store an indication in the storage device in association with the time-based service indicating the one or more items have been verified.
[0028] The server may be further configured to generate a report in relation to a work pattern associated with the service provider based on the one or more items.
[0029] The server may be further configured to determine a target based on a service provision agreement associated with the time- based service; determine if the target has been met based on the one or more items.
[0030] There is provided a computer-implemented system for managing a meeting, the system comprising: a plurality of user devices connected to a communication network, an agent program being installed on each of the plurality of user devices and configured to record activities in relation to the meeting, the activities being performed by a plurality of participants of the meeting on the plurality of user devices; and a server connected to the communication network, the server configured to receive items sent from the plurality of user devices over the communication network representing the activities performed by the plurality of participants of the meeting; determine an outcome of the meeting based on the items; and store the outcome of the meeting in association with at least one of the plurality of participants of the meeting in a storage device connected to the communication network. [0031] There is provided a computer software program, including machine-executable instructions, when executed by a processor, causes the processor to perform any one of the above methods.
Brief Description of Drawings
[0032] Features of the present disclosure are illustrated by way of non-limiting examples, and like numerals indicate like elements, in which:
Fig. 1 illustrates an example service provision management network in accordance with the present disclosure;
Fig. 2 illustrates an example workstation computer system in accordance with the present disclosure;
Fig. 3 illustrates an example method for managing an activity performed by a user in accordance with the present disclosure;
Fig. 4 illustrates an example implementation of the above method in accordance with the present disclosure;
Fig. 5 illustrates an example server in accordance with the present disclosure;
Fig. 6 illustrates an example method for managing activities performed by users in accordance with the present disclosure;
Fig. 7 illustrates an example presentation of a work pattern in accordance with the present disclosure; and
Fig. 8 illustrates an example graphic user interface of a verification application in accordance with the present disclosure.
Fig 9 illustrates another example presentation of a work pattern.
Fig 10 illustrates another example presentation of a work pattern. Fig. 11 illustrates another example presentation of a work pattern. Fig. 12 illustrates another example presentation of a work pattern. Fig. 13 illustrates another example presentation of a work pattern. Fig. 14 illustrates a more detailed representation of the work pattern shown in Fig. 13. Fig. 15 illustrates another example presentation of a work pattern. Fig. 16 illustrates another example presentation of a work pattern. Description of Embodiments
[0033] Fig. 1 illustrates a service provision management network 100 in accordance with the present disclosure. The methods disclosed in the present disclosure may be implemented in the service provision management network 100.
[0034] In the service provision management network 100, a server 101 hosting public
Application Programming Interface (API) or HTTP/HTTPS web services acts as the gateway for communication via a communication network 106 (for example, the Internet) with any qualified web client, for example, a custom written agent program running on user devices 107 to 110. The agent program running on each of the user devices 107 to 110 monitors activities performed by one of the users 111 to 114 on the user device via the one or more of software applications.
[0035] A dashboard server 102 presents authorized performance metrics in the form of dashboards for the professional service providers and the clients of the professional service providers to the assess productivity in relation to a service. The data for determining the performance metrics dashboards are collected from the user devices 107-110 and stored in a data format held in a storage device 104. Additional evidence in the form of electronic files can be stored in either a common cloud storage service provider 103 or a specified network location that links to the storage device 104. If the service activities are verified or approved by the client, an approval to release funds can be sent to an escrow server 105 to make a payment for the service activities performed by the service providers. [0036] The service provision management network 100 includes one or more user devices 107 to 110. Users 111 to 114 may use the one or more user devices 107 to 110 to provide services to fulfil a task. The users 111 to 114 can also be referred to as service providers in the present disclosure. The users 111 to 114 provide the services by performing activities using one or more software applications running on the one or more user devices 107 to 110. The one or more software applications include one or more of software applications including: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation. These software applications operate on the one or more user devices 107 to 110. The activities performed by the users 111 to 114 include: writing a report using a work processing application (for example, MS WORD), editing an email and sending the email by using an email application (for example, Outlook), and preparing slides by using a presentation making application (for example, PowerPoint), etc. The user devices 107 to 110 include a workstation computer system 107, a laptop 108, a tablet computer 109 and a smart phone 110. The user devices 107 to 110 may also include other type of computing devices without departing from the scope of the present disclosure.
[0037] Fig. 2 illustrates an example workstation computer system 107 for managing an activity performed by a user in accordance with the present disclosure.
[0038] As shown in Fig. 2, the workstation computer system 107 comprises a datastore 210, a display device 220, and a processor 230. The datastore 210, the display device 220, and the processor 230 are connected each other via a bus 240. The workstation computer system 107 may also include a communication interface 250 and a user interaction device 260.
[0039] The datastore 210 stores program codes of multiple software applications and of the agent program described above. The program codes of these software application and of the agent program can be installed on the workstation computer system 107 from an optical disk, or a hard disk, or a USB drive. These program codes can also be downloaded from a cloud storage network (not shown in Fig. 2) connected to the workstation computer system 107 through the communication interface 250 of the workstation computer system 107.
[0040] The display device 220 is able to render a graphical user interface including user interface elements, for example, windows, text boxes, drop-down lists, buttons, etc., to present information to the user or receive information from the user via the user interaction device 260 of the workstation computer system 107. The display device 220 can also include a touch- sensitive device, particularly, a touch-sensitive surface. As a result, the display device 220 is not only able to display information to the user, but also to receive user input from the touch- sensitive surface. In one example, the display device 220 may include more than one screens on which the graphical user interface is rendered.
[0041] Fig. 3 illustrates an example method 300 executed by the processor 230 for managing an activity performed by a user in accordance with the present disclosure, the method
comprising: receiving 310 a user instruction issued from the user to perform the activity via one or more of multiple software applications installed on the workstation computer system 107; and executing 320 the one or more of the multiple software applications and an agent program, the agent program is configured to detect 3210 the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications; render 3220 on the display device 220 a graphic user interface to receive a classification of the activity from the user via the graphic user interface; determine 3230 activity data indicative of the detected activity based on the handle; store 3240 the classification and the activity data in the datastore 210 for automatic classification of subsequent activities; and send 3250 the classification and the activity data to the server 101 to cause the server 107 to store the classification and the activity data on the storage device 104 and to determine a work pattern of the user and an activity classifier.
[0042] As can be seen from the above, the classification is received from the user because this makes the subsequent automatic classification more accurate and more granular classification is possible. Further, the more accurate classification leads to a more accurate and more detailed work pattern than would be possible without the user input. As the classification is stored, over time the system will improve automatic classification reducing the additional burden on the user. [0043] A classification of an activity in general terms is a label or set identifier that gets associated with that activity to classify that activity. That is, the classification indicates that the activity is an element of the set of activities that comprises activities that are classified the same way, that is, are associated with the same label or set identifier. For example, a classification may be an external client and emails to that external client are associated with the client identifier for that client. A classification may simply be external/internal. Activities may also be classified by what is performed during the activity, such as communicating, drafting or costing.
[0044] The method 300 can be implemented as a computer software program stored in the datastore 210. The computer software program includes machine-executable instructions. When executed by the processor 230, these machine-executable instructions cause the processor 230 to perform processes described above with reference to Fig. 3. The computer software program may also include machine-executable instructions that cause the processor 230 to perform other processes described in the present disclosure.
[0045] Fig. 4 illustrates an example implementation 400 of the example method 300 in accordance with the present disclosure. Although this example implementation is described with reference to the user 111, it may also be applicable to other users 112 to 114.
[0046] In the example implementation 400, the processor 230 is configured to execute the program codes of the one or more of the software applications and of the agent program in an operating system (OS) 410, for example, Windows, Unix, Linux, or IOS. The operating system provides one or more system functions that can be invoked by the processor 230 to obtain the handle of the one or more of the software applications. The handle comprises a reference to the one or more of the multiple software applications. Application- specific or OS level program interfaces (APIs such as REST web services) can be used to extract data associated with an activity including email addresses, contact details, time of activity etc. This data could be captured from either the workstation when agent is running or from the Application Server system. For example, data can be collected on the workstation computer system running MS Outlook or on the centralized Application Server system running MS Exchange Server. For example, the request "GET
https://outlook.office.com/api/v2.0/me/MailFolders/sentitems/messages/?$select=Sender,Subject " retrieves email messages. [0047] The one or more of the multiple software applications include one or more of the following applications: contacts, calendar, E-Mail, word processing, spreadsheet, and presentation. The software applications may include other productivity applications without departing from the scope of the present disclosure. In Fig. 4, two software applications, particularly, a word processing application 401 and an Email application 402 are shown for illustration purposes. The two applications 401 and 402 are presented on the display device 220 of the workstation computer system 107.
[0048] The word processing application 401 enables the user 111 to perform a document processing activity including one or more actions, for example, opening, editing , saving, reviewing, emailing, printing a document. The user 111 processes documents by using user interface elements of the word processing application 401, for example, a "New" button 4010, a "Save" button 4011, a "Copy" button 4012, a "Paste" button 4013, an "Email" button 4014, and a document area 4015. The Email application 402 enables the user 111 to perform an email processing activity including one or more actions, for example, editing an email, receiving and sending emails, attaching one or more attachments to an email. The user 111 processes emails by using user interface elements of the email application 402, for example, a "Send" button 4020, a "Receive" button 4021, a "Attachment" button 4022, a "From" box 4023, a "To" box 4024, a "Cc" box 4025, a "Subject" box 4026, and an Email area 4027.
[0049] The user 111 starts the word processing application 401 by inputting a user instruction to the workstation computer system 107. The user 111 may input the user instruction through the user interaction device 260, for example, a pointing device, a keyboard, a touch screen, a gesture or voice recognition device. The user instruction indicates the user 111 will perform a document processing activity for a task via the word processing application 401. The processor 230 receives the user instruction and, in response to this instruction, retrieves the program codes of the word processing application 401 and of the agent program 403 from the datastore 210. The processor 230 executes the program codes and presents the user interface of the word processing application 401 on the display device 220. Therefore, the user 111 is able to edit a document in the document area 4015 using the word processing application 401. In the example shown in Fig. 4, a draft city planning strategy is being edited by the user 111 using the word processing application 401.
[0050] The processor 230 invokes one or more system functions provided by the Operating System in which the word processing application 401 operates to obtain the handle of the word processing application 401. The agent program 403 further causes the processor 230 to use this handle to track the document processing activity (for example, the actions associated with the document processing activity) performed by the user 111. Particularly, based on the handle of the word processing application 401, the processor 230 detects the document processing activity performed by the user 111 while editing the draft city planning strategy on the word processing application 401. For example, the processor 230 detects when the user 111 starts the document processing activity upon detection of a document creation action, for example, the user 111 triggers the "New" button 4010 by clicking on or touching this button.
[0051] When the user 111 finishes drafting the city planning strategy, the user 111 triggers the "Email" button 4014 by clicking on or touching this button. The detection by the processor 230 of this action indicates an end of the document processing activity. Therefore, the processor 230 renders on the display device 230 a graphic user interface of the agent program, referred to as a timesheet below. In this example, the graphic user interface is a pop-up window. The timesheet includes one or more of multiple user interface elements 4030 to 4039. The user interface elements 4038 and 4039 are entries of the timesheet, and the fields of the entries are shown in labels 4030 to 4037. The graphic user interface or timesheet is used by the processor 230 to present activity data and receive a classification of an activity from the user 111 via one or more of the user interface elements 4030 to 4039, as described below in detail.
[0052] In this example, the processor 230 generates the entry 4038 in the timesheet upon detection of the user 111 triggering the "Email" button 4014.
[0053] The processor 230 determines activity data indicative of the detected document processing activity based on the handle of the word processing application 401. For example, the processor 230 determines a first time when the document processing activity starts, a second time when the document processing activity ends, an application identifier identifying the productivity application the user 111 uses to perform the document processing activity. In the above example, the user 111 starts the document processing activity at 9:00 am and finishes at 11:30am. The application identifier can be the name of the word processing application 401, for example, "MS WORD". The processor automatically presents the activity data in the corresponding fields of the entry 4038, as shown in Fig. 4.
[0054] The user 111 inputs the classification of the document processing activity using the field "Activity" 4035 of the entry 4038. In this example, the classification of the document processing activity is "General Advice". Upon receipt of the classification, the processor 230 determines activity data associated with this activity. For example, the processor 230 determines a fee rate for the classification of "General Advice", for example, $200 per hour, as shown in the field "Rate" 4035 of the entry 4038. The processor 230 also calculates the value of the activity, for example, $500, for the service of two and a half hours from 9:00 am to 11:30 am, as shown in the field "Value" 4036 of the entry 4038. The user 111 may input some description about this activity, for example, "Draft the city planning strategy", as shown in the field "Description" 4037 of the entry 4038.
[0055] In response to the triggering of the "Email" button 4014, the processor 230 also executes the Email application 402, and the user interface elements 4020 to 4027 of the Email application 402 are presented on the display device 220. The user 111 inputs an sender email address in the "From:" box 4023, for example, ckingsford @ckcons»iiiiig. com.au, a recipient email address in the "To" box 4024, for example, J xv ii : hao m n i uuA-prs uj. a third party email address in the "Cc:" box 4025, for example, pwindsor@ckconsulting.com.au. The user 111 also inputs the subject line of this email in the "Subject:" box 4026, for example, "Draft City Planning Strategy to White Planning (Service ID: 175458)".
[0056] As described above, the processor 230 also obtains the handle of the Email application 402. Based on the handle of the Email application 402, the processor 230 is able to track the email processing activity by the user 111 on the Email application 402 and to determine activity data of the email processing activity. For example, the processor 230 determines a start time when the Email application 402 is launched, and an end time when the user 111 triggers the "Send" button 4020. The processor 230 also determines the email addresses and the subject line of the email input by the user 111 in the user interface elements 4023 to 4026. Further, the processor 230 determines a user identifier identifying the user 111 based on the sender email address, for example, "Carl Kingsford", a service identifier identifying the service from the subject line, for example, "175458", and a client name from the recipient email address, for example, "White Planning". Some of the activity data of the email processing activity may also be applied to the document processing activity, for example, the service identifier and the client name, as shown in the entries 4038 and 4039.
[0057] The user 111 inputs a classification of the email processing activity in the field
"Activity" 4034 of the entry 4039, for example, "Administration". Upon receipt of the classification, the processor 230 determines a fee rate for this classification, for example, $60 per hour. The processor 230 further determines a value of the email processing activity from 11:30am to 11:40am, for example, $10. The processor 230 automatically presents the classification of the email processing activity and the activity data of the activity in the entry 4039 of the timesheet, as shown in Fig. 4.
[0058] The processor 230 stores in the datastore 210 the classification(s) and the activity data in relation to the document processing activity and the email processing activity. Particularly, The processor 230 may store in the datastore 210 the classification(s) and the activity data as a human readable file such as plain text, JSON, XML and others, or as a binary file such as a lightweight relational DB, NOSQL or other proprietary format. Depending on the settings, the processor 230 may encrypt the copy to avoid unauthorized data access.
[0059] In an example, the processor 230 stores the activity data and the classification of the activity in the storage device 104 via the communication network 106.
[0060] The previously stored classification(s) and activity data can be used by the processor 230 to automatically classify subsequent activities. As a result, the processor 230 is able to automatically present the classifications of subsequent activities on the display device 220. Particularly, the processor 230 automatically renders the pop-up window on the display device 220 to present the classification(s) of the subsequent activities and the activity data via one or more of the user interface elements in the pop-up window.
[0061] In one example, processor 230 performs a machine learning method to train an automatic classifier based on previous classifications. For example, processor 230 may process each activity as a learning sample where the activity data retrieved by using the handle constitutes a number of features and the user provided classification constitutes a label for that feature. For example, the classification from the user may be the name of a company, such as "CK Consulting". Every time the user sends an email to an address ending in
"@ckconsulting. com.au" the user provides as classification the label "CK Consulting". Over time, processor 230 learns that emails with addresses ending in "@ckconsulting. com.au" are classified as "CK Consulting". For example, processor 230 may maintain a Bag-of-Words model and apply a Bayesian learning method to determine the weights between certain words and their classification. That is, each word in the bag of words has a weight for each
classification and the weighted sum of all words constitutes a score for each possible classification. The classification with the highest score is selected in the automatic classification by the processor 230. Other examples include self-organising maps, neural networks and regression classifiers.
[0062] The machine learning, that is, the determination of the parameter values of the specific machine learning method, may be performed by processor 230 to suggest automatic
classifications to the user in the pop-up window. While the classification may be inaccurate at the beginning of the learning process it is still useful to the user as the classifications that are correct already reduce the burden on the user. Since the classifications become more accurate with the number of classified activities, the machine learning may be performed by the server 101 based on classifications from multiple users. The server 101 can then updated the agent running on the local machine by sending the machine learning parameter values, such as the word weights discussed above to the agent. This way, the agent can automatically classify activities that have been classified by other users on other machines.
[0063] The timing of rendering the pop-up window varies. The processor 230 can render the pop-up window upon determining a certain action of an activity, for example, triggering the "Email" button 4014 in the word processing activity on the word processing application 401, or the "Send" button 4020 in the email processing activity on the email processing application 402. In another example, the processor 230 renders the pop-up window at a time interval, for example, every thirty minutes.
[0064] The processor 230 further sends the classification(s) and the activity data to the server 101. The server 101 stores the classification(s) and the activity data in the storage device 104 to determines a work pattern of the user 111 and an activity classifier. The server 101 sends the activity classifier to the workstation computer system 107, and the processor 230 of the workstation computer system 107 receives the activity classifier from the server 101.
[0065] In an example, the processor 230 detects a subsequent activity performed by the user 111 via the one or more of the multiple software applications based on the handle of the one or more of the multiple software applications. The processor 230 automatically determines a further classification of the subsequent activity based on the activity classifier received from the server 101. The processor 230 automatically presents the further classification of the subsequent activity in the graphic user interface of the agent program 403 on the display device 220. The processor 230 may further determine further activity data indicative of the detected subsequent activity based on the handle, and automatically present the further activity data in the graphic user interface on the display device 220.
[0066] Fig. 5 illustrates an example server 101 for managing activities performed by users 111 to 114 in accordance with the present disclosure.
[0067] As shown in Fig. 5, the server 101 comprises a datastore 510, a data port 520, and a processor 530. The datastore 510, the data port 520, and the processor 530 are connected each other via a bus 540.
[0068] The datastore 510 stores activity data received from one or more of the workstation computer systems 107 tol 10. The data port 520 is used by the processor 530 to receive and send classification data from and to one or more of the workstation computer systems 107 tol 10. The processor 530 is configured to perform one or more steps described below.
[0069] Fig. 6 illustrates an example method 600 executed by the processor 530 for managing activities performed by users 111 to 114 in accordance with the present disclosure, the method 600 comprising: receiving 610 over the communication network 106 from a first remote workstation computer system 107 first activity data of a first activity detected by a first agent program running on the first remote workstation computer system 107 and first classification data associated with the first activity and provided by a first user 111 performing the first activity; determining 620 an activity classifier for activities based on the first classification data and first activity data; and sending 630 over the communication network 106 the activity classifier to a second remote workstation computer system 108 to cause the second remote workstation computer system 108 to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system 108, wherein the second activity is performed by a second user 112 via one or more of multiple software applications installed on the second remote workstation computer system 108.
[0070] The method 600 can be implemented as a computer software program stored in the datastore 510. The computer software program includes machine-executable instructions. When executed by the processor 530, these machine-executable instructions cause the processor 530 to perform processes described above with reference to Fig. 6. The computer software program may also include machine-executable instructions that cause the processor 530 to perform other processes described in the present disclosure.
[0071] In an example implementation of method 600, the processor 230 of the first remote workstation computer system 107 determines, as caused by the first agent program running on the first remote workstation computer system 107, the first activity data of the first activity performed by the first user 111 and the first classification data indicative of a first classification of the first activity. The processor 230 of the first remote workstation computer system 107 sends to the server 101 the first activity data and the first classification data. The server 101 receives the first activity data and the first classification data, and stores the first activity data and the first classification data in the datastore 510. It should be noted that the datastore 510 can be part of the server 101, or an external storage device, for example, the storage device 104. This way, historical activity data and classification data of the activities performed by the first user 111 are stored in the datastore 510.
[0072] Based on the first classification data and first activity data, and other historical classification data and activity data if necessary, the processor 530 of the server 101 determines the activity classifier for activities performed by the first user 111. For example, the processor 530 may determine the activity classifier using a machine learning method. The processor 530 sends over the communication network 106 the activity classifier to the second remote workstation computer system 108. The second agent program running on the second remote workstation computer system 108 uses the activity classifier to automatically classify the second activity detected on the second remote workstation computer system 108. For example, the activity classifier for the first user 111, Carl Kingsford, identified by the email address
ckiiigsford @ ckconsulting .com, au , indicates that emails from Carl Kingsford of CK Consulting to White Planning are classified as "Administration", this may mean that White Planning is inclined to use the emails as a project administration tool instead of a document presenting tool. Therefore, when the second user 112 (for example, Peter Windsor, a colleague of Carl Kingsford at CK Consulting, identified by the email address pwind sor @ ckconsulting .com, au ) sends an email to White Planning using the Email application 402 running on the second remote workstation computer system 108, the processor 230 of the second remote workstation computer system 108 detects this email processing activity and automatically classify this activity by the second user 112 as "Administration". If the automatic classification is not correct, the second user 112 changes the classification via one or more of the user interface elements of the second agent program running on the second remote workstation computer system 108. For example, if Peter Windsor provides substantive advice on the city planning strategy in the email body, the email processing activity should be changed to the "General Advice" category. This may also lead to a fee rate different to that for the "Administration" category.
[0073] The consolidation/correlation of activities and the machine learning process are performed at the server 101 in this example. The server 101 updates the agent program of each user device 107 to 110 with this knowledge whenever the agent program communicates with the server 101. This updated machine learnt knowledge at the user devices 107 to 110 enhances the end-user experience with lesser manual intervention & data entry, and increases productivity of the entire organization.
[0074] In addition to determining the activity classifier, the server 101 also determines the work pattern of the first user 111 based on the first classification data and first activity data. The work pattern represents performance metrics of the first user 111, indicating the first user's 111 activities in a measurable format. Based on the work pattern, management can make fact-based decisions or instruct further analysis to form an opinion as to 'what' is 'productivity' and tailor to its needs to 'how' productivity should be captured and reported. Data indicative of the work pattern is sent to the dashboard server 102 to generate a presentation of the work pattern, for example, in the form of dashboards.
[0075] Fig. 7 illustrates an example presentation 700 of a work pattern in accordance with the present disclosure.
[0076] The ability to analyse, measure and report on productivity and optimization depends on a number of inputs (including but not limited to) areas using the following information that can be extracted into dashboards:
Work Pattern = Function / Role / Capability / Activity / Duration / Volume / Cost / Outcome / Value
Productivity = Activity / Capability / Duration / Volume
Optimization = Productivity / Cost / Outcome / Value [0077] The work pattern can also be used to report on the following;
Capability = Skills / Experience / Qualification
Capacity = Function / Role / Productivity / Optimization
[0078] In the example presentation 700 of the work pattern shown in Fig. 7, Work Pattern Focus Areas depicts the various modalities 701 and collates them to input of Collectors and Dashboards 702.
[0079] As describe above, the service provision management network 100 provides a secure centralized repository in the storage device 104, which is accessible by both the users or professional service providers (for example, Carl Kingsford and Peter Windsor of CK
Consulting) and their client(s) (for example, Jane White of White Planning). The storage services provided by the storage device 104 can be for example, OneDrive, Dropbox, Google Drive, Box, or Amazon Cloud Drive. The service provision management network 100 securely stores electronic data that arises from the service activities, for example, the items or entries of the timesheet associated with the city planning strategy service provided by the professional service providers of CK Consulting.
[0080] An agent programs is installed on each of the user devices 107 to 110 connected to the communication network 106. The agent program is configured to instruct each of the user devices 107 to 110 to receive one or more items or entries associated with the time-based service provided by each of the profession service providers 111 to 114 during the activities. The agent program may also encrypt the items. The agent program sends the items to the server 101 via the communication network 106, which then stores the data in the storage device 104. The user devices 107 to 110 may send the data to the storage device 104 directly. The items are time- stamped with duration information and are encoded with a unique user identifier.
[0081] The items stored in the storage device 104 are viewable by the client of the professional service providers, and can be signed off by the client as verified. All material can be restricted in various ways, with differing access levels depending on the type of engagement that occurs. For example, internal meetings notes, calendar appointments, workshops, conference calls, documents may be restricted to various access levels of access. Access levels may include visibility of the document and is time-stamped and was created by a specific individual. Other documents that may constitute contract deliverables may need to be read and verified by the client prior to a milestone payment being made.
[0082] A verification device 115 connects to the communication network 106. The verification device 115 may be a smart phone, a desktop, a laptop, or a tablet computer. A verification application operates on the verification device 115 for a user 116, typically, the client (for example, Jane White of White Planning) of the profession service providers to use the verification device 115 to review the items(s) stored in the storage device 104. The verification device 115 is configured to access the one or more items in the storage device 104 via the communication network 106.
[0083] Fig. 8 illustrates an example graphic user interface 800 of the verification application in accordance with the present disclosure.
[0084] The client 116 provides a Service ID 810 (Particularly, 175458, "City Planning
Strategy") to the verification application via a user interface element 801 of the graphic user interface 800. Based on the Service ID, the verification device 115 is configured to retrieve a Service Provider 802 (Particularly, "CK Consulting") of the city planning strategy service and the one or more items 4038, 4039 associated with the time -based service from the storage device 104. The one or more items 4038, 4039 are displayed in the graphic user interface 800. If the one or more items 4038, 4039 associated with the city planning strategy service are satisfactory, the client 116 verifies the items by clicking on or touching a "Verify" button 803 in the graphic user interface 800. Upon verification of the items by the client 116, the verification device 115 stores, via the communication network 106, an indication in the storage device 104 in association with the time-based service indicating the one or more items have been verified. This indication may also be sent to the accountant of the client 116 or the escrow server 105 to make payments of the service fees listed in the items.
[0085] In an example, the server 101 is further configured to generate a report in relation to a work pattern associated with the service provider based on the one or more items. An example presentation 700 of the work pattern is shown in Fig. 7. Based on the one or more items, the server 101 may be further configured to determine a target based on a service provision agreement associated with the time-based service. The server 101 determines if the target has been met based on the one or more items. If the target is met, the server 101 may send an indication to both the user device 107 of the service provider 111 and the verification device 115 of the client 116 indicating the target is met.
[0086] Fig. 9 illustrates another example presentation 900 of a work pattern comprising an indication of methods of collaboration 901, associated people 902, involved processes 903, connected team members 904, shareholders 905 and locations 906. The metrics shown in Fig. 9 represent work patterns determined based on the classified activities as described above.
[0087] Fig. 10 illustrates another example presentation 1000 of a work pattern that is similar to work pattern 900 in Fig. 9 but comprises an indication of projects 1002 and an indication of the number of colleagues 1004 as determined based on the classifications of the activities.
[0088] Fig. 11 illustrates another example presentation 1100 of a work pattern comprising a collaboration indication 1101 representing the quality and effectiveness of collaboration and an intensity indication 1102 representing the frequency and volume of communication and work output. The presentation 1100 further comprises a pliancy indication 1003 representing the movement in work pattern bias in response to business requirements and an active connections indication representing the recency and frequency of communication.
[0089] Fig. 12 illustrates another example presentation 1200 of a work pattern that is circular with four sectors. A first sector 1201 indicates collaboration, a second sector 1202 indicates projects a third sector 1203 indicates administration and a fourth sector indicates process 1204. There are three rings where an inner ring 1211 represents team, a middle ring 1212 represent company and an outer ring 1213 represents external Within the circular presentations 1200 and the rings 1211, 1212 and 1213, there are multiple circles that are placeholders for future activities. When the agent reports an activity, processor 530 changes one of the circles to a solid disc. The selection of this circle is based on the classification. For example, based on the email recipient, the activity is classified as 'team', 'company' or external', which identifies one of the three rings 1211, 1212 or 1213. Processor 530 may select a sector based on the type of activity, such as email for collaboration sector 1201, word processing for projects sector 1202, billing service for administration sector 1203 and management tools for process sector 1204. An advantage of this style of representation of a work pattern is that a manager or other user can easily review the work pattern and can see where the majority of activities take place. The manager can then determine whether the spread of activities corresponds to the role of the employee associated with the work pattern. For example, the employee associated with work pattern 1200 has significant collaboration with externals as shown by the large number of solid disks in collaboration sector 1201 and outer ring 1213. If this employees role is an internal coordinator, the manager would see that the large number of external collaborations does not align with her role.
[0090] Fig. 13 illustrates another example presentation 1300 of a work pattern for a project. Presentation 1300 comprises an activities panel 1301, a team panel 1302 and a time analysis panel 1303. Presentation 1300 further comprises a time line 1304 indicating the total time spent on the project for each day. The activities panel 1301 indicates the proportion of time that is spent on collaborations, processes and administration, respectively. The team panel 1302 indicates the contribution of the individual team members while the time analysis panel 1303 indicates total quantities of the time spent on the project. As can be seen, by including the time analysis panel 1303, the user has a valuable tool that ties up the time(sheet) management, meeting management (where the system captures action items) and Work Pattern Discovery. The work patterns can be independent solution but customers benefit significantly from the integrated solution with time sheet functionality. This applies to the presentations in other figures where reference is made to hours worked or other time sheet based data.
[0091] Fig. 14 illustrates a more detailed representation 1400 of the team panel 1302 in Fig. 13. Each team member is represented by a circular sector and the sector grows as that team member contributes more to the project. Connections between team members are indicated by lines between them as determined from the classified activities. Representation 1400 further comprises a meeting panel 1401 that indicates the meetings recorded between the team members.
[0092] Fig. 15 illustrates another example presentation 1500 of a work pattern of one person for multiple projects where each project is represented by a circular chart as shown in activities panel 1301 in Fig. 13.
[0093] Fig. 16 illustrates another example presentation 1600 of a work pattern for multiple people. For each person, the presentation 1600 comprises a circular chart 1601 as shown in activities panel 1301 in Fig. 13, the number of hours 1602 worked on the project, the number of activities 1603 performed on that project (and classified by the agent as described above), the number of meetings 1604, the number of calls 1605, the number of emails 1606 sent by that person and the history of activities 1607 over the time of the project. [0094] In another example, the plurality of user devices 107 to 110 are connected to the communication network 106. An agent program is installed on each of the plurality of user devices 111 to 110 and is configured to record activities in relation to a meeting. These activities are performed by a plurality of participants, for example, the user 111 to 114, on the plurality of user devices 107 to 110. These activates include scheduling the meeting, information sharing, group discussions, voting, etc. The user devices 107 to 110 send items representing these activities to the server 101 that is connected to the communication network 106. The server 101 is configured to receive the items from the user devices 107 to 110 over the communication network 106. For example, these items may represent votes by the participants on a proposal proposed by a participant at or before the meeting. Upon receipt of the votes from the user devices 107 to 110, the server 101 determines an outcome of the meeting based on the items by for example determining the result of the voting according to a certain rule, for example, the majority rule. The server 101 further stores the outcome of the meeting in association with at least one of the plurality of participants 111 to 114 of the meeting in the storage device 104 connected to the communication network 106.
[0095] It should be understood that the example methods of the present disclosure might be implemented using a variety of technologies. For example, the methods described herein may be implemented by a series of machine executable instructions residing on a suitable computer readable medium. Suitable computer readable media may include volatile (e.g. RAM) and/or non-volatile (e.g. ROM, disk) memory, carrier waves and transmission media. Exemplary carrier waves may take the form of electrical, electromagnetic or optical signals conveying digital data steams along a local network or a publically accessible network such as internet.
[0096] It should also be understood that, unless specifically stated otherwise as apparent from the following discussion, it is appreciated that throughout the description, discussions utilizing terms such as "determining", "obtaining", or "receiving" or "sending" or "generating" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that processes and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.

Claims

CLAIMS:
1. A workstation computer system for managing an activity performed by a user, the system comprising:
a datastore to store program codes of multiple software applications installed on the workstation computer system and of an agent program;
a display device to render a graphical user interface including user interface elements; and
a processor configured to:
receive a user instruction issued from the user to perform the activity via one or more of the multiple software applications; and
execute the program codes of one or more of the multiple software applications and of the agent program, the agent program causing the processor to
detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications;
render on the display device the graphic user interface to receive a classification of the activity from the user via one or more of the user interface elements;
determine activity data indicative of the detected activity based on the handle;
store the classification and the activity data in the datastore for automatic classification of subsequent activities; and
send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.
2. The workstation computer system according to claim 1, wherein the processor is configured to execute the program codes in an operating system (OS), and the agent program further causes the processor to invoke one or more system functions provided by the OS to obtain the handle of the one or more of the multiple software applications.
3. The workstation computer system according to claim 1 or 2, wherein the handle comprises a reference to the one or more of the multiple software applications.
4. The workstation computer system according to any one of preceding claims, wherein the one or more of the multiple software applications include one or more of the following applications:
contacts;
calendar;
E-Mail;
word processing;
spreadsheet;
business application and
presentation.
5. The workstation computer system according to any one of the preceding claims, wherein the activity data indicative of the detected activity comprises one or more of the following:
an application identifier identifying the one or more of the multiple software applications;
a first time when the activity starts;
a second time when the activity ends;
a fee rate for the classification of the activity performed by the user;
a user identifier identifying the user;
a service identifier identifying a service associated with the activity; and
a description about the activity.
6. The workstation computer system according to claims 5, wherein the agent program further causes the processor to automatically present on the graphical user interface the classification of the activity and the activity data indicative of the detected activity.
7. The workstation computer system according to claim 6, wherein the graphic user interface include a pop-up window, and the agent program further causes the processor to render the pop-up window on the display device to present the classification of the activity and the activity data via one or more of the user interface elements in the pop-up window.
8. The workstation computer system according to claim 7,wherein the agent program further causes the processor to render the pop-up window upon determining the activity.
9. The workstation computer system according to claim 7, wherein the agent program further causes the processor to render the pop-up window at a time interval.
10. The workstation computer system according to any one of the preceding claims, wherein the agent program further causes the processor to receive the activity classifier from the server.
11. The workstation computer system according to claim 10, wherein the agent program further causes the processor to
detect a subsequent activity performed by the user via the one or more of the multiple software applications based on the handle of the one or more of the multiple software applications;
automatically determine a further classification of the subsequent activity based on the activity classifier received from the server; and
automatically present the further classification of the subsequent activity on the graphic user interface.
12. The workstation computer system according to claim 11, wherein the agent program further causes the processor to
determine further activity data indicative of the detected subsequent activity based on the handle; and
automatically present the further activity data on the graphic user interface .
13. The workstation computer system according to any one of the preceding claims, wherein the agent program further causes the processor to store the activity data and the classification of the activity in the storage device via a communication network.
14. A computer-implemented method for managing an activity performed by a user, the method comprising:
receiving a user instruction issued from the user to perform the activity via one or more of multiple software applications installed on a workstation computer system; and
executing the one or more of the multiple software applications and an agent program, the agent program is configured to detect the activity performed by the user via the one or more of the multiple software applications based on a handle of the one or more of the multiple software applications;
render on a display device a graphic user interface to receive a classification of the activity from the user via the graphic user interface;
determine activity data indicative of the detected activity based on the handle; store the classification and the activity data in the datastore for automatic classification of subsequent activities; and
send the classification and the activity data to a server to cause the server to store the classification and the activity data on a storage device and to determine a work pattern of the user and an activity classifier.
15. A server for managing activities performed by users, the server comprising:
a datastore to store activity data;
a data port to receive and send classification data; and
a processor configured to
receive over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity;
determine an activity classifier for activities based on the first classification data and first activity data; and
send over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
16. The server according to claim 15, the processor is further configured to
determine a work pattern of the first user based on the first classification data and first activity data.
17. The server according to claim 16, wherein the processor is further configured to
generate a report in relation to the work pattern.
18. The server according to claim 17, wherein the processor is further configured to:
group the activities into one or more groups; and
generate a graphical representation based on a number of activities in each of the one or more groups.
19. The server according to claim 18, wherein the one or more groups comprise one or more of:
collaborations;
projects;
process; and
administration.
20. A computer-implemented method for managing activities performed by users, the method comprising:
receiving over a communication network from a first remote workstation computer system first activity data of a first activity detected by a first agent program running on the first remote workstation computer system and first classification data associated with the first activity and provided by a first user performing the first activity;
determining an activity classifier for activities based on the first classification data and first activity data; and
sending over the communication network the activity classifier to a second remote workstation computer system to cause the second remote workstation computer system to automatically classify a second activity detected by a second agent program running on the second remote workstation computer system, wherein the second activity is performed by a second user via one or more of multiple software applications installed on the second remote workstation computer system.
21. A computer-implemented system for verifying a time-based service provided by a service provider, the system comprising:
a first user device connected to a communication network, an agent program being installed on the first user device and configured to instruct the first user device to receive one or more items associated with the time -based service provided by the service provider;
a server connected to the communication network, the server is configured to receive the one or more items sent from the first user device over the communication network; and
store the one or more items in association with the time-based service in a storage device connected to the communication network; and
a second user device connected to the communication network, the second user device is configured to
access the one or more items in the storage device via the communication network; and
store an indication in the storage device in association with the time-based service indicating the one or more items have been verified.
22. The system according to claim 21, wherein the server is further configured to
generate a report in relation to a work pattern associated with the service provider based on the one or more items.
23. The system according to claim 21 or 22, wherein the server is further configured to determine a target based on a service provision agreement associated with the time- based service;
determine if the target has been met based on the one or more items.
24. A computer-implemented system for managing a meeting, the system comprising: a plurality of user devices connected to a communication network, an agent program being installed on each of the plurality of user devices and configured to record activities in relation to the meeting, the activities being performed by a plurality of participants of the meeting on the plurality of user devices; and
a server connected to the communication network, the server configured to
receive items sent from the plurality of user devices over the communication network representing the activities performed by the plurality of participants of the meeting;
determine an outcome of the meeting based on the items; and
store the outcome of the meeting in association with at least one of the plurality of participants of the meeting in a storage device connected to the communication network.
25. A computer software program, including machine-executable instructions, when executed by a processor, causes the processor to perform the method of claim 14 or 20.
PCT/AU2016/050832 2016-03-31 2016-09-02 Managing service provision WO2017165903A1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
AU2017200602A AU2017200602B1 (en) 2016-03-31 2017-01-30 Managing service provision
AU2017200601A AU2017200601B1 (en) 2016-03-31 2017-01-30 Managing service provision

Applications Claiming Priority (12)

Application Number Priority Date Filing Date Title
AU2016100341 2016-03-31
AU2016100341A AU2016100341A4 (en) 2016-03-31 2016-03-31 ACTIVITY BASED CONTRACTS SOFTWARE A software delivered framework developed for optimizing business operations and individual performance. Stored locally or in the cloud, this system securely allows centralization of the measurement of activity based contracts. Individual and team contributions can be set and measured using electronic evidence collection and activity tracking.
AU2016100475 2016-04-28
AU2016100475A AU2016100475A4 (en) 2016-04-28 2016-04-28 TIME-BASED SERVICES VERIFICATION SOFTWARE A software delivered framework developed for the verification of activities charged as time-based billing by Professional Services Providers. Stored in the internet cloud or on premise, this software system securely allows centralization of the measurement of incremental time billing from mutually trusted evidentiary sources to ensure all parties can validate the out-comes of their engagements.
AU2016100520 2016-05-04
AU2016100520A AU2016100520A4 (en) 2016-05-04 2016-05-04 ABSTRACT A solution provided as a platform that collects data and provides reporting on the work patterns of human and machine interactions to optimize the productivity of Knowledge Workers.
AU2016100575 2016-05-12
AU2016100575A AU2016100575A4 (en) 2016-05-12 2016-05-12 Permission-based meeting software and framework that manages the access of an individual, group, or an organization with other external 3rd parties, to control, share and disclose: agendas, chat dialogue, notes, action items, approvals, collaboration, and consensus voting, and offer expiry, with time-stamped activity tracking before, during, and after a meeting is conducted.
AU2016902692 2016-07-08
AU2016902692A AU2016902692A0 (en) 2016-07-08 Managing service provision
US201662382678P 2016-09-01 2016-09-01
US62/382,678 2016-09-01

Related Child Applications (2)

Application Number Title Priority Date Filing Date
AU2017200602A Division AU2017200602B1 (en) 2016-03-31 2017-01-30 Managing service provision
AU2017200601A Division AU2017200601B1 (en) 2016-03-31 2017-01-30 Managing service provision

Publications (1)

Publication Number Publication Date
WO2017165903A1 true WO2017165903A1 (en) 2017-10-05

Family

ID=59962292

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/AU2016/050832 WO2017165903A1 (en) 2016-03-31 2016-09-02 Managing service provision

Country Status (1)

Country Link
WO (1) WO2017165903A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024058327A1 (en) * 2022-09-13 2024-03-21 Samsung Electronics Co., Ltd. System and method for providing an adaptive user interface (ui) navigation

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050131714A1 (en) * 2003-12-10 2005-06-16 Braunstein Anne R. Method, system and program product for hierarchically managing a meeting
US20050144245A1 (en) * 2003-09-03 2005-06-30 Lowe John C. Email classifier
US20050256956A1 (en) * 2004-05-14 2005-11-17 Battelle Memorial Institute Analyzing user-activity data using a heuristic-based approach
US7016762B2 (en) * 2003-12-26 2006-03-21 Hon Hai Precision Ind. Co., Ltd. Work item warning system and method
US20070112926A1 (en) * 2005-11-03 2007-05-17 Hannon Brett Meeting Management Method and System
US20080066149A1 (en) * 2005-12-29 2008-03-13 Blue Jungle Analyzing Activity Data of an Information Management System
US20090234721A1 (en) * 2007-12-21 2009-09-17 Bigelow David H Persistent collaborative on-line meeting space
US8126760B2 (en) * 2005-03-25 2012-02-28 Microsoft Corporation Work item tracking system for projects
US20120290545A1 (en) * 2011-05-12 2012-11-15 Microsoft Corporation Collection of intranet activity data
US20130121580A1 (en) * 2011-11-11 2013-05-16 International Business Machines Corporation Analysis of service delivery processes based on interrogation of work assisted devices
AU2014100601A4 (en) * 2013-05-31 2014-08-14 Andrew Saunders Meeting Management and Project Management Element Reconciliation
US20140258393A1 (en) * 2013-03-05 2014-09-11 International Business Machines Corporation Guiding a desired outcome for an electronically hosted conference

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050144245A1 (en) * 2003-09-03 2005-06-30 Lowe John C. Email classifier
US20050131714A1 (en) * 2003-12-10 2005-06-16 Braunstein Anne R. Method, system and program product for hierarchically managing a meeting
US7016762B2 (en) * 2003-12-26 2006-03-21 Hon Hai Precision Ind. Co., Ltd. Work item warning system and method
US20050256956A1 (en) * 2004-05-14 2005-11-17 Battelle Memorial Institute Analyzing user-activity data using a heuristic-based approach
US8126760B2 (en) * 2005-03-25 2012-02-28 Microsoft Corporation Work item tracking system for projects
US20070112926A1 (en) * 2005-11-03 2007-05-17 Hannon Brett Meeting Management Method and System
US20080066149A1 (en) * 2005-12-29 2008-03-13 Blue Jungle Analyzing Activity Data of an Information Management System
US20090234721A1 (en) * 2007-12-21 2009-09-17 Bigelow David H Persistent collaborative on-line meeting space
US20120290545A1 (en) * 2011-05-12 2012-11-15 Microsoft Corporation Collection of intranet activity data
US20130121580A1 (en) * 2011-11-11 2013-05-16 International Business Machines Corporation Analysis of service delivery processes based on interrogation of work assisted devices
US20140258393A1 (en) * 2013-03-05 2014-09-11 International Business Machines Corporation Guiding a desired outcome for an electronically hosted conference
AU2014100601A4 (en) * 2013-05-31 2014-08-14 Andrew Saunders Meeting Management and Project Management Element Reconciliation

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024058327A1 (en) * 2022-09-13 2024-03-21 Samsung Electronics Co., Ltd. System and method for providing an adaptive user interface (ui) navigation

Similar Documents

Publication Publication Date Title
US9477522B2 (en) System and method for implementing workflow management using messaging
US10607165B2 (en) Systems and methods for automatic suggestions in a relationship management system
US8639552B1 (en) Systems and methods for creating and sharing tasks
US20120221372A1 (en) System and method for an integrated workflow process, social, contact and web marketing solution
US20170316080A1 (en) Automatically generated employee profiles
US10749818B1 (en) Electronic mail communications
US20170169520A1 (en) Time Tracking System and Method
US20130173486A1 (en) Collaboration cloud
US20160321744A1 (en) Systems and methods for automated management of contracts between financial institutions and vendors, automated preparation of examination reports, and automated management of examination reports
US20090063413A1 (en) Method and system for tracking allocations of assets and tasks
US20120059662A1 (en) Automated lead processing systems and methods
US11886691B2 (en) Group-based communication system dynamic group-based communication interface focusing
US20170053329A1 (en) Systems and methods for providing vendor management and custom profiles
IL252164B1 (en) User Interactive Management System and Uses Thereof
US11308430B2 (en) Keeping track of important tasks
US20130174093A1 (en) Compass menu
WO2018231412A1 (en) Providing suggestions for task completion through intelligent canvas
WO2017165903A1 (en) Managing service provision
US7711717B2 (en) Achieving recurring item recordings from calendaring applications over LOB systems
AU2017200601B1 (en) Managing service provision
AU2017200602B1 (en) Managing service provision
US20060026178A1 (en) Method and apparatus for adapting an email application program user interface to interface with a business management system
US20170116529A1 (en) Generating a database of skills
US20230101151A1 (en) Systems and methods for providing aggregate group presence state identifier
US11756000B2 (en) Systems and methods to effectuate sets of automated actions within a collaboration environment including embedded third-party content based on trigger events

Legal Events

Date Code Title Description
NENP Non-entry into the national phase

Ref country code: DE

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 16895746

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 16895746

Country of ref document: EP

Kind code of ref document: A1