Does the Act of Refactoring Really Make Code Simpler? A Preliminary Study

نویسندگان

  • Francisco Zigmund Sokol
  • Mauricio Finavaro Aniche
  • Marco Aurélio Gerosa
چکیده

Refactoring is the act of changing software code, usually to improve internal code quality, without changing its external behavior. Soetens and Demeyer (2010) analyzed one software and showed that code refactoring did not imply in better result for code quality metrics. In this work, we extend Soetens and Demeyer study, mining data from 256 software projects from Apache Software Foundation, using MetricMiner, a web application focused on supporting mining software repositories studies. The quantitative analysis showed that refactoring indeed does not decrease Cyclomatic Complexity. On the other hand, the qualitative analysis showed that a refactoring tends to improve code in terms of readability and maintainability.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Refactoring trends across N versions of N Java open source systems: an empirical study

In the past few years, refactoring has emerged as an important consideration in the maintenance and evolution of software. Yet very little empirical evidence exists to support the claim about whether developers actively undertake refactoring, or whether as Fowler suggests that the benefits of doing refactoring are not short-term but too ‘long-term’ [8]. In this paper, we describe an empirical s...

متن کامل

Macrofication: Refactoring by Reverse Macro Expansion

Refactoring is a code transformation performed at development time that improves the quality of code while preserving its observable behavior. Macro expansion is also a code transformation, but performed at compile time, that replaces instances of macro invocation patterns with the corresponding macro body or template. The key insight of this paper is that for each pattern-template macro, we ca...

متن کامل

Refactoring support for the ruby development tools

During software development, the programmer often has to modify the existing code to make it more robust and less error-prone. While this does not change the functionality of the product, it certainly improves the maintainability, understandability and testability. This process is called refactoring. Doing refactoring by hand is often quite tedious and generally engineers are afraid of changing...

متن کامل

Comparative Study of Changes in the Islamic Penal Code Regarding the Responsibility of the Physician

One of the important issues in today's law is the responsibility of the physician, which has undergone some changes in the Islamic Penal Code. The global spread of medical events and consequently the growing number of injuries to patients, more than anything else, reveal the need for a comparative study on the physician's guaranty. While there is a controversy in the jurisprudence regarding the...

متن کامل

Managing Information Quality - A Critical Process for Most Organizations

The notions of process and process management are slowly (and painfully) entering the mainstream. Most organizations have not embraced process management. Some have done so only half-heartedly, with unsatisfactory results. Finally, those (relatively few) organizations that devoted serious attention to managing and/or reengineering their processes have reaped huge rewards. They have defined and ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2013