2,152 Hits in 4.3 sec

A Minimal Set of Refactoring Rules for Object-Z [chapter]

Tim McComb, Graeme Smith
2008 Lecture Notes in Computer Science  
This paper presents a minimal and complete set of structural refactoring rules for the Object-Z specification language that allow for the derivation of arbitrary object-oriented architectures.  ...  The rules are equivalence preserving and work in concert with existing class refinement theory, so that any design derived using the rule set can be shown to be equivalent to, or a refinement of, the original  ...  Acknowledgements We acknowledge the support of Australian Research Council (ARC) Discovery Grant DP0558408.  ... 
doi:10.1007/978-3-540-68863-1_11 fatcat:gaua45lorfefnnlrbzthjxd6fy

Refactoring Object-Oriented Specifications with Inheritance-Based Polymorphism

Graeme Smith, Steffen Helke
2011 2011 Fifth International Conference on Theoretical Aspects of Software Engineering  
A set of minimal and complete set of refactoring rules have been devised for the Object-Z specification language.  ...  This paper reviews these rules as a basis for a similar approach for languages like JML and Spec#.  ...  McComb and Smith [14] present a set of structural refactoring rules for Object-Z specifications which are both minimal (in the sense there is no overlap in the type of changes the rules allow) and complete  ... 
doi:10.1109/tase.2011.31 dblp:conf/tase/SmithH11 fatcat:avjewwjwrfdlvndwwmqpv2vgg4

A Framework to Reduce Redundancy in Android Test Suite using Refactoring

H. Omotunde, R. Ibrahim, M. Ahmed, R.F. Olanrewaju, N. Ibrahim, H. Shah
2016 Indian Journal of Science and Technology  
Test cases from the refactored code show a reduction of up to 33.3% in cyclomatic complexity compared to the original source code.  ...  Objective: Test cases tend to be large in number as redundant test cases are generated due to the presence of code smells, hence the need to reduce these smells.  ...  In 7 proposed a technique for test case minimization in regression testing for Object Oriented Programming built on innovative optimal page replacement algorithm.  ... 
doi:10.17485/ijst/2016/v9i46/107107 fatcat:6ocyv2ejdbc65knzifhzqxlu4i

Search-Based Refactoring Using Recorded Code Changes

A. Ouni, M. Kessentini, H. Sahraoui
2013 2013 17th European Conference on Software Maintenance and Reengineering  
In this paper, we propose a multiobjective optimization approach to find the best sequence of refactorings that maximizes the use of refactoring applied in the past to similar contexts, minimizes semantic  ...  errors and minimizes the number of defects (improve code quality).  ...  The searchbased process takes as inputs, the source code with defects, detection rules, a set of refactoring operations, and a call graph for the whole program.  ... 
doi:10.1109/csmr.2013.31 dblp:conf/csmr/OuniKS13 fatcat:jmd3wfbbczcf7c5hz2lrsaryk4

High dimensional search-based software engineering

Mohamed Wiem Mkaouer, Marouane Kessentini, Slim Bechikh, Kalyanmoy Deb, Mel Ó Cinnéide
2014 Proceedings of the 2014 conference on Genetic and evolutionary computation - GECCO '14  
In our approach, automated refactoring solutions are evaluated using a set of 15 distinct quality metrics.  ...  There is a growing need for scalable search-based software engineering approaches that address software engineering problems where a large number of objectives are to be optimized.  ...  Unlike NSGA-II, NSGA-III starts with a set of reference points Z r .  ... 
doi:10.1145/2576768.2598366 dblp:conf/gecco/MkaouerKBDC14 fatcat:dzm5j5wharbldnoeu5cprrq2ja

Using ATL to define advanced and flexible constraint model transformations [article]

Raphael Chenouard, Ricardo Soto
2010 arXiv   pre-print
This architecture follows a model- driven approach where the constraint modeling process is seen as a set of model transformations.  ...  Among others, an interesting feature is the def- inition of transformations as concept-oriented rules, i.e. based on types of model elements where the types are organized into a hierarchy called a metamodel  ...  The spectrum of Λ is 2π T Z Z + a ∞ .  ... 
arXiv:1002.3078v1 fatcat:jrn6wx2fwrao3mef4mj6oh5shi

Automated migration of build scripts using dynamic analysis and search-based refactoring

Milos Gligoric, Wolfram Schulte, Chandra Prasad, Danny van Velzen, Iman Narasamdya, Benjamin Livshits
2014 Proceedings of the 2014 ACM International Conference on Object Oriented Programming Systems Languages & Applications - OOPSLA '14  
The efficiency of a build system is an important factor for developer productivity.  ...  First, from a set of execution traces, we synthesize build scripts that accurately capture the intent of the original build. The synthesized build scripts are typically long and hard to maintain.  ...  of this paper.  ... 
doi:10.1145/2660193.2660239 dblp:conf/oopsla/GligoricSPVNL14 fatcat:s6ur5sx6wzbo3kg32hmkzpgtqm

Automated migration of build scripts using dynamic analysis and search-based refactoring

Milos Gligoric, Wolfram Schulte, Chandra Prasad, Danny van Velzen, Iman Narasamdya, Benjamin Livshits
2014 SIGPLAN notices  
The efficiency of a build system is an important factor for developer productivity.  ...  First, from a set of execution traces, we synthesize build scripts that accurately capture the intent of the original build. The synthesized build scripts are typically long and hard to maintain.  ...  of this paper.  ... 
doi:10.1145/2714064.2660239 fatcat:o5hhhw2j25a4rdiehaeckw35iy

Cloning and Expanding Graph Transformation Rules for Refactoring

Berthold Hoffmann, Dirk Janssens, Niels Van Eetvelde
2006 Electronical Notes in Theoretical Computer Science  
It is based on a notion of rule instantiation, where the instantiation transforms rule schemes into rule instances by cloning and expansion.  ...  Refactoring is a software engineering technique that aims at enhancing the structure of objectoriented software while preserving its behavior.  ...  In our case study [19] , a representative set of elementary refactoring operations from the list of [7] could be described with rule schemes using these concepts and only minimal control flow.  ... 
doi:10.1016/j.entcs.2006.01.014 fatcat:jounn34m2fhodk3mn4p6pw2nhu

Symbolic execution of high-level transformations

Ahmad Salim Al-Sibahi, Aleksandar S. Dimovski, Andrzej Wąsowski
2016 Proceedings of the 2016 ACM SIGPLAN International Conference on Software Language Engineering - SLE 2016  
We evaluate this symbolic execution technique on a collection of refactoring and model transformation programs, showing that the white-box test generation tool based on symbolic execution obtains better  ...  code coverage than a black box test generator for such programs in almost all tested cases.  ...  For subtypes of c, we do almost the same but use the constraint (X ? = e ∨ X ? = e ∪ Y ? ) ∧ e = Y ? Z ? instead, where Y ? and Z ? are fresh set symbols with Y ? having type c and Z ?  ... 
doi:10.1145/2997364.2997382 fatcat:nhzu4kkuvfbqbfixwiiudjnjba

Mining framework usage changes from instantiation code

Thorsten Schäfer, Jan Jonas, Mira Mezini
2008 Proceedings of the 13th international conference on Software engineering - ICSE '08  
However, other kinds of changes exist, which are relevant for the migration.  ...  This is a tedious and error-prone process that benefits from automation. Existing approaches compare two versions of the framework code in order to find changes caused by refactorings.  ...  The problem of mining association rules is to find all rules A → B that associate one set of items with another set. A is referred to as the antecedent and B as the consequence of the rule.  ... 
doi:10.1145/1368088.1368153 dblp:conf/icse/SchaferJM08 fatcat:2xftuyq4jjcolhwaacj5t6d5bq

MORE: A multi-objective refactoring recommendation approach to introducing design patterns and fixing code smells

Ali Ouni, Marouane Kessentini, Mel Ó Cinnéide, Houari Sahraoui, Kalyanmoy Deb, Katsuro Inoue
2017 Journal of Software: Evolution and Process  
MORE: A MULTI-OBJECTIVE REFACTORING RECOMMENDATION APPROACH 3 2.  ...  Refactoring is widely recognized as a crucial technique applied when evolving object-oriented software systems.  ...  This work was supported by Japan Society for the Promotion of Science, Grant-in-Aid for Scientific Research (S) Collecting, Analyzing, and Evaluating Software Assets for Effective Reuse (Grant Number JP25220003  ... 
doi:10.1002/smr.1843 fatcat:jj4kplgoujgrpehltutsk5gosm

A Catalogue of Refactorings for Model-to-Model Transformations

Manuel Wimmer, Salvador Martínez, Frédéric Jouault, Jordi Cabot
2012 Journal of Object Technology  
In particular, we present a dedicated catalogue of refactorings for improving the quality of M2M transformations.  ...  In object-oriented programming, continuous refactorings are used as the main mechanism to increase the maintainability of the code base.  ...  Acknowledgments We would like to thank Marcel F. van Amstel for providing us the ATL2Metrics transformations which have been used for the computation of metric values for the different versions of the  ... 
doi:10.5381/jot.2012.11.2.a2 fatcat:2da4c2djcfenhc5rjzx4cb5koa

Sound refactorings

Márcio Cornélio, Ana Cavalcanti, Augusto Sampaio
2010 Science of Computer Programming  
A set of programming laws is available for the imperative constructs of this language as well as for its object-oriented features; soundness of the laws is proved against a weakest precondition semantics  ...  As illustration of our approach to refactoring, we use our rules to restructure a program to be in accordance with a design pattern.  ...  Acknowledgements We would like to thank the anonymous referees for making several suggestions to improve this article.  ... 
doi:10.1016/j.scico.2009.10.001 fatcat:cgquwmmosfhevnib3jnysveoka

On the use of many quality attributes for software refactoring: a many-objective search-based software engineering approach

Mohamed Wiem Mkaouer, Marouane Kessentini, Slim Bechikh, Mel Ó Cinnéide, Kalyanmoy Deb
2015 Empirical Software Engineering  
In our approach based on the recent NSGA-III algorithm, the refactoring solutions are evaluated using a set of 8 distinct objectives.  ...  The majority of existing work treats software engineering problems from a single or bi-objective point of view, where the main goal is to maximize or minimize one or two objectives.  ...  Acknowledgments This work was supported, in part, by the Institute for Advanced Vehicle Systems-Michigan grant, the UM-Ford Alliance Program and the Science Foundation Ireland grant 10/CE/I1855 to Lero  ... 
doi:10.1007/s10664-015-9414-4 fatcat:wbizyzpgpbdetpmnmxl5qiad6a
« Previous Showing results 1 — 15 out of 2,152 results