1 / 11

MDSplus Quality Improvement Project T.Fredian, J. Stillerman, G. Manduchi, K. Erickson, A. Rigoni

MDSplus Quality Improvement Project T.Fredian, J. Stillerman, G. Manduchi, K. Erickson, A. Rigoni. MDSplus Quality Improvement Project. Why focus on quality improvements? MDSplus is “ mature ” . Still has OpenVMS “ features ” . The good, bad and ugly.

Download Presentation

MDSplus Quality Improvement Project T.Fredian, J. Stillerman, G. Manduchi, K. Erickson, A. Rigoni

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. MDSplus Quality Improvement ProjectT.Fredian, J. Stillerman, G. Manduchi, K. Erickson, A. Rigoni

  2. MDSplus Quality Improvement Project Why focus on quality improvements? MDSplus is “mature”. Still has OpenVMS “features”. The good, bad and ugly. More modern software techniques available. Improvements in compilers. Wider set of standard built in functions. Broader platform capabilities Greater ease in adding new functionality to MDSplus

  3. MDSplus Quality Improvement Project Why?(2) New team members. Increased knowledge pool of current technologies. Fresh ideas. Original team members. Understand the need to improve existing code and documentation. Willing to try new techniques and throw out older code which is hard to maintain.

  4. MDSplus Quality Improvement Project Why?(3) MDSplus history ~ 25 years old Originally OpenVMS only Ported to linux 18 years ago (with expectation that OpenVMS would remain the predominant platform). Base code retained OpenVMS compatibility for many years. Some of the ported code used questionable techniques only recently discovered using newer compiler options for analyzing code behavior.

  5. MDSplus Quality Improvement Project Why?(4) MDSplus history Developers had focused mostly on: Improved functionality. Wider variety of computing platforms. Remote access to data. Performance.

  6. MDSplus Quality Improvement Project At some point we came to realization that things were just getting ‘awkward’.

  7. MDSplus Quality Improvement Project How? General code cleanup Use of indent command to apply common indentation to all the code. Use of doxygen compatible comments to produce code documentation. Use of valgrind, --coverage, --sanitize=address to discover and fix memory leaks, coding issues etc.. Remove old/unnecessary #ifdef #else #endif code paths based on obsolete platform support. Address warnings generated by modern compilers.

  8. MDSplus Quality Improvement Project How? (2) Improve build procedures Migrate from hand written Makefile’s to using automake tools. Move from cvs to git repository. Use of docker for builds of linux and Windows distributions. Use of GNU mingw64 and nsis for building Windows distributions.

  9. MDSplus Quality Improvement Project How? (3) Refactor code MDSplus internals Command interpreter rewrite Tdi expression evaluator (tdishr) rewrite Migration to c++ Retain compatibility with documented API’s Retain functional compatibility Retain compatibility with existing stored data

  10. MDSplus Quality Improvement Project How?(4) Improved user documentation New tutorials including downloadable code examples. Improvements to website layout. Explore tools to reach out to user community for more active feedback.

  11. MDSplus Quality Improvement Project Summary We hope to improve the quality and robustness of the MDSplus system to ensure its viability as an important tool to the fusion community for many years to come. With fresh ideas from new developers MDSplus can be a much better product while maintaining compatibility with existing applications and stored data. As always, input from user community is welcomed and has been the driving force for most of the functionality found in MDSplus today!

More Related