Winter project week 2011 Workflows SOA
- BWH: Alexander Zaitsev, Wendy Plesniak, Charles Guttmann, Ron Kikinis
- BWH/Dept of Nuclear Medicine: Laura Horkey, Jon Heiner
- BWH/Center for Neurological Imaging: David Tate
Supplement 3D Slicer and Extensible Neuroimaging Archive Toolkit (XNAT) with workflow management system. Provide integration and interoperability between 3D Slicer, XNAT Services and 3-rd party image processing applications and high performance computing systems. Implement it as within currently developed Structural Planning and Implementation in Neurological Exploration (SPINE) System.
Our approach for SOA solutions is summarized in the Main Project Page reference below.
Our plan for the project week is to present live demo for use case instances, show examples of integration Slicer3, XNAT and Cluster Computing using Service Oriented Architecture (SOA) and Workflow approach. Main accent will be concentrated on solutions that can be deployed on end-users workstations as well as on servers. Case Studies: PET/CT longitudinal studies, EM Segmentation (Aging and HIV Studies), Deploying Matlab routines as services.
We also planning to discuss and get feedback from Slicer developers regarding migration of stand-alone Java rich clients into Slicer Internals as QT modules: QT/C++ or PyQT.
The automation for Skull Stripping (SPECTRE) and EM Segmentation processes will be addressed
We'll try to get a solution for MS Lesion and HIV White Matter Hyper-intensity EM Segmentation
- Prior to the Project Week:
- During the Project Week:
- Established essential communication pathways between workflow engine (as a particular case of external web services and third party applications) and Slice4 instance via QT technology
- Learned how to build Slicer QT widgets and integrate a stand alone QT application with Slicer4
- Deployed functional EM Segmentation Workflow Wizard as a QT Slicelet (or thin Slicer Client)
Link to the QT Thin Client / Sicelet Prototype: File:AVZ Workflows AHA 2011 QTWorkflowClientScreenshots.ppt
- Integrations' Immediate Plans
- Migrate from existing Java workflow front-end GUIs to QT Slicelets invoked from Slicer4
- Migrate web services from Slicer3.6 to Slicer4 computational modules as they become available. Meanwhile continue using Slicer 3.6 modules, which will be transparent to end user by the nature of SOA integration principles.
- Integrations' Long Term Plans
- Find the way to watch from the QT Slicelet for particular nodes' status in the parent Slicer4 instance. This is mainly to prevent users from accidental exiting or closing scene without saving required volumes
* New Modules for the workflows - Slicer's 3.6 SPECTRE module will replace FreeSurfer skull stripping utility in coming weeks and will be replaced with Slicer's 4 SPECTRE module once it becomes available
- New Scenarios for EM Segmentation: discussed the general approach for EM Wizards development to support projects with multiple subjects and time points. Agreed to pursue automated segmentation scenarios with manual intervention only after the segmentation fails.
This work will be delivered to the NA-MIC Kit as a
- ITK Module No
- Slicer Module
- Built-in QT - Yes
- Extension -- commandline Yes (Workflow Invocation Stubs)
- Extension -- loadable TBD (with QT)
- Other -- Web Service Libraries, Workflow Composite Applications deployable on GlassFish Application Server, Rich Clients for Orchestrating Workflows and Slicer GUI