Other Related Resources

 

The following is just an initial sample of related resources. Please check the course web site frequently for updates to this list.

 

Web Sites

 

 

All things Aspect-Oriented

 

http://aosd.net

 

http://aspectj.org

http://aspectj.org/servlets/AJSite?channel=newsAndEvents&subChannel=articles

 

http://www.research.ibm.com/hyperspace/HyperJ/HyperJ.htm

 

http://www.ccs.neu.edu/research/demeter/DJ/

 

Reflection

 

http://java.sun.com/docs/books/tutorial/reflect/

http://tunes.org/Review/Reflection.html

http://www.csg.is.titech.ac.jp/~chiba/reflection.html

http://www.openjit.org/reflection2001/

http://www.csg.is.titech.ac.jp/~chiba/oopsla98ws.html

http://www.csg.is.titech.ac.jp/~chiba/openc++.html

http://www.ddj.com/documents/s=924/ddj9801c/9801c.htm

 

Model-Integrated Computing

 

http://www.isis.vanderbilt.edu

 

Adaptive Reflective Middleware

 

http://quo.bbn.com/

http://www.comp.lancs.ac.uk/computing/research/mpg/reflection/

http://www.comp.lancs.ac.uk/computing/rm2000/

http://www.comp.lancs.ac.uk/computing/rm2000/res_page.html

http://dsonline.computer.org/middleware/index.htm

http://choices.cs.uiuc.edu/2k/dynamicTAO

 

Books/Papers

 

[Aksit et al., 1992] Mehmet Aksit, Lodewijk Bergmans, and S. Vural, “An Object-Oriented Language-Database Integration Model: The Composition Filters Approach,” European Conference on Object-Oriented Programming (ECOOP), LNCS 615, Springer-Verlag, Utrecht, The Netherlands, June/July 1992, pp. 372-395.

 

[Bracha and Cook, 1990] Gilad Bracha and William Cook, “Mixin-based Inheritance,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Ottawa, Canada, October 1990, pp. 308-311.

 

[Batory and Geraci, 1997] Don Batory and Bart J. Geraci, “Composition Validation and Subjectivity in GenVoca Generators,” IEEE Transactions on Software Engineering, February 1997, pp. 67-82.

 

[Batory et al., 1998] Don Batory, Bernie Lofaso, and Yannis Smaragdakis, “JTS: Tools for Implementing Domain-Specific Languages,” Fifth International Conference on Software Reuse, Victoria, Canada, June 1998, pp. 143-153.

 

[Bobrow et al., 1993] Daniel G. Bobrow, Richard Gabriel, and Jon L. White, “CLOS in Context: The Shape of the Design Space,” A. Paepcke, editor, Object-Oriented Programming: The CLOS Perspective, 1993, pp. 29-61.

 

[Booch et al., 1998] Grady Booch, Ivar Jacobson, James Rumbaugh, The Unified Modeling Language User Guide, Addison-Wesley, 1998.

 

[Booch, 2001] Grady Booch, “Through the Looking Glass,” Software Development Magazine, July 2001, pp. 49-51.

 

[Cardone, 1999] Richard Cardone, “On the Relationship of Aspect-Oriented Programming and GenVoca,” Workshop on Institutionalizing Software Reuse, Austin, Texas, January 1999.

 

[Chavez and de Lucena, 2001] Christina von Flach G. Chavez and Carlos J. P. de Lucena, “Design-level Support for Aspect-Oriented Software Development,” OOPSLA Workshop on Advanced Separation of Concerns, Minneapolis, Minnesota, October 2001.

 

[Chiba and Masuda, 1993] Shigeru Chiba and Takashi Masuda, “Designing an Extensible Distributed Language with a Metalevel Architecture,” European Conference on Object-Oriented Programming (ECOOP), LNCS 707, Springer-Verlag, Kaiserslautern, Germany, July 1993, pp. 482-501.

 

[Chiba, 2000] Shigeru Chiba, “Load-time Structural Reflection in Java,” ECOOP 2000 – Object-Oriented Programming, LNCS 1850, Springer Verlag, pp. 313–336, 2000.

 

[Clarke, 2002] Siobhán Clarke, “Extending Standard UML with Model Composition Semantics,” Science of Computer Programming, May 2002.

 

[Clavel, 2000] Manuel Clavel, Reflection in Rewriting Logic: Metalogical Foundations and Metaprogramming Applications, CSLI Publications, 2000.

 

[Coady et al., 2001b] Yvonne Coady, Gregor Kiczales, Mike Feeley, Norm Hutchinson, and Joon Suan Ong, “Structuring Operating System Aspects,” Communications of the ACM, October 2001, pp. 79-82.

 

[Constantinides et al., 2000] Constantinos Constantinides, Atef Bader, Tzilla Elrad, P. Netinant, and Mohamed Fayad, “Designing an Aspect-Oriented Framework in an Object-Oriented Environment,” ACM Computing Surveys, March 2000.

 

[Craig, 2000] Iain Craig, The Interpretation of Object-Oriented Programming Languages, Springer-Verlag, 2000.

 

[Czarnecki and Eisenecker, 2000] Krzysztof Czarnecki and Ulrich Eiseneker, Generative Programming: Methods, Tools, and Applications, Addison-Wesley, 2000.

 

[de Moor et al., 1999] Oege de Moor, Simon Peyton-Jones, and Eric Van Wyk, “Aspect-Oriented Compilers,” In First International Symposium on Generative and Component-Based Software Engineering, Erfurt, Germany, September 1999, pp. 121-133.

 

[De Volder and D’Hondt, 1999] Kris De Volder and Theo D’Hondt, “Aspect-Oriented Logic Meta Programming,” Proceedings of Reflection ’99: Metalevel Architectures and Reflection, LNCS 1616, Springer-Verlag, Saint-Malo, France, July 1999, pp. 250-272.

 

[Elrad et al., 2001] Tzilla Elrad, Mehmet Aksit, Gregor Kiczales, Karl Lieberherr, and Harold Ossher, “Discussing Aspects of AOP,” Communications of the ACM, October 2001, pp. 33-38.

 

[Fayad et al., 1999] Mohamed Fayad, Douglas Schmidt, and Ralph Johnson, Building Application Frameworks: Object-Oriented Foundations of Framework Design, John Wiley and Sons, 1999.

 

[Filman, 2001]  Robert Filman, “What is Aspect-Oriented Programming, Revisited,” ICSE Workshop on Advanced Separation of Concerns, Toronto, Ontario, Canada, May 2001.

 

[Forman and Danforth, 1999] Ira R. Forman and Scott H. Danforth, Putting Metaclasses to Work, Addison-Wesley, 1999.

 

[Griswold et al., 2001] William G. Griswold, Jimmy J. Yuan, and Yoshikiyo Kato, “Exploiting the Map Metaphor in a Tool for Software Evolution,” International Conference on Software Engineering (ICSE), Toronto, Ontario, Canada, May 2001, pp. 265-274.

 

[Grosso, 2002] William Grosso, “Aspect-Oriented Programming and AspectJ,” Dr. Dobb’s Journal, August 2002.

 

[Grundy, 2000] John Grundy, “Multi-Perspective Specification, Design and Implementation of Software Components Using Aspects,” International Journal of Software and Knowledge Engineering, December 2000, pp. 713-734.

 

[Hannemann and Kiczales, 2001] Jan Hannemann and Gregor Kiczales, “Overcoming the Prevalent Decomposition in Legacy Code,” ICSE Workshop on Advanced Separation of Concerns, Toronto, Ontario, Canada, May 2001.

 

[Harrison and Ossher, 1990] William Harrison and Harold Ossher, “Subdivided Procedures: A Language Extension Supporting Extensible Programming,” International Conference on Computer Languages, New Orleans, Louisiana, March 1990, pp. 190-197.

 

[Harrison et al., 1997] Timothy Harrison, David Levine, and Douglas C. Schmidt, “The Design and Performance of a Real-Time CORBA Event Service,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Atlanta, Georgia, October 1997, pp. 184-200.

 

[Hoftstadter, 1979] Douglas R. Hofstadter, Gödel, Escher, Bach, Random House, 1979.

 

[Karsai and Gray, 2000] Gábor Karsai and Jeff Gray, “Component Generation Technology for Semantic Tool Integration,” IEEE Aerospace Conference, Big Sky, Montana, March 2000.

 

[Katz and Gil, 1999] Shmuel Katz and Joseph Gil, “Aspects and Superimpositions,” ECOOP Workshop on Aspect-Oriented Programming, Lisbon, Portugal, June 1999.

 

[Kersten and Murphy, 1999] Mik Kersten and Gail C. Murphy, “Atlas: A Case Study in Building a Web-based Learning Environment Using Aspect-Oriented Programming,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Denver, Colorado, November 1999, pp. 340-352.

 

[Kiczales et al., 1991] Gregor Kiczales, Jim des Rivières, and Daniel G. Bobrow, The Art of the Metaobject Protocol, MIT Press, 1991.

 

[Kiczales, 1992] Gregor Kiczales, “Towards a New Model of Abstraction in the Engineering of Software,” Proceedings of the International Workshop on New Models for Software Architectures (IMSA): Reflection and Metalevel Architecture, Tokyo, Japan, November 1992, pp. 1-11.

 

[Kiczales et al., 1992] Gregor Kiczales, John Lamping, Luis H. Rodriguez Jr., and Erik Ruf, “Macros that Reach Out and Touch Somewhere,” Internal Technical Report, Embedded Computation Area, Xerox PARC, 1992.

 

[Laddad, 2002] Ramnivas Laddad, “I Want My AOP! Parts1-3,” Java World, January through April, 2002, (http://www.javaworld.com/javaworld/jw-01-2002/jw-0118-aspect.html)

 

[Lesiecki, 2002] Nicholas Lesieki, “Test Flexibly with AspectJ and Mock Objects,” IBM DeveloperWorks, (http://www-106.ibm.com/developerworks/java/library/j-aspectj2/?open&l=007,t=gr)

 

[Lewis, 1995] Ted Lewis, ed., Object-Oriented Application Frameworks, Manning Publications, 1995.

 

[Lieberherr, 1996] Karl Lieberherr, Adaptive Object-Oriented Software, International Thomson Publishing, 1996.

 

[Lopes, 1997] Cristina Lopes, D: A Language Framework for Distributed Programming, Ph.D. Dissertation, College of Computer Science, Northeastern University, November 1997.

 

[Milicev, 2002] Dragan Milicev, “Domain Mapping Using Extended UML Object Diagrams,” IEEE Software, March 2002, pp. 90-97.

 

[Murphy et al., 1999] Gail C. Murphy, Robert J. Walker, and Elisa L.A. Baniassad, “Evaluating Emerging Software Development Technologies: Lessons Learned from Assessing Aspect-Oriented Programming,” IEEE Transactions on Software Engineering, July/August 1999, pp. 438-455.

 

[Nelson et al., 2001] Torsten Nelson, Donald Cowan, and Paulo Alencar, “Supporting Formal Verification of Crosscutting Concerns,” Reflection 2001: The Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns, LNCS 2192, Springer-Verlag, Kyoto, Japan, September 2001, pp. 153-169.

 

[Nordberg, 2001] Martin Nordberg, “Aspect-Oriented Dependency Inversion,” OOPSLA Workshop on Advanced Separation of Concerns, Tampa, Florida, October 2001.

 

[Rashid, 2001] Awais Rashid, “A Hybrid Approach to Separation of Concerns: The Story of SADES,” Reflection 2001: The Third International Conference on Metalevel Architectures and Separation of Crosscutting Concerns, LNCS 2192, Springer-Verlag, Kyoto, Japan, September 2001, pp. 231-249.

 

[Robillard and Murphy, 2002] Martin Robillard and Gail Murphy, “Concern Graphs: Finding and Describing Concerns Using Structural Program Dependencies,” International Conference on Software Engineering (ICSE), Buenos Aires, Argentina, May 2002.

 

[Schonger et al., 2002] Stefan Schonger, Elke Pulvermueller, and Stefan Sarstedt, “Aspect-Oriented Programming and Component Weaving: Using XML Representations of Abstract Syntax Trees,” Second German Workshop on Aspect-Oriented Software Development, Bonn, Germany, February 2002.

 

[Shukla et al., 2002] Dharma Shukla, Simon Fell, and Chris Sells, “Aspect-Oriented Programming Enables Better Code Encapsulation and Reuse,” MSDN Magazine, March 2002, pp. 60-68.

 

[Sobel and Friedman, 1996] Jonathan M. Sobel and Daniel P. Friedman, “An Introduction to Reflection-Oriented Programming,” Reflection ‘96, San Francisco, California, April 1996.

 

[Sullivan, 2001] Gregory T. Sullivan, “Aspect-Oriented Programming using Reflection and Metaobject Protocols,” Communications of the ACM, October 2001, pp. 95-97.

 

[Tristram, 2001] Claire Tristram, “The Technology Review Ten: Untangling Code,” MIT Technology Review, January 2001.

 

[Viega and Voas, 2000] John Viega and Jeffrey Voas, “Can Aspect-Oriented Programming Lead to More Reliable Software?” IEEE Software, November/December 2000, pp. 19-21.

 

[Warmer and Kleppe, 1999] Jos Warmer and Anneke Kleppe, The Object Constraint Language: Precise Modeling with UML, Addison-Wesley, 1999.