Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Corrected links that should have been relative instead of absolute.

...

Our system is targeted toward the English-speaking, non-technical population with special emphasis on three user groups: students, businesspeople, and families.  Although our different user groups have varying levels of technical competence, we will gear our application toward people who have basic web experience.

Businesspeople:  Businesspeople, who are between 20 and 70 years old, need calendars to keep track of their own schedules and those of their employees, clients, and colleagues.

Students:  Students, who are between 14 and 22 years old, would use a calendar to organize class, homework, employment, and extra-curricular schedules. 

...

Families: Families have a lot of tasks that need to be done, but that don't necessarily have deadlines. They currently make paper todo lists.  A mother we spoke to wished that her current calendar system would allow her to jot down a todo list, just as she might scribble notes in the margin of her physical calendar.

System Tasks: (tasks in gray were removed due to scope reductions)

1) Manage Account

  • Create
  • Log In (precondition: create)
  • Read (View) (precondition: log in)
  • Update personal info (precondition: log in)
  • Delete account (precondition: log in)

2) Manage Categories/Events (precondition: log in)

  • Create (frequency: multiple times per day)
    • Date
    • Time
    • Description
    • Type: Activity/Todo/Deadline
    • Access control (who can read from/write to the category/event)
  • Categorize** add parent, move the event up/down the event hierarchy
  • Read (View) (frequency: multiple times per day)
    • Yearly 
    • Monthly
    • Weekly
  • Update created fields
    • access control (share)
    • date
    • time
    • description
  • Delete

3) Offline viewing (precondition: log in)

  • Create PDF
  • Email PDF
  • Print PDF

Domain analysis

  Image Removed

By default, events that users create are put in the "My Calendar" category.  "My Calendar" is analogous to the root of a filesystem.  We can create sub-categories, such as "My Extracurriculars", which in turn can have events or another sub-category, such as "Choir Rehearsals".  

A category can have multiple parents.  For example, "Choir Rehearsals" can belong to the "My Calendar" category as well as to the "Your Calendar" category.  When I share my calendar with another user, I am really sharing one or more of the categories that are associated with the "My Calendar" category.

...

Image Added