SDSU CS 580 Client-Server Programming
Fall Semester, 2002
Room Reservation
    Assignment Index        
© 2002, All Rights Reserved, SDSU & Roger Whitney
San Diego State University -- This page last updated 17-Oct-02

Assignment 3 – Protocol Definition For Room Reservation

Due Oct 31, 2002

Department Room Reservation

The department has a number of rooms that faculty can use for special purposes. There are three computer labs and two conference rooms. Currently the scheduling is done by hand. The department would like to automate the process. Over a number of assignments we will build a system for room reservation. As the department is moving into a different building the number of rooms of each type may change. The actual location of the rooms will change. Two of the computer rooms contain PCs the other contains Macintosh computers. All three computer rooms contain a computer-projector system so an instructor can project a computer screen on a wall. One PC room, BA-120, contains 20 PCs. The other PC room, BA-121, contains 40 PCs. The Macintosh computer room, BA-119, contains 30 Macintosh computers. One conference room, BA 207, holds 10 people. The other conference room, BA-339, holds 15 people.

Students can view the schedule of a room.

Instructors can view schedules and reserve rooms. An instructor can also change a reservation that they made earlier. They can cancel a reservation or change the time of a reservation. An instructor cannot change a reservation they did not make. A room cannot have two or more reservations at the same time. A reservation can be for one time only, or for given time each week for the rest of the semester. When making a reservation an instructor can specifies the room, date, start time, end time, number of students and whether the reservation is either one time or repeating. When scheduling a room the smallest room that meets the needs should be used. If an instructor requests a large room, but their request can fit into a smaller room, they are to be given the smaller room. Reservations are in 1/2-hour blocks. That is one can reserve a room for 1/2 hour, one hour, 1 1/2 hours, 2 hours, etc. A reservation starts on the hour or half hour.

The administrator can perform the same actions as an instructor plus the following. The administrator indicates the hours a room is available. A room is available at the same time for a given day of the week each week of the semester. So if a room is available from 10:00-22:00 on Mondays, it is available at that time each Monday of the semester. The administrator can change or cancel any reservation. When this is done, the instructor is to be notified by email. The administrator can block out time in a room, making it unavailable for use at that time.


In this assignment you are design a protocol for a client-server system to meet the above requirements.

You can work in teams of two people. Larger teams are not allowed. Working in teams means both people work together. If you work in teams both people need to email me separately of the team. When you turn in you assignment turn in one copy with both names on it.

What to Turn in

A written description of the your protocol. Please note that while you will be implementing a client-server system based on this protocol you may end up implementing someone else’ protocol.

Late Policy

See the course syllabus for the late policy.


Copyright ©, All rights reserved.
2002 SDSU & Roger Whitney, 5500 Campanile Drive, San Diego, CA 92182-7700 USA.
OpenContent license defines the copyright on this document.

    visitors since 17-Oct-02