Affiliation:
1. Michigan State University
2. Wayamba University of Sri Lanka
3. University of Peradeniya
Abstract
The development of code for finite elements-based field computation has been going on at a pace since the 1970s, yielding code that was not put through the software lifecycle – where code is developed through a sequential process of requirements elicitation from the user/client to design, analysis, implementation and testing and release and maintenance. As a result, today we have legacy code running into millions of lines, implemented without planning and not using proper state-of-the-art software design tools. It is necessary to redo this code to exploit new object oriented facilities and make corrections or run on the web with Java. Object oriented code’s principal advantage is reusability. Recent advances in software make such reverse engineering/re-engineering of this code into object oriented form possible. The purpose of this paper is to show how existing finite element code can be reverse/re-engineered to improve it. Taking sections of working finite element code, especially matrix computation for equation solution as examples, we put it through reverse engineering to arrive at the effective UML design by which development was done and then translate it to Java. This then is the starting point for analyzing the design and improving it without having to throw away any of the old code. Using auto-translators and then visually rewriting parts by the design so revealed, has no match in terms of speed and efficiency of re-engineering legacy code.
Publisher
Trans Tech Publications, Ltd.
Subject
Mechanical Engineering,Mechanics of Materials,Condensed Matter Physics,General Materials Science
Reference20 articles.
1. Bernd Bruegge and and H. Dutoit: Object-oriented Software Engineering – Using UML, Patterns and Java, 2ndedn. (Pearson-Pentice Hall, Upper Saddle River, NJ, 2004).
2. Scott Ambler, The Elements of UML 2. 0 Style (Cambridge Univ. Press, New York, 2005).
3. G. Booch, R.A. Maksimchuk, M.W. Engle, B.J. Young, J. Conallen and K.A. Houston, Object Oriented Analysis and Design with Applications (Third Edn. ) (Addison Wesley, Upper Saddle Riiver, NJ, 2007).
4. S. R. H. Hoole and T. Arudchelvam Arudchelvam: Revue roumaine des sciences techniques - Série Électrotechnique et Énergétique Vol. 54 (2011).
5. Haiwei Wang, Geng Liu and Liyan Wu: Materials Science Forum Vols. 532-533 (2006) pp.909-912.