Difference between revisions of "Slicer-3.6-QA"

From Slicer Wiki
Jump to: navigation, search
m (Text replacement - "https?:\/\/wiki.slicer.org\/slicerWiki\/index.php\/([^ ]+) " to "https://www.slicer.org/wiki/$1")
 
(2 intermediate revisions by 2 users not shown)
Line 14: Line 14:
 
!Score!!Name!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Current Owner
 
!Score!!Name!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Current Owner
 
|-
 
|-
|style="background:white"|??||style="width:33%"| Camera ||complete||yes and yes||yes|| Sebastien Barre
+
|style="background:white"|??||style="width:33%"| Camera ||complete||yes and yes||yes and yes|| Sebastien Barre
 
|-
 
|-
 
|style="background:white"|??||style="width:33%"| Welcome ||complete||yes and yes||yes and yes ||Wendy Plesniak
 
|style="background:white"|??||style="width:33%"| Welcome ||complete||yes and yes||yes and yes ||Wendy Plesniak
Line 58: Line 58:
 
|+ <big>Slicer 3.6 Quality Assurance</big>
 
|+ <big>Slicer 3.6 Quality Assurance</big>
 
|-
 
|-
!Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref>!!3.6 Documentation Name <ref>http://wiki.slicer.org/slicerWiki/index.php/Documentation-3.6</ref>
+
!Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref>!!3.6 Documentation Name <ref>https://www.slicer.org/wiki/Documentation-3.6</ref>|-
|-
 
 
|style="background:silver"| '''2Silver'''||style="width:33%"|  ACPC Transform || complete || yes and yes || yes and yes || 75%  ||  1  ||  Nicole Aucoin||||same||
 
|style="background:silver"| '''2Silver'''||style="width:33%"|  ACPC Transform || complete || yes and yes || yes and yes || 75%  ||  1  ||  Nicole Aucoin||||same||
 
|-
 
|-
Line 135: Line 134:
 
|+ <big>Slicer 3.6 Quality Assurance</big>
 
|+ <big>Slicer 3.6 Quality Assurance</big>
 
|-
 
|-
!Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref><ref>Valgrind errors determined through use of runValgrindForOneModule.sh script in Slicer3-build/Scripts directory; dependent upon module testing script being found in Slicer-3-build/bin/ directory</ref>!!3.6 Documentation Name <ref>http://wiki.slicer.org/slicerWiki/index.php/Documentation-3.6</ref>
+
!Score!!Name<ref>list produced with the script Slicer3/Scripts/generateListOfModules.sh </ref>!!Documentation!!Help <ref>including link to website documentation</ref>!!Acknowledgment <ref>including name of author and of supervisor</ref> !!Test coverage <ref>in % for non-interactive part</ref>!!valgrind errors!!Current Owner!!Comments <ref>Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files</ref><ref>Valgrind errors determined through use of runValgrindForOneModule.sh script in Slicer3-build/Scripts directory; dependent upon module testing script being found in Slicer-3-build/bin/ directory</ref>!!3.6 Documentation Name <ref>https://www.slicer.org/wiki/Documentation-3.6</ref>|-
|-
 
 
|style="background:gold"| '''1Gold'''||style="width:33%"|  Mask Image  ||complete||yes and yes||yes and yes||  82%  || 0  ||  Nicole Aucoin ||||same
 
|style="background:gold"| '''1Gold'''||style="width:33%"|  Mask Image  ||complete||yes and yes||yes and yes||  82%  || 0  ||  Nicole Aucoin ||||same
 
|-
 
|-
Line 214: Line 212:
  
 
More information:
 
More information:
*[http://www.slicer.org/slicerWiki/index.php/Slicer3:Testing Slicer3 Testing]
+
*[[Slicer3:Testing|Slicer3 Testing]]
 
*[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Code_Coverage How to run Code Coverage]
 
*[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Code_Coverage How to run Code Coverage]
 
*[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Dynamic_Analysis How to run Dynamic Analysis (valgrind)]
 
*[http://www.na-mic.org/Wiki/index.php/NA-MIC-kit-curriculum/Testing-Based_Programming/How_to_run_Dynamic_Analysis How to run Dynamic Analysis (valgrind)]

Latest revision as of 14:53, 27 November 2019

Home < Slicer-3.6-QA

Return to Slicer 3.6 documentation

  • This page contains our assessment of the Slicer 3.6 modules

Testing Status

Core Modules

Slicer 3.6 Quality Assurance
Score Name Documentation Help [1] Acknowledgment [2] Current Owner
?? Camera complete yes and yes yes and yes Sebastien Barre
?? Welcome complete yes and yes yes and yes Wendy Plesniak
?? Volumes complete yes and yes yes and yes Steve Pieper
?? Diffusion Editor complete yes and yes no CF Westin
?? Models complete yes and yes yes and yes Alex Yarmarkovich
?? Measurements complete yes and yes yes and yes Nicole Aucoin
?? Fiducials complete yes and yes yes and yes Nicole Aucoin
?? Data complete yes and yes yes and yes Steve Pieper
?? Slices complete yes and yes yes and yes Jim Miller
?? Colors complete yes and yes yes and yes Nicole Aucoin
?? Interactive Editor complete yes and yes yes and yes Steve Pieper
?? ROI Module complete no and yes yes and yes Alex Yarmarkovich
?? Volume Rendering complete yes and yes yes and yes Yanling Liu
?? PET/CT Fusion complete yes and yes yes and yes Wendy Plesniak
  1. including link to website documentation
  2. including name of author and of supervisor

Application CLI Modules

Version of 04-29-2010

Slicer 3.6 QA table 2010 04 29

Version of 05-2010

Part A

Slicer 3.6 Quality Assurance
Score Name[1] Documentation Help [2] Acknowledgment [3] Test coverage [4] valgrind errors Current Owner Comments [5] - 2Silver ACPC Transform complete yes and yes yes and yes 75% 1 Nicole Aucoin same
1Gold Add Images complete yes and yes yes and yes 84.9% 0 Bill Lorensen AddImages
4Clay Affine registration (Fast Affine Registration ?) complete yes and no yes and yes 68.4% 82 Daniel Blezek same
BRAINSDemonWarp complete yes and no yes and no 78.4% Unknown Hans Johnson, Greg Harris same
BRAINSFit complete yes and yes yes and yes 73.3% Unknown Eun Young Kim same
6Hazard BRAINSResample no yes and yes yes and no 76.7% Unknown Hans Johnson same
6Hazard BRAINSROIAuto no yes and no yes and no xx Unknown Hans Johnson same
6Hazard BRAINSVectorDemonWarping no yes and no yes and no xx Unknown Hans Johnson same
5Coal Cast Image complete yes and yes yes and yes 24.1% 0 Nicole Aucoin Cast Image
3Bronze CheckerBoard Filter complete yes and yes yes and yes 67.4% 0 Bill Lorensen CheckerBoard Filter
5Coal Create a DICOM Series complete yes and yes yes and yes 86.1% 124 Bill Lorensen Create a Dicom Series
3Bronze Curvature Anisotropic Diffusion complete yes and yes yes and yes 64.3% 0 Bill Lorensen same
Deformable BSpline registration complete yes and yes yes and yes 82.3% xx Bill Lorensen Fast Nonrigid BSpline Registration
5Coal Dicom to Nrrd Converter complete yes and yes yes and yes 35.8% 0 Xiaodong Tao same
2Silver Diffusion Tensor Estimation complete yes and no yes and yes 79.7% 9 CF Westin same
6Hazard Diffusion Tensor Scalar Measurements no yes and no yes and yes 56.2% 5 CF Westin Diffusion Tensor Scalar Measurements
EMSegment BatchMake complete yes and yes yes and yes TBF TBF Stephen Aylward, Brad Davis, Julien Jomier, Julien Finet Batch Processing not in 3.6 RC2? EMSegmentBatch
EMSegment Command-line complete yes and yes yes and yes TBF TBF Kilian Pohl documentation link in xml/GUI needs revising same
EMSegment Simple complete yes and yes yes and yes TBF TBF Kilian Pohl EMSegmenter
6Hazard Execution Model Tour no yes and yes yes and yes 88.2% 0 Daniel Blezek, Bill Lorensen No 3.6 documentation (3.4 only) same
6Hazard Extract Skeleton no yes and no no and yes 0.0% Unknown Pierre Seroul, Martin Styner, Guido Gerig, Stephen Aylward same
Gaussian Blur BatchMake complete yes and yes yes and yes TBF TBF Julien Jomier, Stephen Aylward Batch Processing not in 3.6 RC2? GaussianBlurBatch
4Clay Gaussian Blur complete yes and no yes and yes 55.9% 0 Julien Jomier, Stephen Aylward same
3Bronze Gradient Anisotropic Diffusion complete yes and yes yes and yes 63.4% 0 Bill Lorensen GradientAnisotropicFilter
4Clay Grayscale Fill Hole complete yes and yes yes and yes 57.1% 0 Bill Lorensen same
3Bronze Grayscale Grind Peak complete yes and yes yes and yes 64.5% 0 Bill Lorensen same
1Gold Grayscale Model Maker complete yes and yes yes and yes 82.1% 0 Bill Lorensen same
3Bronze Histogram Matching complete yes and yes yes and yes 65% 0 Bill Lorensen, Xiaodong Tao same
5Coal Image Label Combine complete yes and yes yes and yes 7.5% 50 Alex Yarmarkovich same
Joint Rician LMMSE Image Filter complete yes and yes yes and yes TBF TBF Antonio Tristán Vega, Santiago Aja-Fernandez same
Labelmap Seeding complete yes and yes yes and yes TBF TBF Raul San Jose Estepar Label Seeding
6Hazard Label Map Smoothing no yes and no yes and yes TBF TBF Dirk Padfield, Josh Cates, Ross Whitaker same
6Hazard Linear registration no yes and no yes and yes 66.7% 45 Daniel Blezek sum of all errors from LinearRegistrationTest<n> tests same
  1. list produced with the script Slicer3/Scripts/generateListOfModules.sh
  2. including link to website documentation
  3. including name of author and of supervisor
  4. in % for non-interactive part
  5. Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files
  6. https://www.slicer.org/wiki/Documentation-3.6

Part B

Slicer 3.6 Quality Assurance
Score Name[1] Documentation Help [2] Acknowledgment [3] Test coverage [4] valgrind errors Current Owner Comments [5][6] - 1Gold Mask Image complete yes and yes yes and yes 82% 0 Nicole Aucoin same
4Clay Median Filter complete yes and yes yes and yes 57% 0 Bill Lorensen same
1Gold Merge Models complete yes and yes yes and yes 87% 0 Nicole Aucoin same
5Coal Mesh Contour Segmentation complete yes and yes yes and yes 5.1% 0 Peter Karasev same
5Coal Model Maker complete yes and yes yes and yes 41% 0 Nicole Aucoin same
MRI Bias Field Correction complete yes and yes yes and yes 71% TBF Sylavin Jaume same
5Coal Multiple models example no yes and no yes and yes 2.5% 50 Bill Lorensen n/a
1Gold Multiply Images complete yes and yes yes and yes 80% 0 Harini Veeraraghavan same
1Gold N4ITK MRI Bias correction complete yes and yes yes and yes 84% 0 Andriy Fedorov same
1Gold Orient Images complete yes and yes yes and yes 88% 0 Xiaodong Tao same
1Gold Otsu Threshold Segmentation complete yes and no yes and yes 91% 0 Bill Lorensen same
1Gold Otsu Threshold complete yes and no yes and yes 100% 0 Bill Lorensen same
1Gold PolyData To Label Map complete yes and yes yes and yes 89% 0 Xiaodong Tao, Nicole Aucoin same
6Hazard Register Images BatchMake complete yes and yes yes and yes TBF TBF Julien Finet, Stephen Aylward no testing script found in Slicer3-build/bin Register Images batch
6Hazard Register Images MultiRes (Experimental) complete yes and yes yes and yes 49.5% TBF Casey Goodlett no testing script found in Slicer3-build/bin Robust Multiresolution Affine Registration
6Hazard Register Images complete yes and yes yes and yes 0% TBF Casey Goodlett no testing script found in Slicer3-build/bin Expert Automated Registration
5Coal Resample DTI Volume complete yes and yes yes and yes 41% 0 Francois Budin same
5Coal Resample Scalar/Vector/DWI Volume complete yes and yes yes and yes 43% 0 Francois Budin same
Resample Scalar Volume BatchMake complete yes and yes yes and yes TBF TBF Julien Finet no testing script found in Slicer3-build/bin Resample Volume batch
6Hazard Rician LMMSE Image Filter complete yes and no yes and yes 20.5% TBF Antonio Tristán Vega, Santiago Aja-Fernandez, Marc Niethammer no testing script found in Slicer3-build/bin same
3Bronze Rigid registration complete yes and yes yes and yes 61% 0 Jim Miller Fast Rigid Registration
6Hazard Robust Statistics Segmentation complete yes and yes yes and yes 82.3% TBF Yi Gao no testing script found in Slicer3-build/bin RobustStatisticsSeg
6Hazard ROISelect complete yes and no yes and yes TBF TBF Lauren O'Donnell no testing script found in Slicer3-build/bin same
6Hazard Simple DWI IO Test no yes and no yes and yes TBF TBF Raul San Jose no testing script found in Slicer3-build/bin n/a
6Hazard Simple IO Test no yes and no yes and yes TBF TBF Bill Lorensen no testing script found in Slicer3-build/bin n/a
6Hazard Simple region growing complete yes and no yes and yes TBF TBF Jim Miller, Harini Veeraraghavan no testing script found in Slicer3-build/bin same
2Silver Subtract Images complete yes and yes yes and yes 76% 0 Harini Veeraraghavan same
6Hazard Test GridTransform registration no yes and no yes and yes 100% 0 Yinglin Lee same
4Clay Threshold Image complete yes and yes yes and yes 59% 0 Nicole Aucoin same
6Hazard Transform From Fiducials complete yes and yes yes and yes TBF TBF Casey Goodlett no testing script found in Slicer3-build/bin same
6Hazard Unbiased Non Local Means filter for DWI complete yes and no yes and yes 20.5% TBF Antonio Tristán Vega, Santiago Aja-Fernandez no testing script found in Slicer3-build/bin same
1Gold Voting Binary Hole Filling complete yes and yes yes and yes 100% 0 Jim Miller same
  1. list produced with the script Slicer3/Scripts/generateListOfModules.sh
  2. including link to website documentation
  3. including name of author and of supervisor
  4. in % for non-interactive part
  5. Test coverage percentage determined by: [# lines code covered / total # lines of code (covered and non-covered) *100] of relevant .cxx and .h files
  6. Valgrind errors determined through use of runValgrindForOneModule.sh script in Slicer3-build/Scripts directory; dependent upon module testing script being found in Slicer-3-build/bin/ directory
  7. https://www.slicer.org/wiki/Documentation-3.6

Testing Partition

Most Slicer modules have a GUI component and a Data Processing component.

Testing GUI components is still a challenge, so we will focus here on testing the Data Processing components. This can be done in most cases by partitioning the module into a GUI section and a Data Processing section, where the second one usually takes the form of a C++ class (although that is not a requirement).

The data processing section can be tested by using standard CTest/CMake mechanisms. Basically by adding ADD_TEST() entries to the CMakeLists.txt file of the module.

More information:

Luis Ibanez' scoring system

The following scoring will be applied to the data processing sections of all modules:

Slicer 3.6 Quality Assurance Scoring
Score Code Coverage Valgrind Errors Documentation Tutorial
1Gold > 80% 0 yes yes
2Silver > 70% < 10 yes yes
3Bronze > 60% < 50 yes yes
4Clay > 50% < 100 yes yes
5Coal < 50% > 100 yes yes
6Hazard unknown unknown no no

The code coverage and Valgrind error must be the ones reported on the Nightly Slicer Dashboard. Anecdotal data is not acceptable.