Collaborative projects are often complex endeavors involving the completion of a series of tasks that involve the coordination of many different individuals.
For example, a construction-related project may involve several different phases, where each phase may involve a series of tasks that require significant collaboration between different individuals to complete various actions items for a given task. For instance, a logistics phase of a construction-related project may involve tasks to allocate various resources to the project, including planning a budget for the project.
In particular, one specific task that may involve significant collaboration between different users involved in the logistics phase of the project is budget reconciliation. Indeed, when reconciling a budget to ensure that values are accurate and communicated transparently, a number of different individuals typically need to collaborate with one another, including a project executive, a senior and/or assistant project manager, and/or project engineer, among others. Further, in practice, these collaborations are typically carried out over the course of several emails, telephone calls, meetings, or the like, which often do not include sufficient specificity as to the information needed to complete the outstanding action items for budget reconciliation and/or the steps that can or should be taken to complete such action items. As a result, a complex collaborative task such as budget reconciliation often involves significant time delays and/or errors.
Likewise, individuals or a team of individuals involved in collaborative tasks for various other projects (e.g., business-related projects, school-related projects, etc.) typically experience similar inefficiencies described above. Thus, any tool that can improve the execution and completion of various actions items for a given collaborative task is desired.
In order to assist with the execution and completion of various actions items for a given collaborative task, some have developed software applications that allow users to collaborate with one another on certain types of tasks via a communication network such as the Internet, where such software applications typically comprise front-end software running on the users' client stations and back-end software running on one or more servers that are accessible to the client stations via the communication network. For example, software applications currently exist that allows users to collaborate with one another on the preparation of a document. As another example, software applications currently exist that allow a first user to create and assign a particular action item to a second user and then allow the second user to receive, review, and provide status updates on the assigned action item. One such software application is the “Punch List” tool offered by Procore Technologies, Inc. Software applications for collaborating on other types of tasks may exist as well.
However, while software applications currently exist for collaborating on certain types of tasks, these collaborative software applications still have several limitations. For instance, while some collaborative software applications exist that allow for creation, assignment, and/or management of action items, these software applications fail to provide any guidance as to what particular information should be referenced while carrying out the action item and/or what specific software tools can or should be used to assist in completing the action item. As a result, the completion of an action item that is created and assigned using existing software applications is often delayed while the assignee navigates through one or more software applications to locate the necessary information and/or the appropriate software tool(s) for completing the action item.
To address these and other problems with existing collaborative software applications, disclosed herein is an improved collaborative software application for creating, assigning, and interacting with an action item. An action item created via the disclosed software application may include a particular action for one or more assignees that may include an action-embedded link to a front-end software module that facilitates completion of the action item. In general, an action embedded-link may take the form of a hyperlink, and selection of an action-embedded link by a user may result in the user's client station accessing and beginning to run a front-end software module and may further cause data related to the action item to be pre-populated within the front-end module to facilitate completion of the action item.
Utilizing such an action-embedded link, the disclosed software application provides a significant advantage over existing collaborative software applications as it provides an assignee reviewing the action item with information as to what particular information should be referenced while carrying out the action item and/or what specific software modules can or should be used to assist in completing the action item. Further, because the selection of a given action-embedded link may result in data related to the action item to be pre-populated within a front-end module that facilitates completion of the action item, the disclosed software application may prevent significant time delays and/or errors resulting from users providing inaccurate information while completing an action item.
In one aspect of the disclosed software application, an assignor may access the disclosed software application to create an action item for one or more assignees involved in a collaborative task. The process for creating an action item may take various forms and may be carried out in various manners.
The example workflow for creating an action item related to a collaborative task may begin with an assignor requesting access to a first front-end module of the disclosed software application via the assignor's client station. In response to receiving the assignor's request, a back-end platform may then cause the assignor's client station to present the first front-end module of the disclosed software application.
In practice, while accessing the first front-end software module, the assignor may input an indication that the assignor wishes to create a new action item in connection with some aspect of the information presented via the first front-end software module. The back-end platform may then receive the indication that the assignor wishes to create the new action item in connection with some aspect of the information presented via first front-end software module, which may in turn trigger the back-end platform to take one or more actions based on the assignor's input.
In particular, the back-end platform may cause the assignor's client station to present a modified view of the first front-end software module that enables the assignor to input data defining the new action item to be created. In general, the modified view of the first front-end module may include one or more elements (e.g., windows, indicators, etc.) that may be different than the elements that were presented in the view that was initially accessed by the assignor (e.g., view 400).
While accessing the modified view of the given front-end module, the assignor may input data that defines the action item to be created. As some examples, the assignor may input data that identifies one or more assignees, a description of the particular action that needs to be taken by the one or more assignees that may include plain text and/or at least one action-embedded links to a second front-end software module that facilitates completion of the action item, and a an indication that the assignor has finished entering the data defining the action item, among other examples.
In addition to the user input defining the action item to be created, the assignor's client station and/or the back-end platform may also contribute to the data that defines the action item. For example, the back-end platform may cause the assignor's client station to present data that identifies the assignor creating the action item, the creation date of the action item, and/or a status indicator for the action item to be created that may later enable the assignor to approve the action item upon completion, among other examples.
The back-end platform may then receive the data that defines the action item, which may in turn trigger the back-end platform to take one or more actions based on the received information. As one example, the back-end platform may store the information that defines the action item and/or a portion of the first front-end software module that is related to the action item. As another example, the back-end platform may generate an alert to notify a given assignee that has designated by the assignor to complete the action item.
After the action item has been created, the disclosed software application may provide an assignee of the action item with a workflow for reviewing and potentially taking steps to complete the action item. The example workflow for reviewing and taking steps to complete an action item may begin with an assignee requesting access to a first front-end software module of the disclosed software application that includes an indication of one or more actions items assigned to the assignee via the assignee's client station. In practice, the assignee may request access to the first front-end module to check if the assignee has been assigned an action item and potentially complete the action item.
In response to receiving the assignee's request, the back-end platform may cause the assignee's client station to present the first front-end software module of the disclosed software application that includes the indication of the one or more action items. The first front-end module that may be presented to the assignee's client station may take various forms.
In practice, while accessing the first front-end module that indicates one or more action items assigned to the assignee, the assignee may input a request to view an action item in more detail. The back-end platform may then receive the assignee's input indicating a selection of the action item from the first front-end module, which may in turn trigger the back-end platform to take one or more actions based on the assignee's input.
In particular, the back-end platform may cause the assignee's client station to present a modified view of the first front-end module that presents the selected action item to the assignee. While accessing the modified view of the given front-end module, the assignee may take various steps to complete the action item.
As one possibility, the assignee may select a given action-embedded link that is included in the action item, which may be presented in the modified view. The back-end platform 102 may then receive input indicating the selection of the action-embedded link included in the action item, which may in turn trigger the back-end platform to take one or more actions.
In particular, in response to the received input indicating the selection of the action-embedded link, the back-end platform may cause the assignee's client station to present a second front-end software module of the disclosed software application identified by the selected action-embedded link that facilitates completion of the action item and also potentially cause data related to the action item to be pre-populated within the second front-end software module. Depending on the action-embedded link selected by assignee, the second front-end module may take various forms.
The back-end platform may then receive data indicating that the action item has been completed. For instance, the assignee's client station may send an indication that the action item has been completed to the back-end platform, which may in turn trigger back-end platform to update data defining the action item to indicate that the action item has been completed.
In turn, the back-end platform may cause one or both of the assignor's client station or the assignee's client station to present an indication that the action item has been completed.
Accordingly, in one aspect, disclosed herein is a method that involves (1) receiving, via a first front-end software module running on a first client station associated with a first user, a request to assign an action item to a second user, wherein the action item comprises an embedded link to a second front-end software module that can be used to complete the action item, (2) after receiving the request to assign the action item to the second user, causing a second client station associated with the second user to present the action item to the second user, (3) receiving, via the second client station, an indication that the second user has selected the embedded link of the action item, (4) in response to receiving the indication that the second user has selected the embedded link of the action item, causing the second client station to begin running the second front-end software module, (5) receiving, via the second front-end software module running on the second client station, input from the second user that facilitates completion of the action item, (6) after receiving the input from the second user, determining that the action item has been completed, and (7) causing one or both of the first client station or the second client station to present an indication that the action item has been completed.
In another aspect, disclosed herein is a computing system that includes a network interface, at least one processor, a non-transitory computer-readable medium, and program instructions stored on the non-transitory computer-readable medium that are executable by the at least one processor to cause the computing system to carry out the functions disclosed herein, including but not limited to the functions of the foregoing method.
In yet another aspect, disclosed herein is a non-transitory computer-readable storage medium provisioned with software that is executable to cause a computing system to carry out the functions disclosed herein, including but not limited to the functions of the foregoing method.
One of ordinary skill in the art will appreciate these as well as numerous other aspects in reading the following disclosure.
The following disclosure makes reference to the accompanying figures and several example embodiments. One of ordinary skill in the art should understand that such references are for the purpose of explanation only and are therefore not meant to be limiting. Part or all of the disclosed systems, devices, and methods may be rearranged, combined, added to, and/or removed in a variety of manners, each of which is contemplated herein.
The present disclosure is generally directed to a collaborative software application that enables different users to collaborate with one another on any of various different action items, examples of which include identifying and/or resolving potential issues related to a given task (e.g., budget reconciliation task, design task, etc.), creating and/or revising one or more data entries related to a given task, and/or providing instructions to a given user, among other examples.
At a high level, this collaborative software application may comprise front-end software running on client stations of individuals interested in collaborating on a task and back-end software running on a back-end platform (sometimes referred to as a “cloud” platform) that interacts with and/or drives the front-end software, which may be operated (either directly or indirectly) by the provider of the software. In this respect, the front-end software may take the form of a native application, a web application, and/or a hybrid application, among other possibilities. However, the software technology disclosed herein may take other forms as well.
While running on a user's client station, the front-end of the disclosed software application may provide a user interface through which the user may interact with the software application via visual elements, control elements, or the like. Further, the front-end of the disclosed software application may be comprised of one or more discrete software modules, where each respective software module defines a respective “view” (or “page”) of the user interface through which the user may interact with the software application.
In practice, a given view of the user interface provided by the front-end of the disclosed software application may include one or more “windows,” which may display information and/or present control elements within a certain area of the view. A window can take various forms, and in particular, a window can be manipulated by a user to take various forms. For instance, a user may manipulate a window by hiding (i.e., minimizing or closing) the window, adjusting the window to a different size, and/or moving the window to a different area within a view (e.g., place it next to another window, place it in front of or behind another window, etc.). A window can be manipulated to take various other forms as well.
Further, in practice, a given view of the user interface provided by the front-end of the disclosed software application may include a “menu” that allows a user to select an option to execute a given command (e.g., a command to navigate to another software module of the disclosed software application's front-end). Such a menu may take various forms. As one possibility, a menu may take the form of a “menu bar” that is displayed horizontally across the top of a view and/or along the top of one of more windows within a view. As another possibility, a menu may take the form of a “pull-down menu” that includes a list of options to execute a given command. As yet another possibility, the menu may take the form of a menu bar that includes a pull-down menu, among other control elements, such as one or more filters and/or individual icons that can be selected by an individual to execute a given command. The menu may take various other forms as well.
The user interface of the disclosed software application's front-end may take various other forms as well.
Turning now to the figures,
In general, back-end platform 102 may comprise one or more computing systems that have been provisioned with software for carrying out one or more of the platform functions disclosed herein, including but not limited to receiving data related to an action item for a given task (broadly referred to herein as “task-related data”), storing task-related data for future access by client stations 112, 114, 116, and/or transmitting data and/or instructions that cause one or more client stations 112, 114, 116 to output information related to an action item for a given task. The one or more computing systems of back-end platform 102 may take various forms and be arranged in various manners.
For instance, as one possibility, back-end platform 102 may comprise computing infrastructure of a public, private, and/or hybrid cloud (e.g., computing and/or storage clusters) that has been provisioned with software for carrying out one or more of the platform functions disclosed herein. In this respect, the entity that owns and operates back-end platform 102 may either supply its own cloud infrastructure or may obtain the cloud infrastructure from a third-party provider of “on demand” computing resources, such include Amazon Web Services (AWS) or the like. As another possibility, back-end platform 102 may comprise one or more dedicated servers that have been provisioned with software for carrying out one or more of the platform functions disclosed herein. Other implementations of back-end platform 102 are possible as well.
In turn, client stations 112, 114, 116 may take any of various forms, examples of which may include a desktop computer, a laptop, a netbook, a tablet, a smartphone, and/or a personal digital assistant (PDA), among other possibilities.
As further depicted in
The interaction between client stations 112, 114, 116 and back-end platform 102 may take various forms. As one possibility, client stations 112, 114, 116 may send certain user input to back-end platform 102, which may in turn trigger back-end platform 102 to take one or more actions based on the user input. As another possibility, client stations 112, 114, 116 may send a request to back-end platform 102 to access a particular front-end software module of the disclosed software application, and back-end platform 102 may then cause client stations 112, 114, 116 to present the particular front-end software module of the disclosed software application in response to such a request. The interaction between client stations 112, 114, 116 and back-end platform 102 may take various other forms as well.
In practice, presenting a given front-end software module on client stations 112, 114, 116 may involve back-end platform 102 outputting task-related data and other associated data and/or instructions that define the visual appearance of the given front-end software module through which the task-related data is to be presented on one or more of client stations 112, 114, 116. Such data and/or instructions for defining the visual appearance of a given front-end software module may take various forms, examples of which may include Hypertext Markup Language (HTML), Cascading Style Sheets (CSS), and/or JavaScript, among other possibilities. However, depending on the circumstance, it is also possible that back-end platform 102 may output task-related data to client stations 112, 114, 116 without any associated data and/or instructions for defining the visual appearance of a given front-end software module.
Further, in practice, client stations 112, 114, and 116 may each be operated by and/or otherwise associated with a different individual involved in a collaborative task. For example, client station 112 may be operated by an “assignor” that may be responsible for creating an action item for the collaborative task, client station 114 may be operated by an “assignee” responsible for completing an action item for the collaborative task, and client station 116 may be operated by an individual (e.g., project manager, project coordinator, etc.) responsible for monitoring action items to track the progress of a collaborative task. However, client stations 112, 114, and 116 may be operated by and/or otherwise associated with individuals having various other roles with respect to a collaborative task as well. Further, while
Although not shown in
As one example, a given external data source may comprise a database that stores user account information for the users (e.g., names of the assignors and/or assignees) of the disclosed software application, and back-end platform 102 may be configured to receive data related to a given user account from the given data source. As another example, a given external data source may comprise a database that stores action-embedded links that each correlate to a specific module of the disclosed software application, and back-end platform 102 may be configured to receive data related to a given action-embedded link and cause a client station to present the given action-embedded link. A given external data source may take various other forms as well.
It should be understood that network configuration 100 is one example of a network configuration in which embodiments described herein may be implemented. Numerous other arrangements are possible and contemplated herein. For instance, other network configurations may include additional components not pictured and/or more or less of the pictured components.
Processor 202 may comprise one or more processor components, such as general-purpose processors (e.g., a single- or multi-core microprocessor), special-purpose processors (e.g., an application-specific integrated circuit or digital-signal processor), programmable logic devices (e.g., a field programmable gate array), controllers (e.g., microcontrollers), and/or any other processor components now known or later developed. In line with the discussion above, it should also be understood that processor 202 could comprise processing components that are distributed across a plurality of physical computing devices connected via a network, such as a computing cluster of a public, private, or hybrid cloud.
In turn, data storage 204 may comprise one or more non-transitory computer-readable storage mediums, examples of which may include volatile storage mediums such as random-access memory, registers, cache, etc. and non-volatile storage mediums such as read-only memory, a hard-disk drive, a solid-state drive, flash memory, an optical-storage device, etc. In line with the discussion above, it should also be understood that data storage 204 may comprise computer-readable storage mediums that are distributed across a plurality of physical computing devices connected via a network, such as a storage cluster of a public, private, or hybrid cloud.
As shown in
Communication interface 206 may be configured to facilitate wireless and/or wired communication with external data sources that may help facilitate collaboration on a given task and/or client stations, such as client stations 112, 114, 116 in
Although not shown, platform 200 may additionally include one or more interfaces that provide connectivity with external user-interface equipment (sometimes referred to as “peripherals”), such as a keyboard, a mouse or trackpad, a display screen, a touch-sensitive interface, a stylus, a virtual-reality headset, speakers, etc., which may allow for direct user interaction with platform 200.
It should be understood that platform 200 is one example of a computing platform that may be used with the embodiments described herein. Numerous other arrangements are possible and contemplated herein. For instance, other computing platforms may include additional components not pictured and/or more or less of the pictured components.
As described above, the present disclosure is generally directed to an improved collaborative software application for creating, assigning, and interacting with an action item that includes an action-embedded link, which allows the action item to be completed in a more efficient manner.
At a high level, the disclosed software application may allow a first user to input a request to create an action item to a second user, where the first user may be referred to as the “assignor” and the second user may be referred to as the “assignee.” One of ordinary skill in the art will appreciate that the assignor may input a request to create an action item to more than one assignee as well.
Broadly speaking, an action item created via the disclosed software application may include a particular action for one or more assignees that may include an action-embedded link to a front-end software module that facilitates completion of the action item. In general, an action embedded-link may take the form of a hyperlink, and selection of an action-embedded link by a user (e.g., assignee) may result in the user's client station accessing and beginning to run a front-end software module and may further cause data related to the action item to be pre-populated within the front-end module to facilitate completion of the action item. In practice, the user's client station may send an indication that the user has selected the action-embedded link to the back-end platform (e.g., back-end platform 102), and the back-end platform may then cause the user's client station to begin running the front-end software module and further cause the user's client station to present pre-populated data that facilitates completion of the action item. An action-embedded link may take various other forms, and the action item created via the disclosed software application may include various other information as well.
In one aspect of the disclosed software application, an assignor may access the disclosed software application to create an action item for one or more assignees involved in a collaborative task. The process for creating an action item may take various forms and may be carried out in various manners. Some example functions for creating an action item will now be described with reference to
For the purposes of illustration only, the example functions are described as being carried out by a back-end platform (e.g., back-end platform 102). However, it is possible that the responsibility for carrying out the functions of the disclosed process could be distributed between a back-end platform (e.g., back-end platform 102) and one or more client stations (e.g., client stations 112, 114, and/or 116). Further, it should be understood that the flow diagram in
According to the present disclosure, the example workflow for creating an action item related to a collaborative task may begin with an assignor requesting access to a first front-end module of the disclosed software application via the assignor's client station, which may be one of client station 112, 114, or 116. In this respect, the first front-end module may be associated in some way with a collaborative task with which the assignor is involved (e.g., budget reconciliation), and the assignor may choose to request access to the first front-end module for various reasons. As possibilities, the assignor may request access to the first front-end module to review the status of the collaborative task with which the assignor is involved (which may in turn result in the assignor deciding that a new action item should be created), or the assignor may request access to the first front-end module for the specific purpose of creating a new action item related to the collaborative task, among other possible reasons.
In practice, the assignor may request this access by launching a native application on the assignor's client station or directing a web browser on the assignor's client station to a uniform resource locator (URL) for the disclosed software application, among other possibilities.
At block 302, in response to receiving the assignor's request, back-end platform 102 may cause the assignor's client station to present the first front-end module of the disclosed software application. For instance, client station 112 may send a request to back-end platform 102 to access the first front-end module of the disclosed software application, and back-end platform 102 may cause client station 112 to present the first front-end module of the disclosed software in response to such a request. The first front-end module that may be presented to the client station may take various forms.
As one example to illustrate,
As further shown in
Menu 410 may take various forms. As one possibility, as shown in
Windows 420, 430 may also take various forms. For instance, as shown in
It should be understood that because the assignor may access a different view defined by the first front-end module or another front-end module to check the progress of any given task for any given project, windows 420, 430 may also take various other forms as well. For instance, depending on the type of task and/or the particular given front-end software module that is accessed, window 420 may present a blueprint, computer code, or the like that is related to the given task, and window 430 may include an indication of the completed and/or outstanding action items related to the given task, which may take the form of a list that includes the completed and/or outstanding action items. One of ordinary skill in the art will appreciate that windows 420, 430 may take various other forms as well.
Further, in line with the discussion above, it should be understood that windows 420, 430 can be manipulated by the assignor to take various other forms as well, by hiding (e.g., minimizing, closing) windows 420 and/or 430 from view 400, adjusting the size of windows 420 and/or 430 (e.g., by dragging the corners of windows 420 and/or 430), moving windows 420 and/or 430 to a different area of module 400, as some non-limiting examples.
In practice, while accessing the first front-end software module, the assignor may input an indication that the assignor wishes to create a new action item in connection with some aspect of the information presented via the first front-end software module. The assignor may input this indication in various manners. As one possibility, the assignor may select a given portion of the user-interface view defined by the first front-end software module, and this selection alone may serve as an indication that the assignor wishes to create a new action item in connection with the given portion of the user-interface view defined by the first front-end software module. As another possibility, the assignor's selection of the given portion of the user-interface view defined by the first front-end software module may result in the assignor being presented with a context menu (or the like) that includes various options that may be available for the given portion of the user-interface view, examples of which may include an option to modify the information displayed in the given portion of the user-interface view and/or an option to create an action item in connection with the given portion of the user-interface view defined by the first front-end software module, in which case the assignor may use the context menu to input the indication that the assignor wishes to create a new action item. The assignor may input an indication that the assignor wishes to create a new action item in some other way as well.
To illustrate with a specific example, while accessing view 400 defined by the example “Budgeting” front-end software module, the assignor may notice that the data entry in the data entry region corresponding to “Budget Modifications” for “Sanitary Facilities” in window 420 needs to be modified. In turn, the assignor may input an indication that the assignor wishes to create a new action item in connection with that data entry region (e.g., by selecting the data entry region).
At block 304, back-end platform 102 may then receive the indication that the assignor wishes to create the new action item in connection with some aspect of the information presented via first front-end software module. For instance, the assignor's client station may send an indication of the assignor's input via the first front-end software module to back-end platform 102, which may in turn trigger back-end platform 102 to take one or more actions based on the assignor's input.
In particular, at block 306, back-end platform 102 may cause the assignor's client station to present a modified view of the first front-end software module that enables the assignor to input data defining the new action item to be created. In general, the modified view of the first front-end module may include one or more elements (windows, indicators, etc.) that may be different than the elements that were presented in the view that was initially accessed by the assignor (e.g., view 400). The modified view may take various forms.
As one example, in response to the assignor's selection of the data entry region corresponding to “Budget Modifications” for “Sanitary Facilities” in window 420 of view 400, back-end platform 102 may cause the assignor's client station to present an indicator that provides an indication of the assignor's selection of the data entry region. As another example, in response to the assignor's selection of the data entry region corresponding to “Budget Modifications” for “Sanitary Facilities” in window 420, back-end platform 102 may cause the assignor's client station to present a window (e.g., a pop-up window) to create an action item that corresponds to the selected data entry region.
As one particular example to illustrate,
Further, in line with the discussion above, it should be understood that window 440 may take various other forms and can be presented in other areas of view 401. It should also be understood that indicator 450 may take various other forms as well and can be presented in other areas of view 401 relative to the selected data entry region.
While accessing the modified view of the given front-end module, the assignor may input data that defines the action item to be created. As some examples, the assignor may input data that identifies one or more assignees, a description of the particular action that needs to be taken by the one or more assignees that may include plain text and/or at least one action-embedded links to a second front-end software module that facilitates completion of the action item, and a an indication that the assignor has finished entering the data defining the action item, among other examples.
The assignor may input data that defines the action item to be created in various manners. As one example to illustrate,
As shown, window 440 may include various data that the assignor may input to define the action item to create budget modifications for the selected data entry region. As one example, window 440 may include data that identifies one or more assignees (e.g., “John Smith”) that the assignor may designate to complete the given action item. In practice, the assignor may identify a given assignee by populating an assignee input region (e.g., assignee input region 460) with data that identifies the given assignee. The assignee input region 460 may take various forms.
As one possibility, assignee input region 460 may take the form of a text entry box that allows the assignor to input data that identifies a given assignee. The assignor may input data in the text entry box in various manners. For instance, the assignor may input the name of a given assignee (e.g., “John Smith”) by typing the name of the given assignee in assignee input region 460, which may cause back-end platform 102 to query a database (e.g., a database stored in data storage 204, or a database from an external data source) of users of the disclosed software application that match the name of the given assignee and then cause the client station to present the corresponding user in assignee input region 460. Alternatively, the assignor may input a particular symbol followed by one or more other characters that identifies the name of a given assignee in assignee input region 460 (e.g., “@John S”), which may cause back-end platform 102 to query a database of users of the disclosed software application that comprises the input following the particular symbol (e.g., “John S”) and then cause the client station to present the corresponding user(s) in assignee input region 460. The assignor may input data in the text entry box in various other manners as well.
As another possibility, assignee input region 460 may take the form of a pull-down menu that allows the assignor to select one or more assignees. Assignee input region 460 may take various other forms as well.
As further shown in
For instance, with respect to action input region 470 in
Action input region 470 may take various forms. As one possibility, action input region 470 may take the form of a text entry box that enables the assignor to input plain text characters to describe a given action, which may include an action-embedded link. In practice, the assignor may create an action-embedded link in various manners.
As one possibility, as shown in
Similarly, as shown in
It should be understood that action input region 470 may take various other forms. Further, it should be understood that the assignor's client station and/or back-end platform 102 may alternatively generate the data that can be input by the assignor to define the action item to be created. For instance, in response to the assignor's selection of the data entry region corresponding to “Budget Modifications” for “Sanitary Facilities” (or alternatively, the assignor's selection of one or more specific options to create an action item for the selected data entry region), back-end platform 102 may utilize machine learning or other techniques known in the art to cause the assignor's client station to present window 440 and in particular, present the action-embedded link, “create budget modifications,” in action input region 470 without the need for the assignor to input characters to create the action-embedded link.
In addition to the user input defining the action item to be created, the assignor's client station and/or back-end platform 102 may also contribute to the data that defines the action item. For example, back-end platform 102 may cause the assignor's client station to present data that identifies the assignor creating the action item, the creation date of the action item, and/or a status indicator for the action item to be created that may later enable the assignor to approve the action item upon completion, among other examples.
As one particular example to illustrate, as shown in
It should be understood that the data that identifies the assignor, the creation date of the action item, and/or the status indicator for the action item may take various forms. For instance, as shown in
It should also be understood that the assignor may alternatively input data that identifies the assignor, the creation date of the action item, and/or indicates the status of the action item. For instance, window 440 may include an assignor data field and/or a creation date data field that enables the assignor to populate the assignor's name and creation date of the action item in the respective data fields (e.g., by inputting text characters, selecting the assignor's name and/or creation date from a pull-down menu, etc.).
At block 308, back-end platform 102 may then receive the data that defines the action item. For instance, the assignor's client station may send the information to back-end platform 102, which may in turn trigger back-end platform 102 to take one or more actions based on the received information. As one example, back-end platform 102 may store the information that defines the action item and/or a portion of view 401 that is related to the action item (e.g., the selected data entry region related to the action item for creating budget modifications). As another example back-end platform 102 may generate an alert to notify a given assignee that has designated by the assignor to complete the action item. Back-end platform 102 may take other actions as well.
After the action item has been created, the disclosed software application may provide an assignee of the action item with a workflow for reviewing and potentially taking steps to complete the action item. Some example functions that may be carried out in order to provide such a workflow will now be described with reference to
For the purposes of illustration only, the example functions are described as being carried out by a back-end platform (e.g., back-end platform 102) that has access to data related to action items for one or more collaborative tasks (i.e., task-related data). However, it is possible that the responsibility for carrying out the functions of the disclosed process could be distributed between a back-end platform (e.g., back-end platform 102) and one or more client stations (e.g., client stations 112, 114, and/or 116). Further, it should be further understood that the flow diagram in
In accordance with the present disclosure, the example workflow for reviewing and taking steps to complete an action item may begin with an assignee requesting access to a first front-end software module of the disclosed software application that includes an indication of one or more actions items assigned to the assignee via the assignee's client station, which may be one of client station 112, 114, or 116. In this respect, the first front-end module may be the same front-end software module that was used by an assignor to create the one or more action items or may be a different front-end software module of the disclosed software application.
In practice, the assignee may request access to the first front-end module to check if the assignee has been assigned an action item and potentially complete the action item. The assignee may request this access by launching a native application on the assignee's client station or directing a web browser on the assignee's client station to a uniform resource locator (URL) for the disclosed software application, among other possibilities. One of ordinary skill in the art will appreciate that an assignee may access the first front-end module for various other purposes as well.
At block 502, in response to receiving the assignee's request, back-end platform 102 may cause the assignee's client station to present the first front-end software module of the disclosed software application that includes the indication of the one or more action items. For instance, client station 114 may send a request to back-end platform 102 to access the first front-end module, and back-end platform 102 may cause client station 114 to present the first front-end module in response to such a request. The first front-end module that may be presented to the assignee's client station may take various forms.
To illustrate, one example view of the first front-end module that may be presented via the assignee's client station may take the form of example view 400 in
In practice, while accessing the first front-end module that indicates one or more action items assigned to the assignee, the assignee may input a request to view an action item in more detail. In one practical example, while accessing the view, the assignee may check if the assignee has been assigned an action item for a budget reconciliation task. For instance, with respect to
At block 504, back-end platform 102 may then receive the assignee's input indicating a selection of the action item from the first front-end module. For instance, the assignee's client station may send the assignee's input to back-end platform 102, which may in turn trigger back-end platform 102 to take one or more actions based on the assignee's input.
In particular, at block 506, back-end platform 102 may cause the assignee's client station to present a modified view of the first front-end module that presents the selected action item to the assignee. In line with the discussion above, the modified view of the first front-end module may include one or more elements (windows, indicators, etc.) that may be different than the elements that were presented in the view of the first module that was initially accessed by the assignee. The modified view may take various forms.
As one particular example to illustrate, the modified view may take the form similar to view 401 shown in
While accessing the modified view of the given front-end module, the assignee may take various steps to complete the action item.
As one possibility, the assignee may select a given action-embedded link that is included in the action item, which may be presented in the modified view. For instance, to create budget modifications for the data entry region corresponding to “Budget Modifications” for “Sanitary Facilities,” the assignee may select the “create budget modifications” action-embedded link from a description box similar to action input region 470. The assignee may take various other steps to complete the action item as well.
At block 508, back-end platform 102 may then receive input indicating the selection of the action-embedded link included in the action item. For instance, the assignee's client station may send an indication of the assignee's selection of the action-embedded link to back-end platform 102, which may in turn trigger back-end platform 102 to take one or more actions.
In particular, in response to the received input indicating the selection of the action-embedded link, at block 510, back-end platform 102 may cause the assignee's client station to present a second front-end software module of the disclosed software application identified by the selected action-embedded link that facilitates completion of the action item and also potentially cause data related to the action item to be pre-populated within the second front-end software module. Depending on the action-embedded link selected by assignee, the second front-end module may take various forms.
As one example to illustrate,
Specifically, window 630 may include various data and/or data entry fields that may be pre-populated or require the assignee to modify or populate to create the required budget modifications for the action item. As one example, window 630 may include data that identifies the selected action-embedded link (e.g., “Create Budget Modifications”), which may be pre-populated based on the assignee's selection of the action-embedded link “create budget modifications.” As another example, window 630 may include data that identifies the specific line item for which the budget modifications are being created (i.e., the data entry corresponding to “Budget Modifications” for “Sanitary Facilities”), which may also be pre-populated based on the assignee's selection of the action-embedded link “create budge modifications.” As yet another example, window 630 may include data that specifies the budget amount (“$0,00”) for the specific line item, which may need to be modified by the assignee as part of creating the budget modifications. Window 630 may include various other data and/or data entry fields that may be pre-populated or require the assignee to modify or populate as well.
As another example to illustrate,
Specifically, windows 720, 730 may include various data and/or data fields that may be pre-populated or require the assignee to modify or populate to create a new change event (e.g., Change Event “#026”) that documents the budget modifications that are to be created by the assignee using module 600. As one example, window 720 may include data that identifies the selected action-embedded link (e.g., the “Change Event #026”), which may be pre-populated based on the assignee's selection of the action-embedded link “@CE #026.” As another example, window 720 may include a “Description” field that may require the assignee to populate to describe the budget modifications that are to be created for the data entry corresponding to “Budget Modifications” for “Sanitary Facilities.” Windows 720, 730 may include various other data and/or data entry fields that may be pre-populated or require the assignee to modify or populate as well.
At block 512, back-end platform 102 may then receive data indicating that the action item has been completed. For instance, after the assignee populates one or more data fields in window 630 of module 600 to create budget modifications for the action item and/or in windows 720, 730 of module 700 to create a new change event to document the budget modifications that were created, the assignee's client station may send an indication that the action item has been completed to back-end platform 102, which may in turn trigger back-end platform 102 to update data defining the action item to indicate that the action item has been completed.
At block 514, back-end platform 102 may then cause one or both of the assignor's client station or the assignee's client station to present an indication that the action item has been completed. For example, back-end platform 102 may update data defining the action item to indicate that the action item has been completed and cause one or both of the assignor's client station or the assignee's client station to present an updated view of the first front-end software module that includes an indication that the action item has been completed. The updated view of the first front-end module may take various forms.
As one representative example to illustrate,
In one particular example, window 830 may take the form of a list that includes one or more action items, including the action item to create budget modifications that was assigned to the assignee, which may be presented in action item entry 840. As shown, action item entry 840 may include an indication that the action item to create budget modifications that was assigned by the assignor (i.e., Jane Doe) has been completed by the assignee (i.e., John Smith) on Jun. 24, 2018. Action item entry 840 may include various other information as well, such as the information used to define the action item for creating budget modifications. Additionally, view 800 may include indicator 850, which may take the form similar to indicator 450 in
Further, depending on the project, task for a given project, and/or action item related to a given task, the updated view may take various other forms as well.
Example embodiments of the disclosed innovations have been described above. Those skilled in the art will understand, however, that changes and modifications may be made to the embodiments described without departing from the true scope and spirit of the present invention, which will be defined by claims.
Further, to the extent that examples described herein involve operations performed or initiated by actors, such as “humans,” “operators,” “users” or other entities, this is for purposes of example and explanation only. Claims should not be construed as requiring action by such actors unless explicitly recited in claim language.
This application is a continuation of U.S. application Ser. No. 16/226,193, filed on Dec. 19, 2018, and titled “Computer System and Method for Creating, Assigning, and Interacting with Action Items Related to a Collaborative Task,” the contents of which are incorporated by reference herein in their entirety.
Number | Date | Country | |
---|---|---|---|
Parent | 16226193 | Dec 2018 | US |
Child | 18399124 | US |