-
Notifications
You must be signed in to change notification settings - Fork 0
TechRequirements
Authors: Dave Walton and Keith Sheppard
This document describes the technical requirements for the first phase of the CGD Drake Genetics software project.
It is important to design the account management such that no direct technical support is required for a classroom to start using the DrakeGenetics web app. This is also intended to be a highly reusable component so an effort should be made to keep the software as modular as possible.
Any person with network access to the DrakeGenetics web application will be able to create a user account. Users will be uniquely identified by their email address which will be used to confirm the user's identity. All users will be able to:
- reset thier password via thier email address
- associate a name with thier account
- create a Laboratory
There will typcially be a one-to-one correspondance between classrooms using our application and Laboratories, though this relationship will not be enforced. Almost all communication between user accounts will occur within the context of a common Laboratory. The only exception to this being Laboratory invitations which clearly must be sent to users outside of the Laboratory.
When a Laboratory is created it will be initiallized with the following roles:
- Scientist (ie Student)
- Advisor (ie Teacher)
The user Account which created the Laboratory will be automatically assigned to the Advisor Role. Each item in the following activity list is followed by the role(s) which are authorized to perform that activity. All Advisor and Scientist permissions exist only in the context of the Laboratory where those roles are held:
- Laboratory creation: any user
- Laboratory account invitation/removal: Advisor
- Role assignment: Advisor
- Generate progress and usage reports: Advisor
- Read from notebook: Advisor, Scientist
- Write to own Laboratory notebook: Advisor, Scientist
- Read others' Laboratory notebook: Advisor, Scientist
- Comment on Laboratory notebook: Advisor, Scientist
- Perform Lab Experiments (TODO refer to a requirements section explaining which experiments are available): Scientist
- View Lab Experiment Results: Advisor, Scientist
- TODO: which permissions are missing
There will be no capability to create new roles or modify role permissions though this is something that we may consider adding in a future version.
Each member of a Laboratory will have thier own Laboratory notebook.
Notebooks will be similar to blogs. Users with sufficient permissions will be able to read and comment on existing entries, as well as create new entries. Each entry will display an associated author and timestamp. Users must also have a convenient way to enter links which can be "permalinks" to experiment results, links to other notebook entries or external URLs.
- Rich text/HTML editor
- RSS feeds for notebook entries and comments
- Have a view that shows entries for all Laboratory members or just entries for a specific Laboratory member