Difference between revisions of "Projects:ARRA:SlicerQA"

From NAMIC Wiki
Jump to: navigation, search
Line 18: Line 18:
  
 
=Progress=
 
=Progress=
 +
 +
== Week ending 4/4/10 ==
 +
 +
* Continued monitoring of slicer-users list
 +
* Continued monitoring of nightly builds
 +
 +
== Week ending 3/26/10 ==
 +
 +
* Continued monitoring of slicer-users list
 +
* Continued monitoring of nightly builds
  
 
== Week ending 3/19/10 ==
 
== Week ending 3/19/10 ==

Revision as of 03:08, 4 April 2010

Home < Projects:ARRA:SlicerQA

Back to Slicer ARRA home page

Motivation

A core design feature of the Slicer 3 medical image data analysis and visualization platform, cross platform compatibility, enables the widest possible user community to benefit from this valuable research tool. To support this key functionality, all software code in the core and modules (built-in, loadable, scripted, and command line) must be fully tested on each of the supported platforms (Windows, Solaris, Linux 64 and 32-bit, Mac OSX Intel and PowerPC). All documentation and training materials (tutorials, demonstrations, practice data sets. etc) must also be developed and tested on each supported platform.

With the recent release of Slicer 3 (Stable Release version 3.4) the number of available modules that need testing and training materials has substantially increased. This is compounded by the fact that an increasing number of users are contributing new modules to the consortium. Unlike NA-MIC engineers, most members of the user community develop their algorithms and/or workflows on a single software platform, thus never encounter any bugs or other cross platform incompatibilities that must be resolved.

Funding of this supplement will enable the NA-MIC project team to more effectively and rapidly disseminate Slicer modules and capabilities to the user community and to minimize sources of errors in the use of the software.

Research Plan

The new Q/A engineer will work with the team of Core 2 Engineers overseeing Slicer 3 development to devise an efficient protocol for testing each type of module (built-in, loadable, scripted, and command line) on each supported platform. This testing forms a baseline so we can confirm that new versions of the code can be used to accomplish the same tasks. This workflow will be implemented for all existing Slicer 3.4 modules and applied to new modules as they become part of the standard distribution. The testing protocol will leverage the engineering methodologies adopted by the NA-MIC effort, which emphasize automated testing to the extent technically possible, augmented by human spot checking of functionality that cannot be efficiently automated. Specifically, the Slicer 3 effort relies heavily on core NA-MIC Kit components such as VTK and ITK that include extensive automated testing frameworks to ensure that fundamental operations are successfully completed on all supported platforms. These automatically testable operations include: compiling the code, reading and writing files, performing a defined set of image processing operations, etc. For each of these operations the testing system can confirm that a correct result is obtained. For some aspects of the software, no fully automated testing solutions exist; for example, the addition of a new button on a dialog box may make one or more other buttons impossible to access. For this type of functionality, we must rely on human spot checking of core functions as the code is developed. Our approach in these situations is to capture the essential functionality through the tutorials that describe the module. By assuring that the tutorial can be accomplished successfully on all platforms we develop confidence in proper functionality.

The Q/A engineer will then work with the Training Core team (R. Gollub and S. Pujol) to develop new tutorials or extend existing ones to all supported software platforms for each module as soon as it has reached a level of stability and maturity such that the interface and input/output values are not being rapidly revised.

Key Personnel

  • Stuart Wallace

Progress

Week ending 4/4/10

  • Continued monitoring of slicer-users list
  • Continued monitoring of nightly builds

Week ending 3/26/10

  • Continued monitoring of slicer-users list
  • Continued monitoring of nightly builds

Week ending 3/19/10

  • Continued monitoring of slicer-users list
  • Continued monitoring of nightly builds

Week ending 3/12/10

  • Continued monitoring of slicer-users list
  • Continued work on AHM extension tutorials
    • VMTK Centrelines module on brain CT data
    • VMTK Centrelines module on liver CT data
    • Robust Statistics Segmentation on liver CT data
  • Continued adding new tutorials to Slicer 101 page

Week ending 3/5/10

  • Continued monitoring of slicer-users list
  • Continued work on AHM extension tutorials
    • VMTK Centrelines module on brain CT data
    • VMTK Centrelines module on liver CT data
    • Robust Statistics Segmentation on liver CT data
  • Continued adding new tutorials to Slicer 101 page
  • Continued monitoring of nightly builds
  • Preparations for Slicer3.6 release relating to extensions/plugins.

Week ending 2/26/10

  • Continued monitoring of slicer-users list
  • Continued work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
    • VMTK Centrelines module on brain CT data
  • Started task of adding new tutorials to Slicer 101 page
  • Continued monitoring of nightly builds
  • Preparations for Slicer3.6 release relating to extensions/plugins.

Week ending 2/19/10

  • Continued monitoring of slicer-users list
  • Continued work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
    • Robust Statistics Segmentation module
    • VMTK Centrelines module on brain CT data
  • Continued work on wiki page for Slicer Training Data
  • Continued monitoring of nightly builds

Week ending 2/12/10

  • Continued monitoring of slicer-users list
  • Continued work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
    • Robust Statistics Segmentation module
  • Continued work on wiki page for Slicer Training Data
  • Continued monitoring of nightly builds

Week ending 2/5/10

  • Continued monitoring of slicer-users list
  • Continued work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
    • Robust Statistics Segmentation module
    • VMTK Centerlines used with liver CT data
  • Continued work on wiki page for Slicer Training Data
  • Continued monitoring of nightly builds

Week ending 1/29/10

  • Continued monitoring of slicer-users list
  • Continued work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
    • Robust Statistics Segmentation module
    • VMTK Centerlines used with liver CT data
  • Created revised wiki page for Slicer Training Data
  • Continued monitoring of nightly builds

Week ending 1/22/10

  • More work on tutorial revisions/QA Slicer Tutorial Journal
    • Worked on error messages found with DTI Neurosurgery dataset (thank you Alex Y)
  • Continued monitoring of slicer-users list
  • Met with Randy and Sonia to plan upcoming Slicer training workshops at HMS and UIowa
  • Initiated work on revised 'Hello World' tutorial for python
  • Continued work on AHM extension tutorials
  • Continued monitoring of nightly builds

Week ending 1/15/10


Week ending 1/8/10

  • 2010 AHM
    • Work on new and revised tutorials for extensions in development
    • Worked with Yi Gao to debug Robust Statistics Segmentation algorithm
    • Tutorial contest polishing
    • QA of DTI Neurosurgery dataset
  • Continued monitoring of slicer-users list
  • Continued QA of Slicer 101 tutorials

Week ending 1/1/10

  • Continued monitoring of slicer-users list.
  • Continued monitoring of nightly builds and extensions.
  • Preparations for NAMIC AHM (Robust Statistics Segmentation and Tutorial Polishing).

Week ending 12/25/09

  • Continued monitoring of slicer-users list.
  • Continued monitoring of nightly builds and extensions.

Week ending 12/18/09

  • Continued monitoring of slicer-users list.
  • Initial work begun for Robust Statistics Segmentation module work/discussion for AHM.
  • Met with Ron to refine QA procedures.
  • Continued tutorial testing on nightly builds.

Week ending 12/11/09

  • Continued monitoring of slicer-users list.
  • Post RSNA meeting with Randy and Sonia to discuss points of interest for moving forward with training/tutorial materials and AHM work.
    • Set up meeting with Yi Gao for AHM to further work with and refine the Robust Statistics Segmentation module. Initiated some work on the modeule that could be done pre meeting.

Week ending 12/04/09

  • Work with EM Segmenter familiarization
  • Drafted email contact list for Slicer extensions for wiki
  • Continued familiarization with newer modules, especially those only available in 3.5 currently.
  • Continued monitoring of slicer-users email list.

Week ending 11/27/09

  • Last revision of liver segmentation tutorial for RSNA/CTSA. Used Python Surface Toolbox for improved smoothing results. Also tried out Robust Statistics Segmentation algorithm, but kept Python Sirface Toolbox results for tutorial.
  • Revised liver segmentation tutorial slides to reflect use of updated Slicer version (3.5) and segmentation techniques.
  • Finalized handouts for RSNA/CTSA.
  • Continued monitoring of slicer-users email list.

Week ending 11/20/09

  • Revision of liver segmentation tutorial for RSNA/CTSA. Used Python Surface Toolbox for improved smoothing results.
  • Finalized edits to RSNA/CTSA tutorial powerpoints and datasets (RECIST, PET/CT, etc).
  • Created and revised handouts for RSNA/CTSA.
  • Continued familiarization with newer modules, especially those only available in 3.5 currently.
  • Continued monitoring of slicer-users email list.
  • Helped Steve debug Partners PC specific bug; could not recreated problem on Partners PC with Slicer 3.4 on Win 32.

Week ending 11/13/09

  • Completed most recent round of smoothing for liver segmentation tutorial for RSNA. Worked with Steve and Ron on this; have both short term and long term solutions for the improvement of the smoothing methods.
  • Initiated a protocol for QA of nightlies and plug ins with input from Katie. Will be creating new wiki for this task.
  • Had first EM Segmenter T-Con with Andriy, Kilian, and Sylvain. Ironed out priorities and responsibilities or each of the group members, and will build on this work.
  • Continued to monitor the Silcer Users mailing list.
  • Continued familiarization with newer modules, especially those only available in 3.5 currently.

Week ending 11/06/09

  • Completed most recent round of 2009 RSNA CTSA tutorial and data QA. This includes updated liver segmentation, PET/CT Fusion, RECIST, and Change Tracker datasets. All tested in Slicer 3.5, Windows 32 bit build.
    • Some of these also tested in Slicer 3.5 for Linux, also with no problems.
  • Met with Steve to go over protocol for improved segmentation protocol.
  • Met with Ron and Katie to discuss QA protocol for nightlies and plug-ins.

Week ending 10/30/09

  • Continued EM Segementer testing; also set up a monthly t-con with Andriy, Killian P., and Sylvain J. to discuss results of module testing.
  • Continued 2009 RSNA Conference preparation; Catalyst workshop tutorial dataset and powerpoints tested on Slicer 3.4. Will continue work on segmentation smoothing improvements and their implementation in both 3.4 and 3.5.
  • Meeting with Ron and Katie regarding QA and upkeep of extensions.

Week ending 10/23/09

  • EM Segmentation testing, including review and revision of tutorials, bug tracking, and introduction to vervet data. Done with Andriy F.
  • Followup from SfN 2009 DTI Workshop.
  • 2009 RSNA Conference preparation.

Week ending 10/16/09

  • Continued work on SFN 2009 DTI Workshop tutorials. Confirmed that the DTI and 3D Visualization datasets worked in Slicer 3.4 stable version across all platforms. Final revisions to tutorial slides completed.
  • Continued work on Slicer 3.4+ Stochastic Tractography Module (Slicer Daemon).