Requirements Specification for an Electronic Calendar Tool

Requirements
for an Electronic Calendar Tool
Version 1.0
march 2015




Contents
Level:  1   2   3   4   full 

1.  Introduction
     1.1. Problem Statement
     1.2. System Personnel
     1.3. Operational Setting
     1.4. Impacts
     1.5. Related Systems
         1.5.1. Microsoft Outlook
         1.5.2. Apple iCal
         1.5.3. Netscape Calendar
         1.5.4. Now Software Now-Up-to-Date
         1.5.5. Claris Organizer
         1.5.6. Feature Comparison Matrix

2.  Functional Requirements
     2.1. User Interface Overview
         2.1.1. Regular User Interface
         2.1.2. Administrative User Interface
         2.1.3. General Features of the User Interface
         2.1.4. Screen Map
     2.2. Basic Appointment Scheduling
     2.3. Viewing Calendars
         2.3.1. Viewing the Calendar at Different Levels
             2.3.1.1. Day View
             2.3.1.2. Week Views
             2.3.1.3. Month View
             2.3.1.4. Year View
             2.3.1.5. Scheduled Item View
         2.3.2. Viewing Previous, Next, and Specific Calendar Dates
             2.3.2.1. Next and Previous
             2.3.2.2. Today
             2.3.2.3. Goto Date
             2.3.2.4. Upper and Lower Date Bounds
         2.3.3. Viewing Lists of Scheduled Items
             2.3.3.1. Appointment Lists
             2.3.3.2. Meeting Lists
             2.3.3.3. Task Lists
             2.3.3.4. Event Lists
             2.3.3.5. All Items Lists
             2.3.3.6. Custom Lists
         2.3.4. Filtered Viewing
             2.3.4.1. Custom Filter Definition
                 2.3.4.1.1. Title
                 2.3.4.1.2. Earliest and Latest Date
                 2.3.4.1.3. Earliest and Latest Time
                 2.3.4.1.4. Duration
                 2.3.4.1.5. Recurring?
                 2.3.4.1.6. Category
                 2.3.4.1.7. Location
                 2.3.4.1.8. Security
                 2.3.4.1.9. Priority
                 2.3.4.1.10. Task Priority
                 2.3.4.1.11. Completed? and Completion Dates
                 2.3.4.1.12. Remind?
                 2.3.4.1.13. Details
                 2.3.4.1.14. Attendees
                 2.3.4.1.15. Meeting State
             2.3.4.2. Using Custom Filters
             2.3.4.3. Details of Filter Application
         2.3.5. Viewing Other Users and Group Calendars
             2.3.5.1. Viewing Other User`s Calendars
             2.3.5.2. Viewing Group Calendars
         2.3.6. Viewing Multiple Windows and Multiple Calendars
             2.3.6.1. Closing Windows
             2.3.6.2. Windowing Mode
                 2.3.6.2.1. Per-Level Windowing Mode
                 2.3.6.2.2. Two-Window Mode
                 2.3.6.2.3. Multi-Window Mode
                 2.3.6.2.4. Windowing Mode Calendar Specificity
             2.3.6.3. Magnetizing Windows
             2.3.6.4. The Calendars List
             2.3.6.5. Window Banner Syntax
     2.4. More Scheduling
         2.4.1. Scheduling Meetings
             2.4.1.1. A Group Leader Scheduling Two Straightforward Meetings
             2.4.1.2. A Group Leader Encountering Difficulties While Scheduling
             2.4.1.3. A Super-Group Leader Scheduling a Meeting
             2.4.1.4. A Non-Leader Scheduling a Meeting for Selected Individuals
             2.4.1.5. Receiving and Accepting Meeting Notifications
             2.4.1.6. Further Operational Details of Meeting Scheduling
                 2.4.1.6.1. The Contents of Group Calendars
                 2.4.1.6.2. Scheduling Over Private Items
                 2.4.1.6.3. The Status of Not-Yet-Accepted Meetings
                 2.4.1.6.4. Creation of New Categories
                 2.4.1.6.5. The Role of the Location Database
                 2.4.1.6.6. Non-Unique Scheduled Meetings
                 2.4.1.6.7. Notifications for Multiple Calendars from Multiple Central Hosts
                 2.4.1.6.8. Pending Meeting Notifications
                 2.4.1.6.9. Concurrent Scheduling
         2.4.2. Scheduling Tasks
         2.4.3. Scheduling Events
     2.5. Finer Points of Viewing and Scheduling
         2.5.1. Item-Level Viewing
             2.5.1.1. Viewing Appointment Items
             2.5.1.2. Viewing Meeting Items
             2.5.1.3. Viewing Task Items
             2.5.1.4. Viewing Event Items
             2.5.1.5. Item-Level Viewing in Other Users' Calendars
         2.5.2. Changing and Deleting Scheduled Items
             2.5.2.1. Changing and Deleting Appointments
             2.5.2.2. Changing and Deleting Meetings
                 2.5.2.2.1. Scheduler Changing Meetings
                 2.5.2.2.2. Scheduler Deleting a Meeting
                 2.5.2.2.3. Meeting Change and Delete Notifications
                 2.5.2.2.4. Group Calendar Changes
                 2.5.2.2.5. Non-Scheduler Changing and Deleting Meetings
                 2.5.2.2.6. Offline Scheduler Change and Delete
                 2.5.2.2.7. Offline Non-Scheduler Changes
                 2.5.2.2.8. Conflicting Scheduler and Non-Scheduler Changes
                 2.5.2.2.9. Pending Change/Delete Notifications
             2.5.2.3. Changing and Deleting Tasks
             2.5.2.4. Changing and Deleting Events
         2.5.3. Details of Scheduling Recurring Items
             2.5.3.1. Weekly/Biweekly Intervals
             2.5.3.2. Monthly Intervals
             2.5.3.3. Yearly Intervals
             2.5.3.4. Recurring Meeting Requests
             2.5.3.5. Recurring Items and Instances
         2.5.4. Receiving Reminders
         2.5.5. Editing Categories
         2.5.6. Dynamic View Updating
     2.6. Administrative Functions
         2.6.1. Gaining Administrative Access
         2.6.2. User Database
         2.6.3. Group Database
         2.6.4. Location Database
         2.6.5. Other Privileged Admin Commands
             2.6.5.1. Administrative Control of the Central Host Server
             2.6.5.2. Setting the Administrator Password
             2.6.5.3. Setting the Administrator Email Address
             2.6.5.4. Notifying Users
             2.6.5.5. Setting Calendar Size Limits
         2.6.6. Regular User Access to Admin Commands
             2.6.6.1. Central Host Connections
             2.6.6.2. Defining the Current Host to Which Admin Commands Apply
             2.6.6.3. Regular User Access to the Admin Databases
             2.6.6.4. Changing the User Password on a Central Host
             2.6.6.5. Contacting an Administrator
         2.6.7. Limitations on Administrator Privileges
     2.7. Options
         2.7.1. Times and Dates
         2.7.2. Fonts
         2.7.3. Scheduling Options
             2.7.3.1. Scheduling Defaults Options
             2.7.3.2. Scheduling Overlaps Options
             2.7.3.3. Scheduling Meetings Options
             2.7.3.4. Scheduling Reminders Options
         2.7.4. Viewing Options
             2.7.4.1. Viewing Lists Options
             2.7.4.2. Viewing Windows Options
             2.7.4.3. Viewing Miscellaneous Options
         2.7.5. Administrative Options, for the Regular User
         2.7.6. Global Session-Wide Options
         2.7.7. Options in the Calendar Tool Administration Program
         2.7.8. Restoring Built-In Default Settings
         2.7.9. Operating Environment Conventions
     2.8. Details of File Commands
         2.8.1. Files Used by the Calendar Tool
         2.8.2. New and Open
         2.8.3. Close and Close All
         2.8.4. Save, Save As, and Save All
         2.8.5. Loading and Saving Settings
         2.8.6. Page Setup and Print
         2.8.7. Exit
         2.8.8. Files Used by Calendar Tool Administration
         2.8.9. Administrative Save and Save Copy
         2.8.10. Administrative Page Setup and Print
         2.8.11. Administrative Exit
         2.8.12. External Changes to Calendar Tool Files
         2.8.13. Operating Environment Conventions
     2.9. Details of Edit Commands
         2.9.1. Undo
         2.9.2. Cut, Copy, and Paste

3.  Non-Functional Requirements
     3.1. Performance
     3.2. General Characteristics
         3.2.1. Security and Privacy
         3.2.2. Simplicity versus Power

4.  Developer Overview

5.  Formal Specification


List of Figures   |   List of Tables