Using reverse engineering techniques to infer a system use case model. Issue 2 (6th November 2018)
- Record Type:
- Journal Article
- Title:
- Using reverse engineering techniques to infer a system use case model. Issue 2 (6th November 2018)
- Main Title:
- Using reverse engineering techniques to infer a system use case model
- Authors:
- Miranda, Enrique A.
Berón, Mario
Montejano, Germán
Riesco, Daniel - Abstract:
- Summary: In this article, a strategy that seeks to assist the arduous cognitive process that involves understanding a GUI‐based system is presented. In order to reach this goal, a UML use case model with the most relevant features is obtained. To derive this model, the strategy performs the following steps: Extraction and filtering of specific system static information and implementation of a clustering process that inspects this information including GUI widgets, which are components closely related to the system problem domain. Although these steps are commonly known and used in the context of reverse engineering, the strategy introduces unusual approaches regarding the proposals found in the available literature. More specifically, the strategy presents (a) a set of metrics that infers the relative importance of a method or a function within the analysed system, (b) a summarization process driven by different features of software systems, and (c) a technique to cluster software artefacts and to map the cluster model onto a use case model. The article also propose a methodology that allows to compare the achieved results. The assessment of the approach suggests that the strategy can assist the software engineer to understand a software system providing a useful fine‐grained use case model. Abstract : In the context of software maintenance, the most time‐consuming activities are those the software engineer must execute to understand a system. Reverse engineering providesSummary: In this article, a strategy that seeks to assist the arduous cognitive process that involves understanding a GUI‐based system is presented. In order to reach this goal, a UML use case model with the most relevant features is obtained. To derive this model, the strategy performs the following steps: Extraction and filtering of specific system static information and implementation of a clustering process that inspects this information including GUI widgets, which are components closely related to the system problem domain. Although these steps are commonly known and used in the context of reverse engineering, the strategy introduces unusual approaches regarding the proposals found in the available literature. More specifically, the strategy presents (a) a set of metrics that infers the relative importance of a method or a function within the analysed system, (b) a summarization process driven by different features of software systems, and (c) a technique to cluster software artefacts and to map the cluster model onto a use case model. The article also propose a methodology that allows to compare the achieved results. The assessment of the approach suggests that the strategy can assist the software engineer to understand a software system providing a useful fine‐grained use case model. Abstract : In the context of software maintenance, the most time‐consuming activities are those the software engineer must execute to understand a system. Reverse engineering provides methods and tools aiming to assist this arduous cognitive process. We propose a reverse engineering strategy that extracts a UML use case model with the most relevant features for the system under study. This model provides a connection between a high‐level abstraction of the system functionalities and the source code artifacts that implement those functionalities. … (more)
- Is Part Of:
- Journal of software. Volume 31:Issue 2(2019)
- Journal:
- Journal of software
- Issue:
- Volume 31:Issue 2(2019)
- Issue Display:
- Volume 31, Issue 2 (2019)
- Year:
- 2019
- Volume:
- 31
- Issue:
- 2
- Issue Sort Value:
- 2019-0031-0002-0000
- Page Start:
- n/a
- Page End:
- n/a
- Publication Date:
- 2018-11-06
- Subjects:
- clustering -- information extraction -- program comprehension -- reverse engineering -- software engineering
Software engineering -- Periodicals
Computer software -- Development -- Periodicals
Software maintenance -- Periodicals
005.1 - Journal URLs:
- http://onlinelibrary.wiley.com/journal/10.1002/(ISSN)2047-7481 ↗
http://onlinelibrary.wiley.com/ ↗ - DOI:
- 10.1002/smr.2121 ↗
- Languages:
- English
- ISSNs:
- 2047-7473
- Deposit Type:
- Legaldeposit
- View Content:
- Available online (eLD content is only available in our Reading Rooms) ↗
- Physical Locations:
- British Library DSC - BLDSS-3PM
British Library HMNTS - ELD Digital store - Ingest File:
- 9552.xml