A Novel Approach using Alloy in Domain-specific Language Engineering

Rodrigo M. L. M. Moreira, Ana C. R. Paiva

2015

Abstract

Modeling and building software systems for a given specific domain is a complex task. Domain-Specific Languages (DSLs) have been increasingly gaining attention because they are developed to cope with particularities of specific domains. However, DSL development consists in a set of tasks to be performed and some can be error-prone. Identifying the correct set of elements within a DSL and their constraints can be very demanding. Alloy is a popular lightweight intuitive formal language with a simple notation that is easy to read and write. When models of a DSL are specified using Alloy, it becomes possible to generate instances that should represent valid models. So, this paper presents a generic innovative methodology using Alloy in DSL engineering, in order to find and tune language constraints in a systematic way. It also presents an empirical study illustrating the applicability of the proposed methodology.

References

  1. Bettini, L. (2013). Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd.
  2. Bravenboer, M., Kalleberg, K. T., Vermaas, R., and Visser, E. (2008). Stratego/xt 0.17. a language and toolset for program transformation. Science of Computer Programming, 72(1):52-70.
  3. Frias, M. F., Galeotti, J. P., López Pombo, C. G., and Aguirre, N. M. (2005). Dynalloy: upgrading alloy with actions. In Proceedings of the 27th international conference on Software engineering, pages 442-451. ACM.
  4. He, Y. (2006). Comparison of the modeling languages alloy and uml. In Arabnia, H. R. and Reza, H., editors, Software Engineering Research and Practice, pages 671-677. CSREA Press.
  5. Jackson, D. (2011). Software Abstractions: Logic, Language, and Analysis. MIT Press; 2nd Revised edition.
  6. Jones, C. B. (2001). The transition from vdl to vdm.
  7. Kats, L. C. and Visser, E. (2010). The spoofax language workbench: rules for declarative specification of languages and ides. In ACM Sigplan Notices, volume 45, pages 444-463. ACM.
  8. Moreira, R. M. L. M. and Paiva, A. C. R. (2014). A GUI Modeling DSL for Pattern-Based GUI Testing - PARADIGM. In Maciaszek, L. A. and Filipe, J., editors, ENASE. SciTePress.
  9. Moreira, R. M. L. M., Paiva, A. C. R., and Memon, A. (2013). A Pattern-Based Approach for GUI Modeling and Testing. In Proceedings of the 24th International Symposium on Software Reliability Engineering, ISSRE'13, Pasadena, CA, USA. IEEE Computer Society.
  10. O'Regan, G. (2013). Z formal specification language. In Mathematics in Computing, pages 109-122. Springer London.
  11. Paternò, F., Mancini, C., and Meniconi, S. (1997). ConcurTaskTrees: A Diagrammatic Notation for Specifying Task Models. In Proceedings of the IFIP TC13 International Conference on Human-Computer Interaction, INTERACT 7897, pages 362-369, London, UK, UK. Chapman & Hall, Ltd.
  12. Rumbaugh, J., Jacobson, I., and Booch, G. (2004). Unified Modeling Language Reference Manual, The. Pearson Higher Education.
  13. Runeson, P. and Höst, M. (2009). Guidelines for conducting and reporting case study research in software engineering. Empirical Software Engineering, 14(2):131- 164.
  14. Schmitt, C., Kuckuk, S., Köstler, H., Hannig, F., and Teich, J. (2014). An evaluation of domain-specific language technologies for code generation. In Proc. Int. Conf. on Computational Science and its Applications (ICCSA).
  15. Strembeck, M. and Zdun, U. (2009). An approach for the systematic development of domain-specific languages. Softw. Pract. Exper., 39(15):1253-1292.
  16. Voelter, M., Benz, S., Dietrich, C., Engelmann, B., Helander, M., Kats, L. C. L., Visser, E., and Wachsmuth, G. (2013). DSL Engineering - Designing, Implementing and Using Domain-Specific Languages. dslbook.org.
  17. Warmer, J. and Kleppe, A. (2003). The Object Constraint Language: Getting Your Models Ready for MDA. Addison-Wesley Longman Publishing Co., Inc., Boston, MA, USA, 2 edition.
Download


Paper Citation


in Harvard Style

M. L. M. Moreira R. and C. R. Paiva A. (2015). A Novel Approach using Alloy in Domain-specific Language Engineering . In Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-083-3, pages 157-164. DOI: 10.5220/0005228101570164


in Bibtex Style

@conference{modelsward15,
author={Rodrigo M. L. M. Moreira and Ana C. R. Paiva},
title={A Novel Approach using Alloy in Domain-specific Language Engineering},
booktitle={Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2015},
pages={157-164},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005228101570164},
isbn={978-989-758-083-3},
}


in EndNote Style

TY - CONF
JO - Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,
TI - A Novel Approach using Alloy in Domain-specific Language Engineering
SN - 978-989-758-083-3
AU - M. L. M. Moreira R.
AU - C. R. Paiva A.
PY - 2015
SP - 157
EP - 164
DO - 10.5220/0005228101570164