Automated DSL Construction Based on Software Product Lines

Changyun Huang, Ataru Osaka, Yasutaka Kamei, Naoyasu Ubayashi

Abstract

DSL (Domain-Specific Language) is one of the important approaches for software abstraction. In the past decades, DSLs have been provided by expert engineers familiar with domain knowledge and programming language processors. It is not easy for ordinary programmers to construct DSLs for their own purposes. To deal with this problem, we propose a language workbench called Argyle that can automatically generate a DSL by only specifying a set of functions needed to the DSL and an execution platform supported by the DSL. Argyle is based on software product lines and consists of the following two steps: 1) development of the core assets for constructing a family of DSLs and 2) DSL configuration using these core assets. To demonstrate the effectiveness of our approach, we developed a prototype DSL for supporting MSR (Mining Software Repositories), the most active research field in software engineering.

References

  1. Clements, P. and Northrop, L. (2001). Software product lines. Addison-Wesley.
  2. Dyer, R., Nguyen, H. A., Rajan, H., and Nguyen, T. N. (2013). Boa: A language and infrastructure for analyzing ultra-large-scale software repositories. In 35th International Conference on Software Engineering.
  3. Fowler, M. (2010). Domain-specific languages. AddisonWesley Professional.
  4. Gheyi, R., Massoni, T., and Borba, P. (2006). A theory for feature models in alloy. In First Alloy Workshop.
  5. Gu, Z., Barr, E. T., Schleck, D., and Su, Z. (2012). Reusing debugging knowledge via trace-based bug search. In 12th ACM International Conference on Object Oriented Programming Systems Languages and Applications.
  6. Huang, C., Yamashita, K., Kamei, Y., Hisazumi, K., and Ubayashi, N. (2013). Domain analysis for mining software repositories -towards feature-based dsl construction-. In 4th International Workshop on Product LinE Approaches in Software Engineering.
  7. Jackson, D. (2006). Software Abstractions. The MIT Press.
  8. Kang, K., Cohen, S., Hess, J., Nowak, W., and Peterson, S. (1990). Feature-oriented domain analysis feasibility study. Technical report, Carnegie Mellon University/Software Engineering Institute.
  9. Kang, K. C., Lee, J., and Donohoe, P. (2002). Featureoriented product line engineering. IEEE Software.
  10. Mernik, M., Heering, J., and Sloane, A. M. (2005). When and how to develop domain-specific languages. ACM Computing Surveys.
  11. Nakajima, S. and Ubayashi, N. (2007). Lightweight formal analysis of foda feature diagrams. In 4th International Workshop on Rapid Integration of Software Engineering techniques.
  12. Shang, W., Adams, B., and Hassan, A. E. (2011). Using pig as a data preparation language for large-scale mining software repositories studies: An experience report. Journal of Systems and Software.
  13. Yamashita, K. (2013). Modular construction of an analysis tool for mining software repositories. In ACM Student Research Competition at the 13th Aspect-Oriented Software Development Conference.
Download


Paper Citation


in Harvard Style

Huang C., Osaka A., Kamei Y. and Ubayashi N. (2015). Automated DSL Construction Based on Software Product Lines . In Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD, ISBN 978-989-758-083-3, pages 247-254. DOI: 10.5220/0005239902470254


in Bibtex Style

@conference{modelsward15,
author={Changyun Huang and Ataru Osaka and Yasutaka Kamei and Naoyasu Ubayashi},
title={Automated DSL Construction Based on Software Product Lines},
booktitle={Proceedings of the 3rd International Conference on Model-Driven Engineering and Software Development - Volume 1: MODELSWARD,},
year={2015},
pages={247-254},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0005239902470254},
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 - Automated DSL Construction Based on Software Product Lines
SN - 978-989-758-083-3
AU - Huang C.
AU - Osaka A.
AU - Kamei Y.
AU - Ubayashi N.
PY - 2015
SP - 247
EP - 254
DO - 10.5220/0005239902470254