User Requirements

Requirement 7

Type: Functional

Description: In addition to individual event reminders, the Time Tracker application shall notify users of campus events occurring at a time compatible with the user's schedule. The notification shall consist of an event title, description, and its start and finish time. Time Tracker will only notify the user of an event if it fits into their schedule.

Rationale: This feature of the application will allow it to act not only as a tool for organizing users schedules, but also for enriching them. Its purpose is to inform students of events they may otherwise be unaware of.

Criterion: The application will require management by someone knowledgeable on university activity and events. Then, this person will be able to send out information pertaining to these events at a time they have determined suitable. Each individual user's version of the application will either accept the event if the event time fits into the user’s schedule, or reject it if it does not. Accepted events will be delivered to the user in the form of a notification.

Requirement 8

Type: Functional

Description: Aesthetic view customization allows the user to select from an array of various color, font, and picture (similar to emojis) options to decorate their scheduled events. These customization options shall be available in both the application's calendar and graphing windows, accessed through an "edit" mode. This mode will be reached when the user taps a small edit icon in the corner of these windows.

Rationale: This feature exists to improve user experience. Allowing the user to artistically customize the appearance of their schedule enables them to creatively engage with the application as it becomes an organization tool personal to them and their preferences.

Criterion: A variety of colors, fonts, and pictures must be created and stored within the application. When in edit mode, these will become visible for the user to see and choose from.

Requirement 9

Type: Functional

Description: The Time Tracker application shall generate an error message should the user attempt to schedule two events with overlapping time slots. It will provide the user with the option of either picking one of the events to take priority in that time slot, or merging the two events together.

Rationale: The application will be required to aid users in time management. To accomplish this it must be capable of detecting user errors and preventing the overlap of event schedulings.

Criterion: Each time the user wishes to add a new event at a specific time, Time Tracker will check the user’s existing timetable to ensure that that time slot is available for use. If it is not, the application will inform the user with an event conflict message so that it is able to be resolved. The application shall allow for one of the events to take this time slot at the user’s choosing, or, should the nature of the events allow it, for the two to be joined together and scheduled at the same time.