next up previous
Next: Introduction

The Design of a Portable Scientific Tool:

A Case Study Using SnB

Steven M. Gallo
State University of New York at Buffalo
Department of Computer Science
226 Bell Hall
Buffalo, New York 14260
smgallo@cs.buffalo.edu
http://www.cs.buffalo.edu/~smgallo

Russ Miller
State University of New York at Buffalo
Department of Computer Science
226 Bell Hall
Buffalo, New York 14260
miller@cs.buffalo.edu
http://www.cs.buffalo.edu/pub/WWW/faculty/miller

Charles M. Weeks
Hauptman-Woodward Medical Research Institute
73 High Street
Buffalo, New York 14203
weeks@hwi.buffalo.edu
http://www.hwi.buffalo.edu/people/weeks.html

Technical Paper

Abstract:

Developing and maintaining a large software package is a complex task. Decisions are made early in the design process that affect i) the ability of a user to effectively exploit the package and ii) the ability of a software engineer to maintain it. This case study discusses issues in software development and maintainability of a scientific package called SnBgif, which is used to determine molecular crystal structures. The design of the user interface is discussed along with software engineering concepts, including modular programming, data encapsulation, and internal code documentation. Issues concerning the integration of Fortran, a language that is still widely used in the scientific community, into a modern scientific application with a C-based user interface are also discussed. Scientific applications benefit from being available on a wide variety of platforms. Due to the demand, SnB is available on a variety of sequential and parallel platforms. Methods used in the design of SnB for such portability are presented, including POSIX compliance, automatic configuration scripts, and parallel programming techniques.





Steven M. Gallo
Mon Aug 19 23:09:04 EDT 1996