Download presentation
Presentation is loading. Please wait.
Published byLambert Hill Modified over 8 years ago
1
NA-MIC National Alliance for Medical Image Computing http://na-mic.org Core 1b – Engineering Software Process Stephen R. Aylward Kitware, Inc.
2
National Alliance for Medical Image Computing http://na-mic.org 1 4 2 5 3 Core 1b – Engineering 5 Aims / 5 Platforms Architecture – tools, operating paradigms, reporting mechanisms, integration points End-user platform – interactive methods and information visualization for longitudinal analysis, exploratory data analysis, and translational research Computational platform – stream processing, cloud computing, statistical analysis, informatics, machine learning Data management – non-imaging and derived data, DICOM and cloud services Software engineering and software quality – navigable timeline for revision control, build, test, documentation and release
3
National Alliance for Medical Image Computing http://na-mic.org Software Process Supporting ease-of-developing while promoting community standards Developer Desires Focus on implementing an algorithm Simple code base Developer documentation Large collection of building blocks Implement and move-on Developer Desires Focus on implementing an algorithm Simple code base Developer documentation Large collection of building blocks Implement and move-on Community Desires Stable application Ease-of-use (friendly GUI) End-user documentation Performs as expected Community Desires Stable application Ease-of-use (friendly GUI) End-user documentation Performs as expected
4
National Alliance for Medical Image Computing http://na-mic.org Slicer3 Success = High Expectations = Slicer4 Challenge
5
National Alliance for Medical Image Computing http://na-mic.org NA-MIC Kit Software Process Tools Cmake and CPack – Cross-platform build control from a single configuration file – Release 2.8.7 – 1900 downloads per day – Users: KDE, Blizzard (WoW), NVidia DriversS – Super-build – Brings-in external libraries with little effort – “building blocks” for developers – VTK, ITK, Qt, Python
6
National Alliance for Medical Image Computing http://na-mic.org NA-MIC Kit Software Process Tools CDash and CTest – Regression testing on multiple platforms: – OS, CPU, Compilers – Over 100 projects freely hosted on cdash.org – Fetches data from servers for testing – Reporting per module – Upload binaries from clients to Midas/CDash
7
National Alliance for Medical Image Computing http://na-mic.org NA-MIC Kit Expansion -Qt -Supported by a massive community -CTK (commontk.org) -Medical application toolkit (Qt, DCMTK) -Python -Scipy -Numpy -NiPyPe -PythonQt -SimpleITK -Focus on algorithm -Large number of building blocks -Ease-of-use
8
National Alliance for Medical Image Computing http://na-mic.org Ongoing work -GUI Testing (from ParaView) -Computer-Assisted Documentation -Focus on Modules -Adopt ITKv4 software practices -Git: Next/Master Branches -Modularity -Document and distribute external modules -Python and C++
9
National Alliance for Medical Image Computing http://na-mic.org Software Process Supporting ease-of-developing while promoting community standards Developer Desires Focus on implementing an algorithm Simple code base Developer documentation Large collection of building blocks Implement and move-on Developer Desires Focus on implementing an algorithm Simple code base Developer documentation Large collection of building blocks Implement and move-on Community Desires Stable application Ease-of-use (friendly GUI) End-user documentation Performs as expected Community Desires Stable application Ease-of-use (friendly GUI) End-user documentation Performs as expected
10
National Alliance for Medical Image Computing http://na-mic.org 1 4 2 5 3 Core 1b – Engineering 5 Aims / 5 Platforms Architecture – tools, operating paradigms, reporting mechanisms, integration points End-user platform – interactive methods and information visualization for longitudinal analysis, exploratory data analysis, and translational research Computational platform – stream processing, cloud computing, statistical analysis, informatics, machine learning Data management – non-imaging and derived data, DICOM and cloud services Software engineering and software quality – navigable timeline for revision control, build, test, documentation and release
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.