[Return | SoftNeSS Home Page]

Report of the Data Analysis and Visualization Software Working Group

Workshop Goals

  1. Identify how software development in the neutron scattering community could be made more transparent and efficient.
  2. Provide a forum for the presentation of commercial and public domain software which address the problems of data visualization.

Background

The proliferation of relatively cheap computers with sophisticated software and hardware capabilities, and the large volumes of data which are now being collected at existing neutron sources provide a continuing challenge. The development of new capabilities for data visualization and the evolution of the graphical user interface (GUI) are having a significant impact on the manipulation of experimental data.

A consequence of this evolution is the inherent complexity of software development in such an environment. There are a number of important implications, three examples of which are :

  1. Software development requires an ever increasing amount of effort.
  2. Any development which does not make use of newer technology in the area of the GUI is unlikely to be generally accepted.
  3. Software which is not written in accordance with existing and new standards will be at risk of short term obsolescence arising from the fluid nature of the computer industry.


Potential Solutions

  1. Promote collaborations to reduce the amount of duplication.
  2. Improve the communication within the community.
  3. Identify standard tools for software development (this refers to relatively high-level packages such as IDL, AVS or Khoros).

The first two suggestions are clearly worthwhile and the discussion in the working group focused on the means of achieving them. It was decided that an on-line discussion group could be of significant use, and the model provided by existing bulletin boards should be tried. This would allow software developers to pose questions regarding potential collaborations and determine whether an existing application was available or adaptable for the problem in question. At the same time, this forum would promote communication regarding any aspect of neutron or X-ray scattering, ranging from theoretical models to ancillary equipment for instruments.

The third potential solution of standardization on high-level commercial or public domain software generated most of the discussion in the working group. The demonstration of a variety of such software had taken place earlier on in the workshop, and it was clear that it could be of great use. Roger Pynn (Chairman) pointed out that there were two clear drawbacks to standardizing on particular software packages. Firstly, there is unlikely to be general agreement about the choice of development software, and, secondly, it implies a commitment to a technology which could become obsolete relatively rapidly. The problems of choosing the right technology led the group to conclude that such standardization would be inefficient and impractical.

When the working group had accepted that diversity can be beneficial, the discussion focused on a specific format for the interchange of software. It was decided that :

  1. A computer on the internet would be designated as a site for a software repository. This will take the form of an FTP site with mirror sites distributed around the world. Access to the FTP site would also be provided on the World Wide Web using products such as Mosaic.
  2. All software would be acceptable with the following minimal rules, which would be enforced by the manager of the repository:
    1. There must be a connection to neutron or X-ray scattering although the definition would be quite broad since supporting packages such as plotting software would be acceptable.
    2. Packages which are useful but available elsewhere (i.e. at other FTP sites) would be included in the form of pointers to their location on the internet.
    3. Although no commitment to maintain the contribution would be required, the origin of the code should be known.
    4. There must be documentation.
    5. Source code should be provided with the necessary files required to construct the executables for specific platforms. These files should be combined into tar files, or, in the case of VMSÜspecific software, VMS savesets.
    6. Executables would be discouraged except for cases such as Mac or PC programs where the necessary compilers might not be generally available.
  3. Active participation by the X-ray scattering community would be pursued.
  4. Software should be supplied under the terms of the GNU General Public License as published by the Free Software Foundation.

Summary

The working group came to the conclusion that the development of standards for software development would not be a solution. The main effort should be devoted to improving communication within the scattering community in order to reduce the parallel development of codes which address the same need.

To this end, the working group recommended that a repository of software of relevance to neutron scatterers should be developed, and that an effort should be made to involve the X-ray scattering community in this endeavor. In addition, it was recommended that a computer bulletin board should be set up as a means of improving communication and enhancing the likelihood of collaboration amongst software developers.

The repository will welcome any contribution of software, provided that there is some relevance to neutron scattering. The details of additional software (e.g. graphics packages) which are of interest to developers, but which are available elsewhere, will be listed in the repository.


[Return | SoftNeSS Home Page]

Comments to: Ray Osborn <ROsborn@anl.gov>
Revised: Saturday, November 9, 1996

Copyright © 1994, Frans Trouw, Argonne National Laboratory. All rights reserved.