Implementing Operators' Requests in the CSS Data Browser
DB = CSS Data Browser
AV = Archive Viewer
MD = Man-Days
Introduction
Our operators have compiled a list of bugs and requests for AV (1) that will take 3-4 months to implement. We decided to evaluate the newest version (2) of the DB (as well as some of the related CSS tools (3)) to see whether we can adopt it in a similar period of time.
Executive Summary
DB is a mature application that implements almost all of the existing functionality of the AV. However, as an Eclipse-based rich client application, the DB user interface should be adapted to the specific needs of our operators. In addition, some SWT widgets in the DB have a considerably different feel than the Swing widgets in the AV.
What DB gives us for (almost) free
DB can plot live PV data.
DB implements many basic data fits in the post analyzer.
DB has an extensive “Undo-Redo” mechanism.
DB supports panning of plots as well as plot annotations.
Essential Tasks
We need to create a SLAC product of the SNS DB (there is a learning curve). Some of the right-click menus have to be converted to immediately accessible panels. Some of the existing features that are specific to SNS need to be removed (e.g. “Logbook...”).
In addition and if possible, we might need to implement the behavior of some SWT widgets (e.g. the combobox) to be similar to those in Swing. Finally, we might need to change the look of some widgets (such as “Browse” button that opens a file dialog to “Browse...” ).
10-35 MDs
We need to implement command-line options similar to those in the AV (esp. to pass the config files).
In addition and if possible, we might need to allow the DB to access the entire file system (not just its workspace directory). We might need to implement the “Open Recent” files feature, too.
5-12 MDs
We need DB to handle sparsified data.
2-4 MDs
DB needs to "print" to mcc elog.
1-5 MDs
We need to convert config files from AV to DB format (or allow DB to read AV config files).
2-3 MDs
We need tooltips for individual plot values (note: implemented in Post Analyzer).
1-3 MDs
Optional Tasks
When user adds another PV, AV assigns an existing value axis to it, while per default DB creates a new value axis for it.
0.5 MDs
Unlike DB, AV allows the user to change settings for more than one trace at a time.
1-2 MDs
AV has finer settings for the plot legend.
1-2 MDs
AV has more parameters for retrieving data used in formulas.
1-3 MDs
Final considerations
DB will not be able to print on Linux KDE-based desktops. However, we might not need this functionality at all, if we implement “To Logbook...” button.
Our enhancements to the DB might be considered as a contribution to the CSS collaboration.
All other features of the DB are similar to those of the existing AV and/or are listed under (1).
Conclusion
DB takes care of all bugs and many requests on the operators' list (1), in particular 2, 3, 5, 6, 7, and 15. This would save us 23-35 MDs.
The additional major tasks will take 21-62 MDs to implement.
The additional optional tasks will take 0-8 MDs to implement.
Overall, it will take 0-35 MDs (or 0-7 Man-Weeks, or 0-2 Man-Months) longer to implement all of operators' requests in the DB rather than in the AV.
(1) ArchiveViewer To-Do List
(2) http://ics-web.sns.ornl.gov/css/index.html
(3) Such as Post Analyzer (for correlation plots) and Probe (for displaying information about a PV)- from now on referred to as part of the “Data Browser”