Project Model Proposal

Here's the model that was proposed by Noam and Jimmy in an email message to me this morning:

A Project Item would have:
Title
Author
Preface => a text document
Tasks => a collection of the task item

A task item would have:
Title
Author
category (not sure about this one, could prob worry about it later in development)
priority (how ever you want us to do this, I like high, medium, low)
due date- a date field
description- a text document
and finally handlers to take care of the events, who would subscribe to action changes in the events and get notifications and such,
we wanted to make the handlers a group so multiple people could sign up for a task

This is a good start, but it needs to be integrated with the Deme item type hierarchy.

Here's my modification:

Project is a subtype of Collection, which adds a field called project_due_date (a datetime).

The Items in a Project are expected to be Tasks

Task is a subtype of HTMLDocument, which adds the following fields:

  • category (free text)
  • priority (high, medium, or low)
  • task_due_date (datetime)
  • task_handlers (pointer to a Group)

Task creator would specify the Group for task_handlers, either creating a new one for the task or pointing to an existing Group. Note that this means the Group pointed to by task_handlers, in the current architecture, will have its own Folio (I think). Mike and I talked about making it so a Group can have more than one Folio, in which case Folio would just point to a Group. So a task_handlers Group would not need its own Folio, but could have any number of them. The Group would be distinct from the set of subscribers to a Task or Project. I would not make Subscriptions automatic. Generally, if someone is interested in a whole Project, they would subscribe to the Project, but you could also subscribe to a Task or to a Folio in a Group pointed to by task_handlers.

For Internet Explorer users: Click on the Tools menu, located at the top of your browser window. When the drop-down menu appears, select the option labeled Full Screen.

For Chrome users:Click on the Chrome "wrench" icon, located in the upper right hand corner of your browser window. When the drop-down menu appears, select the choice labeled Full Screen.

For Firefox user:Click on the View menu, located at the top of your browser window. When the drop-down menu appears, select the option labeled Full Screen.

For Safari users: Safari currently does not support the ability to go fullscreen.