Article
Authors: Hridesh Rajan, Kevin Sullivan
ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
Pages 297 - 306
Published: 01 September 2003 Publication History
Metrics
Total Citations62Total Downloads509Last 12 Months2
Last 6 weeks0
New Citation Alert added!
This alert has been successfully added and will be sent to:
You will be notified whenever a record that you have chosen has been cited.
To manage your alert preferences, click on the button below.
Manage my Alerts
New Citation Alert!
Please log in to your account
Get Access
- Get Access
- References
- Media
- Tables
- Share
Abstract
This paper makes two contributions: a generalization of AspectJ-like languages with first-class aspect instances and instance-level advising, and a mapping of the mediator style for integrated system design into this space. We present Eos as a prototype language design and implementation. It extends C# with AspectJ-like constructs, first-class aspect instances and instance-level advising. These features enable a direct mapping of mediators to aspect instances, with modularity improved, insofar as components need not declare, announce, or register for events.
References
[1]
Andrade, L., and Fiadeiro, J.,"Coordination Technologies for Managing Information System Evolution", Proceedings of CAiSE'01, K.Dittrich, A.Geppert and M.Norrie (eds), LNCS 2068, Springer-Verlag 2001, 374--387.
Digital Library
[2]
AOP#: under development at Siemens Corporation. [emailprotected] mailto:[emailprotected].
[3]
AspectC++, http://www.aspectc.org.
[4]
AspectR: "Simple Aspect Oriented Programming in Ruby," http://aspectr.sourceforge.net/
[5]
Aksit, M., Wakita, K., Bosch, J., Bergmans, L., Yonezawa, A., "Abstracting Object Interactions Using Composition Filters," Proceedings of the ECOOP'93 Workshop on Object-Based Distributed Programming, 1993.
Digital Library
[6]
Andersen, E. (Egil), Conceptual Modelling of Objects: A Role Modelling Approach, PhD Thesis, University of Oslo, 1997.
[7]
AspectBrowser: http://www-cse.ucsd.edu/users/wgg/swevolution.html
[8]
AspectJ: www.eclipse.org/AspectJ
[9]
AspectJ mailing list archives: http://www.eclipse.org/AspectJ
[10]
Bergmans, L., "The Composition Filters Object Model," Dept. of Computer Science, University of Twente, 1994.
[11]
Constantinides, C., A., and Elrad, T., "Composing Concerns with a Framework Approach," Proc. 2nd Int'l Workshop on Aspect Oriented Programming for Distributed Computing Systems (ICDCS-2002), Vol. 2, July, 2002, Vienna pp. 133--140.
Digital Library
[12]
Dechow, D., Ph.D Dissertation Proposal, http://cs.oregonstate.edu/~dechow
[13]
Douence, R., and Sadholt, M., "A model and a tool for Event-based Aspect-Oriented Programming (EAOP)", TR 02/11/INFO, Ecole des Mines de Nantes, french version accepted at LMO'03, 2nd edition, Dec. 2002.
[14]
Filman, R. E., Barrett, S., Lee, D. D. and Linden, T., "Inserting Ilities by Controlling Communications ", Communications of ACM, vol. 45, number 1, Jan, 2002, pp. 116--122.
Digital Library
[15]
Garlan, D., and Notkin, D., "Formalizing Design Spaces: Implicit Invocation Mechanisms". VDM '91: Formal Software Development Methods, pp. 31--44 (October 1991).
Digital Library
[16]
Gottlob, G., Schrefl, M., and Rock, B., "Extending Object Oriented Systems with Roles," ACM Trans on Info. Sys., Vol. 14, No. 3, July, 1996, pp. 268--296.
Digital Library
[17]
Hirschfeld, R., "AspectS -- Aspects in Squeak", ECOOP'2002 Workshop on Generative Programming, Jun 2002.
[18]
Java: www.java.sun.com
[19]
Kalet, I.J., J.P. Jacky, M.M Austin-Seymour, S.M. Hummel, K.J. Sullivan and J.M. Unger, "Prism: a New Approach to Radiotherapy Planning Software," International Journal of Radiation Oncology, Biology and Physics, 36, 2, 1996, pp. 451--461.
[20]
Kendall, E. A., "Aspect Oriented Programming for Role Models," International Workshop on Aspect Oriented Programming, European Conference on Object Oriented Programming (ECOOP'99), Lisbon, June, 1999.
Digital Library
[21]
Kendall, E. A., "Aspect-oriented Programming in AspectJ," Evolve 2000, Sydney, March, 2000.
[22]
Kiczales, G., Lamping, J., Mendhekar, A., Maeda, C., Lopes, C., Loingtier, J. and Irwin, J., "Aspect-oriented programming," in Proceedings of the European Conference on Object-Oriented Programming (ECOOP), Springer-Verlang, Lecture Notes on Computer Science 1241, June 1997.
[23]
Kim, H., "AspectC#: An AOSD implementation for C#," Technical Report TCD-CS-2002-55, Department of Computer Science, Trinity College, Dublin, 2002.
[24]
Koopmans, P.S., "Sina/St: User's Guide and Reference Manual," TRESE project, University of Twente, 1996.
[25]
Kristensen, B. B., "Object-oriented Modelling with Roles," OOIS'95, Proceedings of the 2nd International Conference on Object-oriented Information Systems, Dublin, Ireland, 1996.
[26]
Lam, J., "CLAW" URL: www.iunknown.com.
[27]
Marshall, J., Orleans, D., and Lieberherr, K., "DJ: Dynamic Structure-Shy Traversal in Pure JAVA," Technical Report, Northeastern University, May 1999.
[28]
Microsoft. C# Specification Homepage. http://msdn.microsoft.com/net/ecma/.
[29]
Microsoft Aspect.Net project description. http://research.microsoft.com/programs/europe/rotor/Projects.asp.
[30]
Microsoft .Net Framework Developers Guide available at http://msdn.microsoft.com.
[31]
Sullivan, K., "Mediators: Easing the Design and Evolution of Integrated Systems", Ph.D. dissertation, University of Washington, 1994.
Digital Library
[32]
Sullivan, K. and Notkin, D., "Reconciling environment integration and software evolution," ACM Transactions on Software Engineering and Methodology 1, 3, July 1992, pp. 229--268 (short form: Proceedings of the 4th SIGSOFT Symposium on Software Development Environments, 1990, pp. 22--33).
Digital Library
[33]
Sullivan, K., Gu, L., Cai, Y., "Non-modularity in Aspect-Oriented Languages: Integration as a Crosscutting Concern for AspectJ," Proceedings of Aspect-Oriented Software Design, 2002.
Digital Library
[34]
Sullivan, K., Kalet, I., Notkin, D., " Evaluating the mediator method: Prism as a case study," IEEE Transactions on Software Engineering, Vol. 22, No. 8, August 1996.
Digital Library
[35]
Tarr, P. and Ossher, H., "Hyper/J User and Installation Manual", IBM Corporation
Cited By
View all
- Pinto PCarvalho TBispo JCardoso JShin SShin DLencastre M(2017)LARA as a language-independent aspect-oriented programming approachProceedings of the Symposium on Applied Computing10.1145/3019612.3019749(1623-1630)Online publication date: 3-Apr-2017
https://dl.acm.org/doi/10.1145/3019612.3019749
- Aljasser K(2016)Implementing design patterns as parametric aspects using ParaAJComputer Languages, Systems and Structures10.1016/j.cl.2015.11.00245:C(1-15)Online publication date: 1-Apr-2016
https://dl.acm.org/doi/10.1016/j.cl.2015.11.002
- Bagherzadeh MDyer RFernando RSánchez JRajan H(2016)Modular Reasoning in the Presence of Event SubtypingTransactions on Modularity and Composition I10.1007/978-3-319-46969-0_5(167-223)Online publication date: 30-Sep-2016
- Show More Cited By
Index Terms
Eos: instance-level aspects for integrated system design
Software and its engineering
Software creation and management
Designing software
Software implementation planning
Software design techniques
Software development process management
Software notations and tools
General programming languages
Language features
Software organization and properties
Software system structures
Software architectures
Recommendations
- Eos: instance-level aspects for integrated system design
This paper makes two contributions: a generalization of AspectJ-like languages with first-class aspect instances and instance-level advising, and a mapping of the mediator style for integrated system design into this space. We present Eos as a prototype ...
Read More
- Aspect-oriented programming
ESEC/FSE-9: Proceedings of the 8th European software engineering conference held jointly with 9th ACM SIGSOFT international symposium on Foundations of software engineering
Aspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use ...
Read More
- Aspect-oriented programming
Aspect-oriented programming (AOP) is a technique for improving separation of concerns in software design and implementation. AOP works by providing explicit mechanisms for capturing the structure of crosscutting concerns. This tutorial shows how to use ...
Read More
Comments
Information & Contributors
Information
Published In
ESEC/FSE-11: Proceedings of the 9th European software engineering conference held jointly with 11th ACM SIGSOFT international symposium on Foundations of software engineering
September 2003
394 pages
ISBN:1581137435
DOI:10.1145/940071
- General Chair:
- Jukka Paakki
University of Helsinki, Finland
, - Program Chair:
- Paola Inverardi
University of L'Aquila, Italy
ACM SIGSOFT Software Engineering Notes Volume 28, Issue 5
September 2003
382 pages
ISSN:0163-5948
DOI:10.1145/949952
Issue’s Table of Contents
Copyright © 2003 ACM.
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [emailprotected]
Sponsors
- ACM: Association for Computing Machinery
- SIGSOFT: ACM Special Interest Group on Software Engineering
Publisher
Association for Computing Machinery
New York, NY, United States
Publication History
Published: 01 September 2003
Permissions
Request permissions for this article.
Check for updates
Author Tags
- C#
- aspects
- design
- instances
- integration
- mediators
Qualifiers
- Article
Conference
ESEC/FSE03
Sponsor:
- ACM
- SIGSOFT
ESEC/FSE03: Joint 9th European Software Engineering Conference 2003
September 1 - 5, 2003
Helsinki, Finland
Acceptance Rates
ESEC/FSE-11 Paper Acceptance Rate 33 of 168 submissions, 20%;
Overall Acceptance Rate 112 of 543 submissions, 21%
More
Contributors
Other Metrics
View Article Metrics
Bibliometrics & Citations
Bibliometrics
Article Metrics
- View Citations
62
Total Citations
509
Total Downloads
- Downloads (Last 12 months)2
- Downloads (Last 6 weeks)0
Reflects downloads up to 09 Aug 2024
Other Metrics
View Author Metrics
Citations
Cited By
View all
- Pinto PCarvalho TBispo JCardoso JShin SShin DLencastre M(2017)LARA as a language-independent aspect-oriented programming approachProceedings of the Symposium on Applied Computing10.1145/3019612.3019749(1623-1630)Online publication date: 3-Apr-2017
https://dl.acm.org/doi/10.1145/3019612.3019749
- Aljasser K(2016)Implementing design patterns as parametric aspects using ParaAJComputer Languages, Systems and Structures10.1016/j.cl.2015.11.00245:C(1-15)Online publication date: 1-Apr-2016
https://dl.acm.org/doi/10.1016/j.cl.2015.11.002
- Bagherzadeh MDyer RFernando RSánchez JRajan H(2016)Modular Reasoning in the Presence of Event SubtypingTransactions on Modularity and Composition I10.1007/978-3-319-46969-0_5(167-223)Online publication date: 30-Sep-2016
- Bagherzadeh MDyer RFernando RSánchez JRajan HFrance RGhosh SLeavens G(2015)Modular reasoning in the presence of event subtypingProceedings of the 14th International Conference on Modularity10.1145/2724525.2724569(117-132)Online publication date: 16-Mar-2015
https://dl.acm.org/doi/10.1145/2724525.2724569
- Bockisch CHatun KAksit MKolodziej JChilders B(2014)Instance pointcutsProceedings of the 2014 International Conference on Principles and Practices of Programming on the Java platform: Virtual machines, Languages, and Tools10.1145/2647508.2647526(27-38)Online publication date: 23-Sep-2014
https://dl.acm.org/doi/10.1145/2647508.2647526
- Dyer RRajan HCai Y(2013)Language features for software evolution and aspect-oriented interfacesTransactions on Aspect-Oriented Software Development X10.5555/2554488.2554493(148-183)Online publication date: 1-Jan-2013
https://dl.acm.org/doi/10.5555/2554488.2554493
- Malakuti SAksit MOssowski SLecca P(2012)Evolution of composition filters to event compositionProceedings of the 27th Annual ACM Symposium on Applied Computing10.1145/2245276.2232080(1850-1857)Online publication date: 26-Mar-2012
https://dl.acm.org/doi/10.1145/2245276.2232080
- Toyama MAotani TMasuhara HCazzola WGonzález SHaupt MLahire PVan Baelen S(2012)A per-type instantiation mechanism for generic aspectsProceedings of the 3rd international workshop on Variability & Composition10.1145/2161996.2162003(25-30)Online publication date: 26-Mar-2012
https://dl.acm.org/doi/10.1145/2161996.2162003
- Lorenz DTrakhtenberg V(2011)Pluggable aspect instantiation modelsProceedings of the 10th international conference on Software composition10.5555/2025951.2025959(84-99)Online publication date: 30-Jun-2011
https://dl.acm.org/doi/10.5555/2025951.2025959
- Rajan HLeavens GDyer RBagherzadeh MBorba PChiba S(2011)Modularizing crosscutting concerns with PtolemyProceedings of the tenth international conference on Aspect-oriented software development companion10.1145/1960314.1960332(61-62)Online publication date: 21-Mar-2011
https://dl.acm.org/doi/10.1145/1960314.1960332
- Show More Cited By
View Options
Get Access
Login options
Check if you have access through your login credentials or your institution to get full access on this article.
Sign in
Full Access
Get this Publication
View options
View or Download as a PDF file.
PDFeReader
View online with eReader.
eReaderMedia
Figures
Other
Tables