Usecases
Use cases for Plone calendaring application
DESKTOP USER FUNCTIONS
Roles
- Project Team Manager
- Project Team Member
- Project Team Resource Proxy
- Remote Team Member
- Event Organizer
- Event Participant
- Independent Consultant
- Consultant's Client
All users (permissions permitting)
- search for calendar; browser calendars; view calendar, month view; view calendar, week view; view calendar, day view long; view calendar, day view side; add event; accept event; add attendees to event; edit event; delete event; create recurring event.
Project Team Manager
- creates shared calendar on extranet for team interaction; makes calendar private; grants permission to group/individuals; adds event representing team meeting; adds "group" as recipient.
- adds a deliverable to calendar. (Question: does a deliverable have a start date?); adds individual as recipient for the deliverable, thereby assigning the deliverable.
- creates a recurring event; wants to edit all occurrences; clicks on any instance; edits; all instances are edited.
- creates a recurring event; wants to edit only one instance; CANNOT! (currently CPS-derived calendar uses a single object for all recurring calendar instances.)
- creates a smart folder of all team calendars and ub-calendars, as well as all public calendars controlled by team. This becomes a combined view for team activities.
Project Team Member
- accepts group meetings in team calendar.
- accepts deliverable.
- declines deliverable, with explanation, so that manager can re-assign.
- creates event in team calendar; invites group, or subset of group, to event in team calendar.
- creates sub-calendar beneath team calendar; creates event within sub-calendar; invites sub-set of group to event in sub-calendar.
Project Team Resource
- Following the CPSSharedCalendar model, you could set a resource to acceptIfPossible. In this case, you could create a calendar, on per resource (room, projector, etc); set resource to acceptIfPossible.
Project Team Member, Resource Proxy
- An organization might prefer that all resource requests get routed to someone for (dis)approval. One person within an organization is responsible for approving or disapproving resource requests, such as for meeting rooms or projectors.
- creates calendars, one per resource.
- receives an invitation for a resource; compares to calendar for that resource; (dis)approves request based on resource availability; no automatic resource checking is done at this time.
- creates a smart folder of all meeting room resources. smart folder acts as a quick-glance "meeting room status" page
Remote Team Member
- Team member in a different time zone than team manager receives an event invitation; member accepts event; member imports event into his local calendar; event shows up in member's local calendar at local-correct time.
Community Event Organizer
- creates calendar on extranet; publishes calendar; creates event; publishes event; enables open registration to event.
- updates event (breaking news, reminder, etc); all attendees are notified.
- deletes event (with explanation); all attendees are notified.
Community Event Participant
- adds self as participant to public event; receives standards-compliant notification, adds to external calendar
- removes self as recipient from public event; receives standards-compliant notification of deletion
Independent Consultant
- creates "personal" calendar; makes calendar private; creates "To Do" events on personal calendar. No attendees.
- creates shared calendar for use with client; publishes calendar; adds event to calendar; adds client as an attendee.
- creates smart folder of all public and private event objects. this smart folder acts as a combined calendar view, showing To Do items and all client events.
Consultant's Client
- receives standards-compliant notification of event; adds event to client's own external calendar system; Plone shared calendar consumes external acknowledgment from client system.