Example similarity map    Similar Patents and Articles Toggle Patent Map

Contact The DL Team Contact Us | Switch to tabbed view

top of pageABSTRACT

The Java programming language offers several basic constructs for concurrent programming. Despite covering everything needed from a functional point of view, the constructs are difficult to use since they require a lot of infrastructural statements besides the real logic. This makes concurrent programming errorprone and difficult to reuse. It seems that abstractions are needed to ease the pain and to better support reusability.

This paper explores how to use and benefit from aspect-orientation (AO), particularly the AspectJ language, in this respect. AO promises a high potential for reuse due to a higher level of modularization since crosscutting concerns can better be modularized in aspects. This paper confirms higher reuse by presenting a collection of reusable aspects for solving specific problems in concurrent programming.

Having AspectJ-based implementations for recurring problems, this paper also summarizes some interesting experiences and takes the chance to present an industrial view on some criticisms of aspect-orientation.

top of pageAUTHORS



Author image not provided  Uwe D. Hohenstein

No contact information provided yet.

Bibliometrics: publication history
Publication years1987-2016
Publication count25
Citation Count57
Available for download7
Downloads (6 Weeks)6
Downloads (12 Months)54
Downloads (cumulative)3,200
Average downloads per article457.14
Average citations per article2.28
View colleagues of Uwe D. Hohenstein


Author image not provided  Urs Gleim

No contact information provided yet.

Bibliometrics: publication history
Publication years2002-2012
Publication count3
Citation Count6
Available for download1
Downloads (6 Weeks)0
Downloads (12 Months)2
Downloads (cumulative)208
Average downloads per article208.00
Average citations per article2.00
View colleagues of Urs Gleim

top of pageREFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
Proc. of 2nd Int. Conf. on Aspect-Oriented Software Development, Boston 2003.
 
2
Ron Bodkin, Jason Furlong: Gathering Feedback on User Behaviour using AspectJ. In {CVK06}.
 
3
R. Bodkin: [email protected]: Performance monitoring with AspectJ. https://www.ibm.com/developerworks/java/library/j-aopwork10/
 
4
R. Bodkin: [email protected]: Next Steps with Aspects. http://www-128.ibm.com/developerworks/java/library/j-aopwork16
 
5
B. Burke: Implementing Middleware Using AOP. in Proc. 4th Conf. on Aspect-Oriented Software Development. AOSD 2005, Chicago, ACM Press
 
6
J. Bull, M. Westhead, M. Kambites, J. Obdrzálek: Towards OpenMP for Java. EWOMP 2000 workshop
 
7
 
8
M. Chapman, A. Vasseur, G. Kniesel (eds.): Proc. Of Industry Track 3rd Conf. on Aspect-Oriented Software Development, AOSD 2006, Bonn, ACM Press
9
 
10
M. Danelutto, M. Pasin, M. Vanneschi, P. Dazzi, D. Laforenza, L. Presti: PAL: Exploiting Java Annotations for Parallelism. In: S. Gorlatch, M. Bubak, T. Priol (eds.): Achievements in European Research on Grid Systems. CoreGRID Integration Workshop 2006
11
 
12
R. Filman, D. Friedman: Aspect-Oriented Programming is Quantification and Obliviousness. Workshop on Advanced Separation of Concerns, OOPSLA 2000
13
 
14
 
15
 
16
K. Govindraj, S. Narayanan et al.: On Using AOP for Application Performance Management. In {CVK06}
 
17
B. Goetz: Java Concurrency in Practice. Addison-Wesley 2007
18
 
19
U. Hohenstein: Using Aspect-Orientation to Manage Database Statistics. In: {CVK06}
 
20
S. Hanenberg, R. Unland: Using and Reusing Aspects in AspectJ. In OOPSLA'01 Workshop on Advanced Separation of Concerns in Object-Oriented Systems, 2001
 
21
S. Hanenberg and A. Schmidmeier: Idioms for Building Software Frameworks in AspectJ. In: AOSD'03 Workshop on Aspects, Components, and Patterns for Infrastructure Software, 2003
22
 
23
 
24
R. Johnson: AOP in the wild: Killer applications and why AOP is perfect for the cloud. Invited talk at 9th Int. Conf. on AOSD 2010, France
 
25
A fine-grained parallel computation framework. http://javac.info/jsr166z
 
26
W. Joosen, F. Sanen, E. Truyen, Dissemination of AOSD expertise - support documentation. AOSD-Europe Project Deliverable No.: AOSD-Europe-KUL-8, Mar. 06
 
27
28
 
29
G. Kiczales: Adopting AOP. In Proc. 4th Conf. on Aspect-Oriented Software Development; AOSD 2005, Chicago, ACM Press
 
30
R. Laddad: [email protected]: AOP and Metadata: A Perfect Match. https://www-128.ibm.com/developerworks/java/library/j-aopwork3
 
31
R. Laddad: AspectJ in Action: Practical Aspect-Oriented Programming (2nd ed.). Manning, Greenwich (2008)
 
32
33
 
34
F. Munoz, B. Baudry, O. Barais: A classification of invasive patterns in AOP. In: 24th IEEE International Conference on Software Maintenance (ICSM'08), Beijing, China 2008.
 
35
K. Ostermann, M. Mezini, C. Bockisch: Expressive Pointcuts for Increased Modularity. In 19th European Conf. on Object-Oriented Programming (ECOOP05), Malaga (Spain) LNCS 3586
 
36
A. Przbylylek: What is Wrong With AOP? 5th Int. Conf. on Software and Data Technologies (ICSOFT10), Piraeus 2010
 
37
 
38
 
39
 
40
S. Soares, P. Borba: Implementing Modular and Reusable Aspect-Oriented Concurrency Control with AspectJ. In Brazilian Workshop on Aspect-Oriented Software Development (WASP 2005), Uberländia, Brazil 2005
 
41
 
42
S. Soares: An Aspect-Oriented Implementation Method. PhD thesis, Federal University of Pernambuco, Brazil 2004
43
 
44
T. Tourwe, J. Brichau, K. Gybels: On the Existence of the AOSD-Evolution Paradox. In: Workshop on Software Engineering Properties of Languages for Aspect Technologies (SPLAT'03) at AOSD'03, Boston, Massachusetts
 
45
D. Wampler: Noninvasiveness and Aspect-Oriented Design: Lessons from Object-Oriented Design Principles. In: 6th International Conference on Aspect- Oriented Software Development (AOSD'07), Vancouver, Canada
 
46
D. Wiese, U. Hohenstein, R. Meunier: How to Convince Industry of Aspect-Orientation? 6th Int. Conf. on Aspect-Oriented Software Development, AOSD 2007, Vancouver, ACM Press
 
47
D. Wiese, R. Meunier: Large Scale Application of AOP in the Healthcare Domain: A Case Study. In 7th Int. Conf. on Aspect-Oriented Software Development, AOSD 2008, Brussels
48
 
49
K. Yelick, L. Semenzato, G. Pike, C. Myamoto et al.: Titanium: A High-Performance Java Dialect. Concurrency: Practice and Experience. 10(11--13), 1998

top of pageCITED BY

Citings are not available

top of pageINDEX TERMS

The ACM Computing Classification System (CCS rev.2012)

Note: Larger/Darker text within each node indicates a higher relevance of the materials to the taxonomic classification.

top of pagePUBLICATION

Title AOSD '11 Proceedings of the tenth international conference on Aspect-oriented software development companion table of contents
General Chairs Paulo Borba Federal University of Pernambuco, Brazil
Program Chairs Shigeru Chiba Tokyo Institute of Technology, Japan
Pages 29-40
Publication Date2011-03-21 (yyyy-mm-dd)
Sponsors SIGPLAN ACM Special Interest Group on Programming Languages
SIGSOFT ACM Special Interest Group on Software Engineering
In-Cooperations Centro de Informatica - UFPE Centro de Informatica - UFPE
CNPq Conselho Nacional de Desenvolvimento Cientifico e Tecn
CAPES Coordençãao de Aperfeiçoamento de Pessoal de Nível Superior
FINEP Financiadora de Estudos e Projetos
FACEPE Fundacao de Amparo a Ciencia e Tecnologia do Estado de Pernambuco
PUC-Rio
PublisherACM New York, NY, USA ©2011
ISBN: 978-1-4503-0606-5 doi>10.1145/1960314.1960324
Conference MODULARITYModularity (formerly known as Aspect-oriented Software Development - AOSD) MODULARITY logo
Overall Acceptance Rate 178 of 718 submissions, 25%
Year Submitted Accepted Rate
AOSD '06 96 23 24%
AOSD '07 107 19 18%
AOSD '08 79 17 22%
AOSD '09 86 19 22%
AOSD '10 62 18 29%
AOSD '11 95 23 24%
AOSD '12 79 20 25%
AOSD '13 54 18 33%
MODULARITY '14 60 21 35%
Overall 718 178 25%

APPEARS IN
Performance
Software

top of pageREVIEWS


Reviews are not available for this item
Computing Reviews logo

top of pageCOMMENTS

Be the first to comment To Post a comment please sign in or create a free Web account

top of pageTable of Contents

Proceedings of the tenth international conference on Aspect-oriented software development companion
Table of Contents
SESSION: Core ideas
Modularity in continually evolving systems
Urjaswala Vora, Peeyush Chomal, Rahul Upadhyay, Vikram Khati
Pages: 1-2
doi>10.1145/1960314.1960316
Full text: PDFPDF

The design of a continually-evolving system deteriorates in proportion to the frequency of evolution as much as the complexity of evolution. Here we introduce a design paradigm, Temporal Control Flow Rule-based Architecture (TeCFRA), with a vision to ...
expand
Portability as an aspect: rethinking modularity in mobile game development
Nan Niu, Vander Alves, Tanmay Bhowmik
Pages: 3-4
doi>10.1145/1960314.1960317
Full text: PDFPDF

This extended abstract overviews our modularity vision along a technical-organizational-ecosystem dimension. Our goal is to explore the benefits that modularity could provide to software vendors in the rapidly changing landscape of mobile game development. ...
expand
SESSION: Industry track: keynote
Session details: Industry track: keynote
Kirk Knoernschild
doi>10.1145/3253048
Modularity, agility, and architecture's paradox
Kirk Knoernschild
Pages: 5-6
doi>10.1145/1960314.1960319
Full text: PDFPDF

Attempts to architect more flexible software often results in the opposite - brittle software fraught with complexity. Something is missing. Complexity is the beast we must tame, and modularity is part of the answer. In this keynote, we'll examine the ...
expand
SESSION: Industry track: session 1
Session details: Industry track: session 1
Flavia Rainone
doi>10.1145/3253049
Experiences documenting and preserving software constraints using aspects
Roberto Silveira Silva Filho, François Bronsard, William M. Hasling
Pages: 7-18
doi>10.1145/1960314.1960321
Full text: PDFPDF

Software systems are increasingly being built as compositions of reusable artifacts (components, frameworks, toolkits, plug-ins, APIs, etc) that have non-trivial usage constraints in the form of interface contracts, underlying assumptions and design ...
expand
ASystemC: an AOP extension for hardware description language
Yusuke Endoh
Pages: 19-28
doi>10.1145/1960314.1960322
Full text: PDFPDF

Hardware-design requirements are becoming increasingly complex. Accordingly, the hardware developer is also beginning to use modern programming languages instead of traditional hardware description languages. However, modularity of the current hardware ...
expand
SESSION: Industry track: session 2
Session details: Industry track: session 2
Flavia Rainone
doi>10.1145/3253050
Using aspect-orientation to simplify concurrent programming
Uwe D. Hohenstein, Urs Gleim
Pages: 29-40
doi>10.1145/1960314.1960324
Full text: PDFPDF

The Java programming language offers several basic constructs for concurrent programming. Despite covering everything needed from a functional point of view, the constructs are difficult to use since they require a lot of infrastructural statements besides ...
expand
Flexible, dynamic injection of structured advice using byteman
Andrew E. Dinn
Pages: 41-50
doi>10.1145/1960314.1960325
Full text: PDFPDF

Byteman is a flexible, dynamic advice injection tool for Java. It uses an Event Condition Action rule script language to structure placement and control execution of injected Java code fragments. The Byteman agent can be loaded at application startup ...
expand
TUTORIAL SESSION: Tutorials
Refactoring at the core of agile software development
Joseph Yoder
Pages: 51-52
doi>10.1145/1960314.1960327
Full text: PDFPDF

Refactoring code to make it more maintainable and extendable has become a more mainstream practice. Refactoring is the process of changing software without altering its external behavior. It is done in such as way to improve the structure of the code ...
expand
The theory and practice of modern modeling language design for model-based software engineering
Bran V. Selic
Pages: 53-54
doi>10.1145/1960314.1960328
Full text: PDFPDF

This is a half-day tutorial dealing with the relatively new field of modeling language design.
expand
Understanding programming technologies by analogy, examples, and abstraction: extended abstract (AOSD'11 tutorial)
Ralf Laemmel
Pages: 55-56
doi>10.1145/1960314.1960329
Full text: PDFPDF

We have a problem: there is a stunning number of programming technologies out there. There are silos of knowledge around these technologies and technical spaces. In fact, it is not even clear that this abundance can still be approached by computer scientists. ...
expand
Rulemakers and toolmakers: adaptive object-models as an agile division of labor
Joseph Yoder
Pages: 57-58
doi>10.1145/1960314.1960330
Full text: PDFPDF

Agile practices liberate us from the straightjackets of top-down design. But, the ease with which requirements can change encou-rages users to overwhelm us with requests for features. The result: Featuritis, which promotes hasty construction of poorly ...
expand
The aspect-oriented user requirements notation: aspects, goals, and scenarios
Gunter Mussbacher
Pages: 59-60
doi>10.1145/1960314.1960331
Full text: PDFPDF

This tutorial discusses aspect-oriented requirements engineering, focusing on scenario-based and goal-oriented requirements models with the Aspect-oriented User Requirements Notation (AoURN). AoURN is an extension of the User Requirements Notation (URN), ...
expand
Modularizing crosscutting concerns with Ptolemy
Hridesh Rajan, Gary T. Leavens, Robert Dyer, Mehdi Bagherzadeh
Pages: 61-62
doi>10.1145/1960314.1960332
Full text: PDFPDF

This tutorial will provide an introduction to Ptolemy. Ptolemy is a programming language whose goals are to improve a software engineer's ability to separate conceptual concerns, while preserving encapsulation of object-oriented code and the ability ...
expand
DEMONSTRATION SESSION: Demonstrations: session 1: demo track
Session details: Demonstrations: session 1: demo track
Joño Araújo
doi>10.1145/3253051
Analyzing architectural conformance of layered aspect-oriented systems with ArchE Meter
Juliana Saraiva, Sérgio Soares, Fernando Castor
Pages: 63-64
doi>10.1145/1960314.1960334
Full text: PDFPDF

We present ArchE Meter, a tool that supports developers in understanding how the implementation of an aspect-oriented system conforms to its intended layered software architecture. Based on the principles of layered software architectures, ArchE Meter ...
expand
Hist-Inspect: a tool for history-sensitive detection of code smells
Leandra Mara, Gustavo Honorato, Francisco Dantas Medeiros, Alessandro Garcia, Carlos Lucena
Pages: 65-66
doi>10.1145/1960314.1960335
Full text: PDFPDF

Hist-Inspect is a tool that allows the specification and evaluation of different configurations for detection strategies by means of a domain-specific language. The tool enables to easily adjust thresholds and combination of software metrics as well ...
expand
Event-driven programming with EScala
Lucas Satabin, Mira Mezini
Pages: 67-68
doi>10.1145/1960314.1960336
Full text: PDFPDF

EScala is an extension of Scala with support for declarative event-driven programming. It provides mechanisms for declarative definition of events and employs aspect-oriented techniques for exposing implicitly existing events, which reduces the need ...
expand
DEMONSTRATION SESSION: Demonstrations: session 2: demo track
Session details: Demonstrations: session 2: demo track
Nélio Cacho
doi>10.1145/3253052
GenArch+: an extensible infrastructure for building framework-based software product lines
Elder Cirilo, Uirá Kulesza, Alessandro Garcia, Carlos Lucena
Pages: 69-70
doi>10.1145/1960314.1960338
Full text: PDFPDF

Software product line (SPL) engineering has been focused on tailor single products without programming new completion code. Systematic reuse as configuration potentially lead to significant gains but requires the configuration knowledge to be well conducted. ...
expand
ReqSys: an eclipse plug-in for PL-AOVGraph and feature model mapping
Lidiane Oliveira dos Santos, Thais Vasconcelos Batista, Lyrene Fernandes da Silva
Pages: 71-72
doi>10.1145/1960314.1960339
Full text: PDFPDF

In this paper, we describe the features of the ReqSys tool, a tool to verify and map PL-AOVgraph models into feature models.
expand
Proteum/AJ: a mutation system for AspectJ programs
Fabiano Cutigi Ferrari, Elisa Yumi Nakagawa, José Carlos Maldonado, Awais Rashid
Pages: 73-74
doi>10.1145/1960314.1960340
Full text: PDFPDF

Aspect-Oriented Programming (AOP) has introduced a complementary set of mechanisms which enhance the modularisation of crosscutting concerns. However, such mechanisms represent new potential sources of faults that may be systematically tackled with mutation ...
expand
SESSION: Student research competition
Self-refining aspects for dynamic program analysis
Danilo Ansaloni
Pages: 75-76
doi>10.1145/1960314.1960342
Full text: PDFPDF

Accurate and efficient dynamic analysis tools are needed for understanding and improving performance of programs. However, such tools often produce perturbed and misleading results, since the inserted analysis code may interfere with runtime optimizations ...
expand
Revealing architecturally-relevant flaws in aspectual decompositions
Isela Macia Bertran
Pages: 77-78
doi>10.1145/1960314.1960343
Full text: PDFPDF

Although aspect-oriented programming (AOP) aims to improve the software modularity, developers can unwittingly introduce code smells in their programs. Even though a few code smells for AOP have been reported in the literature, there is no evidence whether ...
expand
Analyzing the effort on composing design models in industrial case studies
Kleinner Farias
Pages: 79-80
doi>10.1145/1960314.1960344
Full text: PDFPDF

The contributions of this research are briefly described as follows: an evaluation framework for model composition effort; practical knowledge about the values that the composition effort variables assume in realistic composition scenarios, i.e., the ...
expand
Avoiding confusion with exception handling in aspect-oriented programming
Ismael Figueroa
Pages: 81-82
doi>10.1145/1960314.1960345
Full text: PDFPDF
Towards a proper aspect-oriented model for distributed systems
Ismael Mejía
Pages: 83-84
doi>10.1145/1960314.1960346
Full text: PDFPDF

The adoption of Aspect Oriented Programming (AOP), and in general, of more sophisticated composition models is a recent trend in software engineering to address the problem of the correct modularization of cross-cutting concerns. However, most of these ...
expand
On the proactive identification of mistakes on concern mapping tasks
Camila Nunes
Pages: 85-86
doi>10.1145/1960314.1960347
Full text: PDFPDF
Exploiting modular access control for advanced policies
Rodolfo Toledo
Pages: 87-88
doi>10.1145/1960314.1960348
Full text: PDFPDF

In previous work we successfully modularized the Java access control architecture. The approach consists in expressing access control using restriction aspects scoped with an appropriate scoping strategy. In this work we briefly explore how restriction ...
expand

Powered by The ACM Guide to Computing Literature


The ACM Digital Library is published by the Association for Computing Machinery. Copyright © 2019 ACM, Inc.
Terms of Usage   Privacy Policy   Code of Ethics   Contact Us