Abstract
Emergent behavior is generally defined as the appearance of complex behavior out of multiplicity of relatively simple interactions. Nowadays, there are various kinds of software systems that deal with detecting the emergence of certain behavior in environment, representing it in the software and providing means to manipulate the behavior. Where significant amount of research has been dedicated to develop algorithms for detecting emergent behavior, there is no dedicated attempt to provide suitable linguistic abstractions to modularize emergent behavior and its related concerns. This results in implementations that are complex and hard to maintain. In this paper, we identify three characteristic features of emergent behavior, and outline the shortcomings of current languages to properly program and modularize emergent behavior. We introduce emergent gummy modules as dedicated linguistic abstractions, which facilitate defining the appearance and disappearance conditions of emergent behavior as well as its utilization operations as one holistic module. We explain the implementation of emergent gummy modules in the GummyJ language, and illustrate that they improve the modularity of implementations. We represent the event processing semantics of GummyJ programs in UPPAAL model checker and verify their correctness.
- Compose*. http://composestar.sourceforge.net/.Google Scholar
- UPPAAL. http://www.uppaal.org/.Google Scholar
- M. Aks¸it, K. Wakita, J. Bosch, L. M. J. Bergmans, and A. Yonezawa. Abstracting Object Interactions Using Composition Filters. volume 791 of LNCS. 1993.Google Scholar
- M. Appeltauer, R. Hirschfeld, and H. Masuhara. Improving the Development of Context-dependent Java Applications with ContextJ. In COP ’09. ACM Press, 2009. Google Scholar
Digital Library
- R. Bauza and J. Gozalvez. Traffic Congestion Detection in Large-Scale Scenarios Using Vehicle-to-Vehicle Communications. Journal of Network and Computer Applications, 36(5):1295 – 1307, 2013.Google Scholar
- S. Bouarfa, H. Blom, R. Curran, and M. Everdij. Agent-based Modeling and Simulation of Emergent Behavior in Air Transportation. Complex Adaptive Systems Modeling, 1(1), 2013..Google Scholar
- J. Fromm. Types and Forms of Emergence. URL arXiv:nlin/ 0506028.Google Scholar
- V. Gasiunas, L. Satabin, M. Mezini, A. N´u˜nez, and J. Noyé. EScala: Modular Event-Driven Object Interactions in Scala. In AOSD ’11. ACM. Google Scholar
Digital Library
- O. T. Holland. Taxonomy for the Modeling and Simulation of Emergent Behavior Systems. In Proceedings of the 2007 Spring Simulation Multiconference - Volume 2. Society for Computer Simulation International, 2007. Google Scholar
Digital Library
- T. Kamina, T. Aotani, and H. Masuhara. EventCJ: a Context-oriented Programming Language with Declarative Event-based Context Transition. In AOSD ’11. ACM, 2011. Google Scholar
Digital Library
- G. Kiczales, E. Hilsdale, J. Hugunin, M. Kersten, J. Palm, and W. G. Griswold. An Overview of AspectJ. In ECOOP ’01. Springer-Verlag, 2001. Google Scholar
Digital Library
- S. Malakuti. Event Composition Model: Achieving Naturalness in Runtime Enforcement. PhD thesis, University of Twente, 2011.Google Scholar
- S. Malakuti and M. Aks¸it. Event Modules: Modularizing Domainspecific Crosscutting RV Concerns. In Transactions on Aspect-Oriented Software Development XI, volume 8400, pages 27–69. LNCS, 2014.Google Scholar
Cross Ref
- S. Malakuti and M. Aks¸it. Event-based Modularization of Reactive Systems. In Concurrent Objects and Beyond (to appear). LNCS, 2014.Google Scholar
- S. Malakuti and M. Aksit. Event-based Modularization: How Emergent Behavioral Patterns Must Be Modularized? In FOAL ’14. ACM, 2014. Google Scholar
Digital Library
- M. Mezini and K. Ostermann. Conquering Aspects with Caesar. In AOSD’ 03. ACM Press, 2003. Google Scholar
Digital Library
- C. A. Pavel, C. Allan, P. Avgustinov, A. S. Christensen, L. Hendren, S. Kuzins, O. D. Moor, D. Sereni, G. Sittampalam, and J. Tibble. Adding Trace Matching with Free Variables to AspectJ. In OOPSLA’ 05. ACM, 2005. Google Scholar
Digital Library
- H. Rajan and G. Leavens. Ptolemy: A Language with Quantified, Typed Events. In ECOOP ’08, LNCS. Springer Berlin / Heidelberg, 2008. Google Scholar
Digital Library
- M. Resnick. Turtles, Termites, and Traffic Jams: Explorations in Massively Parallel Microworlds (Complex Adaptive Systems). A Bradford Book, 1997. Google Scholar
Digital Library
- K. Sakurai, H. Masuhara, N. Ubayashi, S. Matsuura, and S. Komiya. Association Aspects. In AOSD’ 04. ACM Press, 2004. Google Scholar
Digital Library
- R. Sen, A. Cross, A. Vashistha, V. N. Padmanabhan, E. Cutrell, and W. Thies. Accurate Speed and Density Measurement for Road Traffic in India. In ACM DEV ’13. ACM, 2013. Google Scholar
Digital Library
- M. Treiber and A. Kesting. Traffic Flow Dynamics. Springer, 2013.Google Scholar
Cross Ref
- W. Vanderperren, D. Suvée, M. A. Cibrán, and B. De Fraine. Stateful Aspects in JAsCo. In Software Composition. LNCS, 2005. Google Scholar
Digital Library
- U. Wilensky. Modeling Natures Emergent Patterns with Multi-Agent Languages. In Proceedings of EuroLogo 2002, 2002.Google Scholar
- Y. Zhuang and S. Chiba. Method Slots: Supporting Methods, Events, and Advices by a Single Language Construct. In AOSD ’13. ACM, 2013. Google Scholar
Digital Library
Index Terms
Emergent gummy modules: modular representation of emergent behavior
Recommendations
Emergent gummy modules: modular representation of emergent behavior
GPCE 2014: Proceedings of the 2014 International Conference on Generative Programming: Concepts and ExperiencesEmergent behavior is generally defined as the appearance of complex behavior out of multiplicity of relatively simple interactions. Nowadays, there are various kinds of software systems that deal with detecting the emergence of certain behavior in ...
Emergent (mis)behavior vs. complex software systems
Proceedings of the 2006 EuroSys conferenceComplex systems often behave in unexpected ways that are not easily predictable from the behavior of their components; this is known as emergent behavior. As software systems grow in complexity, interconnectedness, and geographic distribution, we will ...
Emergent (mis)behavior vs. complex software systems
EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006Complex systems often behave in unexpected ways that are not easily predictable from the behavior of their components; this is known as emergent behavior. As software systems grow in complexity, interconnectedness, and geographic distribution, we will ...






Comments