Navigation | | |
:---: | :---: | :---: | :---:
Project Plan | Project Requirements | Project Design | README
Revision |
Date |
Description |
0.2.0 |
8/31/15 |
First full draft of requirements document. Up-to-date with PRIDA v0.5. Still pending release dates. |
0.1.4 |
8/25/15 |
Updated Feature Requirements. Began defining Use-Cases. |
0.1.3 |
7/24/15 |
Added additional Feature Requirements. Formatting issues have been encountered with use-cases. |
0.1.2 |
7/8/15 |
Added problem statement references. |
0.1.1 |
7/8/15 |
Initial draft of Feature Requirements. Added basic user profiles. Added newest problem statement. |
0.1 |
6/11/15 |
Initial write-up. |
See Project Plan.
- Researchers:
- Biologists in the lab are spending more time working on technical difficulties than researching plants. The system refinements should allow them to better do their job by more streamlined handling of the data collection and processing.
- Technicians:
- Lab technicians have to contend with the system on a regular basis; the new system needs to be easy to learn and effective so as to streamline their work flow and the archiving of data.
- Outside Labs:
- Other labs are interested in the RootReader3D system. Considering the non-technical nature of the interested parties, the system needs to be easy to assemble, configure and utilize. Additionally, the more inexpensive the system the better, as the ideal is to be able to use the system in lower income environments.
- Developers:
- Future developers will be tasked with continuing to update and refine the system. The current iteration is poorly documented without any known coding standards. To simplify the process so that the software can keep up with the growth of the research, traceability and proper documentation need to be enforced.
- Administrators:
- Administration is invested in the success of the system; not only in terms of the expenses already incurred, but additionally as it is becoming an increasingly important tool for the research being pursued. Improved accuracy of data along with better data archiving will significantly increase the usefulness and longevity of the research tool.
Prida runs in Python 3.4, for both Hardware Mode and Explorer Mode.
Prida no longer supports Python 2 compatibility.
Dependencies include Pillow, Numpy, pip, PyQt5, h5py and libgphoto2.
The data collection software runs off of the Raspberry Pi 2 with the ArchLinux OS.
Additional hardware requirements include:
Data archiving is done in HDF5 format for improved usability, and image processing is done through SciPy.
- General Users:
- Must have access to all required hardware, including a compatible motor, driver, camera, turntable and computer.
- Must be comfortable with basic computer operations such as interacting with buttons and forms.
- Researchers:
- Must input all relevant metadata completely and correctly.
- Must archive their data in a consistent manner.
- Technicians:
- Must maintain all relevant hardware.
- Must familiarize themselves with the associated documentation.
- Administration:
- Must be comfortable with basic searching functionality.
No. |
User Story Name |
Description |
Release |
1 |
Camera Controls |
Users may specify the number of images to be taken during a single collection sequence. |
pending |
2 |
Metadata Inputs |
Users may input data describing the experiment corresponding to a particular collection sequence. This data will be associated with the raw images during any further manipulation, processing or analysis. |
pending |
3 |
Mesh |
Users have a mesh that is capable of supporting the root architecture of a 14 day old corn plant in order to maintain integrity of collected data. |
pending |
4 |
Ball Bearing |
Users will have a bearing capable of smooth rotation and a inner diameter large enough to accommodate a 14 day old corn plant. |
pending |
5 |
Lighting |
Users will have the ability to backlight or side-light the plant for imaging. |
pending |
6 |
Camera Calibration |
Users will be able to calibrate the camera before an image collecting sequence. The calibration process will be fully automated and will correct for relative camera position and lens distortions. |
pending |
7 |
Motor Drive |
Users will have a motor drive that drives the rotation with a settling time of less than two seconds. |
pending |
8 |
Root Tracking |
System shall be able to identify roots across a time series experiment. |
pending |
9 |
Session Calibration |
System shall automatically calibrate the camera settings and lens distortion. |
pending |
10 |
Image Calibration |
System shall automatically calibrate for the relative position of each plant. |
pending |
11 |
Data Archiving |
Users will be prevented from modifying archived data from completed experiments. |
pending |
12 |
Image Comparisons |
Users may view collected images in a side-by-side comparison view. |
pending |
13 |
Searchable Data |
Collected data may be searched for specific keywords and terms. |
pending |
14 |
Searchable Archive |
Searches may be performed across multiple datasets. |
pending |
15 |
Export Data |
Collected metadata may be exported to a CSV. |
pending |
16 |
Export Images |
Images may be exported as a folder system of .jpg files. |
pending |
17 |
Linked Metadata |
Metadata and images will be inseparable within the file. |
pending |
Use-Case Number |
UC-01 |
Use-Case Name |
New File |
Overview |
User enters relevant meta data, specifies a file name and creates a new HDF5 file. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. System is on an software is running. |
|
2. PRIDA is at the main menu. |
Scenario Flow |
---- |
|
1. User selects 'New File.' |
|
2. System requests user and experiment metadata. |
|
3. User enters and submits the user and experiment metadata. |
|
4. System redirects user to file browser. |
|
5. User selects desired file location and name. |
|
6. System creates HDF5 with the specified name at the specified location and redirects the user to the PID viewer. |
Alternate Flow |
After step 1, at any time the user may select 'cancel.' Then the following steps occur: |
|
1. System requests cancel confirmation. |
|
2. Users selects continue. |
|
3. System redirects user to main menu and no file is saved. |
Post-Condition |
HDF5 file exists as desired and user is viewing file contents. |
Use-Case Number |
UC-02 |
Use-Case Name |
Open File |
Overview |
User selects file and system displays desired information. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. System is on an software is running. |
|
2. PRIDA is at the main menu. |
Scenario Flow |
---- |
|
1. User selects 'Open File.' |
|
2. System redirects user to file browser. |
|
3. User selects desired file to open. |
|
4. System opens the file and redirects the user to the PID viewer. |
Alternate Flow |
After step 1, at any time the user may select 'cancel.' Then the following steps occur: |
|
1. System requests cancel confirmation. |
|
2. Users selects continue. |
|
3. System redirects user to main menu and no file is saved. |
Post-Condition |
User is viewing PIDs of desired file. |
Use-Case Number |
UC-03 |
Use-Case Name |
Create Session |
Overview |
User enters session metadata and system collects and saves plant root images. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
Scenario Flow |
---- |
|
1. User selects Create Session. |
|
2. System redirects user to session metadata form. |
|
3. User fills out form, including desired number of images, and presses go. |
|
4. System calibrates hardware and collects the specified number of images. |
|
5. System redirects user to an updated HDF5 file PID view including the new session. |
Alternate Flow 1 |
During step 2: |
|
1. User selects cancel. |
|
2. System returns user to PID view and does not save form data. |
Alternate Flow 2 |
During steps 3-4: |
|
1. User selects abort. |
|
2. System saves currently collected images and associated metadata. |
|
3. System stops collecting further images. |
|
4. System returns user to PID view. |
Post-Condition |
User is at PID view and new session data is added to file. |
Use-Case Number |
UC-04 |
Use-Case Name |
Do Analysis |
Overview |
Perform basic image processing on a single session. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
|
2. HDF5 file contains at least one imaging session. |
Scenario Flow |
---- |
|
1. User selects a Do Analysis and a session. |
|
2. System prompts user for cropping coordinates. |
|
3. User inputs cropping coordinates. |
|
4. System saves coordinates and crops a temp image copy. |
|
5. System prompts user for thresholding value. |
|
6. User inputs thresholding value. |
|
7. System saves thresholding value and thresholds the temp image copy. |
|
8. User selects skeletonization. |
|
9. System applies skeletonization algorithm to the temp image. |
|
10. System saves the temp image to the HDF5 file. |
|
11. System redirects user to the PID view. |
Alternate Flow 1 |
Any time following step 1: |
|
1. User selects cancel. |
|
2. System returns user to PID view and does not save processing data. |
Alternate Flow 2 |
After steps 4 or 7: |
|
1. User selects done. |
|
2. System saves all intermediate processing data previously input. |
|
3. System returns user to PID view. |
Post-Condition |
Processing parameter data and fully processed image copy saved to HDF5. User is at the PID view. |
Use-Case Number |
UC-05 |
Use-Case Name |
Import Data |
Overview |
Associate metadata to previously collected images. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
Scenario Flow |
---- |
|
1. User selects "Import Data". |
|
2. System prompts user to select images to import. |
|
3. User selects images for importing. |
|
4. System re-directs user to metadata input form. |
|
5. User enters metadata to be associated with the imported sessions' images. |
|
6. System saves images in the HDF5 file as new session under the specified PID with input metadata. |
|
7. System redirects user to PID view. |
Alternate Flow |
After step 1, user may select "Cancel" at any time. The following steps occur: |
|
1. System prompts user to confirm intent to cancel. |
|
2. User confirms intent. |
|
3. System redirects user to PID view and does not save any information or images to the file. |
Post-Condition |
A new session is created under the specified PID with the imported images and metadata. User is at the PID view. |
Use-Case Number |
UC-06 |
Use-Case Name |
Export Data |
Overview |
Exports specified data to non-HDF5 file formats for user processing. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
|
2. HDF5 file contains at least one imaging session of data. |
|
3. User has selected desired data to be exported. |
Scenario Flow |
---- |
|
1. User selects "Export Data". |
|
2. System prompts user for target directory for exported files. |
|
3. User selects desired directory. |
|
4. System reconstructs HDF5 hierarchy as a file structure in the specified folder. |
|
5. System populates folder structure with respective images and meta data. |
Alternate Flow |
When prompted for a directory: |
|
1. User selects "Cancel". |
|
2. System redirects user to PID view. |
Post-Condition |
User has direct access to the images and metadata at the specified directory. |
Use-Case Number |
UC-07 |
Use-Case Name |
About |
Overview |
Display information about the overall experiment file and associated user/author metadata. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
Scenario Flow |
---- |
|
1. User selects "About". |
|
2. System displays saved metadata concerning the experiment and contributing authors. |
|
3. User selects "Close". |
|
4. System redirects user to PID view. |
Alternate Flow |
None |
Post-Condition |
User has viewed experiment level metadata and has returned to the PID view. |
Use-Case Number |
UC-08 |
Use-Case Name |
View Session Metadata |
Overview |
User selects a PID and views all available session metadata and image thumbnails. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
|
2. HDF5 file contains at least one imaging session of data. |
Scenario Flow |
---- |
|
1. User selects PID to expand. |
|
2. System displays all known sessions of imaging the particular PID and their associated metadata and thumbnails. |
Alternate Flow |
None |
Post-Condition |
User is viewing the session metadata and image thumbnails of a particular PID. |
Use-Case Number |
UC-09 |
Use-Case Name |
View Image |
Overview |
User selects and views a particular image. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. User has completed UC-8. |
Scenario Flow |
---- |
|
1. User selects an image thumbnail. |
|
2. System redirects user to higher resolution image viewer (IDA) |
Alternate Flow |
After step 2, the user may proceed as follows: |
|
1. User selects "Return to spreadsheet". |
|
2. System redirects user to the PID view. |
Post-Condition |
User is viewing the desired image in large-format. |
Use-Case Number |
UC-10 |
Use-Case Name |
Intra-file Search |
Overview |
User filters the PID metadata based on specified search terms. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
Scenario Flow |
---- |
|
1. User enters desired keywords into search bar |
|
2. System filters PID spreadsheet by keywords. |
|
3. System displays only those PID's with metadata or session metadata containing the keywords. |
Alternate Flow |
None |
Post-Condition |
User is viewing a filtered spreadsheet of the PID view. |
Use-Case Number |
UC-11 |
Use-Case Name |
Inter-file Search |
Overview |
User filters the experiment metadata across multiple files based on specified search terms. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. System is on and software is running. |
|
2. PRIDA is at the main menu. |
|
3. Multiple experiment files exist and are accessible by the user. |
Scenario Flow |
---- |
|
1. User selects 'File Search' from the main menu. |
|
2. System redirects user to the file-search view. |
|
3. User selects 'Add File'. |
|
4. System opens the file dialogue and prompts user for a selection. |
|
5. User selects files which they want to search across. |
|
6. System populates the sheet model with pids from selected files. |
|
7. User enters desired keywords into search bar. |
|
8. System filters sheet model by keywords. |
|
9. System displays only those PID's with metadata or session metadata containing the keywords. |
Alternate Flow |
After step 6, the user may proceed as follows: |
|
1. User selects a file to remove from the loaded file list and clicks 'remove file.' |
|
2. System removes the file and its associated PIDs from the sheet model. |
Post-Condition |
User is viewing a filtered spreadsheet of PIDs from multiple files. |
Use-Case Number |
UC-12 |
Use-Case Name |
Edit Metadata |
Overview |
User selects a session or PID and is given access to the metadata for editing. When finished, save the new data to the HDF5 file and redirect to the PID view. |
Actor(s) |
Technicians, Researchers, General Users |
Pre-Conditions |
---- |
|
1. Completion of UC-1 or UC-2. |
|
2. User is at the PID view. |
|
3. At least one PID or session exists in the file. |
Scenario Flow |
---- |
|
1. User selects the PID or session they wish to edit and selects 'Edit.' |
|
2. System redirects user to input experiment view, with fields populated by existing metadata. |
|
3. User edits the desired fields and confirms the changes. |
|
4. System saves the changes and returns the user to the PID view. |
Alternate Flow |
After step 2, the user may proceed as follows: |
|
1. User selects 'Cancel.' |
|
2. System returns the user to the PID view and does not save any changes. |
Post-Condition |
User is viewing the edited metadata at the PID view. |