Data abstraction in engineering software development. Baugh, J. & Rehak, D. Journal of Computing in Civil Engineering, 6(3):282-301, 1992.
abstract   bibtex   
Large-scale engineering analylsis programs are among the most difficult to develop, maintain, and extend. The translation of a few pages of classical mathematics turns into tens of thousands of lines of nontrivial code. This paper discusses the role of data abstraction in engineering program development, where data, instead of processes, are used to decompose a program into parts. Data abstraction improves the modularity of a program by encapsulating implementation details and by providing a clear delineation between design and implementation. We describe a library of finite element data types that have been designed with data abstraction in mind. Using this approach, multiple, representations and algorithms coexist, with proper selection made at run time. In addition, space-time trade-offs can generally be postponed without impacting other parts of the program. Throughout the paper, we address design issues with careful specifications of program behavior and implementation issues using object-oriented languages, which support data abstraction as well as polymorphism and inheritance. © ASCE.
@article{
 title = {Data abstraction in engineering software development},
 type = {article},
 year = {1992},
 identifiers = {[object Object]},
 pages = {282-301},
 volume = {6},
 id = {068d421e-50dd-3fa6-871e-6c32a9bf7c88},
 created = {2016-02-17T15:26:27.000Z},
 file_attached = {false},
 profile_id = {2a520ab8-915c-3c45-ac68-153534007f56},
 last_modified = {2016-02-17T15:26:27.000Z},
 read = {false},
 starred = {false},
 authored = {true},
 confirmed = {false},
 hidden = {false},
 abstract = {Large-scale engineering analylsis programs are among the most difficult to develop, maintain, and extend. The translation of a few pages of classical mathematics turns into tens of thousands of lines of nontrivial code. This paper discusses the role of data abstraction in engineering program development, where data, instead of processes, are used to decompose a program into parts. Data abstraction improves the modularity of a program by encapsulating implementation details and by providing a clear delineation between design and implementation. We describe a library of finite element data types that have been designed with data abstraction in mind. Using this approach, multiple, representations and algorithms coexist, with proper selection made at run time. In addition, space-time trade-offs can generally be postponed without impacting other parts of the program. Throughout the paper, we address design issues with careful specifications of program behavior and implementation issues using object-oriented languages, which support data abstraction as well as polymorphism and inheritance. © ASCE.},
 bibtype = {article},
 author = {Baugh, J.W. and Rehak, D.R.},
 journal = {Journal of Computing in Civil Engineering},
 number = {3}
}
Downloads: 0