Table of Contents Author Guidelines Submit a Manuscript
Scientific Programming
Volume 2019, Article ID 2542686, 22 pages
https://doi.org/10.1155/2019/2542686
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; ht.ca.usp.tekuhp@n.ziza

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.

Linked References

  1. H. A. Müller, M. A. Orgun, S. R. Tilley, and J. S. Uhl, “A reverse-engineering approach to subsystem structure identification,” Journal of Software Maintenance: Research and Practice, vol. 5, no. 4, pp. 181–204, 1993. View at Publisher · View at Google Scholar · View at Scopus
  2. M. Lanza and S. Ducasse, “Polymetric views-a lightweight visual approach to reverse engineering,” IEEE Transactions on Software Engineering, vol. 29, no. 9, pp. 782–795, 2003. View at Publisher · View at Google Scholar · View at Scopus
  3. T. Systa, “On the relationships between static and dynamic models in reverse engineering java software,” in Proceedings of Reverse Engineering Sixth Working Conference, pp. 304–313, Atlanta, GA, USA, October 1999.
  4. M. Feathers, Working Effectively with Legacy Code, Prentice Hall Professional, Upper Saddle River, NJ, USA, 2004.
  5. J. Q. Ning, A. Engberts, and W. V. Kozaczynski, “Automated support for legacy code understanding,” Communications of the ACM, vol. 37, no. 5, pp. 50–57, 1994. View at Publisher · View at Google Scholar · View at Scopus
  6. A. Nanthaamornphong, J. Carver, K. Morris, and S. Filippone, “Extracting UML class diagrams from object-oriented fortran: ForUML,” Scientific Programming, vol. 2015, Article ID 421816, 15 pages, 2015. View at Publisher · View at Google Scholar · View at Scopus
  7. V. K. Decyk, C. D. Norton, and H. J. Gardner, “Why Fortran?” Computing in Science & Engineering, vol. 9, no. 4, pp. 68–71, 2007. View at Publisher · View at Google Scholar · View at Scopus
  8. J. C. Carver, R. P. Kendall, S. E. Squires, and D. E. Post, “Software development environments for scientific and engineering software: a series of case studies,” in Proceedings of the 29th International Conference on Software Engineering (ICSE’07), pp. 550–559, Minneapolis, MN, USA, May 2007.
  9. B. Dobing and J. Parsons, “How UML is used,” Communications of the ACM, vol. 49, no. 5, pp. 109–113, 2006. View at Publisher · View at Google Scholar · View at Scopus
  10. A. Abran, P. Bourque, R. Dupuis, and J. W. Moore, Guide to the Software Engineering Body of Knowledge-SWEBOK, IEEE Press, CA, USA, 2001.
  11. C. Willems and F. C. Freiling, “Reverse code engineering—state of the art and countermeasures,” IT-Information Technology, vol. 54, no. 2, pp. 53–63, 2012. View at Publisher · View at Google Scholar
  12. A. Rukin, “Java decompilers,” 2019, http://www.javadecompilers.com/.
  13. P. Bogdan, T. Bob, and B. Harald, “ArgoUML,” 2019, http://argouml.tigris.org/.
  14. Modeliosoft, “Modelio,” 2019, https://www.modelio.org/.
  15. Obeo, “UML designer,” 2019, http://www.umldesigner.org/.
  16. U. Team, “Umbrello,” 2019, https://umbrello.kde.org/.
  17. P. Andritsos and R. J. Miller, “Reverse engineering meets data analysis,” in Proceedings of the 9th International Workshop on Program Comprehension, pp. 157–166, Toronto, Canada, May 2001.
  18. J. Reid, “The future of Fortran,” Computing in Science & Engineering, vol. 5, no. 4, pp. 59–67, 2003. View at Publisher · View at Google Scholar · View at Scopus
  19. M. Metcalf, “The seven ages of fortran,” Journal of Computer Science & Technology, vol. 11, 2011. View at Google Scholar
  20. J. Reid, “The new features of Fortran 2008,” ACM SIGPLAN Fortran Forum, vol. 27, no. 2, pp. 8–21, 2008. View at Publisher · View at Google Scholar
  21. N. S. Clerman and W. Spector, Modern Fortran: Style and Usage, Cambridge University Press, Cambridge, UK, 2011.
  22. D. Barbieri, V. Cardellini, S. Filippone, and D. Rouson, “Design patterns for scientific computations on sparse matrices,” in Proceedings of European Conference on Parallel, pp. 367–376, Bordeaux, France, August 2011.
  23. K. Morris, D. W. I. Rouson, M. N. Lemaster, and S. Filippone, “Exploring capabilities within ForTrilinos by solving the 3D burgers equation,” Scientific Programming, vol. 20, no. 3, pp. 275–292, 2012. View at Publisher · View at Google Scholar
  24. D. W. I. Rouson, J. Xia, and X. Xu, “Object construction and destruction design patterns in fortran 2003,” Procedia Computer Science, vol. 1, no. 1, pp. 1495–1504, 2010. View at Publisher · View at Google Scholar · View at Scopus
  25. D. W. I. Rouson, H. Adalsteinsson, and J. Xia, “Design patterns for multiphysics modeling in Fortran 2003 and C++,” ACM Transactions on Mathematical Software, vol. 37, no. 1, pp. 1–30, 2010. View at Publisher · View at Google Scholar · View at Scopus
  26. R. Budiardja, C. Cardall, E. Endeve, and A. Mezzacappa, “Poster: GenASiS: general astrophysics simulation system-object-oriented approach to high performance multiphysics code with Fortran 2003,” in Proceedings of High Performance Computing, Networking, Storage and Analysis (SCC), p. 1474, Salt Lake City, UT, USA, November 2012.
  27. F. Brian, “NAG,” 2019, http://www.nag.com/.
  28. B. Paul, B. Steven, and D. Bud, “GNU,” 2019, http://gcc.gnu.org/fortran/.
  29. IBM, IBM Fortran Compiler Family, IBM, New York, NY, USA, 2019, https://www.ibm.com/th-en/marketplace/ibm-fortran-compiler-family.
  30. Cray, “Cray,” 2019, http://www.nersc.gov/users/software/compilers/cray-compilers/.
  31. Intel, “Intel Fortran,” 2019, https://software.intel.com/en-us/fortran-compilers/.
  32. IEEE, “Top programming languages,” 2019, https://spectrum.ieee.org/computing/software/the-2018-top-programming-languages/.
  33. E. Merah, “Design of ATL rules for transforming UML 2 sequence diagrams into petri nets,” International Journal of Computer Science and Business Informatics, vol. 8, pp. 1–21, 2014. View at Google Scholar
  34. P. Sawprakhon and Y. Limpiyakorn, “Sequence diagram generation with model transformation technology,” in Proceedings of the International MultiConference of Engineers and Computer Scientists, pp. 12–14, Hong Kong, May 2014.
  35. L. C. Briand, Y. Labiche, and Y. Miao, “Towards the reverse engineering of UML sequence diagrams,” in Proceedings of the 10th Working Conference on Reverse Engineering, pp. 57–66, Victoria, BC, Canada, November 2003.
  36. M. H. Alalfi, J. R. Cordy, and T. R. Dean, “Automated reverse engineering of UML sequence diagrams for dynamic web applications,” in Proceedings of the 9th IEEE International Conference on Software Testing, Verification and Validation Workshops, pp. 287–294, Denver, CO, USA, April 2009.
  37. E. Korshunova, M. Petkovic, M. G. J. Van Den Brand, and M. R. Mousavi, “CPP2XMI: reverse engineering of UML class, sequence, and activity diagrams from C++ source code,” in Proceedings of the 13th Working Conference on Reverse Engineering, pp. 297-298, Benevento, Italy, October 2006.
  38. A. G. Parada, E. Siegert, and L. B. de Brisolara, “Generating Java code from UML class and sequence diagrams,” in Proceedings of the Brazilian Symposium on Computing System Engineering, pp. 99–101, Florianópolis, Brazil, April 2011.
  39. OMG, “UML specification v2.5,” 2019, https://www.omg.org/spec/UML/2.5/About-UML/.
  40. C. Li, L. Dou, and Z. Yang, “A metamodeling level transformation from UML sequence diagrams to Coq,” in Proceedings of International Conference on Information and Communication Technology for Competitive Strategies, pp. 147–157, Udaipur, India, March 2014.
  41. A. Nanthaamornphong and A. Leatongkum, “Modern Fortran transformation rules for UML sequence diagrams,” Journal of Telecommunication, Electronic and Computer Engineering (JTEC), vol. 9, no. 3-4, pp. 131–136, 2017. View at Google Scholar
  42. ForTrilinos, “ForTrilinos,” 2019, https://trilinos.org/packages/fortrilinos/.
  43. PSBLAS, “PSBLAS,” 2019, http://people.uniroma2.it/salvatore.filippone/psblas/.
  44. MLD2P4, “MLD2P4,” 2019, https://github.com/sfilippone/mld2p4-2.
  45. D. Kundu, R. Mall, and D. Samanta, “Automatic code generation from unified modelling language sequence diagrams,” IET Software, vol. 7, no. 1, pp. 12–28, 2013. View at Publisher · View at Google Scholar · View at Scopus
  46. P. Luengruengroj and T. Suwannasart, “Stubs and drivers generator for object-oriented program testing using sequence and class diagrams,” in Proceedings of the 5th International Conference on Computational Science/Intelligence and Applied Informatics (CSII), pp. 32–36, Yonago, Japan, July 2018.