Title :
Emulating design by contract in C++
Author :
Maley, David ; Spence, Ivor
Author_Institution :
Queen´´s Univ., Belfast, UK
Abstract :
To date, much of the software written in computational physics has been produced with little regard paid to modern software engineering techniques. The paper documents experiences in beginning to address this shortcoming for Config, a component of the Graphical R-Matrix Atomic Collision Environment (GRACE). The work is based around a formal specification of the Config component. The principal focus of the paper will be on a non-intrusive mechanism for monitoring constraints such as class invariants, preconditions and postconditions for highly structured data types based on the containers and algorithms of the Standard Template Library (STL), a mechanism which can be extended to handle structured object update and display prototyping
Keywords :
C++ language; formal specification; physics computing; software libraries; C++; Config; GRACE; Graphical R-Matrix Atomic Collision Environment; Standard Template Library; class invariants; computational physics; constraint monitoring; design emulation; display prototyping; formal specification; highly structured data types; non-intrusive mechanism; postconditions; preconditions; software engineering techniques; structured object update; Containers; Contracts; Displays; Electrons; Formal specifications; Monitoring; Packaging; Physics; Software engineering; Software libraries;
Conference_Titel :
Technology of Object-Oriented Languages and Systems, 1999. Proceedings of
Conference_Location :
Nancy
Print_ISBN :
978-0-7695-0275-5
DOI :
10.1109/TOOLS.1999.779000