International Transaction Journal of Engineering, Management, & Applied Sciences & Technologies

Archives

TuEngr+Logo
:: International Transaction Journal of Engineering, Management, & Applied Sciences & Technologies

http://TuEngr.com



ISSN 2228-9860
eISSN 1906-9642
CODEN: ITJEA8


FEATURE PEER-REVIEWED ARTICLE

Vol.12(13) (2021)

  • A Hybrid Approach for Recovering Use Case Models of MVC Web Applications

    Emad Y. Albassam (Department of Computer Science, Faculty of Computing and Information Technology, King Abdulaziz University, Jeddah, SAUDI ARABIA).

    Disciplinary: Information System and Computer Science & Engineering (Software Engineering).

    ➤ FullText

    doi: 10.14456/ITJEMAST.2021.272

    Keywords: Use Case Models, Reverse Engineering, Recovery, Architectural-Patterns, Design- Patterns, Model-View-Controller, MVC, Web Applications; Role-Based Access Control.

    Abstract
    In Model-Driven Software Engineering (MDSE), software systems are constructed from abstract models that are used to guide the development process. Use Case models are abstract models that aim to capture the intended behavior of a software system from the point of view of its actors. Use Case models are not only helpful during development time but can also assist in software evolution and modernization. Such post-development benefits can only be obtained with up-to-date Use Case models. However, manual maintenance of these models may cause divergence such that these models can become outdated as the software system evolves over time. Furthermore, legacy software systems may not have well-documented Use, Case models. Therefore, it is beneficial to recover these models through reverse engineering of source code and supplementary documentation of the software system. This paper proposes A Hybrid Approach for Recovering Use Case Models of MVC Web Applications Case models for web applications. The proposed approach relies on defining recovery patterns for known architectural- and design patterns that are widely used to construct web applications. Each recovery pattern shows how a particular Use Case model element, including Use Cases, actors, relationships, and non-functional requirements of Use Cases, are to be recovered. Both static and dynamic analyses of the web application's source code are then performed based on recovery patterns to recover the various Use Case model elements. The proposed approach is applied to an open-source, real-world MVC web application. Results show adequate recovery of Use Case model elements of this application.

    Paper ID: 12A13T

    Cite this article:

    Albassam, E. Y. (2021). A Hybrid Approach for Recovering Use Case Models of MVC Web Applications. International Transaction Journal of Engineering, Management, & Applied Sciences & Technologies, 12(13), 12A13T, 1-17. http://doi.org/10.14456/ITJEMAST.2021.272



References

  1. A. J. Ko, B. A. Myers, M. J. Coblenz, and H. H. Aung, "An exploratory study of how developers seek, relate, and collect relevant information during software maintenance tasks," IEEE Trans. Softw. Eng., vol. 32, no. 12, pp. 971–987, Dec. 2006.
  2. F. U. Rehman, B. Maqbool, M. Q. Riaz, U. Qamar and M. Abbas, "Scrum software maintenance model: efficient software maintenance in Agile methodology," 2018 21st Saudi Computer Society National Computer Conference (NCC), Riyadh, 2018, pp. 1-5, DOI: 10.1109/NCG.2018.8593152.
  3. A. M. Fernandez-Saez, D. Caivano, M. Genero and M. R. V. Chaudron, "On the use of UML documentation in software maintenance: Results from a survey in industry," 2015 ACM/IEEE 18th International Conference on Model Driven Engineering Languages and Systems (MODELS), Ottawa, ON, 2015, pp. 292-301, DOI: 10.1109/MODELS.2015.7338260.
  4. L. Moreno, "Summarization of complex software artifacts," 2014 Companion Proceedings of the 36th International Conference on Software Engineering (ICSE Companion 2014)," Association for Computing Machinery, New York, NY, USA, 654–657. DOI: 10.1145/2591062.2591096.
  5. A. M. Fernandez-Saezez, M.R.V. Chaudron and M. Genero, "An industrialcase study on the use of UML in software maintenance and its perceivedbenefits and hurdles", Empirical Software Engineering, pp. 32813345,2018. DOI: 10.1007/s10664-018-9599-4.
  6. C. S. Joanna Santos, S. Moshtari and M. Mirakhorli, "An Automated Approach to Recover the Use-case View of an Architecture," 2020 IEEE International Conference on Software Architecture Companion (ICSA-C), Salvador, Brazil, 2020, pp. 63-66, doi: 10.1109/ICSAC50368.2020.00020.
  7. L. Ceponiene, V. Drungilas, M. Jurgelaitis, J. Ceponis, "Method for reverse engineering UML Use Case model for websites," Information Technology And Control. 2018, vol. 47, no. 4, doi: 10.5755/j01.itc.47.4.21264.
  8. E. Miranda, M. Beron, G Montejano, D. Riesco, "Using reverse engineering techniques to infer a system use case model," Journal of Software: Evolution and Process. 2018, vol. 31, no. 2, doi: 10.1002/smr.2121.
  9. L. Zhang, T. Qin, Z. Zhou, D. Hao, "Identifying use cases in source code," J Syst Softw. Journal of Systems and Software, vol. 79., 1588-1598, 2006.
  10. P. Dugerdil, D. Sennhauser, "Dynamic decision tree for legacy use-case recovery," In Proceedings of the 28th Annual ACM Symposium on Applied Computing (SAC '13), Association for Computing Machinery, New York, NY, USA, 2013 1284–1291.
  11. B. Ulziit, Z. A. Warraich, C. Gencel, K. Petersen, "A conceptual framework of challenges and solutions for managing global software maintenance," J. Softw. Evol. and Proc., 27: 763– 792, 2015.
  12. OMG. "The Unified Modeling Language. Documents associated with UML version 2.3," 2010. http://www.omg.org/spec/UML/2.3.
  13. H. Gomaa, "Software Modeling and Design: UML, Use Cases, Patterns, and Software Architectures," Cambridge: Cambridge University Press, 2011.
  14. Q. Li, S. Hu, P. Chen, L. Wu and W. Chen, "Discovering and Mining Use Case Model in Reverse Engineering," 4th International Conference on Fuzzy Systems and Knowledge Discovery (FSKD 2007), Haikou, 2007, pp. 431-436, doi: 10.1109/FSKD.2007.255.
  15. J. Bucanek, Model-View-Controller Pattern. In: Learn Objective-C for Java Developers. Apress, 2009.
  16. M. Fowler. Patterns of Enterprise Application Architecture, AddisonWesley Professional, 2002.
  17. M. Schumacher, E. Fernandez-Buglioni, D. Hybertson, F. Buschmann, and P. Sommerlad, P., Security Patterns; Integrating Security and Systems Engineering, John Wiley Sons, Inc., 2005, Hoboken, NJ, USA.


Other issues:
Vol.13(1)(2021)
Vol.12(12)(2021)
Vol.12(11)(2021)
Archives




Call-for-Papers

Call-for-Scientific Papers
Call-for-Research Papers:
ITJEMAST invites you to submit high quality papers for full peer-review and possible publication in areas pertaining engineering, science, management and technology, especially interdisciplinary/cross-disciplinary/multidisciplinary subjects.

To publish your work in the next available issue, your manuscripts together with copyright transfer document signed by all authors can be submitted via email to Editor @ TuEngr.com (no space between). (please see all detail from Instructions for Authors)


Publication and peer-reviewed process:
After the peer-review process (4-10 weeks), articles will be on-line published in the available next issue. However, the International Transaction Journal of Engineering, Management, & Applied Sciences & Technologies cannot guarantee the exact publication time as the process may take longer time, subject to peer-review approval and adjustment of the submitted articles.