System and Method for Minimizing Redundant Meetings

US 2009 210 351A1

drawing #0

Show all 6 drawings

A system and method for minimizing redundant events/meetings is provided. With the system and method, when a meeting request is made, a search of meetings currently in place for the participants involved in the meeting is performed to find potential matches and patterns between them. If a potential match is found, a notification is sent to request that participants join in on a matching currently existing meeting. If that request is declined, a meeting time close to the found meeting is recommended so that preparation time is minimized for these meetings as the preparation has already been completed for the previous meeting. Not only will this maximize the amount of work time people have, it will increase the size of the community that is present within meetings. This will allow for larger collaboration between different, potentially unrelated, parties interested in the meeting topic.

PatentSwarm provides a collaborative workspace to search, highlight, annotate, and monitor patent data.

Start free trial Sign in

Tip: Select text to highlight, annotate, search, or share the selection.

Claims

1. A method, in a data processing system, for consolidating events having similar content in an electronic calendar, comprising:
receiving a request to schedule a new event in the electronic calendar, wherein the request specifies characteristics of the new event, the characteristics being representative of content of the new event;
performing a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events;
in response to identifying at least one similar existing event, negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar; and
storing the consolidated event in the electronic calendar in place of at least one of the new event and the at least one similar existing event.

Show 9 dependent claims

11. A computer program product comprising a computer useable medium having a computer readable program, wherein the computer readable program, when executed on a computing device, causes the computing device to:
receive a request to schedule a new event in the electronic calendar, wherein the request specifies characteristics of the new event, the characteristics being representative of content of the new event;
perform a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events;
in response to identifying at least one similar existing event, negotiate consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar; and
store the consolidated event in the electronic calendar in place of at least one of the new event and the at least one similar existing event.

Show 8 dependent claims

20. A system, comprising:
a processor; and
a memory coupled to the processor, wherein the memory comprises instructions which, when executed by the processor, cause the processor to:
receive a request to schedule a new event in the electronic calendar, wherein the request specifies characteristics of the new event, the characteristics being representative of content of the new event;
perform a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events;
in response to identifying at least one similar existing event, negotiate consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar; and
store the consolidated event in the electronic calendar in place of at least one of the new event and the at least one similar existing event.

Description

BACKGROUND

1. Technical Field

The present application relates generally to an improved data processing system and method. More specifically, the present application is directed to a system and method for minimizing redundant meetings.

2. Description of Related Art

Many different types of software have been developed for organizing individual's electronic communications, calendars of events, and other personal information. By far the most prominently used of this software is Lotus Notes, available from International Business Machines (IBM) Corporation of Armonk, N.Y., and Outlook, available from Microsoft Corporation. IBM's Lotus Notes is a software suite that provides an integrated personal information management desktop client for accessing electronic mail (email), electronic calendars, and applications on an IBM Lotus Domino server. The Lotus Notes client is mainly used as an email client but also acts as an instant messaging client (for Lotus Sametime), an Internet browser application, a notebook application, and a calendar/resource reservation application client. The Lotus Notes client may also be used as a platform for interacting with collaborative applications.

The Lotus Notes client can be used as an IMAP and POP email client with non-Lotus Domino email servers. Recipient addresses can be retrieved from any Lightweight Directory Access Protocol (LDAP) server. The Lotus Notes client also does web browsing although most people configure it to launch their default browser instead.

Features of Lotus Notes include group calendaring and scheduling, SMTP-based email (HTML based email is available to Java developers), NNTP-based news support, and automatic HTML conversion of all documents by the Domino HTTP task. Lotus Notes instant messaging (Lotus Sametime) allows one to see coworkers online and have chat sessions with them. A chat session can be with one person or multiple people (an instant meeting). A design client is available to allow rapid development of databases consisting of forms, which allow users to create documents; and views, which display selected document fields in columns.

Microsoft Outlook is a personal information manager from Microsoft, and is part of the Microsoft Office suite. Similar to IBM's Lotus Notes, Microsoft Outlook allows users to access and organize electronic mail communications, calendars, tasks, and the like. Via Microsoft Outlook, as with IBM Lotus Notes, individuals may be invited to calendar events, such as meetings, using an electronic mail messaging functionality and have their calendars synchronized with regard to these calendar events. In addition, a user may add calendar events for only that user. These calendar events may be provided to a user via a graphical user interface of one or more levels of granularity. Functionality is provided for detecting conflicts in calendar events when establishing one of the calendar events and notifying a user of the conflicts in calendar events.

Many different types of improvements have been made to electronic personal calendar applications and functionalities, such as those provided by IBM and Microsoft. For example, U.S. Pat. No. 5,050,077 discloses a method of scheduling a meeting among terminal users who are provided with calendaring applications for storing and retrieving times and dated events. A prompting screen is presented to a meeting scheduler with blanks for keying in desired times, dates, and prospective attendees for a meeting. In response to the scheduler keying to this screen, a comparison is made with the calendar of events for each prospective attendee. As a result of the nonavailability of a meeting time which complies with the desired times, dates, and attendees, certain of these factors are automatically altered or relaxed in order to achieve an acceptable meeting time. An option list of meeting times is then presented to the scheduler for selection of a meeting time. Based upon the selection of the scheduler, a meeting notification screen is then constructed for transmittal to each attendee.

U.S. Pat. No. 5,093,901 discloses a method of exchanging entries on calendars being maintained by a first and a second calendar user. An event is automatically scheduled on a second calendar if a classification which is associated with the event is higher than any previous scheduled event for the same time slot. A reply is prepared and transmitted to the first calendar user which requested the scheduling of the event regarding the status of the second user in regards to the scheduled event. Subsequently, if the status of the second user changes in regards to the event, a subsequent reply is prepared and transmitted to the first user setting forth the changed status.

U.S. Pat. No. 5,774,867 discloses a method and apparatus for camping on an electronic calendar. In one embodiment the method and apparatus determine, in response to an input of a date, a time, and a duration of a proposed meeting between meeting requester and a target, that a conflicting event appears on the target's electronic calendar. The method and apparatus monitor the target's electronic calendar to detect the removal of the conflicting event and schedules a meeting between the requester and the target on their electronic calendars in response to the detection of the removal of the conflicting event.

U.S. Pat. No. 5,890,134 discloses a schedule optimizing algorithm scheduling quality, reducing a schedule cycle time and requiring only marginal increase in computer execution time. Lower quality computerized scheduling programs are substantially improved through the additional steps of sequential left time shifting and right time shifting of respective chronologically sorted completion time and starting time task listings.

U.S. Pat. No. 5,963,913 discloses a system and method for scheduling an event subject to the availability of requested participants. A server application receives event information submitted by a scheduler using a client application to access an event definition page. The event information provides one or more options for scheduling an event and lists a plurality of requested participants. Responsive to receiving the event information, the server application creates an event reply page and an event confirmation page. The server application then creates and sends an electronic mail message to each requested participant to provide information about the one or more options and a link to the event reply page. The server application also creates and sends a message to the scheduler to provide a link to the event confirmation page. The server application then receives reply information submitted by the requested participants using client applications to access the event reply page. The server application processes this reply information together with the original event information to generate one or more potential schedules and then updates the event confirmation page based upon the potential schedules. The server application receives an event confirmation submitted by the scheduler using a client application to access the event confirmation page and then creates and sends a message to each available participant to provide the schedule for the event.

U.S. Pat. No. 6,101,480 discloses a system for scheduling time intervals for a plurality of users on a network comprised database system that stores a profile for each potential invitee of the system at one or more servers. The invitee profiles comprises user profiles wherein each user profile has information regarding available and unavailable times for that user. The system further comprises request generators located remotely from the server and connected over a network that generates a request for allocation of a time interval for one or more of the plurality of invitees. A busy time determination device gathers the profiles for the one or more requested invitees that are available in the database and determining whether those invitees are available during the time interval requested by the request generating means. If not all invitees are available, a best fit determination system determines a next best time interval.

Most recently, IBM has developed an improvement upon calendar applications in which automated meeting insertion and rescheduling for busy calendars is provided. This improvement is described in commonly owned U.S. Pat. No. 7,283,970. As described therein, an electronic calendar meeting scheduler stores meeting automation properties defined for each scheduled meeting. The electronic calendar meeting scheduling program identifies a solution time block for automated meeting insertion and rescheduling utilizing stored meeting automation properties. An electronic calendar meeting scheduling program utilizes stored meeting automation properties to change each conflicting scheduled meeting for the identified solution time block for the automated meeting insertion and rescheduling.

The electronic calendar meeting scheduling program stores meeting attendee automation properties defined for each attendee of each scheduled meeting. The electronic calendar meeting scheduling program utilizes the stored meeting automation properties to calculate a conflict score and action list for each potential time block for automated meeting insertion and rescheduling. The stored meeting attendee automation properties also can be used with the stored meeting automation properties to calculate the conflict score and action list for each potential time block for automated meeting insertion and rescheduling. The action list includes an entry for each conflicting meeting for automated meeting insertion and rescheduling. The electronic calendar meeting scheduling program utilizes the calculated conflict score and action list of the potential time blocks to identify a solution time block for automated meeting insertion and rescheduling.

The meeting automation properties defined for each scheduled meeting include a move premium value for moving the meeting, a shorten premium value for shortening the meeting and a leave premium value for allowing attendees to leave the meeting early. Both the meeting automation properties and the meeting attendee automation properties include multiple approval options for moving the meeting, for shortening the meeting and for allowing attendees to leave the meeting early. The meeting attendee automation properties include an attendee role for each attendee of each the scheduled meeting, such as owner, presenter, observer and collaborator. The meeting attendee automation properties include attendee commitment option for attending, and attendee selected notification options. The calculated conflict score and action list for each potential time block for rescheduling a meeting are based upon multiple factors including a move score, a leave early score, and a shorten meeting score.

SUMMARY

A reoccurring problem in the workplace is the scheduling of redundant events, such as redundant meetings of individuals within the workplace with other individuals either within or outside the workplace. Many times, especially with developers of products, multiple people want to see the same demonstration or presentation within a very short amount of time. This reduces the amount of time people have to do the work they need to do, as they are either preparing again for the same meeting they gave previously, or are spending their time giving that meeting again. Standard electronic calendar and event/meeting creation systems do not provide any functionality for addressing this problem.

For example, while there are a number of innovations in the area of electronic calendars and event scheduling, none of these innovations actually look to the content of the events when determining how to schedule them using the electronic calendar. That is, the known mechanisms typically only look to see if times of events conflict without taking into account the actual content of the events when determining an optimum time for scheduling a new meeting. Moreover, the known mechanisms fail to integrated two or more separate events into a single event based on the content of the events.

The illustrative embodiments provide a system and method for minimizing redundant meetings. The system and method of the illustrative embodiments may be used on conjunction with a calendar functionality of a personal information management application, such as IBM Lotus Notes or Microsoft Outlook, for example. With the system and method of the illustrative embodiments, when a meeting request is made, a search on the meetings currently in place for the main parties involved in the meeting is performed to find potential matches and patterns between the existing meetings and a new meeting to be scheduled. If a potential match is found, a notification is sent to request that person or party to join in on a currently existing meeting. If that request is declined, a meeting time very close to the found meeting is recommended so that preparation time is minimized for these meetings as the preparation has already been completed for the other meeting. Not only will consolidating meetings or scheduling a new meeting very close to the found meeting maximize the amount of work time people have, it will increase the size of the community that is present within meetings. Such consolidation and/or close proximity scheduling will allow for larger collaboration between different, potentially unrelated, parties interested in the meeting topic.

With the mechanisms of the illustrative embodiments, an electronic calendar and meeting creation system is provided in which fields are provided for specifying subject, meeting time, duration, invitee addresses, location information, category type, and the like. In addition to these fields, one or more fields are present for providing a meeting description. Moreover, a functionality is provided for allowing the creator and/or invitees the ability to add tags to the meeting data structure and edit the meeting description.

When creating a meeting, a user may enter a subject, description, invitee addresses, a desired time and duration, and an initial set of categories and/or tags. When the meeting is submitted, a search will be done on the meetings of the invitee's electronic calendars, such as via a centralized server or a distributed mechanism. If the initial tags and/or keywords of the description match the tags/description of one or more already established meetings on the invitees' calendars within a predetermined threshold, a notification may be sent to the meeting creator with the description and/or tags of the found meeting, giving them the option to either request to be added to the currently existing meeting or to change their time to be as close as possible to that meeting. If, for instance, some of the invitees of the meeting have conflicts with the currently existing meeting, the meeting system may find a time that every invitee has that is as close as possible to the currently existing meeting by interfacing with the various calendars of the invitees' computing devices to determine an optimum time for consolidating the new meeting with the currently existing meeting.

In one illustrative embodiment, a method for consolidating events having similar content in an electronic calendar is provided. The method may comprise receiving a request to schedule a new event in the electronic calendar, wherein the request specifies characteristics of the new event, the characteristics being representative of content of the new event and performing a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events. The method may further comprise, in response to identifying at least one similar existing event, negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar. The consolidated event may be stored in the electronic calendar in place of at least one of the new event and the at least one similar existing event.

The new event may be a meeting having as participants an originator of the new event and at least one invitee. Performing a search of event characteristics to identify existing events may be performed on electronic calendars on at least one computing device associated with each participant of the new event. Performing a search of event characteristics to identify existing events comprises at least one of sending a request, to computing devices associated with each participant in the new event from a computing device associated with the originator of the new event request, that each of the computing devices associated with each participant perform a search of event characteristics for existing events in a local electronic calendar data structure, or sending a request to a central server computing device requesting a search, of event characteristics for existing events, in participant calendar data structures maintained by the server computing device.

Performing a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events may comprise identifying a first candidate set of existing events having a category characteristic matching a category characteristic of the new event. A second candidate set of existing events may be identified from the first candidate set, the second candidate set of existing events having one or more tag characteristics matching one or more tag characteristics of the new event. Moreover, performing a search of event characteristics to identify existing events in the electronic calendar based on the characteristics of the new event and the characteristics of the existing events may further comprise calculating a score for each of the existing events in the second candidate set of existing events based on a degree of matching for the one or more tag characteristics of the existing events to the one or more tag characteristics of the new event.

A highest scoring existing event may be identified as an existing event in the second candidate set having a highest score. Negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar may be performed with regard to the identified highest scoring existing event.

Negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar may comprise providing an output to a user via a user interface, the output identifying the at least one similar existing event and providing an output to the user via the user interface identifying one or more selectable options for selecting a process for performing the negotiation of consolidation of the new event with the at least one similar existing event. A user selection of an option in the one or more selectable options may be received and the negotiation of the consolidation of the new event may be performed with the at least one similar existing event in accordance with the user selected option.

Negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar may comprise sending a request to an originator of the at least one similar existing event requesting that participants in the new event be added as participants in the at least one similar existing event and receiving a response from the originator of the at least one similar existing event. The characteristics of the new event may be updated to correspond with the characteristics of the at least one similar existing event if the originator of the at least one similar existing event accepts addition of the participants of the new event as participants in the at least one similar existing event. Negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar may further comprise scheduling the new event in response to the originator of the at least one similar existing event refusing addition of the participants of the new event as participants of the at least one similar event. Scheduling the new event may further comprise determining a time and duration for the new event that is as close to the at least one similar existing event as possible given electronic calendar entries of the electronic calendars of the participants in the new event.

Negotiating consolidation of the new event with the at least one similar existing event into a single consolidated event in the electronic calendar may further comprise sending one or more requests to computing devices associated with one or more participants of the at least one similar existing event requesting a change in characteristics of the at least one similar existing event based on characteristics of the new event. Characteristics of at least one of the new event and the at least one similar existing event may be updated based on responses received from computing devices associated with the one or more participants.

In other illustrative embodiments, a computer program product comprising a computer useable or readable medium having a computer readable program is provided. The computer readable program, when executed on a computing device, causes the computing device to perform various ones, and combinations of, the operations outlined above with regard to the method illustrative embodiment.

In yet another illustrative embodiment, a system/apparatus is provided. The system/apparatus may comprise one or more processors and a memory coupled to the one or more processors. The memory may comprise instructions which, when executed by the one or more processors, cause the one or more processors to perform various ones, and combinations of, the operations outlined above with regard to the method illustrative embodiment.

These and other features and advantages of the present invention will be described in, or will become apparent to those of ordinary skill in the art in view of, the following detailed description of the exemplary embodiments of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

The invention, as well as a preferred mode of use and further objectives and advantages thereof, will best be understood by reference to the following detailed description of illustrative embodiments when read in conjunction with the accompanying drawings, wherein:

FIG. 1 is an exemplary representation of an exemplary distributed data processing system in which aspects of the illustrative embodiments may be implemented;

FIG. 2 is a block diagram of an exemplary data processing system in which aspects of the illustrative embodiments may be implemented;

FIG. 3 is an exemplary block diagram of an electronic calendar and event scheduling system in accordance with one illustrative embodiment;

FIG. 4 is an exemplary diagram of a user interface for generating a new meeting event in accordance with one illustrative embodiment;

FIG. 5 is an exemplary diagram of a user interface for specifying the options for a user to minimize redundant meetings in accordance with one illustrative embodiment; and

FIG. 6 is a flowchart outlining an exemplary operation for scheduling an event in accordance with one illustrative embodiment.

DETAILED DESCRIPTION OF THE ILLUSTRATIVE EMBODIMENTS

The illustrative embodiments provide a system and method for minimizing the scheduling of redundant meetings. As such, the illustrative embodiments are especially well suited for implementation in a distributed data processing environment in which multiple client computing devices communicate with one or more server computing devices via one or more data networks. In order to provide a context for the following description of the specific elements of the illustrative embodiments, FIGS. 1-2 are provided hereafter as exemplary diagrams of data processing environments in which illustrative embodiments of the present invention may be implemented. It should be appreciated that FIGS. 1-2 are only exemplary and are not intended to assert or imply any limitation with regard to the environments in which aspects or embodiments of the present invention may be implemented. Many modifications to the depicted environments may be made without departing from the spirit and scope of the present invention.

With reference now to the figures, FIG. 1 depicts a pictorial representation of an exemplary distributed data processing system in which aspects of the illustrative embodiments may be implemented. Distributed data processing system 100 may include a network of computers in which aspects of the illustrative embodiments may be implemented. The distributed data processing system 100 contains at least one network 102, which is the medium used to provide communication links between various devices and computers connected together within distributed data processing system 100. The network 102 may include connections, such as wire, wireless communication links, or fiber optic cables.

In the depicted example, server 104 and server 106 are connected to network 102 along with storage unit 108. In addition, clients 110, 112, and 114 are also connected to network 102. These clients 110, 112, and 114 may be, for example, personal computers, network computers, or the like. In the depicted example, server 104 provides data, such as boot files, operating system images, and applications to the clients 110, 112, and 114. Clients 110, 112, and 114 are clients to server 104 in the depicted example. Distributed data processing system 100 may include additional servers, clients, and other devices not shown.

In the depicted example, distributed data processing system 100 is the Internet with network 102 representing a worldwide collection of networks and gateways that use the Transmission Control Protocol/Internet Protocol (TCP/IP) suite of protocols to communicate with one another. At the heart of the Internet is a backbone of high-speed data communication lines between major nodes or host computers, consisting of thousands of commercial, governmental, educational and other computer systems that route data and messages. Of course, the distributed data processing system 100 may also be implemented to include a number of different types of networks, such as for example, an intranet, a local area network (LAN), a wide area network (WAN), or the like. As stated above, FIG. 1 is intended as an example, not as an architectural limitation for different embodiments of the present invention, and therefore, the particular elements shown in FIG. 1 should not be considered limiting with regard to the environments in which the illustrative embodiments of the present invention may be implemented.

With reference now to FIG. 2, a block diagram of an exemplary data processing system is shown in which aspects of the illustrative embodiments may be implemented. Data processing system 200 is an example of a computer, such as hosts 110 in FIG. 1, in which computer usable code or instructions implementing the processes for illustrative embodiments of the present invention may be located.

In the depicted example, data processing system 200 employs a hub architecture including north bridge and memory controller hub (NB/MCH) 202 and south bridge and input/output (I/O) controller hub (SB/ICH) 204. Processing unit 206, main memory 208, and graphics processor 210 are connected to NB/MCH 202. Graphics processor 210 may be connected to NB/MCH 202 through an accelerated graphics port (AGP).

PatentSwarm provides a collaborative workspace to search, highlight, annotate, and monitor patent data.

Start free trial Sign in