Framework for Developing Scientific Applications: Solving 1D and 2D Schrödinger Equation by using Discrete Variable Representation Method - Koteska, Bojana; Pejov, LJupcho; Mishev, Anastas (My University, 2015)
The absence of software engineering practices while developing scientific applications has negative impact on the quality of the applications. As a result, the probability for finding bugs in the application is higher, testing is more difficult and further code optimisation and parallelisation become an issue. In order to improve the developing process, in this paper, we propose a framework for developing scientific applications. The framework helps scientists to understand some of the basic concepts of software engineering and to change their current habits for developing scientific applications. Our goal is to adapt and modify some of the software engineering practices in every phase of the application development process. Aiming to use this framework in practice, we apply the recommendations for all phases while developing application for solving 1D and 2D Schrödinger equation by using the Discrete Variable Representation method (DVR). Using the framework resulted in better code organisation, linked execution of the application modules for 1D and 2D equations, defining requirements and designing tests. As a final product we have an application organised in modules, documentation for each developing phase, comments in the code and executable tests.