Modular Reasoning in the Presence of Event Subtyping
By: Mehdi Bagherzadeh, Robert Dyer, Rex D. Fernando, Jose Sanchez, and Hridesh Rajan
Download PaperAbstract
Separating crosscutting concerns while preserving modular reasoning is challenging. Type-based interfaces (event types) separate modularized crosscutting concerns (observers) and traditional object-oriented concerns (subjects). Event types paired with event specifications were shown to be effective in enabling modular reasoning about subjects and observers. Similar to class subtyping, organizing event types into subtyping hierarchies is beneficial. However, unrelated behaviors of observers and their arbitrary execution orders could cause unique, somewhat counterintuitive, reasoning challenges in the presence of event subtyping. These challenges threaten both tractability of reasoning and reuse of event types. This work makes three contributions. First, we pose and explain these challenges. Second, we propose an event-based calculus to show how these challenges can be overcome. Finally, we present modular reasoning rules of our technique and show its applicability to other event-based techniques.
ACM Reference
Bagherzadeh, M. et al. 2015. Modular Reasoning in the Presence of Event Subtyping. Modularity’15: 14th International Conference on Modularity (Mar. 2015).
BibTeX Reference
@inproceedings{bagherzadeh2015modular-b,
author = {Mehdi Bagherzadeh and Robert Dyer and Rex D. Fernando and Jose Sanchez and Hridesh Rajan},
title = {Modular Reasoning in the Presence of Event Subtyping},
booktitle = {Modularity'15: 14th International Conference on Modularity},
location = {Fort Collins, Colarado, USA},
month = {March},
year = {2015},
entrysubtype = {conference},
abstract = {
Separating crosscutting concerns while preserving modular reasoning is
challenging. Type-based interfaces (event types) separate modularized
crosscutting concerns (observers) and traditional object-oriented concerns
(subjects). Event types paired with event specifications were shown to be
effective in enabling modular reasoning about subjects and observers. Similar
to class subtyping, organizing event types into subtyping hierarchies is
beneficial. However, unrelated behaviors of observers and their arbitrary
execution orders could cause unique, somewhat counterintuitive, reasoning
challenges in the presence of event subtyping. These challenges threaten both
tractability of reasoning and reuse of event types. This work makes three
contributions. First, we pose and explain these challenges. Second, we propose
an event-based calculus to show how these challenges can be overcome. Finally,
we present modular reasoning rules of our technique and show its applicability
to other event-based techniques.
}
}