r3 - 20 Oct 2005 - 12:47:31 - BobbyRulloYou are here: OSAF >  Projects Web  >  ScoobyHome > FunctionalSpecification

Introduction

Here we will attempt to document the various use cases in detail that will be possible in the first Scooby release as per Brian's Seven Step Program

Actors

  • Administrator
    • This user is responsible for various administrative tasks like setting the default time zone, locale, etc.
  • User
    • This is the typical user - the person who wants to view, edit or share their calendar.

Use Cases: All Actors

  • Log in
    • The users enters their authentication credentials.
    • The user is taken to the week view for the current week./
  • Log out
    • The user clicks a log out link.
    • Their session is ended.

Use Cases: User Actor

  • Register
  • Week View
    • The user naviagates to the Week view by clicking a link/button
    • If an event was selected, the week view for that event's week is shown or else:
    • If the user was in month view:
      • If it is the current month the week view for the current day is displayed or else:
      • The first week of that month's week view is displayed
    • If the user was in day view:
      • The week view for the week of that day is displayed
    • If the user was in some other screen (i.e. not week or day view)
      • The week view for the current day's week is shown.
    • The events for that week are displayed
    • The minical displays the month of that week
  • Month View
  • Day View
  • Event Detail
    • The user clicks on an event in Month/Week/Day View
    • The event detail area displays all the information for that event
    • The user optionally changes some of the information
    • The user clicks the save button and the information is persisted
      • The event's display in the Month/Week/Day view is updated as well
  • Add an Event
    • The user double-clicks on an area of the Month/Week/View
    • A new event is created
      • Detail shows new event information
      • New Event is immediatly persisted to the server
      • Default information added:
        • Title "New Event" (localized)
        • Date is the which ever day you clicked on
        • Time:
          • If week or day view, the start time will be whatever hour block you clicked on, rounded down to the hour and the duration will be an hour
          • If Month view:
            • If you clicked the current day, the start time will be the nearest whole hour after the present time and the duration will be an hour
            • Otherwise the time period will be from noon to 1pm
  • Edit Event
    • see Detail view
  • Delete an event
    • user clicks on an event (bringing it into the detail view)
    • user clicks delete button in the detail view
    • the event is deleted from the persistent store
    • the event disappears from the week/day/month view
    • the event info disappears from the detail view
  • Move an event - Day/Week View
    • The user clicks and drags an event to another time/date
    • If the user is in Day or Week view the event's start date will change so that it's within the nearest 15 minute interval to where the user dropped it (i.e. :00, :15, :30, :45). The end time is adjusted so that the new duration is the same as the old.
    • For month view the times will stay the same and only the date will change
    • The event is persisted

Use Cases: Administrative Actor

Notes

Here are the original seven steps:

Scooby Seven Step Program suggested by BCM:

  1. Week and detail views and navigation between weeks.
  2. Event create/modify/delete, timezone preference, change password
  3. Month view
  4. Day view, minical
  5. iCalendar import/export
  6. Searching local calendars. overlay & bookmarking (consume CalDAV, iCalendar-over WebDAV, RSS/Atom)
  7. Ticket and sharing invitations (produce CalDAV, iMIP, RSS/Atom)
Edit | WYSIWYG | Attach | Printable | Raw View | Backlinks: Web, All Webs | History: r3 < r2 < r1 | More topic actions
 
Open Source Applications Foundation
Except where otherwise noted, this site and its content are licensed by OSAF under an Creative Commons License, Attribution Only 3.0.
See list of page contributors for attributions.