@techreport{BoghossianKohlbacherLenhof1999,
TITLE = {{BALL}: Biochemical Algorithms Library},
AUTHOR = {Boghossian, Nicolas and Kohlbacher, Oliver and Lenhof, Hans-Peter},
LANGUAGE = {eng},
URL = {http://domino.mpi-inf.mpg.de/internet/reports.nsf/NumberView/1999-1-002},
NUMBER = {MPI-I-1999-1-002},
INSTITUTION = {Max-Planck-Institut f{\"u}r Informatik},
ADDRESS = {Saarbr{\"u}cken},
YEAR = {1999},
DATE = {1999},
ABSTRACT = {In the next century, virtual laboratories will play a key role in <br>biotechnology. Computer experiments will not only replace<br>time-consuming and expensive real-world experiments, but they will also<br>provide insights that cannot be obtained using ``wet'' experiments.<br>The field that deals with the modeling of atoms, molecules, and their<br>reactions is called Molecular Modeling. The advent of<br>Life Sciences gave rise to numerous new developments in this<br>area. However, the implementation of new simulation tools is extremely<br>time-consuming. This is mainly due to the large amount of<br>supporting code ({\eg} for data import/export, visualization, and so on)<br>that is required in addition to the code necessary to implement the new idea. The<br>only way to reduce the development time is to reuse reliable code,<br>preferably using object-oriented approaches. We have designed and<br>implemented {\Ball}, the first object-oriented application framework for rapid<br>prototyping in Molecular Modeling. By the use<br>of the composite design pattern and polymorphism we were able to model<br>the multitude of complex biochemical concepts in a well-structured and<br>comprehensible class hierarchy, the {\Ball} kernel classes. The<br>isomorphism between the biochemical structures and the kernel classes<br>leads to an intuitive interface. Since {\Ball} was designed for rapid software<br>prototyping, ease of use and flexibility were our principal design<br>goals. Besides the kernel classes, {\Ball} provides fundamental<br>components for import/export of data in various file formats,<br>Molecular Mechanics simulations, three-dimensional visualization, and<br>more complex ones like a numerical solver for the Poisson-Boltzmann<br>equation. The usefulness of {\Ball} was shown by the<br>implementation of an algorithm that checks proteins for<br>similarity. Instead of the five months that an earlier implementation<br>took, we were able to implement it within a day using {\Ball}.},
TYPE = {Research Report / Max-Planck-Institut für Informatik},
}
