Luigi Cerulo

An Empirical Study of the Relationships between Design Pattern Roles and Class Change Proneness (2009)

Massimiliano Di Penta, Luigi Cerulo, Yann-gaël Guéhéneuc, Giuliano Antoniol

Analyzing the change-proneness of design patterns and the kinds of changes occurring to classes playing role(s) in some design pattern(s) during software evolution poses the basis for guidelines to...

design methods (2009)

Lerina Aversano, Gerardo Canfora, Luigi Cerulo, Concettina Del Grosso, Massimiliano Di Penta

Design patterns are solutions to recurring design problems, conceived to increase benefits in terms of reuse, code quality and, above all, maintainability and resilience to changes. This paper...

Tracking Your Changes: a Language-Independent Approach (2009)

Gerardo Canfora, Luigi Cerulo, Massimiliano Di Penta

The availability of powerful differencing algorithms is crucial to track the evolution of source code, for example with the purpose of monitoring clones or vulnerable statements. In this paper we...

Relating the Evolution of Design Patterns and Crosscutting Concerns (2008)

Lerina Aversano, Luigi Cerulo, Massimiliano Di Penta

Crosscutting concerns consist in software system features having the implementation spread across modules as tangled and scattered code. In many cases, these crosscutting concerns represent design...

design methods (2008)

Lerina Aversano, Gerardo Canfora, Luigi Cerulo, Concettina Del Grosso, Massimiliano Di Penta

Design patterns are solutions to recurring design problems, conceived to increase benefits in terms of reuse, code quality and, above all, maintainability and resilience to changes. This paper...

Can Fuzzy Mathematics enrich the Assessment of Software Maintainability? (2008)

Gerardo Canfora, Luigi Cerulo, Luigi Troiano

Abstract. Software maintainability depends both on qualitative and quantitative data. Existing maintainability models aggregate data into hierarchies of characteristics with given dependencies....

Identifying changed source code lines from version repositories (2007)

Gerardo Canfora, Luigi Cerulo, Massimiliano Di Penta

Observing the evolution of software systems at different levels of granularity has been a key issue for a number of studies, aiming at predicting defects or at studying certain phenomena, such as the...

How Clones are Maintained: An Empirical Study (2007)

Lerina Aversano, Luigi Cerulo, Massimiliano Di Penta

Despite the conventional wisdom concerning the risks related to the use of source code cloning as a software development strategy, several studies appeared in literature indicated that this is not...

On the Use of Process Trails to Understand Software Development (2006)

Luigi Cerulo, Prof Gerardo Canfora, To Raffaella

This thesis investigates the usefulness of historical data stored in software repositories to support developers and managers in their maintenance activities of complex software systems. A set of...

On the use of line co-change for identifying crosscutting concern code (2006)

Gerardo Canfora, Luigi Cerulo, Massimiliano Di Penta

Crosscutting concerns are software system features whose implementation is spread across many modules as tangled and scattered code. Identifying such code helps developers to change the concern...

How software repositories can help in resolving a new change request (2005)

Gerardo Canfora, Luigi Cerulo

In open source development, software evolution tasks are usually managed with a bug tracker system, such as Bugzilla [1], and a versioning system, such as CVS [2]. This provides for a huge amount of...