WordNet: a lexical database for English
Communications of the ACM
The concept assignment problem in program understanding
ICSE '93 Proceedings of the 15th international conference on Software Engineering
Conceptual module querying for software reengineering
Proceedings of the 20th international conference on Software engineering
N degrees of separation: multi-dimensional separation of concerns
Proceedings of the 21st international conference on Software engineering
International Journal of Human-Computer Studies
Browsing and searching source code of applications written using a GUI framework
Proceedings of the 24th International Conference on Software Engineering
Concern graphs: finding and describing concerns using structural program dependencies
Proceedings of the 24th International Conference on Software Engineering
Visual separation of concerns through multidimensional program storage
Proceedings of the 2nd international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Design recovery of interactive graphical applications
Proceedings of the 25th International Conference on Software Engineering
Design Pattern Rationale Graphs: linking design to source
Proceedings of the 25th International Conference on Software Engineering
TraceGraph: Immediate Visual Location of Software Features
ICSM '00 Proceedings of the International Conference on Software Maintenance (ICSM'00)
TnT: a statistical part-of-speech tagger
ANLC '00 Proceedings of the sixth conference on Applied natural language processing
Partial parsing via finite-state cascades
Natural Language Engineering
Semantic-driven program analysis
Semantic-driven program analysis
Distributional clustering of English words
ACL '93 Proceedings of the 31st annual meeting on Association for Computational Linguistics
Noun classification from predicate-argument structures
ACL '90 Proceedings of the 28th annual meeting on Association for Computational Linguistics
ACM SIGAda Ada Letters
Theme: An Approach for Aspect-Oriented Analysis and Design
Proceedings of the 26th International Conference on Software Engineering
SNIAFL: Towards a Static Non-Interactive Approach to Feature Location
Proceedings of the 26th International Conference on Software Engineering
Aspect Mining Using Event Traces
Proceedings of the 19th IEEE international conference on Automated software engineering
Identifying Aspects Using Fan-In Analysis
WCRE '04 Proceedings of the 11th Working Conference on Reverse Engineering
Mylar: a degree-of-interest model for IDEs
Proceedings of the 4th international conference on Aspect-oriented software development
Proceedings of the 27th international conference on Software engineering
High precision extraction of grammatical relations
COLING '02 Proceedings of the 19th international conference on Computational linguistics - Volume 1
Chunking with support vector machines
NAACL '01 Proceedings of the second meeting of the North American Chapter of the Association for Computational Linguistics on Language technologies
Using language clues to discover crosscutting concerns
MACS '05 Proceedings of the 2005 workshop on Modeling and analysis of concerns in software
Timna: a framework for automatically combining aspect mining analyses
Proceedings of the 20th IEEE/ACM international Conference on Automated software engineering
The emergent structure of development tasks
ECOOP'05 Proceedings of the 19th European conference on Object-Oriented Programming
Semantics-based composition for aspect-oriented requirements engineering
Proceedings of the 6th international conference on Aspect-oriented software development
Using natural language program analysis to locate and understand action-oriented concerns
Proceedings of the 6th international conference on Aspect-oriented software development
Introducing natural language program analysis
PASTE '07 Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
PASTE '07 Proceedings of the 7th ACM SIGPLAN-SIGSOFT workshop on Program analysis for software tools and engineering
Early aspect identification from use cases using NLP and WSD techniques
Proceedings of the 15th workshop on Early aspects
The Java Programmer's Phrase Book
Software Language Engineering
Automatically capturing source code context of NL-queries for software maintenance and reuse
ICSE '09 Proceedings of the 31st International Conference on Software Engineering
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
Automated Aspect Recommendation through Clustering-Based Fan-in Analysis
ASE '08 Proceedings of the 2008 23rd IEEE/ACM International Conference on Automated Software Engineering
Canonical method names for Java: using implementation semantics to identify synonymous verbs
SLE'10 Proceedings of the Third international conference on Software language engineering
Mining textual requirements to assist architectural software design: a state of the art review
Artificial Intelligence Review
EA-Analyzer: automating conflict detection in a large set of textual aspect-oriented requirements
Automated Software Engineering
Hi-index | 0.00 |
OOP style requires programmers to organize their code according to objects (or nouns, using natural language as a metaphor), causing a program's actions (verbs) to become scattered during implementation. We define an Action-Oriented Identifier Graph (AOIG) to reconnect the scattered actions in an OOP system. An OOP system with an AOIG will essentially support the dynamic virtual remodularization of OOP code into an Action-Oriented View. We have developed an algorithm to automatically construct an AOIG, and an implementation of the construction process. To automatically construct an AOIG, we use Natural Language Processing (NLP) techniques to process the natural language clues left by programmers in source code and comments, and we connect code segments through the actions that they perform. Using a reasonably sized program, we present several applications of an AOIG (feature location, working set recovery, and aspect mining), which demonstrate how the AOIG can be used by software engineering tools to combat the tyranny of the dominant decomposition.