Skip to main content
Log in

Expressing aspectual interactions in design: evaluating three AOM approaches in the slot machine domain

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

In the context of an industrial project, we evaluated the implementation of the software of a casino slot machine. This software has a significant amount of crosscutting concerns that depend on and interact with each other as well as with the modular concerns. We therefore wished to express our design using an appropriate aspect-oriented modeling approach. We therefore evaluated three candidate methodologies: Theme/UML, WEAVR, and RAM to establish their suitability. Remarkably, only the last of the three has shown to allow an adequate expression of the interactions, albeit not fully explicit. The first two fall short because half of the interaction types cannot be expressed at all while the other half need to be expressed using a work-around that hides the intention of the design. Neither does RAM allow a fully explicit expression of interactions, but it would be the most adequate approach for the slot machine case.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11
Fig. 12
Fig. 13
Fig. 14

Similar content being viewed by others

Notes

  1. A pseudonym, licensing restrictions prohibit us from using the real name.

References

  1. Apel, S., Batory, D., Kstner, C., Saake, G.: Feature-Oriented Software Product Lines: Concepts and Implementation. Springer Publishing Company, Incorporated (2013)

  2. Apel, S., Kästner, C.: An overview of feature-oriented software development. J. Object Technol. 8(5), 49–84 (2009)

    Article  Google Scholar 

  3. Apel, S., Scholz, W., Lengauer, C., Kästner, C.: Detecting dependences and interactions in feature-oriented design. In ISSRE, pp. 161–170. IEEE Computer Society (2010)

  4. Apel, S., von Rhein, A., Thüm, T., Kästner, C.: Feature-interaction detection based on feature-based specifications. Comput. Netw. 57(12), 2399–2409 (2013)

    Article  Google Scholar 

  5. Ayed, A., Kienzle, J.: Integrating protocol modelling into reusable aspect models. In: Proceedings of the 5th ACM SIGCHI Annual International Workshop on Behaviour Modelling—Foundations and Applications, BMFA’13, pp. 2:1–2:12. ACM, New York, NY, USA (2013)

  6. Calder, M., Kolberg, M., Magill, E. H., Marples, D., Reiff-Marganiec, S.: Hybrid solutions to the feature interaction problem. In: Amyot, D., Logrippo, L. (eds.) FIW, pp. 295–312. IOS Press (2003)

  7. Calder, M., Kolberg, M., Magill, E.H., Reiff-Marganiec, S.: Feature interaction: a critical review and considered forecast. Comput. Netw. 41(1), 115–141 (2003)

    Article  MATH  Google Scholar 

  8. Chitchyan, R., Rashid, A., Sawyer, P., Garcia, A., Alarcon, M., Bakker, J., Tekinerdogan, B., Clarke, S., Jackson, A.: Survey of analysis and design approaches. Technical Report AOSD-Europe Deliverable D11, AOSD-Europe-ULANC-9, University of Lancaster (2005)

  9. Ciraci, S., Havinga, W., Aksit, M., Bockisch, C., van den Broek, P.: A graph-based aspect interference detection approach for uml-based aspect-oriented models. Trans. Asp. Oriented Softw. Dev. 7, 321–374 (2010)

    Google Scholar 

  10. Clarke, S., Baniassad, E.: Aspect-Oriented Analysis and Design. The Theme Approach. Object Technology Series. Addison-Wesley, Boston (2005)

    Google Scholar 

  11. Cottenier, T., Berg, A.V., Elrad, T.: The Motorola WEAVR: model weaving in a large industrial context. In: Proceedings of the International Conference on Aspect Oriented Software Development, Industry Track (2006)

  12. Cottenier, T., van den Berg, A., Elrad, T.: Stateful aspect: The case for aspect-oriented modeling. In: Proceedings of the 10th International Workshop on Aspect-Oriented Modeling. ACM (2006)

  13. Cottenier, T., van den Berg, A., Elrad, T.: Motorola weavr: aspect and model-driven engineering. J. Object Technol. 6(7), 51–88 (2007)

    Article  Google Scholar 

  14. Fabry, J., Zambrano, A., Gordillo, S.: Expressing aspectual interactions in design: experiences in the slot machine domain. In: Whittle, J., Clark, T., Kühne, T. (eds.) Model Driven Engineering Languages and Systems. Lecture Notes in Computer Science, vol. 6981, pp. 93–107. Springer, Berlin/Heidelberg (2011)

  15. Gaming Laboratories International. Gaming Devices in Casinos (2007). http://www.gaminglabs.com/

  16. Gaming Standard Association. Game to Server (G2S) Protocol Specification (2008). http://www.gamingstandards.com/

  17. Homayoon, S., Singh, H.: Methods of addressing the interactions of intelligent network services with embedded switch services. IEEE Commun. Mag. 26(12), 42–46, 70 (1988)

    Article  Google Scholar 

  18. IBM: Rational TAU (2014)

  19. Kang, K.C., Kim, S., Lee, J., Kim, K., Shin, E., Huh, M.: Form: a feature-oriented reuse method with domain-specific reference architectures. Ann. Softw. Eng. 5, 143–168 (1998)

    Article  Google Scholar 

  20. Katz, E., Katz, S.: Incremental analysis of interference among aspects. In Clifton, C. (ed.) FOAL, pp. 29–38. ACM (2008)

  21. Kellens, A., Mens, K., Brichau, J., Gybels, K.: Managing the evolution of aspect-oriented software with model-based pointcuts. In: European Conference on Object-Oriented Programming (ECOOP), number 4067 in LNCS, pp. 501–525 (2006)

  22. Kienzle, J., Abed, W.A., Klein, J.: Aspect-oriented multi-view modeling. In: Proceedings of the 8th ACM International Conference on Aspect-oriented Software Development. AOSD ’09, pp. 87–98. ACM, NY, USA (2009)

  23. Kienzle, J., Abed, W.A., Fleurey, F., Jazcquel, J.-M., Klein, J.: Aspect-oriented design with reusable aspect models. In: Katz, S., Mezini, M., Kienzle, J. (eds.) Transactions on Aspect-Oriented Software Development VII. Lecture Notes in Computer Science, vol. 6210, pp. 272–320. Springer, Berlin, Heidelberg (2010)

  24. Liu, J: Feature interactions and software derivatives. J. Object Technol. 4(3), 13–19 (2005). GPCE Young Researchers Workshop 2004

  25. Mehner, K., Monga, M., Taentzer, G.: Interaction analysis in aspect-oriented models. In: Requirements Engineering, 14th IEEE International Conference, pp. 66–75. IEEE Computer Society (2006)

  26. Metzger, A., Bühne, S., Lauenroth, K., Pohl, K.: Considering feature interactions in product lines: towards the automatic derivation of dependencies between product variants. In: Reiff-Marganiec, S., Ryan, M. (eds.) FIW, pp 198–216. IOS Press (2005)

  27. Metzger, A., Bühne, S., Lauenroth, K., Pohl, K.: Considering feature interactions in product lines: towards the automatic derivation of dependencies between product variants. In: Reiff-Marganiec, S., Ryan, M. (eds) Proceedings of the 8th International Conference on Feature Interactions in Telecommunications and Software Systems, ICFI’05 (Leicester, UK, June 28–30, 2005), Amsterdam . IOS Press (June 2005)

  28. Nakamura, M., Reiff-Marganiec, S, (eds.): Feature Interactions in Software and Communication Systems X, International Conference on Feature Interactions in Software and Communication Systems, ICFI 2009, 11–12 June, 2009, Lisbon, Portugal. IOS Press (2009)

  29. Nevada Gaming Commission: Technical Standards For Gaming Devices And On-Line Slot Systems (2008). http://gaming.nv.gov/stats_regs.htm

  30. Nhlabatsi, A., Laney, R., Nuseibeh, B.: Feature interaction: the security threat from within software systems. Prog. Inform. 5, 75–89 (2008)

    Article  Google Scholar 

  31. Pohl, K., Böckle, G., van der Linden, F.J.: Software Product Line Engineering: Foundations. Principles and Techniques. Springer, Secaucus (2005)

    Book  MATH  Google Scholar 

  32. Prehofer, C.: Feature-oriented programming: a fresh look at objects. In: ECOOP, pp. 419–443 (1997)

  33. Sanen, F., Truyen, E., Win, B.D., Joosen, W., Loughran, N., Coulson, G., Rashid, A., Nedos, A., Jackson, A., Clarke, S.: Study on interaction issues. Technical Report AOSD-Europe Deliverable D44, AOSD-Europe-KUL-7, Katholieke Universiteit Leuven (2006)

  34. Silva Filho, R.S., Redmiles, D.F.: Managing feature interaction by documenting and enforcing dependencies in software product lines. In: 9th International Conference on Feature Interactions in Software and Communication Systems (ICFI’07), pp. 33–48, Grenoble, France, Sept 3–5 (2007)

  35. Wimmer, M., Schauerhuber, A., Kappel, G., Retschitzegger, W., Schwinger, W., Kapsammer, E.: A survey on UML-based aspect-oriented design modeling. ACM Comput. Surv. 43(4), 28:1–28:33 (2011)

    Article  Google Scholar 

  36. Zambrano, A., Fabry, J., Gordillo, S.: Expressing aspectual interactions in requirements engineering: experiences, problems and solutions. Sci. Comput. Program. 78(1), 65–92 (2012)

    Article  Google Scholar 

  37. Zambrano, A., Fabry, J., Jacobson, G., Gordillo, S.: Expressing aspectual interactions in requirements engineering: experiences in the slot machine domain. In: Proceedings of the 2010 ACM Symposium on Applied Computing (SAC 2010), pp. 2161–2168. ACM Press (2010)

  38. Zhang, J., Cottenier, T., van den Berg, A., Gray, J.: Aspect interference and composition in the motorola aspect-oriented modeling weaver. In: Workshop on Aspect-Oriented Modeling at the 9th International Conference on Model Driven Engineering Languages and Systems (2006)

  39. Zhang, W., Mei, H., Zhao, H.: A feature-oriented approach to modeling requirements dependencies. In: 2013 21st IEEE International Requirements Engineering Conference (RE), vol. 0, pp. 273–284 (2005)

  40. Z. 100: ITU. Specification and description language (SDL). In International Telecommunication Union (2000).

Download references

Acknowledgments

Many thanks go to Jörg Kienzle and his team at McGill for fluid conversations (via e-mail and other means) to help us with understanding RAM, receiving us at their lab, and co-modeling some diagrams of the slot machine.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Johan Fabry.

Additional information

Communicated by Dr. Ana Moreira.

This article extends the article “Expressing Aspectual Interactions in Design: Experiences in the Slot Machine Domain” [14] that appeared in the Proceedings of the ACM/IEEE 14th International Conference on Model Driven Engineering Languages and Systems (MODELS 2011)

Johan Fabry is partially funded by FONDECYT project 1130253.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Fabry, J., Zambrano, A. & Gordillo, S. Expressing aspectual interactions in design: evaluating three AOM approaches in the slot machine domain. Softw Syst Model 15, 881–905 (2016). https://doi.org/10.1007/s10270-014-0442-0

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-014-0442-0

Keywords

Navigation