A neutral challenge.

From: Peter Koch Larsen <pkl_at_mailme.dk>
Date: 25 Jun 2003 04:18:34 -0700
Message-ID: <61c84197.0306250318.71c26eca_at_posting.google.com>



Costins challenge was interesting to me, being unfamiliar with oo-dbms systems. I was not sure that it was quite fair, however, it being very much non oo-like.
I grab the opportunity to propose another challenge to a conceptually very simple problem: scheduling of a meeting.

Consider a group of persons who are to have a meeting. This meeting has to take place at a time where no other meeting for the people involved takes place, of course.
Each person has a calender where the available (or if you prefer so, the unavailable time) for that person is noted. As an example, John might have this calender:

Mon:
11-16: available
Tuesday:
 9-11: available
13-16: available

Andrea might have this calender.

Monday:
 9-15: available
Tuesday:
10-12: available
13-16: available

The program should list periods where alle attendees are available. For John and Andrea, the result would be:

Available:
Monday:
11-15
Tuesday:
10-11
13-16

The user should then be able to pick one of the available time-frames and let the system schedule the meeting at that frame.

I believe this challenge is interesting for both camps as this is a realistic problem that often has to be solved in practival life. Also this gives the oo-oriented camp the possibility to have some slight form of object-orientation (the intervals) and it is not a problem, that may be modeled directly via some relational join-operation. After having solved this problem, it would be interesting to extend the solution to involve not only persons but also other kind of resources (e.g. a conference room and a projector). What changes would you hace to but into the original solution (assuming of course that this problem had been anticipated berforehand). I do not propose to solve this problem myself, but it would be interesting to see if others could sketch a solution using their own favorite DBMS. Of course, the solution must be sound with regards to criteria such as time-consumption and safety w.r.t. multiple updates.

Kind regards
Peter Received on Wed Jun 25 2003 - 13:18:34 CEST

Original text of this message