A cookbook for using the model-view controller user interface paradigm in Smalltalk-80
Journal of Object-Oriented Programming
Modular synchronization in multiversion databases: version control and concurrency control
SIGMOD '89 Proceedings of the 1989 ACM SIGMOD international conference on Management of data
Synthesis of extended transaction models using ACTA
ACM Transactions on Database Systems (TODS)
Framing software reuse: lessons from the real world
Framing software reuse: lessons from the real world
Pattern languages of program design 3
On Concurrency Control by Multiple Versions
ACM Transactions on Database Systems (TODS)
On optimistic methods for concurrency control
ACM Transactions on Database Systems (TODS)
The serializability of concurrent database updates
Journal of the ACM (JACM)
Concurrency Control in Distributed Database Systems
ACM Computing Surveys (CSUR)
The notions of consistency and predicate locks in a database system
Communications of the ACM
Communications of the ACM
Executive Briefing: Advances in Concurrency Control and Transaction Processing
Executive Briefing: Advances in Concurrency Control and Transaction Processing
The Java Language Specification
The Java Language Specification
Transaction Processing: Concepts and Techniques
Transaction Processing: Concepts and Techniques
Implementing distribution and persistence aspects with aspectJ
OOPSLA '02 Proceedings of the 17th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
Proceedings of the 2nd international conference on Aspect-oriented software development
Proceedings of the 2nd international conference on Aspect-oriented software development
ECOOP '01 Proceedings of the 15th European Conference on Object-Oriented Programming
AOP: Does It Make Sense? The Case of Concurrency and Failures
ECOOP '02 Proceedings of the 16th European Conference on Object-Oriented Programming
Ada-Europe '99 Proceedings of the 1999 Ada-Europe International Conference on Reliable Software Technologies
Ada Europe '01 Proceedings of the 6th Ade-Europe International Conference Leuven on Reliable Software Technologies
Open Multithreaded Transactions: Keeping Threads and Exceptions under Control
WORDS '01 Proceedings of the Sixth International Workshop on Object-Oriented Real-Time Dependable Systems (WORDS'01)
Aspect-Oriented Database Systems
Aspect-Oriented Database Systems
Proceedings of the 3rd international conference on Aspect-oriented software development
Open Multithreaded Transactions: A Transaction Model for Concurrent Object-Oriented Programming
Open Multithreaded Transactions: A Transaction Model for Concurrent Object-Oriented Programming
IEEE Transactions on Software Engineering
JAC: an aspect-based distributed dynamic framework
Software—Practice & Experience
abc: an extensible AspectJ compiler
Proceedings of the 4th international conference on Aspect-oriented software development
Reusable aspect-oriented implementations of concurrency patterns and mechanisms
Proceedings of the 5th international conference on Aspect-oriented software development
AO challenge - implementing the ACID properties for transactional objects
Proceedings of the 5th international conference on Aspect-oriented software development
KALA: Kernel Aspect language for advanced transactions
Proceedings of the 2006 ACM symposium on Applied computing
Adapting virtual machine techniques for seamless aspect support
Proceedings of the 21st annual ACM SIGPLAN conference on Object-oriented programming systems, languages, and applications
Transactions on Aspect-Oriented Software Development I
MAVEN: modular aspect verification and interference analysis
Formal Methods in System Design
Aspect-oriented design with reusable aspect models
Transactions on aspect-oriented software development VII
Aspect-oriented design with reusable aspect models
Transactions on aspect-oriented software development VII
Aspect-oriented feature models
MODELS'10 Proceedings of the 2010 international conference on Models in software engineering
A system of patterns for reusable aspect libraries
Transactions on aspect-oriented software development VIII
Comparing six modeling approaches
MODELS'11 Proceedings of the 2011th international conference on Models in Software Engineering
Using CVL to operationalize product line development with reusable aspect models
Proceedings of the VARiability for You Workshop: Variability Modeling Made Useful for Everyone
Assessing composition in modeling approaches
Proceedings of the CMA 2012 Workshop
Incremental software design modelling
CASCON '13 Proceedings of the 2013 Conference of the Center for Advanced Studies on Collaborative Research
Confluence of aspects for sequence diagrams
Software and Systems Modeling (SoSyM)
Hi-index | 0.00 |
This paper presents AspectOptima , a language independent, aspect-oriented framework consisting of a set of ten base aspects--each one providing a well-defined reusable functionality--that can be configured to ensure the ACID properties (Atomicity, Consistency, Isolation, and Durability) for transactional objects. The overall goal of AspectOptima is to serve as a case study for aspect-oriented software development, particularly for evaluating the expressivity of AOP languages and how they address complex aspect interactions and dependencies. The ten base aspects of AspectOptima are simple, yet have complex dependencies and interactions among each other. To implement different concurrency control and recovery strategies, these aspects can be composed and assembled into different configurations; some aspects conflict with each other, others have to adapt their run time behavior according to the presence or absence of other aspects. The design of AspectOptima highlights the need for a set of key language features required for implementing reusable aspect-oriented frameworks. To illustrate the usefulness of AspectOptima as a means for evaluating programming language features, an implementation of AspectOptima in AspectJ is presented. The experiment reveals that AspectJ 's language features do not directly support implementation of reusable aspect-oriented frameworks with complex dependencies and interactions. The encountered AspectJ language limitations are discussed, workaround solutions are shown, potential language improvements are proposed where appropriate, and some preliminary measurements are presented that highlight the performance impact of certain language features.