Primary Course Readings

 

[Batory2003] Don Batory, Jacob Neal Sarvela, and Axel Rauschmeyer, “Scaling Step-Wise Refinement,” International Conference on Software Engineering, Portland, Oregon, May 2003, pp. 187-197.

 

[Bergmans and Aksit, 2001] Lodewijk Bergmans and Mehmet Aksit, “Composing Crosscutting Concerns using Composition Filters,” Communications of the ACM, October 2001, pp. 51-57.

 

[Chiba, 1995] Shigeru Chiba, “A Metaobject Protocol for C++,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Austin, Texas, October 1995, pp. 285-299.

 

[Chiba, 2000] Shigeru Chiba, “Load-time Structural Reflection in Java,” European Conference on Object-Oriented Programming (ECOOP), LNCS 1850, Springer-Verlag, Cannes, France, June 2000, pp. 313-336.

 

[Clarke and Walker, 2001] Siobhán Clarke and Robert J. Walker, “Composition Patterns: An Approach to Designing Reusable Aspects,” International Conference on Software Engineering (ICSE), Toronto, Ontario, Canada, May 2001, pp. 5-14.

 

[Coady and Kiczales, 2003] Yvonne Coady and Gregor Kiczales, “Back to the Future: A Retroactive Study of Aspect Evolution in Operating System Code,” Proceedings of the International Conference on Aspect-Oriented Software Development, Boston, MA, March 2003, pp. 50-59.

 

[Filman and Friedman, 2000] Robert Filman and Dan Friedman, “Aspect-Oriented Programming is Quantification and Obliviousness,” OOPSLA Workshop on Advanced Separation of Concerns, Minneapolis, Minnesota, October 2000.

 

[Gray et al., 2001] Jeff Gray, Ted Bapty, Sandeep Neema, and James Tuck, “Handling Crosscutting Constraints in Domain-Specific Modeling,” Communications of the ACM, October 2001, pp. 87-93.

 

[Karr et al., 2001] David Karr, Craig Rodrigues, Joseph Loyall, Richard Schantz, Yamuna Krishnamurthy, Irfan Pyarali, and Douglas Schmidt, “Application of the QuO Quality-of-Service Framework to a Distributed Video Application,” International Symposium on Distributed Objects and Applications, Rome, Italy, September 2001.

 

[Karsai, 1995] Gábor Karsai, “A Configurable Visual Programming Environment: A Tool for Domain-Specific Programming,” IEEE Computer, March 1995, pp. 36-44.


[Kiczales et al., 1993] Gregor Kiczales, J. Michael Ashley, Luis Rodriguez, Amin Vahdat, and Daniel G. Bobrow, “Metaobject Protocols: Why We Want Them and What Else Can They Do?” A. Paepcke, editor, Object-Oriented Programming: The CLOS Perspective, 1993, pp. 101-118.

 

[Kiczales, 1996] Gregor Kiczales, “Beyond the Black Box: Open Implementation,” IEEE Software, January 1996, pp. 8-11.

 

[Kiczales et al., 1997] Gregor Kiczales, John Lamping, Anurag Mendhekar, Chris Maeda, Cristina Videira Lopes, Jean-Marc Loingtier, and John Irwin, “Aspect-Oriented Programming,” European Conference on Object-Oriented Programming (ECOOP), LNCS 1241, Springer-Verlag, Jyväskylä, Finland, June 1997, pp. 220-242.

 

[Kiczales et al., 2001] Gregor Kiczales, Eric Hilsdale, Jim Hugunin, Mik Kersten, Jeffrey Palm, and William Griswold, “Getting Started with AspectJ,” Communications of the ACM, October 2001, pp. 59-65.

 

[Kniesel et al., 2001] Günter Kniesel, Pascal Costanza, Michael Austermann, “JMangler - A Framework for Load-Time Transformation of Java Class Files,” IEEE Workshop on Source Code Analysis and Manipulation (SCAM), November 2001.

 

[Lafferty and Cahill, 2003] Donal Lafferty and Vinny Cahill, “Language-Independent Aspect-Oriented Programming,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Anaheim, CA, October 2003.

 

[Lédeczi et al., 2001] Ákos Lédeczi, Arpad Bakay, Miklos Maroti, Peter Volgyesi, Greg Nordstrom, Jonathan Sprinkle, and Gábor Karsai, “Composing Domain-Specific Design Environments,” IEEE Computer, November 2001, pp. 44-51.

 

[Liang and Bracha, 1998] Sheng Liang and Gilad Bracha, “Dynamic Class Loading in the Java Virtual Machine,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Vancouver, B.C., Canada, October 1998, pp. 36-44.

 

[Lieberherr et al., 2001] Karl Lieberherr, Doug Orleans, and Johan Ovlinger, “Aspect-Oriented Programming with Adaptive Methods,” Communications of the ACM, October 2001, pp. 39-41.

 

[Lippert and Lopes, 2000] Martin Lippert and Cristina V. Lopes, “A Study on Exception Detection and Handling Using Aspect-Oriented Programming,” International Conference on Software Engineering (ICSE), Limmerick, Ireland, June 2000, pp. 418-427.

 

[Long et al., 1998] Earl Long, Amit Misra, and Janos Sztipanovits, “Increasing Productivity at Saturn,” IEEE Computer, August 1998, pp. 35-43.


[Loyall et al., 2002] Joseph Loyall, Rick Schantz, Michael Atighetchi, and Partha Pal, “Packaging Quality of Service Control Behaviors for Reuse,” 5th IEEE International Symposium on Object-Oriented Real-time Distributed Computing (ISORC), Washington, DC, April 29 - May 1, 2002.

 

[Maes, 1987] Pattie Maes, “Concepts and Experiments in Computational Reflection,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Orlando, Florida, December 1987, pp. 147-155.

 

[Masuhara and Kiczales, 2003] Hidehiko Masuhara and Gregor Kiczales, “Modeling Crosscutting in Aspect-Oriented Mechanisms,” European Conference on Object-Oriented Programming (ECOOP), Darmstadt, Germany, July 2003.

 

[Nordstrom et al., 1999] Greg Nordstrom, Janos Sztipanovits, Gábor Karsai, and Ákos Lédeczi, “Metamodeling - Rapid Design and Evolution of Domain-Specific Modeling Environments,” International Conference on Engineering of Computer-Based Systems (ECBS), Nashville, Tennessee, April 1999, pp. 68-74.

 

[Ossher and Tarr, 2001] Harold Ossher and Peri Tarr, “Using Multidimensional Separation of Concerns to (Re)Shape Evolving Software,” Communications of the ACM, October 2001, pp. 43-50.

 

[Popovici et al., 2003] Andrei Popovici, Gustavo Alonso, and Thomas Gross, “Just-in-time Aspects: Efficient Dynamic Weaving for Java,” Proceedings of the International Conference on Aspect-Oriented Software Development, Boston, MA, March 2003, pp. 100-109.

 

[Pratap and Cytron, 2003] Ravi Pratap and Ron Cytron, “Transport Layer Abstraction in Event Channels for Embedded Systems,” Languages, Compilers, and Tools for Embedded Systems (LCTES 03), San Diego, CA, June 2003.

 

[Schmidt et al., 2001] Schmidt DC, Schantz RE, Masters MW, Cross JK, Sharp DC, DiPalma LP, “Toward Adaptive and Reflective Middleware for Network-Centric Combat Systems,” Crosstalk: The Journal of Defense Software Engineering, November 2001, pp. 10-16.

 

[Sharp, 1998] David Sharp, “Reducing Avionics Software Cost Through Component Based Product-Line Development,” Software Technology Conference, Salt Lake City, Utah, April 1998.

 

[Shonle et al., 2003] Macneil Shonle, Karl Lieberherr, Ankit Shah, “XAspects: An Extensible System for Domain-Specific Aspect Languages,” Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA), Anaheim, CA, October 2003.

 

[Simonyi, 1996] Charles Simonyi, “Intentional Programming: Innovation in the Legacy Age,” Presented at IFIP WG 2.1, June 1996.

 

[Smith, 1984] Brian Cantwell Smith, “Reflection and Semantics in Lisp,” Annual Symposium on Principles of Programming Languages, Salt Lake City, Utah, 1984, pp. 23-35.

 

[Sztipanovits and Karsai, 1997] Janos Sztipanovits and Gábor Karsai, “Model-Integrated Computing,” IEEE Computer, April 1997, pp. 10-12.

 

[Sztipanovits et al., 1998] Janos Sztipanovits, Gábor Karsai, and Ted Bapty, “Self-Adaptive Software for Signal Processing,” Comunications of the ACM, May 1998, pp. 66-73.

 

[Tarr et al., 1999] Peri Tarr, Harold Ossher, William Harrison, and Stanley Sutton, “N Degrees of Separation: Multi-Dimensional Separation of Concerns,” International Conference on Software Engineering (ICSE), Los Angeles, California, May 1999, pp. 107-119.

 

[Tatsubori et al., 2000] Tatsubori, M., S. Chiba, M.-O. Killijian, and K. Itano, “OpenJava: A Class-based Macro System for Java,” in Reflection and Software Engineering (W. Cazzola, R. J. Stroud, and F. Tisato, eds.), LNCS 1826, Springer Verlag, 2000, pp. 117-133..

 

[Veldhuizen, 1995] Todd Veldhuizen, “Using C++ Template Metaprograms,” C++ Report Vol. 7 No. 4 (May 1995), pp. 36-43.

 

[Wang et al., 2000] Nanbor Wang, Douglas C. Schmidt, Ossama Othman, and Kirthika Parameswaran, “Evaluating Meta-Programming Mechanisms for ORB Middleware,” IEEE Communication Magazine, special issue on Evolving Communications Software: Techniques and Technologies (Bill Opdyke and Algirdas Pakstas, eds.), October 2000.

 

[Wohlstadter et al., 2003] Eric Wohlstadter, Stoney Jackson, Premkumar T. Devanbu, “DADO: Enhancing Middleware to Support Crosscutting Features in Distributed, Heterogeneous Systems,” International Conference on Software Engineering, Portland, Oregon, pp. 174-186.