Search Results

Documents authored by Breu, Silvia


Document
HAM: Cross-cutting Concerns in Eclipse

Authors: Silvia Breu, Thomas Zimmermann, and Christian Lindig

Published in: Dagstuhl Seminar Proceedings, Volume 6302, Aspects For Legacy Applications (2007)


Abstract
As programs evolve, newly added functionality sometimes does no longer align with the original design, ending up scattered across the software system. Aspect mining tries to identify such cross-cutting concerns in a program to support maintenance, or as a first step towards an aspect-oriented program. Previous approaches to aspect mining applied static or dynamic program analysis techniques to a single version of a system.We leverage all versions from a system's CVS history to mine aspect candidates with our Eclipse plug-in HAM: when a single CVS commit adds calls to the same (small) set of methods in many unrelated locations, these method calls are likely to be cross-cutting. HAM employs formal concept analysis to identify aspect candidates. Analysing one commit at a time makes the approach scale to industrial-sized programs. In an evaluation we mined cross-cutting concerns from Eclipse 3.2M3 and found that up to 90% of the top-10 aspect candidates are truly cross-cutting concerns.

Cite as

Silvia Breu, Thomas Zimmermann, and Christian Lindig. HAM: Cross-cutting Concerns in Eclipse. In Aspects For Legacy Applications. Dagstuhl Seminar Proceedings, Volume 6302, pp. 1-4, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2007)


Copy BibTex To Clipboard

@InProceedings{breu_et_al:DagSemProc.06302.5,
  author =	{Breu, Silvia and Zimmermann, Thomas and Lindig, Christian},
  title =	{{HAM: Cross-cutting Concerns in Eclipse}},
  booktitle =	{Aspects For Legacy Applications},
  pages =	{1--4},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2007},
  volume =	{6302},
  editor =	{Siobh\'{a}n Clarke and Leon Moonen and Ganesan Ramalingam},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.06302.5},
  URN =		{urn:nbn:de:0030-drops-8847},
  doi =		{10.4230/DagSemProc.06302.5},
  annote =	{Keywords: Aspect Mining, Aspect-Oriented Programming, CVS, Eclipse, Formal Concept Analysis, Java, Mining Version Archives}
}
Document
Mining Additions of Method Calls in ArgoUML

Authors: Silvia Breu, Thomas Zimmermann, Christian Lindig, and Benjamin Livshits

Published in: Dagstuhl Seminar Proceedings, Volume 6302, Aspects For Legacy Applications (2007)


Abstract
In this paper we refine the classical co-change to the addition of method calls. We use this concept to find usage patterns and to identify cross-cutting concerns for ArgoUML.

Cite as

Silvia Breu, Thomas Zimmermann, Christian Lindig, and Benjamin Livshits. Mining Additions of Method Calls in ArgoUML. In Aspects For Legacy Applications. Dagstuhl Seminar Proceedings, Volume 6302, p. 1, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2007)


Copy BibTex To Clipboard

@InProceedings{breu_et_al:DagSemProc.06302.6,
  author =	{Breu, Silvia and Zimmermann, Thomas and Lindig, Christian and Livshits, Benjamin},
  title =	{{Mining Additions of Method Calls in ArgoUML}},
  booktitle =	{Aspects For Legacy Applications},
  pages =	{1--1},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2007},
  volume =	{6302},
  editor =	{Siobh\'{a}n Clarke and Leon Moonen and Ganesan Ramalingam},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.06302.6},
  URN =		{urn:nbn:de:0030-drops-8865},
  doi =		{10.4230/DagSemProc.06302.6},
  annote =	{Keywords: Management, Measurement}
}
Document
Mining Aspects from Version History

Authors: Silvia Breu and Thomas Zimmermann

Published in: Dagstuhl Seminar Proceedings, Volume 6302, Aspects For Legacy Applications (2007)


Abstract
As software evolves, new functionality sometimes no longer aligns with the original design, ending up scattered across a program. Aspect mining identifies such cross-cutting concerns in order to then help migrating a system to a better design, maybe even to an aspect-oriented design. We address this task by applying formal concept analysis to a program's history: method calls added across many locations are likely to be cross-cutting. By taking this historical perspective, we introduce a new dimension to aspect mining. As we only analyse changes from one version to the next, the technique is independent of a system's total size and scales up to industrial-sized projects such as Eclipse.

Cite as

Silvia Breu and Thomas Zimmermann. Mining Aspects from Version History. In Aspects For Legacy Applications. Dagstuhl Seminar Proceedings, Volume 6302, pp. 1-10, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2007)


Copy BibTex To Clipboard

@InProceedings{breu_et_al:DagSemProc.06302.7,
  author =	{Breu, Silvia and Zimmermann, Thomas},
  title =	{{Mining Aspects from Version History}},
  booktitle =	{Aspects For Legacy Applications},
  pages =	{1--10},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2007},
  volume =	{6302},
  editor =	{Siobh\'{a}n Clarke and Leon Moonen and Ganesan Ramalingam},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.06302.7},
  URN =		{urn:nbn:de:0030-drops-8807},
  doi =		{10.4230/DagSemProc.06302.7},
  annote =	{Keywords: Aspect mining, formal concept analysis, mining software repositories}
}
Document
Mining Eclipse for CrossCutting

Authors: Silvia Breu, Thomas Zimmermann, and Christian Lindig

Published in: Dagstuhl Seminar Proceedings, Volume 6302, Aspects For Legacy Applications (2007)


Abstract
Software may contain functionality that does not align with its architecture. Such cross-cutting concerns do not exist from the beginning but emerge over time. By analysing where developers add code to a program, our history-based mining identifies cross-cutting concerns in a two-step process. First, we mine CVS archives for sets of methods where a call to a specific single method was added. In a second step, simple cross-cutting concerns are combined to complex cross-cutting concerns. To compute these efficiently, we apply formal concept analysis – an algebraic theory. Unlike approaches based on static or dynamic analysis, history-based mining for cross-cutting concerns scales to industrial-sized projects: For example, we identified a locking concern that cross-cuts 1284 methods in the open-source project Eclipse.

Cite as

Silvia Breu, Thomas Zimmermann, and Christian Lindig. Mining Eclipse for CrossCutting. In Aspects For Legacy Applications. Dagstuhl Seminar Proceedings, Volume 6302, pp. 1-4, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2007)


Copy BibTex To Clipboard

@InProceedings{breu_et_al:DagSemProc.06302.8,
  author =	{Breu, Silvia and Zimmermann, Thomas and Lindig, Christian},
  title =	{{Mining Eclipse for CrossCutting}},
  booktitle =	{Aspects For Legacy Applications},
  pages =	{1--4},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2007},
  volume =	{6302},
  editor =	{Siobh\'{a}n Clarke and Leon Moonen and Ganesan Ramalingam},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.06302.8},
  URN =		{urn:nbn:de:0030-drops-8853},
  doi =		{10.4230/DagSemProc.06302.8},
  annote =	{Keywords: }
}
Document
05451 Group 5 – Bananas, Dark Worlds, and AspectH

Authors: Silvia Breu, Marc Schlickling, and Nuno Miguel Feixa Rodrigues

Published in: Dagstuhl Seminar Proceedings, Volume 5451, Beyond Program Slicing (2006)


Abstract
This report summarises our idea of code clone detection in Haskell code and refactorings based on identified clones as it evolved in our working group-of-three discussion at the Dagstuhl seminar "Beyond Program Slicing".

Cite as

Silvia Breu, Marc Schlickling, and Nuno Miguel Feixa Rodrigues. 05451 Group 5 – Bananas, Dark Worlds, and AspectH. In Beyond Program Slicing. Dagstuhl Seminar Proceedings, Volume 5451, pp. 1-8, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2006)


Copy BibTex To Clipboard

@InProceedings{breu_et_al:DagSemProc.05451.3,
  author =	{Breu, Silvia and Schlickling, Marc and Rodrigues, Nuno Miguel Feixa},
  title =	{{05451 Group 5 – Bananas, Dark Worlds, and AspectH}},
  booktitle =	{Beyond Program Slicing},
  pages =	{1--8},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2006},
  volume =	{5451},
  editor =	{David W. Binkley and Mark Harman and Jens Krinke},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.05451.3},
  URN =		{urn:nbn:de:0030-drops-4910},
  doi =		{10.4230/DagSemProc.05451.3},
  annote =	{Keywords: Haskell, code clone detection, refactoring, functional control graph}
}
Document
Extending C Global Surveyor

Authors: Silvia Breu

Published in: Dagstuhl Seminar Proceedings, Volume 5451, Beyond Program Slicing (2006)


Abstract
Software failure are noted for their blowing large sums of money and sometimes even human life, in particular in the area of safety critical mission software. The most well-known desaster happened in 1996 when Ariane 501 exploded shortly after launch. The least it did was to cost the European space program half a billion US$ due to an overflow in an arithmetic conversion. The Automated Software Engineering Group at the NASA Ames Research Center has developed C Global Surveyor (CGS), a static analysis tool based on abstract interpretation. It particularly concentrates on runtime errors that are hard to find during development such as out-of-bound array accesses, acesses to non-initialised variables, and de-references of null pointers. CGS proved to analyse large, pointer intensive and heavily multithreaded code (up to 280 KLoC) in a couple of hours with a constant precision of 80%. It is used to successfully analyse mission-critical flight software of NASA's "Mars Path-Finder" (MPF) and Deep Space 1 (DS1) legacy as well as software of the Mars Exploration Rover (MER) mission (650 KLoC) and other JPL-based missions. However, the abstract interpretation techniques on which CGS is based, need to be augmented by complimentary program analysis techniques in order to enhance CGS and support the developer when analysing very large systems. As a first step, we included the construction of control flow graphs that represent the programs to be analysed. It is a first step towards the application of more advanced techniques such as program slicing.

Cite as

Silvia Breu. Extending C Global Surveyor. In Beyond Program Slicing. Dagstuhl Seminar Proceedings, Volume 5451, pp. 1-5, Schloss Dagstuhl – Leibniz-Zentrum für Informatik (2006)


Copy BibTex To Clipboard

@InProceedings{breu:DagSemProc.05451.6,
  author =	{Breu, Silvia},
  title =	{{Extending C Global Surveyor}},
  booktitle =	{Beyond Program Slicing},
  pages =	{1--5},
  series =	{Dagstuhl Seminar Proceedings (DagSemProc)},
  ISSN =	{1862-4405},
  year =	{2006},
  volume =	{5451},
  editor =	{David W. Binkley and Mark Harman and Jens Krinke},
  publisher =	{Schloss Dagstuhl -- Leibniz-Zentrum f{\"u}r Informatik},
  address =	{Dagstuhl, Germany},
  URL =		{https://drops.dagstuhl.de/entities/document/10.4230/DagSemProc.05451.6},
  URN =		{urn:nbn:de:0030-drops-4878},
  doi =		{10.4230/DagSemProc.05451.6},
  annote =	{Keywords: Static program analysis, abstract interpretation, program slicing}
}
Questions / Remarks / Feedback
X

Feedback for Dagstuhl Publishing


Thanks for your feedback!

Feedback submitted

Could not send message

Please try again later or send an E-mail