2015
DOI: 10.1007/s11219-015-9284-4
|View full text |Cite
|
Sign up to set email alerts
|

Multi-view refactoring of class and activity diagrams using a multi-objective evolutionary algorithm

Abstract: To improve the quality of software systems, one of the widely used techniques is refactoring defined as the process of improving the design of an existing system by changing its internal structure without altering the external behavior. The majority of existing refactoring work focuses mainly on the source code level. The suggestion of refactorings at the model level is more challenging due to the difficulty to evaluate: (a) the impact of the suggested refactorings applied to a diagram on other related diagram… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
18
0

Year Published

2017
2017
2023
2023

Publication Types

Select...
5
2
1

Relationship

1
7

Authors

Journals

citations
Cited by 48 publications
(18 citation statements)
references
References 42 publications
(51 reference statements)
0
18
0
Order By: Relevance
“…The notion of Pareto-optimality guides searches towards solutions that can only be improved towards one criterion by compromising against another one. Aligned with the trend towards more analytics and subsequent quantitative investigations, multi-objective optimization has been recently applied to the Next Release Problem [73] [53], to software architectures [56], re-factoring [41], requirements selection [20], and model merging [40]. A more general release problem with looking at three releases ahead and having revenue and cost as optimization criteria and objectives were studied in [80].…”
Section: Multi-objective Optimization In Software Engineeringmentioning
confidence: 99%
“…The notion of Pareto-optimality guides searches towards solutions that can only be improved towards one criterion by compromising against another one. Aligned with the trend towards more analytics and subsequent quantitative investigations, multi-objective optimization has been recently applied to the Next Release Problem [73] [53], to software architectures [56], re-factoring [41], requirements selection [20], and model merging [40]. A more general release problem with looking at three releases ahead and having revenue and cost as optimization criteria and objectives were studied in [80].…”
Section: Multi-objective Optimization In Software Engineeringmentioning
confidence: 99%
“…The task of refactoring resembles the action of searching and replacing these fragments with an optimised version. For a long time, there have been many works devoted to refactoring on varied contexts (for example centred on Unified Modeling Language (UML) diagrams [29], class diagrams [30] or use cases [31]) but it has been just in recent years when more proposals related to process models have appeared. In general, each work has different objectives and different refactoring premises (quality in terms of the number of elements, ease of understanding, consistency with changes, etc.).…”
Section: Related Workmentioning
confidence: 99%
“…The replacement operation involves simple modifications on the BPMN model, actually, just adjusting or deleting some BPMN elements. The reader can see on the Listing 2 the Java code responsible for the replacement of pattern A (lines [21][22][23][24][25][26][27][28][29][30][31][32][33][34][35][36].…”
Section: Complexitymentioning
confidence: 99%
“…the behavioral one). Mansoor et al have presented an example that intends to address this issue [15], as they have proposed a solution for maintaining intra-view conformance. In this direction, our approach provides a solution in which we can verify the feasibility of the sequence by evaluating the postcondition of a refactoring sequence.…”
Section: Related Workmentioning
confidence: 99%