1. A system for scheduling time intervals for a plurality of users comprising: database means associated with one or more servers for storing a profile for each potential invitee of the system, the invitee profiles comprising user profiles wherein each user profile comprises information regarding available and unavailable times for that user; request generating means, remote from the database means and connected over a network to the one or more servers, for generating a request for allocation of a time interval for one or more of the plurality of invitees; busy time determination means for gathering the profiles for the one or more requested invitees that are available in the databases and determining whether those invitees are available during the time interval requested by the request generating means; and best fit determining means for determining a next best time interval using a weighting function if all of the invitees are not available at the requested time.