EECS 570 Course Project

Implement a group calendar system using OO method. Members of the group: Pranav Gambhire, Vijai S Mariaraj, Naresh Pamnani, Fuhu Liu, Ding He.


Problem Description

The goal is design a calendar system for a group of people. The calendar system keeps an appointment book for each of person in the group. Typical events might be meetings (involving people inside and outside the group), doctor's appointments, car mechanic visits, and so on. In general events are either individual events, which involve only one person from the group (e.g. a doctor's appointment), or common events, which involve many(but not necessarily all) people in the group. Some events may be movable (e.g., meeting involving only group members). Each event is described in an appointment book by a suitable piece text. In addition, each event has a start time, attendance list, and expected duration.


Progress

1. meeting on Oct. 18, 1999.

This system will use Client-Server architecture. A database will be put at the server. Implementation language will be JAVA. JDBC will be used to access the database. Netbeans software will be used to develop the program and user interface.

 

2. Use cases analysis (Oct. 27)

Fuhu and Eric discussed about the use cases and summarized here.

Use Case 1: Create the group

The first person who use the calendar have to create the group and he himself becomes the leader. He needs to input his own information and group information here.
(1) Input his own information: Name, Email, Username and Password
(2) Group information: Working time period, miniuml time slot

Use Case 2: Add User

The only person who can add user in this group is the leader. He needs to input the information of the new user here: Name, Email, Username, Password.

Use Case 3: Configure

The leader can modify the working period and minimum time slot. Also he can add a new user and delete a user.
1. modify the working period and minimum time slot.
2. Add a user: call add user use case.
3. Delete a user from the group.

Use case 4: New an event

When user try to new an event, first the user needs to specify whether the event is movable. Then the system will ask the user about the event name; earliest acceptable start time, latest acceptable end time, (if the event is movable) or the fixed time(if the event is fixed); description of the event; duration of the event; type of the event(personal or group). Then the system will try to schedule a time slot for this event(If not movable, then try to allocate the certain time for it). If the system can not schedule the event successfully, it will try to move the movable events and try to allocate a time for this event. If fail again, the system will return a warning message and fail the "New event" operation.

Use Case 5: Modify an event

This operation is similar to "New event" except that the event already exists.

Use Case 6: Cancel an event

Only the creator of the event and the group leader can cancel an event. The system will delete all the records of the event.

Part Class Disgram

 

Sequence Diagram for "Add a personal event"

 

Collabration Disgram for "Add a personal event"

 

Sequence Diagram for "Add a group event"

 

Collabration Disgram for "Add a group event"