Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
skip to main content
10.1145/508386.508388acmotherconferencesArticle/Chapter ViewAbstractPublication PagesmodularityConference Proceedingsconference-collections
Article

Obvious or not?: regulating architectural decisions using aspect-oriented programming

Published: 22 April 2002 Publication History

Abstract

The construction of complex, evolving software systems requires a high-level design model. However, this model tends not to be enforced on the system, leaving room for the implementors to diverge from it, thus differentiating the designed system from the actual implemented one. The essence of the problem of enforcing such models lies in their globality. The principles and guidelines conveyed by these models cannot be localized in a single module, they must be observed everywhere in the system. A mechanism for enforcement needs to have a global view of the system and to report breaches in the model at the time they occur.Aspect-Oriented Programming has been proposed as a new software engineering approach. Unlike contemporary software engineering methods, which are module centered, Aspect Oriented Programming provides mechanisms for the definition of cross-module interactions. We explore the possibility of using Aspect-Oriented Programming in general and the AspectJ programming language in particular for the enforcement of design models.

References

[1]
Elisa L. A. Baniassad, Robert J. Walker, and Gail C. Murphy. An initial assessment of aspect-oriented programming. In Proceedings of the 21st International Conference on Software Engineering, pages 120-131. ACM Press, 1999.
[2]
G. Booch, I. Jacobson, and J. Rumbaugh. The unified modeling language reference manual, 1999.
[3]
Carolyn K. Duby, Scott Meyers, and Steven P. Reiss. CCEL: A metalanguage for C++. In USENIX C++ Technical Conference Proceedings, pages 99-115, Portland, OR, 10-13 1992. USENIX Assoc. Berkeley, CA, USA.
[4]
Erich Gamma, Richard Helm, Ralph Johnson, and John Vlissides. Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, Massachusetts, 1994.
[5]
David Garlan and Dewayne E. Perry. Introduction to the special issue on software architecture. Software Engineering, 21(4):269-274, 1995.
[6]
Gregor Kiczales, John Lamping, Anurag Menhdhekar, Chris Maeda, Cristina Lopes, Jean-Marc Loingtier, and John Irwin. Aspect-oriented programming. In Mehmet Akşit and Satoshi Matsuoka, editors, ECOOP '97 --- Object-Oriented Programming 11th European Conference, Jyväskylä, Finland, volume 1241, pages 220-242. Springer-Verlag, New York, NY, 1997.
[7]
M. Lippert and C. Lopes. A study on exception detection and handling using aspect-oriented programming. In Proc. of ICSE, pages 418-427, 2000.
[8]
B. Meyer. Object-Oriented Software Construction, Second Edition. Prentice-Hall, Englewood Cliffs (NJ), USA, 1997.
[9]
Naftaly H. Minsky. Law-governed regularities in object systems. part 1: An abstract model. Theory and Practice of Object Systems, 2(4):283-301, 1996.
[10]
Naftaly H. Minsky. Law-governed regularities in object systems, part 2: the eiffel case. Theory and Practice of Object Systems, 1997.
[11]
Naftaly H. Minsky. Why should architectural principles be enforced?. in Computer Security, Dependability, and Assurance. Paul Amman et al., editors; IEEE Computer Society, 1999.
[12]
Naftaly H. Minsky and Victoria Ungureanu. Regulated coordination in open distributed systems. In Coordination Models and Languages, pages 81-97, 1997.
[13]
M. Sefika A. Sane and R. H. Campbell. Monitoring complience of a software system with its high-level design model. In Proceedings of the 18th International Conference on Software Engineering (ICSE), March 1996.
[14]
Boris Bokowski, Coffeestrainer: Statically-checked constraints on the definition and use of types in java, ESEC / SIGSOFT FSE, 1999, pp. 355-374.
[15]
P. Devanbu, genoa a customizable, language and front-end independent code analyzer. In Proc. of 14th Int'l Conf. on Software Engineering (ICSE), pages 307-317. IEEE Press, 1992.
[16]
Carolyn K. Duby, Scott Meyers, and Steven P. Reiss, CCEL: A metalanguage for C++, USENIX C++ Technical Conference Proceedings (Portland, OR), USENIX Assoc. Berkeley, CA, USA, 10-13 1992, pp. 99-115.
[17]
N. H. Minsky., Law-governed interaction: a coordination and control mechanism for heterogeneous distributed systems, Software Engineering and Methodology 9 (2000), no. 3, 273-305.

Cited By

View all
  • (2011)Experiences documenting and preserving software constraints using aspectsProceedings of the tenth international conference on Aspect-oriented software development companion10.1145/1960314.1960321(7-18)Online publication date: 21-Mar-2011
  • (2010)TMiner aspectsExpert Systems with Applications: An International Journal10.1016/j.eswa.2010.03.05237:9(6675-6681)Online publication date: 1-Sep-2010
  • (2010)Weaving the Fabric of the Control Loop through AspectsSelf-Organizing Architectures10.1007/978-3-642-14412-7_3(38-65)Online publication date: 2010
  • Show More Cited By

Comments

Information & Contributors

Information

Published In

cover image ACM Other conferences
AOSD '02: Proceedings of the 1st international conference on Aspect-oriented software development
April 2002
162 pages
ISBN:158113469X
DOI:10.1145/508386
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 [email protected]

Sponsors

  • University of Twente: University of Twente
  • PATO: Post Academisch Tecbnisch Onderwijs
  • KNAW: Koninklijke Nederlandse Akademie van Wetenschappen
  • CTIT: Centre for Telematics and Information Technology
  • IBMR: IBM Research
  • NWO: Dutch Orgartisation for Scientific Research
  • IPA: Institute for Software and Arithmetic
  • AITO: Association Internationale pour les Technologies Objets

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 22 April 2002

Permissions

Request permissions for this article.

Check for updates

Qualifiers

  • Article

Conference

AOSD02
Sponsor:
  • University of Twente
  • PATO
  • KNAW
  • CTIT
  • IBMR
  • NWO
  • IPA
  • AITO

Acceptance Rates

Overall Acceptance Rate 41 of 139 submissions, 29%

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)5
  • Downloads (Last 6 weeks)0
Reflects downloads up to 16 Oct 2024

Other Metrics

Citations

Cited By

View all
  • (2011)Experiences documenting and preserving software constraints using aspectsProceedings of the tenth international conference on Aspect-oriented software development companion10.1145/1960314.1960321(7-18)Online publication date: 21-Mar-2011
  • (2010)TMiner aspectsExpert Systems with Applications: An International Journal10.1016/j.eswa.2010.03.05237:9(6675-6681)Online publication date: 1-Sep-2010
  • (2010)Weaving the Fabric of the Control Loop through AspectsSelf-Organizing Architectures10.1007/978-3-642-14412-7_3(38-65)Online publication date: 2010
  • (2010)Aspect-enhanced goal-driven sequence diagramInternational Journal of Intelligent Systems10.1002/int.2042825:8(712-732)Online publication date: 1-Jun-2010
  • (2009)Weaving the fabric of the control loop through aspectsProceedings of the First international conference on Self-organizing architectures10.5555/1880569.1880573(38-65)Online publication date: 14-Sep-2009
  • (2009)Metaproperty aspectsProceedings of the 8th ACM international conference on Aspect-oriented software development10.1145/1509239.1509273(231-242)Online publication date: 2-Mar-2009
  • (2008)Defining and continuous checking of structural program dependenciesProceedings of the 30th international conference on Software engineering10.1145/1368088.1368142(391-400)Online publication date: 15-May-2008
  • (2007)Combining formal methods and aspects for specifying and enforcing architectural invariantsProceedings of the 9th international conference on Coordination models and languages10.5555/1764606.1764623(211-230)Online publication date: 6-Jun-2007
  • (2007)A static aspect language for checking design rulesProceedings of the 6th international conference on Aspect-oriented software development10.1145/1218563.1218571(63-72)Online publication date: 14-Mar-2007
  • (2007)Combining Formal Methods and Aspects for Specifying and Enforcing Architectural InvariantsCoordination Models and Languages10.1007/978-3-540-72794-1_12(211-230)Online publication date: 2007
  • Show More Cited By

View Options

Get Access

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media