Requirements - mwgeurts/viewray_fielduniformity GitHub Wiki

The following sections detail the use cases software requirements specifications for the ViewRay Field Uniformity-Timing Check tool. Each use case is assigned a letter ID and describes the rationale, intended users, preconditions, a step by step sequence of events, and the software tool version where this use case was introduced.

Software requirements are classified into three categories: user interface, functional, and non-functional. Non-functional requirements are further broken down into three additional types: performance, compatibility and documentation. Each interface and functional requirement is traced to a specific use case and step within the course of events and is provided a four character ID, where the first character is a letter indicating the requirement type and the final three are an incremental number.

Performance requirements may reference modern hardware. This refers to a typical base-level configuration of a business desktop or laptop computer, which would include a 64-bit operating system, 4 GB of RAM, and Intel Core i5 processor at minimum. Refer to the Unit Testing page for details on the system configuration used to verify these requirements.

To determine which requirements apply to a given software version, trace the requirement back to the Use Case using the referenced Use Case letter ID and note the version. It is implied that all specifications attached to Use Cases that include the statement and forward will continue to be applied to the current and all future versions of the application.

Contents

Use Cases

ID A
Summary Evaluate measured profile uniformity statistics
Rationale This is the first primary use case for this application, where the user is looking to evaluate whether the radiation field uniformity he/she measures is comparable to an expected or reference value. Here, uniformity statistics refers to flatness and symmetry.
Users Medical physicist
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system
Course of Events
  1. The user installs the ViewRay Field Uniformity-Timing Check application
  2. The user acquires measurement data using the SNC IC Profiler
  3. The user executes the application from MATLAB
  4. The user selects the location of the measured PRM data
  5. The application computes the flatness and symmetry
  6. The application displays the measured values along the primary axes
  7. The user repeats the analysis for the remaining heads
Version 1.0.0 and forward
ID B
Summary Evaluate timing accuracy of system from measured data
Rationale This is the second primary use case for this application, where the user is also looking to evaluate the timing accuracy of the ViewRay MRIdian system. This is accomplished by executing a procedure that delivers a known duration of radiation to the SNC IC Profiler, and then comparing the duration measured by the device to the expected value.
Users Medical physicist
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system using a 30 second exposure and has completed Use Case A
Course of Events
  1. The application computes the duration of radiation measured using the PRM data
  2. The application displays a comparison of the measured and expected time
  3. The user selects to display the time-dependent response of the measured data
Version 1.0.0 and forward
ID C
Summary Compare measured field width to reference
Rationale In addition to comparing uniformity, the user may also wish to evaluate the collimator accuracy
Users Medical physicist
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system using a 27.3 cm x 27.3 cm exposure (at the detector plane) and has completed Use Case A
Course of Events
  1. The application computes the FWHM of the measured profiles along the primary axes
  2. The application computes the FWHM of the reference profile using the same method
  3. The application displays a comparison of the measured and reference values
Version 1.0.0 and forward
ID D
Summary Compare Gamma index of measured data
Rationale In addition to comparing uniformity and FWHM, the user may also wish to compare the measured to reference data using a Gamma index. The application should provide default values but should be customizable such that users can adjust the Gamma parameters.
Users Medical physicist, Software developer
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system and has completed Use Case A
Course of Events
  1. The developer adjusts the Gamma parameters
  2. The application computes the Gamma index between the measured and reference profiles along each axis
  3. The user selects to display the Gamma comparison for a given axis
  4. The maximum Gamma index is displayed for the principal axes
Version 1.0.0 and forward
ID E
Summary Generate results PDF report
Rationale After computing all statistics, the user will need to export the results to a file they can include in their quality management program. This report should include the most relevant results
Users Medical physicist
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system and has completed Use Cases A-D
Course of Events
  1. The user selects a Print Report button
  2. A PDF report is generated
  3. The PDF report opens using the default system application
Version 1.1.0 and forward
ID F
Summary Evaluate multiple field sizes
Rationale The user may choose to collect data from several field sizes to evaluate the field uniformity at multiple collimator positions. The tool must be capable of determining which field size was measured and select the correct reference data.
Users Medical physicist
Preconditions The user has acquired SNC IC Profiler PRM data on a ViewRay MRIdian system using field sizes that match one or more reference profiles loaded by this application and has completed Use Case A
Course of Events
  1. The user reviews the results from the first measured profile
  2. The user clears the result from the first profile
  3. The user loads and reviews the results from the next profile, and so on
Version 1.1.0 and forward

User Interface Requirements

ID Case Step Requirement
U001 A 3 A graphical user interface shall open when the user executes FieldUniformity
U002 A 4 The interface shall include a button to Browse for measured data
U003 A 4 Upon clicking the Browse button, the user shall be prompted with a file selection dialog box
U004 A 5 Upon selecting input data, the IC Profiler PRM data shall automatically be processed
U005 A 5 The interface shall list name and path of the selected file
U006 A 5 The user shall see a progress bar while the data is processed
U007 A 6 The interface shall include a table which lists the measured MLC X/Y flatness and symmetry
U008 B 2 The interface shall include a table which lists the time difference
U009 B 3 The interface shall include a plot selection drop down menu which includes time plot
U010 C 3 The interface shall include a table which lists the FWHM difference
U011 D 3 The interface shall include a plot selection drop down menu which includes X, Y, and diagonal Gamma comparison
U012 D 4 The interface shall include a table which lists the MLC X & Y max Gamma
U013 A 7 The interface shall contain duplicate Browse, file, plot, and statistics widgets for all three heads
U014 E 1 The interface shall include a Print Report button
U015 F 2 The interface shall include a Clear All Data button

Functional Requirements

ID Case Step Requirement
F001 A 3 If not all components of the application are present, the application shall throw an error to the user
F002 C 2 The application shall extract reference profiles from one or more provided reference DICOM files for comparison to measured IC Profiler profiles
F003 A 4 If the user does not select a file, the application will resume without error
F004 A 5 If the user provides an invalid file, he/she shall be notified
F005 A 5 The application shall extract cumulative data for all ion chambers from the PRM data
F006 A 5 The application shall extract time-dependent data for the central ion chamber from the PRM data
F007 A 5 The application shall correct the measured data based on the array calibration data provided in the PRM data
F008 A 5 The application shall interpolate the response of ignored detectors in the PRM data
F009 A 5 The application shall compute the flatness of each measured profile using the formula (max - min)/(max + min) over the central 80% of the FWHM defined field
F010 A 5 The application shall compute the areal symmetry of each measured profile using the formula (right - left)/(right + left) * 2 over the central 80% of the FWHM defined field
F011 A 6 The application shall store processed data and results independently for three separate input files (one for each head)
F012 B 1 The application shall compute the measured beam on time as the FWHM of the time-dependent central chamber data
F013 B 2 The application shall compute the difference between an expected time and the measured time
F014 B 3 The application shall plot the time-dependent response of the central ion chamber when the timing profile is selected from the plot selection drop down menu
F015 B 3 If PRM data has not been loaded, the timing profile plot shall display nothing and resume without error
F016 C 1 The application shall compute the FWHM of each primary axis
F017 C 1 The application shall identify if the FWHM cannot be accurately determined (if the field edge is too close to the profiler edge), and if so return a null value
F018 F 3 The application shall identify the reference data that best matches the measured data by comparing the correlation coefficient
F019 C 2 The application shall compute the FWHM of each reference profile
F020 C 3 The application shall compute the difference between measured and reference FWHM along the MLC X and Y axes
F021 D 1 The application shall declare Gamma criteria in the opening function
F022 D 2 The application shall use the declared criteria to compute the Gamma index along each profile (X, Y, diagonals)
F023 D 3 The application shall plot the Gamma index of the requested profile when chosen from the plot selection drop down menu
F024 D 3 The Gamma comparison plot shall display the reference profile (blue), measured profile (red), and Gamma index (light blue)
F025 D 3 If PRM data has not been loaded, the Gamma index profile plot shall display nothing and resume without error
F026 D 4 The maximum value of the MLC X and Y Gamma index profiles shall be computed
F027 E 1 The Print Report button shall be disabled until the user loads at least one PRM file
F028 E 2 The report shall include the user name determined from the system user name (whoami), or if not present, from user input
F029 E 2 The report shall include the current date and time
F030 E 2 The report shall include the application version, SNC version, collector model and serial number
F031 E 2 The report shall include MLC X Gamma index profiles for each head where data exists
F032 E 2 The report shall include MLC Y Gamma index profiles for each head where data exists
F033 E 2 The report shall include the Gamma criteria, beam on time difference, and MLC X & Y flatness, symmetry, and FWHM difference statistics for each head where data exists
F034 E 3 The report shall automatically be saved as a PDF file in the temporary directory and opened using the default PDF viewer application
F035 F 2 The Clear All Data button shall remove all stored variable data from memory for the head selected
F036 F 2 The Clear All Data button shall clear the plot selection dropdown, plot display, and table statistics

Performance Requirements

ID Case Step Requirement
P001 A 3 The application shall load in less than 2 seconds on modern hardware
P002 A 5 The application shall process provided PRM data and return results in less than 5 seconds on modern hardware
P003 E 2 The application shall generate a report in less than 2 seconds on modern hardware

Compatibility Requirements

ID Case Step Requirement
C001 A 3 The application shall run successfully on 64-bit Windows 7
C002 A 3 The application shall run successfully on Windows 8
C003 A 3 The application shall run successfully on the latest version of Mac OSX
C004 A 3 The application shall run successfully on Ubuntu 12
C005 A 3 The application shall run successfully on Ubuntu 14
C006 A 3 The application shall run successfully using MATLAB R2012a
C007 A 3 The application shall run successfully using MATLAB R2012b
C008 A 3 The application shall run successfully using MATLAB R2013a
C009 A 3 The application shall run successfully using MATLAB R2013b
C010 A 3 The application shall run successfully using MATLAB R2014a
C011 A 3 The application shall run successfully using MATLAB R2014b
C012 A 2 The application shall be able to parse PRM data from SNC Profiler version 3.3.1
C013 C 2 The application shall contain reference data for a 27.3 cm x 27.3 cm exposure
C014 F 3 The application shall contain reference data for a 10.5 cm x 10.5 cm exposure

Documentation Requirements

ID Case Step Requirement
D001 A 1 Documentation shall be provided to describe how to install the application
D002 A 2 Documentation shall be provided to describe how to acquire data using the SNC IC Profiler
D003 A 3 Documentation shall be provided to describe how to run the application
D004 D 1 Documentation shall be provided to describe how to adjust the Gamma criteria
⚠️ **GitHub.com Fallback** ⚠️