SMALLTALK-80: the interactive programming environment
SMALLTALK-80: the interactive programming environment
The Trellis programming environment
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Interprocedural slicing using dependence graphs
ACM Transactions on Programming Languages and Systems (TOPLAS)
The C Information Abstraction System
IEEE Transactions on Software Engineering
Using Program Slicing in Software Maintenance
IEEE Transactions on Software Engineering
Seesoft-A Tool for Visualizing Line Oriented Software Statistics
IEEE Transactions on Software Engineering - Special issue on software measurement principles, techniques, and environments
A new model of program dependences for reverse engineering
SIGSOFT '94 Proceedings of the 2nd ACM SIGSOFT symposium on Foundations of software engineering
Slicing class hierarchies in C++
Proceedings of the 11th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
An Extensible System for Source Code Analysis
IEEE Transactions on Software Engineering
Conceptual module querying for software reengineering
Proceedings of the 20th international conference on Software engineering
Efficient and precise modeling of exceptions for the analysis of Java programs
Proceedings of the 1999 ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Compiler and tool support for debugging object protocols
SIGSOFT '00/FSE-8 Proceedings of the 8th ACM SIGSOFT international symposium on Foundations of software engineering: twenty-first century applications
On the criteria to be used in decomposing systems into modules
Communications of the ACM
Exploiting the map metaphor in a tool for software evolution
ICSE '01 Proceedings of the 23rd International Conference on Software Engineering
Software Change Impact Analysis
Software Change Impact Analysis
Optimization of Object-Oriented Programs Using Static Class Hierarchy Analysis
ECOOP '95 Proceedings of the 9th European Conference on Object-Oriented Programming
Efficient mapping of software system traces to architectural views
CASCON '00 Proceedings of the 2000 conference of the Centre for Advanced Studies on Collaborative research
Derivation of Feature Component Maps by means of Concept Analysis
CSMR '01 Proceedings of the Fifth European Conference on Software Maintenance and Reengineering
Analysis of Programs with Exception-Handling Constructs
ICSM '98 Proceedings of the International Conference on Software Maintenance
Slicing Objects Using System Dependence Graphs
ICSM '98 Proceedings of the International Conference on Software Maintenance
Case Study of Feature Location Using Dependence Graph
IWPC '00 Proceedings of the 8th International Workshop on Program Comprehension
Generalized aliasing as a basis for program analysis tools
Generalized aliasing as a basis for program analysis tools
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
A representation for describing and analyzing concerns in source code
Proceedings of the 24th International Conference on Software Engineering
Navigating and querying code without getting lost
Proceedings of the 2nd international conference on Aspect-oriented software development
Visual separation of concerns through multidimensional program storage
Proceedings of the 2nd international conference on Aspect-oriented software development
FEAT: a tool for locating, describing, and analyzing concerns in source code
Proceedings of the 25th International Conference on Software Engineering
Refactoring to aspects: an interactive approach
eclipse '03 Proceedings of the 2003 OOPSLA workshop on eclipse technology eXchange
SNIAFL: Towards a Static Non-Interactive Approach to Feature Location
Proceedings of the 26th International Conference on Software Engineering
Static and dynamic analysis of call chains in java
ISSTA '04 Proceedings of the 2004 ACM SIGSOFT international symposium on Software testing and analysis
PRISM is research in aSpect mining
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
An analysis of modularity in aspect oriented design
Proceedings of the 4th international conference on Aspect-oriented software development
Role-based refactoring of crosscutting concerns
Proceedings of the 4th international conference on Aspect-oriented software development
Automatic generation of suggestions for program investigation
Proceedings of the 10th European software engineering conference held jointly with 13th ACM SIGSOFT international symposium on Foundations of software engineering
Using language clues to discover crosscutting concerns
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
ActiveAspect: presenting crosscutting structure
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
Concern modeling in the concern manipulation environment
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
An exploration of how comments are used for marking related code fragments
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
Incremental exploratory visualization of relationships in large codebases for program comprehension
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Incremental exploratory visualization of relationships in large codebases for program comprehension
OOPSLA '05 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Refactoring the Aspectizable Interfaces: An Empirical Assessment
IEEE Transactions on Software Engineering
Relo: helping users manage context during interactive exploratory visualization of large codebases
eclipse '05 Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
ConcernMapper: simple view-based separation of scattered concerns
eclipse '05 Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
NaCIN: an Eclipse plug-in for program navigation-based concern inference
eclipse '05 Proceedings of the 2005 OOPSLA workshop on Eclipse technology eXchange
Towards supporting on-demand virtual remodularization using program graphs
Proceedings of the 5th international conference on Aspect-oriented software development
Visualisation-based tool support for the development of aspect-oriented programs
Proceedings of the 5th international conference on Aspect-oriented software development
Presenting crosscutting structure with active models
Proceedings of the 5th international conference on Aspect-oriented software development
SNIAFL: Towards a static noninteractive approach to feature location
ACM Transactions on Software Engineering and Methodology (TOSEM)
Feature oriented refactoring of legacy applications
Proceedings of the 28th international conference on Software engineering
Understanding software application interfaces via string analysis
Proceedings of the 28th international conference on Software engineering
Unanticipated reuse of large-scale software features
Proceedings of the 28th international conference on Software engineering
Replaying development history to assess the effectiveness of change propagation tools
Empirical Software Engineering
Using aspect-oriented PHP to implement crosscutting concerns in a collaborative web system
SIGDOC '06 Proceedings of the 24th annual ACM international conference on Design of communication
Feature refactoring a multi-representation program into a product line
Proceedings of the 5th international conference on Generative programming and component engineering
Using task context to improve programmer productivity
Proceedings of the 14th ACM SIGSOFT international symposium on Foundations of software engineering
Towards evidence-supported, question-directed collaborative program comprehension
CASCON '06 Proceedings of the 2006 conference of the Center for Advanced Studies on Collaborative research
Representing concerns in source code
ACM Transactions on Software Engineering and Methodology (TOSEM)
Using natural language program analysis to locate and understand action-oriented concerns
Proceedings of the 6th international conference on Aspect-oriented software development
Efficiently mining crosscutting concerns through random walks
Proceedings of the 6th international conference on Aspect-oriented software development
Tool-Supported Refactoring of Existing Object-Oriented Code into Aspects
IEEE Transactions on Software Engineering
The SEXTANT Software Exploration Tool
IEEE Transactions on Software Engineering
IEEE Transactions on Software Engineering
Supporting the Investigation and Planning of Pragmatic Reuse Tasks
ICSE '07 Proceedings of the 29th international conference on Software Engineering
SoQueT: Query-Based Documentation of Crosscutting Concerns
ICSE '07 Proceedings of the 29th international conference on Software Engineering
Identifying Crosscutting Concerns Using Fan-In Analysis
ACM Transactions on Software Engineering and Methodology (TOSEM)
Exploring the neighborhood with dora to expedite software maintenance
Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering
Documenting after the fact: Recovering architectural design decisions
Journal of Systems and Software
View-based maintenance of graphical user interfaces
Proceedings of the 7th international conference on Aspect-oriented software development
Aspect mining from a modelling perspective
International Journal of Computer Applications in Technology
Granularity in software product lines
Proceedings of the 30th international conference on Software engineering
Developing natural language-based program analyses and tools to expedite software maintenance
Companion of the 30th international conference on Software engineering
A theory of aspects as latent topics
Proceedings of the 23rd ACM SIGPLAN conference on Object-oriented programming systems languages and applications
An integrated crosscutting concern migration strategy and its semi-automated application to JHotDraw
Automated Software Engineering
Lightweight query-based analysis of workflow process dependencies
Journal of Systems and Software
How tagging helps bridge the gap between social and technical aspects in software development
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
ConcernLines: A timeline view of co-occurring concerns
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
A model of refactoring physically and virtually separated features
GPCE '09 Proceedings of the eighth international conference on Generative programming and component engineering
Software System Understanding via Architectural Views Extraction According to Multiple Viewpoints
OTM '09 Proceedings of the Confederated International Workshops and Posters on On the Move to Meaningful Internet Systems: ADI, CAMS, EI2N, ISDE, IWSSA, MONET, OnToContent, ODIS, ORM, OTM Academy, SWWS, SEMELS, Beyond SAWSDL, and COMBEK 2009
Reactive information foraging for evolving goals
Proceedings of the SIGCHI Conference on Human Factors in Computing Systems
Extracting and evolving code in product lines with aspect-oriented programming
Transactions on aspect-oriented software development IV
A survey of automated code-level aspect mining techniques
Transactions on aspect-oriented software development IV
Identifying crosscutting concerns using historical code changes
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 1
Proceedings of the 1st Workshop on Web 2.0 for Software Engineering
Proceedings of the 32nd ACM/IEEE International Conference on Software Engineering - Volume 2
An agenda for concern-oriented software engineering
Proceedings of the FSE/SDP workshop on Future of software engineering research
BeeEye: a framework for constructing architectural views
ECSA'10 Proceedings of the 4th European conference on Software architecture
Separation of scattered concerns: a graph based approach for aspect mining
ACM SIGSOFT Software Engineering Notes
A design perspective on modularity
Proceedings of the tenth international conference on Aspect-oriented software development
Aspect recommendation for evolving software
Proceedings of the 33rd International Conference on Software Engineering
Revisiting information hiding: reflections on classical and nonclassical modularity
Proceedings of the 25th European conference on Object-oriented programming
JQuery: a generic code browser with a declarative configuration language
PADL'06 Proceedings of the 8th international conference on Practical Aspects of Declarative Languages
Aspect-Oriented software development and software process
SPW'05 Proceedings of the 2005 international conference on Unifying the Software Process Spectrum
Concept analysis as a framework for mining functional features from legacy code
ICFCA'10 Proceedings of the 8th international conference on Formal Concept Analysis
CAiSE'05 Proceedings of the 17th international conference on Advanced Information Systems Engineering
The emergent structure of development tasks
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
From requirements documents to feature models for aspect oriented product line implementation
MoDELS'05 Proceedings of the 2005 international conference on Satellite Events at the MoDELS
Extracting and evolving mobile games product lines
SPLC'05 Proceedings of the 9th international conference on Software Product Lines
Assessing aspect modularizations using design structure matrix and net option value
Transactions on Aspect-Oriented Software Development I
Domain-driven technique for functionality identification in source code
ACM SIGSOFT Software Engineering Notes
Automated support for building behavioral models of event-driven systems
FASE'06 Proceedings of the 9th international conference on Fundamental Approaches to Software Engineering
Proceedings of the 34th International Conference on Software Engineering
Code patterns for automatically validating requirements-to-code traces
Proceedings of the 27th IEEE/ACM International Conference on Automated Software Engineering
On the modularity of software architectures: a concern-driven measurement framework
ECSA'07 Proceedings of the First European conference on Software Architecture
Science of Computer Programming
An abstract representation of variational graphs
Proceedings of the 5th International Workshop on Feature-Oriented Software Development
Hi-index | 0.00 |
Many maintenance tasks address concerns, or features, that are not well modularized in the source code comprising a system. Existing approaches available to help software developers locate and manage scattered concerns use a representation based on lines of source code, complicating the analysis of the concerns. In this paper, we introduce the Concern Graph representation that abstracts the implementation details of a concern and makes explicit the relationships between different parts of the concern. The abstraction used in a Concern Graph has been designed to allow an obvious and inexpensive mapping back to the corresponding source code. To investigate the practical tradeoffs related to this approach, we have built the Feature Exploration and Analysis tool (FEAT) that allows a developer to manipulate a concern representation extracted from a Java system, and to analyze the relationships of that concern to the code base. We have used this tool to find and describe concerns related to software change tasks. We have performed case studies to evaluate the feasibility, usability, and scalability of the approach. Our results indicate that Concern Graphs can be used to document a concern for change, that developers unfamiliar with Concern Graphs can use them effectively, and that the underlying technology scales to industrial-sized programs.