Table of Contents Author Guidelines Submit a Manuscript
Scientific Programming
Volume 2019, Article ID 2542686, 22 pages
Research Article

Extended ForUML for Automatic Generation of UML Sequence Diagrams from Object-Oriented Fortran

College of Computing, Prince of Songkla University, Phuket Campus, Phuket Province, Thailand

Correspondence should be addressed to Aziz Nanthaamornphong;

Received 4 September 2018; Revised 18 December 2018; Accepted 3 January 2019; Published 5 February 2019

Academic Editor: Cristian Mateos

Copyright © 2019 Aziz Nanthaamornphong and Anawat Leatongkam. This is an open access article distributed under the Creative Commons Attribution License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.


Recently, reverse engineering has become widely recognized as a valuable process for extracting system abstractions and design information from existing software. This study focuses on ForUML, a reverse engineering tool developed to extract UML diagrams from modern object-oriented Fortran programs. Generally, Fortran is used to implement scientific and engineering software in various domains, such as weather forecasting, astrophysics, and engineering design. However, methods for visualizing the existing design of object-oriented Fortran software are lacking. UML diagrams of Fortran software would be beneficial to scientists and engineers in explaining the structure and behavior of their programs at a higher level of abstraction than the source code itself. UML diagrams can enhance discussions within development teams and with the broader scientific community. The first version of ForUML produces only UML class diagrams. Class diagrams provide a useful window into the static structure of a program, including the structure and components of each class and the relationships between classes. However, class diagrams lack the temporal information required to understand class behavior and interactions between classes. UML sequence diagrams provide this important algorithmic information. Therefore, herein, an extension for ForUML to extract UML sequence diagrams from the Fortran code is proposed, and this capability is provided using a widely used open-source platform. This study argues that the proposed extension will enable the visualization of object-oriented Fortran software behavior and algorithmic structure and thereby enhance the development, maintenance practices, decision processes, and communications in scientific and engineering software communities worldwide.