
This is my understanding of the scope of our project:
A user creates, or is invited to be a group member of, a project. The number of users working on a project is not limited. The number of projects a user can be involved in is limited to 3, or unlimited for paying users. Users can leave projects if they no longer want to be involved. If all of the users involved in a project leave the project, the project is deleted. Projects have a name and a last update time.
When a user has write permissions on a project he/she can do the following:
- Invite other users to a project. They are automatically added to the project (no approval required).
- Add an item to the to-do list of that project.
- To-do list items have a name, a due date (optional) and person/s responsible (required for group projects, and automatically set for individual projects).
- Users can set items to be either in progress or completed.
- Add a document to the project (could be an image, word file, PDF, etc)
- Documents must have a name. The name should be editable by any user with write access (using AJAX - similar to the status change feature on Facebook).
- Documents must have at least one version, but possibly many versions uploaded by different users. Versions must have a system date. Old versions are still accessible, but can be deleted by any user with write access.
- Write a comment in one of two places - on the main page of a project (where the to-do list is located), or on a document page (i.e. "I like that version you just uploaded Fred").
- Comments have a time and a body. They are not sorted into threads.
- View the to-do list, documents and all comments. Nothing is hidden from them, they just can't change anything or write any comments.
- They will be notified in a 'news feed' whenever a new version of a document is uploaded. The notification will remain in their 'news feed' until they open the document page.
- New to-do list items will have a star next to them the first time the user sees them.
- They will be notified in a 'news feed' whenever a to-do list item is assigned to them as the person responsible.
- They will be notified in a 'news feed' whenever a new comment is added to a document or to the project.
- New comments will have a star next to them the first time the user sees them.
- Create new projects or remove themselves from old projects.
- View their 'news feed' containing all notifications.
- See a to-do list of items they are responsible for, across all of their projects.
- See a visual representation of due dates (i.e. a calendar)
Over the next week I am going to design the database, Justin is going to make a Gantt chart to illustrate our project schedule, and Long is going to work on the project plan documentation.
No comments:
Post a Comment