Language support for changeable large real time systems
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
Object-oriented programming: an objective sense of style
OOPSLA '88 Conference proceedings on Object-oriented programming systems, languages and applications
Subject-oriented programming: a critique of pure objects
OOPSLA '93 Proceedings of the eighth annual conference on Object-oriented programming systems, languages, and applications
Efficient implementation of adaptive software
ACM Transactions on Programming Languages and Systems (TOPLAS)
Software requirements & specifications: a lexicon of practice, principles and prejudices
Software requirements & specifications: a lexicon of practice, principles and prejudices
Preventive program maintenance in Demeter/Java
ICSE '97 Proceedings of the 19th international conference on Software engineering
Composition Validation and Subjectivity in GenVoca Generators
IEEE Transactions on Software Engineering
Evolution of Object Behavior Using Context Relations
IEEE Transactions on Software Engineering
A new approach to compiling adaptive programs
Science of Computer Programming
Adaptive plug-and-play components for evolutionary software development
Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Aspect-oriented programming: Introduction
Communications of the ACM
Incremental programming with extensible decisions
AOSD '02 Proceedings of the 1st international conference on Aspect-oriented software development
Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns
Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns
Assuring Good Style for Object-Oriented Programs
IEEE Software
Object-Oriented Software Evolution
IEEE Transactions on Software Engineering
JAsCo: an aspect-oriented approach tailored for component based software development
Proceedings of the 2nd international conference on Aspect-oriented software development
A case for statically executable advice: checking the law of demeter with AspectJ
Proceedings of the 2nd international conference on Aspect-oriented software development
Conquering aspects with Caesar
Proceedings of the 2nd international conference on Aspect-oriented software development
Component Enhancement: An Adaptive Reusability Mechanism for Groups of Collaborating Classes
Proceedings of the IFIP 12th World Computer Congress on Algorithms, Software, Architecture - Information Processing '92, Volume 1 - Volume I
Abstracting Process-to-Function Relations in Concurrency Object-Oriented Applications
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
Abstracting Object Interactions Using Composition Filters
ECOOP '93 Proceedings of the Workshop on Object-Based Distributed Programming
DJ: Dynamic Adaptive Programming in Java
REFLECTION '01 Proceedings of the Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns
Aspect-Oriented Programming is Quantification and Obliviousness
Aspect-Oriented Programming is Quantification and Obliviousness
XAspects: an extensible system for domain-specific aspect languages
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Domain driven web development with WebJinn
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Beyond AOP: toward naturalistic programming
OOPSLA '03 Companion of the 18th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Embryonic object versus mature object: object-oriented style and pedagogical theme
Proceedings of the 8th annual conference on Innovation and technology in computer science education
Traversals of object structures: Specification and Efficient Implementation
ACM Transactions on Programming Languages and Systems (TOPLAS)
Building adaptive distributed applications with middleware and aspects
Proceedings of the 3rd international conference on Aspect-oriented software development
Composition, reuse and interaction analysis of stateful aspects
Proceedings of the 3rd international conference on Aspect-oriented software development
IEEE Software
Design snippets: partial design representations extracted from source code
OOPSLA '04 Companion to the 19th annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Proceedings of the 4th international conference on Aspect-oriented software development
Aspect-oriented programming with AspectJ
IBM Systems Journal
Proceedings of the 5th international conference on Aspect-oriented software development
An empirical study of the strength of information flows in programs
Proceedings of the 2006 international workshop on Dynamic systems analysis
ACoM '07 Proceedings of the First International Workshop on Assessment of Contemporary Modularization Techniques
Measuring the strength of information flows in programs
ACM Transactions on Software Engineering and Methodology (TOSEM)
An access control language for dynamic systems – model-driven development and verification
SDL'05 Proceedings of the 12th international conference on Model Driven
FeatureC++: on the symbiosis of feature-oriented and aspect-oriented programming
GPCE'05 Proceedings of the 4th international conference on Generative Programming and Component Engineering
Hi-index | 0.00 |
Our research has focused on identifying techniquesto develop software that is amenable to refactoring andchange. The Law of Demeter (LoD) was one contributionin this effort. But it led to other problems. With thecurrent state of the art focused on Aspect-Oriented SoftwareDevelopment (AOSD), it is useful to revisit thegeneral objectives of the LoD and adapt it to the newideas. Hence we introduce the Law of Demeter for Concernsand discuss the important intersection of these approacheswith traversals. We explore the ramifications ofthe Laws of Demeter (LoD and LoDC) to achieve betterseparation of concerns through improved software processes.They are supported by language mechanisms thatare implemented using novel applications of automata theory.A revised version of this paper and the slides are availablefrom the Demeter website:http://www.ccs.neu.edu/research/demeterin the directory papers/icse-04-keynote/