An interesting table. Below are some questions about how to interpret the data.
Methodology
- Q. What was the methodology for creating these rows?
- Was the survey a series of questions, so absense of a row means it wasn't asked by the survey?
- Was the survey open ended, so absense of a row means that no responses asked for it?
- Q. What does an X in a column mean?
- Does it mean that column product has this feature?
- Does it mean users of column product requested this feature? (how many? one? 10%?)
Calendar Views
Day View
WeekView
Month View
Modern Look
- Q. What does 'modern look' mean as a requirement?
- A1. Maybe it means it should match the look and feel of the host operating system.
- A2. Maybe it means that it should be themable, so 'modern' can be updated for the locally current culture/fashion?
Scrolling functionality
- Q. What does 'X' mean in each column?
- Users of column product observed to use keyboard navigation?
- users of column product requested better keyboard navigation of Calendar views? (What improvements did they request?)
- Column product has adequate keyboard navigation of Calendar Views for surveyed users who can fallback to mouse pointer?
- Column product has adequate keyboard navigation of Calendar Views for surveyed users dependent on Accessible navigation?
- Q. Can 'keyboard navigation' be broken down more specifically for each column?
- Keyboard navigation for choosing views (day view, week view, etc.)
- keyboard navigation for selecting columns in grid views (day of week).
- keyboard navigation for selecting cells in grid views (day of month, hour of day/week).
- keyboard navigation for selecting items in grid views (events or tasks).
- keyboard navigation for editing items in the grid views (title, location, ...).
- keyboard navigation for moving/resizing items in the grid views (time, duration, ...).
Drag and drop support
Definition of working hours
Definition of start day of week
Viewing multiple calendar simultaneously
- Q. Adding to multiple calendars simultaneously is mentioned in comments, but it's not clear what that means.
- A1. Is that the same as sending an invitation?
Conflicts should be easily recognizable
- Q. What is context? (What does 'X' mean?)
- Are conflicts displayed in main view, or separate view?
- Conflicts between 2 calendars? 20 calendars? 200?
Current day indicated in all views
Current day easily reachable
Month overview
Month view synchronized with main view
- Q. What is 'main view'?
- Q. Under what circumstances is this important?
- Q. Under what circumstances is this detrimental?
- A1. slows down navigation to a particular date by advancing several months.
- A2. prevents comparing two different months.
- Q. would a 'sync nav view' operation be better?
Display of birthdays from addressbook
Display of multiple time zones
- Q. What does it mean to display multiple time zones?
- A1. From multiple timezones, select one timezone in which to display.
- A2. Convert data from multiple timezones to display timezone.
- A3. Display multiple timezone times for each item (scheduled-timezone, display-timezone).
- A4. Select multiple timezones, and display multiple timezone times for each item (display-timezone A, display-timezone B).
Server Integration
Appointment handling
- Q. what does "appointment handling" mean? (How can server integration fail this?)
- A1. Can store and pull (appointment) events on server?
- A2. Can push updated events from server to client?
Task handling
- Q. what does this mean? (How can server integration fail this?)
- A1. Can store and pull ToDos on server?
- A2. Can push updated ToDos from server to client?
Invitations
- Q. What does 'X' in each column mean?
- A1. Can send out email messages with VEVENT?
- A2. Can receive and record accept/decline responses?
Reminders
- Q. What's a reminder for a server?
- A1. An email message?
- A2. A text message?
- A3. Pushing updates added to server into client so client can sound alarm.
Free/busy display
- Q. does free/busy display require server integration?
- A1. No, clients could publish free/busy info.
Free/busy search
- Q. does free/busy search require server integration?
- A1. No, clients could publish free/busy info, and other clients could retrieve it and search for intersection of free times.
Calendar subscriptions
- Q. what is a subscription?
- A1. pull: ability for client to poll server.
- A2. push: ability for server to notify client of updates.
Calendar groups
- Q. What is a calendar group?
- A1. A set of calendars, e.g., calendars for a team?
- A2. A set of users who have rights to modify a calendar?
Access rights
Tasks/To-do's
Specification of due dates
- Q. May users schedule tasks/todos? (start date, duration)
Specification of repeat patterns
Assignment of tasks
- Q. What does it mean to assign a task?
- A1. Add it to someone else's calendar?
- Q. How is assignment represented in RFC2445?
- A1. Assigner is organizer?
- A2. Assignee is contact?
Transfer of tasks
- Q. What does it mean to transfer a task?
- A1. Move it from one user's calendar to another's?
- A2. Change assignee? (contact?)
Support for access rights
- Q. What special support for access rights are needed by tasks?
- A1. This duplicates "Access rights" above?
- A2. Assigning and transfering a task should change the access rights to the task?
Appointments/Meetings
Title field
Date field
Location field
Descriptin field
Recurrence rules
End dates
- Q. why plural?
- Q. Ambiguity: start/end date (end of instance), or recur-until date (end of recurrence)?
Exceptions
Invitation of attendees from address book
Invitation of attendees from email list/alias
Email reminders
Local alarm reminders
PIM independent reminder daemon
Integrated workflow for meeting scheduling
Invitation emails
Booking resources
Attaching documents
Free/busy display
- Q. How is this separate from free/busy display in Calendar View above?
- A1. None: view free/busy in calendar view to pick a time.
- A2. Separate free/busy display of attendees while editing event.
Free/busy search
- Q. How is this separate from free/busy search in Calendar View above?
- A1. None: search free/busy in calendar view to pick a time.
- A2. Separate free/busy search of attendees while editing event.
Printing
Calendar views (e.g., Day, week, month)
Offline Support
Calendar data accessible without server connection
Synchronization upon reconnect
PDA Sync
Synchronization to PalmOS devices
Synchronization to Windows Mobile devices
Synchronization to Symbian devices
Search
- Q. Are all seraches below satisfiable with one global search that covers all text fields in both events and tasks?
Searching through all appointments
Searching through all tasks
Search for event name
Search for description
Search for location
Configuration and Administration
Configuration of access rights
- Q. How is this separate from Access Rights under Server Integration?
- A1. No difference
- A2. One is about having access rights, one is about changing access rights from the client.
Deputy functionality
Backup and restore of calendar data
- Q. Does 'x' mean server-wide or for individual user?
Backup and restore of configuration data
Required Functionality
Accessibility
Localization
Undo/Redo
Performance
- Q. With how much calendar data? (number of events) x (size of event)
- A1. Two years per user, 10 events per week, 1KB per event? (1040 events, ~1MB data per user)