In order to facilitate a fuller understanding of the present invention, reference is now made to the appended drawings. These drawings should not be construed as limiting the present invention, but are intended to be exemplary only.
Team Space Application 42 provides a team space that is a virtual, shared “area” or “workspace” that supports communication, coordination, and collaboration between the Team Members 10. Team Space Application 42 enables the Team Members 10 to store, organize, and retrieve Team Space Tasks 44 and Team Space Artifacts 45, which relate to a team project for which the Team Members 10 are responsible. Team Space Application 42 controls the Tasks 44 and the Artifacts 45 such that accesses to and/or operations on the Tasks 44 and the Artifacts 45 can only be performed by the Team Space Team Members 10. Team Space Artifacts 45 are one example of Team Space resources, and may include any specific type of information, for example, code files, designs, project documentation, presentations, schedules, and/or application programs. Team Space Application 42 further provides interactive, on-line discussions among Team Space Team Members 10, for example through an instant messaging and/or any other specific type of communication application that may be a resource of the Team Space.
The Team Space Tasks 44 are tasks that the Team Space Team Members 10 have planned, are engaged in, and/or have completed, for the purpose of enhancing cross-team awareness and coordination. Team Space Tasks 44 are another example of Team Space resources. Each of the tasks stored in the Team Space Tasks 44 indicates or contains task-related information such as: which of the Team Space Team Members 10 are assigned to the task, the status of the task (e.g. completed, planned, or underway), a priority associated with the task (e.g. high priority or low priority), a description of the task, and which of the Team Space Artifacts 45 are associated with the task.
While Team Space Tasks 44 and Team Space Artifacts 45 are shown for purposes of illustration in
The client computer systems 12, 22, 32, 72 and 82 of
In one embodiment, client software 18 provides the User Interface 16 responsive to information received from the Team Space Application 42, the Importance Profile 17, and the Interruption Management Policies 15. The Importance Profile 17 contains information indicating the importance of various resources, such as Team Space Tasks 44 and/or Team Space Artifacts 45 to User A 14, and/or indications of how importance determinations are to be made. The Importance Profile 17 may store information obtained from User A 14 through the User Interface 16 explicitly indicating which of the Team Space resources are to be considered important to User A 14, and/or how importance determinations are to be made.
In one embodiment, the relative importance of a Team Room resource to User A 14 is determined by the Importance Profile 17 and/or Client Software 18 based on whether that resource is associated with a task to which the user is assigned. Accordingly, in such an embodiment, a resource may be determined to be relatively more important to User A 14 than other resources in the event that the resource is associated with a task to which User A 14 is assigned. Similarly, in such an embodiment, tasks to which User A 14 is assigned are considered to be more important to the user than other tasks. The importance of a given document or other resource to a user may also, or alternatively, be determined based on whether the user authored or modified the resource. For example, those documents that were authored or modified by a user may be determined to be relatively more important to that user than other documents.
In another alternative embodiment, the Importance Profile 17 and/or Client Software 18 automatically determines whether a document is important to User A 14 by monitoring the number of times User A 14 accesses a document. Documents that have been accessed more often than other documents may be considered relatively more important. This approach to importance determination based on frequency of access may further be applied to any specific type of artifact or other resource within a Team Space.
The Interruption Management Policies 15 indicate how task assignments and current task indications of team members attempting to establish communication sessions are used with the task assignments and current task indications of receiving team members to determine whether in certain contexts, or under certain circumstances, communication attempts should be blocked or presented to the receiving team member. The Interruption Management Policies 15 may, for example, specify that a team member (e.g. User A 14) is not to be disturbed when they are currently engaged in a specific activity, e.g. a specific task, except by other users engaged in that same activity. Similarly, the Interruption Management Policies 15 may specify that a team member can be interrupted by a wider range of users, e.g. all team members, when they are engaged in some other activity, e.g. another task.
For example, the Interruption Management Policies 15 may be configured by the User A 14 to block communication session requests received from team members who are not assigned to the same tasks that the User A 14 is, from team members who are not assigned to the task that the User A 14 is currently engaged in, and/or from team members who are not currently engaged in the same task as the User A 14 at the time the communication request is received. The types of communication requests that can be controlled based on the Interruption Management Policies 15 may, for example, include requests for real time chat or instant messaging sessions, and/or any other specific type of communication session from other users or alerts or communication from the system itself.
While the Importance Profile 17 and Interruption Management Policies 15 are shown for purposes of illustration located on the Client Computer System 12, the disclosed system may be alternatively embodied such that the Importance Profile 17 and Interruption Management Policies 15 are stored partly or wholly on the Team Space Computer Server System 40. Moreover, while for purposes of concise and clear illustration only the Importance Profile 17 and Interruption Management Policies 15 for User A 14 are shown in
The client computer systems 12, 22, 32, 72 and 82, and Team Space Server Computer System 40, may each include at least one processor, program storage, such as memory, for storing program code executable on the processor, and one or more input/output devices and/or interfaces, such as data communication and/or peripheral devices and/or interfaces. The client computer systems 12, 22, 32, 72 and 82, and the Team Space Server Computer System 40 may each further include appropriate operating system software. The client computer systems 12, 22, 32, 72 and 82 may further include portions of an integrated development environment (IDE), such as the Eclipse IDE as provided by the Eclipse Foundation.
While for purposes of clear illustration and concise explanation
In one embodiment, the task representations in the tree 104 have associated with them icons indicating the current status of each task. For example, tasks that are completed may be displayed next to a first type of icon, such as a check mark, while tasks that are currently under way may be displayed next to a second type of icon, such as a star, and tasks that are planned for the future may be represented by another icon type, for example a box. Other task statuses may alternatively or additionally be displayed in the tree 104 through the use of additional icon types.
A current task user interface component 105 enables the user to select a current task through, for example, a pull down menu 106. The user may, for example, be permitted to select from any task to which they have been assigned through the pull down menu 106. A hierarchical tree 107 displays information associated with the task that has been selected through the pull down menu 106, including representations of related artifacts for that task. In the example of
A team member's user interface component 109 displays representations 108 of the user's current team space, in this case the members of the Orion team space. The user interface component 109 enables the user to learn a current team space and/or a current task for each of the other members of the currently selected team space. The representations 108 may be pictures or other graphical representations, and are shown including a representation 110 of the current team space member to which is being presented to the user interface 100, and representations 112 of the other members of the team space. The representations 112 of the other team space members enable the user to indicate a team member for which current task information is to be displayed. For example, when the user hovers the cursor over the team space member representation 114, a display component 116 is generated displaying various information regarding the current activities of that team member. As shown in the example of
As shown in
For example, the artifact representation 140, which is displayed in bold typeface and the second color, represents a relatively unimportant artifact that is new and has not yet been viewed by the user. The artifact representation 150, which is displayed in the second color but not in bold, represents an artifact that is relatively unimportant and that has been modified since it was last viewed by the user. The artifact representation 134, which is displayed in the first color, italics, and not bold, represents a relatively important artifact that has been modified since it was last viewed by the user. If the artifact represented by artifact representation 134 were important and newly created but not yet viewed by the user, then it would instead be represented in bold typeface in the first color. If the artifact represented by artifact representation 134 were important but not newly created or modified, then artifact representation 134 would be in displayed not in the first or second color (e.g. in black) and in italics.
The topic 135 is shown having an icon 136 that is also shown in the first predetermined color, in that way visually indicating to the user that the topic contains at least one important artifact that is newly created and not yet viewed by the user, or that has been modified since it was last viewed by the user. Similarly, the icon 138 is also shown in the first predetermined color, thus visually indicating that the team space includes at least one important artifact that is newly created and not yet viewed by the user, or that has been modified since it was last seen by the user. The artifact 140 is a question or topic regarding the artifact 142, and the artifact 142 has an icon 145 that is also represented in the second color, indicating the existence underneath it of the new, relatively unimportant artifact 140. Similarly, the topic 143 has an icon 144 in the second color, indicating that underneath it is the relatively unimportant artifact 140 that has been added. It should also be noted that the icons 145 and/or 144 would also be displayed in the second color in the event that a modified unimportant artifact were under them. The topic 152 also has an icon 154 displayed in the second color, again indicating that it has underneath it the modified, relatively unimportant artifact 150. The icons 144 and 145 also have displayed on them diamond “glyph” decorations, indicating that beneath them is at least one newly added artifact that has not yet been viewed by the user. Other specific visual decorations or modifications to specific icons may be used for indicating the presence of a newly added by not yet viewed artifact in alternative embodiments.
In the embodiment of
While in the example of
Additionally, while the example of
At step 162, the disclosed system enables the team member to indicate one of the tasks associated with the team space that they are currently engaged in, such as through the current task user interface component 105 shown in
The disclosed system displays graphical representations of each other team member in a user interface at step 166, such as the representations 112 of the other team space members shown in
The disclosed system operates at step 170 to display task information, such as status, priority, team members assigned to a task, and/or which artifacts are associated with a task. For example, such information may be provided in a hover over display window such as the hover over display components 116 of
In another embodiment, as shown in the user interface component 105 of
At step 172, requests for communication sessions between team members may be controlled based on task assignments and current task indications. For example, the disclosed system may operate to prevent communication session requests from being forwarded to and/or displayed to a receiving team member unless the team member requesting the communication session is currently engaged in a task to which the receiving team member is assigned. Similarly, the disclosed system may operate to prevent communication session requests from being forwarded to and/or displayed to a receiving team member unless the team member is currently engaged in the same task that the receiving team member is engaged in. Task importance may further be used to control which communication session requests are forwarded to a receiving team member. For example, the disclosed system may operate to prevent communication session requests from being forwarded to and/or displayed to a receiving team member unless the team member requesting the communication session is currently working on a task that the receiving team member has indicated is an important task.
At step 174, the disclosed system enables each team member to establish interruption management policies, such as the Interruption Management Policies 15 of
At step 176, the disclosed system operates to determine which Team Space resources are important to a team member, and to display graphical representations of the important resources such that changes to important resources, and/or new resources, are displayed in a visually distinct manner from changes to and/or newly created less important resources. An example of how such visually distinct representations may be presented is shown in
The figures include block diagram and flowchart illustrations of methods, apparatus(s) and computer program products according to an embodiment of the invention. It will be understood that each block in such figures, and combinations of these blocks, can be implemented by computer program instructions. These computer program instructions may be loaded onto a computer or other programmable data processing apparatus to produce a machine, such that the instructions which execute on the computer or other programmable data processing apparatus create means for implementing the functions specified in the block or blocks. These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the block or blocks. The computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the block or blocks.
Those skilled in the art should readily appreciate that programs defining the functions of the present invention can be delivered to a computer in many forms; including, but not limited to: (a) information permanently stored on non-writable storage media (e.g. read only memory devices within a computer such as ROM or CD-ROM disks readable by a computer I/O attachment); (b) information alterably stored on writable storage media (e.g. floppy disks and hard drives); or (c) information conveyed to a computer through communication media for example using wireless, baseband signaling or broadband signaling techniques, including carrier wave signaling techniques, such as over computer or telephone networks via a modem.
While the invention is described through the above exemplary embodiments, it will be understood by those of ordinary skill in the art that modification to and variation of the illustrated embodiments may be made without departing from the inventive concepts herein disclosed. Moreover, while the preferred embodiments are described in connection with various illustrative graphical user interface constructs, one skilled in the art will recognize that they may be embodied using a variety of other alternative graphical user interfaces.