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
- Bettini, L. (2013). Implementing Domain-Specific Languages with Xtext and Xtend. Packt Publishing Ltd.
- 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.
- 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.
- 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.
- Jackson, D. (2011). Software Abstractions: Logic, Language, and Analysis. MIT Press; 2nd Revised edition.
- Jones, C. B. (2001). The transition from vdl to vdm.
- 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.
- 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.
- 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.
- O'Regan, G. (2013). Z formal specification language. In Mathematics in Computing, pages 109-122. Springer London.
- 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.
- Rumbaugh, J., Jacobson, I., and Booch, G. (2004). Unified Modeling Language Reference Manual, The. Pearson Higher Education.
- 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.
- 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).
- Strembeck, M. and Zdun, U. (2009). An approach for the systematic development of domain-specific languages. Softw. Pract. Exper., 39(15):1253-1292.
- 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.
- 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.
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