Involving End-users in Domain-Specific Languages Development - Experiences from a Bioinformatics SME
Maria Jose Villanueva, Francisco Valverde, Oscar Pastor
2013
Abstract
Involving end-users in software development is a goal envisioned by the Software Engineering community. As they have the domain knowledge, it is feasible to develop software applications that really fulfil their requirements. Domain-specific languages (DSL) are widely applied to accomplish this vision. However, end-users collaboration in DSL development is also important to ensure that their needs are well understood and represented. This research work proposes a DSL development process that combines methodological guidelines for DSL development with good practices from agile methods to encourage end-user involvement. In this paper, we overview the complete process and we focus on the two first stages: Decision and Analysis. In order to illustrate the proposal, it is applied in the development of a DSL for a bioinformatics SME that works on genetic disease diagnosis.
References
- Ambler, S. (2002). Agile modeling: Effective practices. John Wiley and Sons.
- Arora, R., Mernik, M., Bangalore, P., Roychoudhury, S., and Mukkai, S. (2009). A domain-specific language for application-level checkpointing. In Proceedings of the 5th International Conference on Distributed Computing and Internet Technology, ICDCIT 7808, pages 26-38, Berlin, Heidelberg. Springer-Verlag.
- Beck, K. and Andres, C. (2004). Extreme programming explained: embrace change. Addison-Wesley Professional.
- Beck, K., Beedle, M., van Bennekum, A., Cockburn, A., Cunningham, W., Fowler, M., Grenning, J., Highsmith, J., Hunt, A., Jeffries, R., et al. (2001). The agile manifesto. http://agilemanifesto.org/principles.html Accesed 2013, 7(08).
- Ceh, I., Crepinšek, M., Kosar, T., and Mernik, M. (2011). Ontology driven development of domain-specific languages. Computer Science and Information Systems, 8(2):317-342.
- Costabile, M., Mussio, P., Parasiliti Provenza, L., and Piccinno, A. (2008). End users as unwitting software developers. In Proceedings of the 4th international workshop on End-user software engineering, pages 6- 10. ACM.
- Fischer, G., Giaccardi, E., Ye, Y., Sutcliffe, A., and Mehandjiev, N. (2004). Meta-design: A manifesto for end-user development. Communications of the ACM, 47(9):33-37.
- Fischer, G., Nakakoji, K., and Ye, Y. (2009). Metadesign: Guidelines for supporting domain experts in software development. Software, IEEE, 26(5):37-44.
- Fowler, M. (2010). Domain-specific languages. AddisonWesley Professional.
- Goecks, J., Nekrutenko, A., Taylor, J., and Team, T. (2010). Galaxy: a comprehensive approach for supporting accessible, reproducible, and transparent computational research in the life sciences. Genome Biol, 11(8):R86.
- Grigera, J., Rivero, J., Robles Luna, E., Giacosa, F., and Rossi, G. (2012). From requirements to web applications in an agile model-driven approach. Web Engineering, pages 200-214.
- Haider, S., Ballester, B., Smedley, D., Zhang, J., Rice, P., and Kasprzyk, A. (2009). Biomart central portal: unified access to biological data. Nucleic acids research, 37(suppl 2):W23-W27.
- Highsmith, J. and Cockburn, A. (2001). Agile software development: the business of innovation. Computer, 34(9):120-127.
- Holland, R., Down, T., Pocock, M., Prlic, A., Huen, D., James, K., Foisy, S., Dräger, A., Yates, A., Heuer, M., et al. (2008). Biojava: an open-source framework for bioinformatics. Bioinformatics, 24(18):2096-2097.
- Hull, D., Wolstencroft, K., Stevens, R., Goble, C., Pocock, M., Li, P., and Oinn, T. (2006). Taverna: a tool for building and running workflows of services. Nucleic acids research, 34(suppl 2):W729-W732.
- Izquierdo, J. and Cabot, J. (2012). Community-driven language development. MiSE'12.
- Jr., I. F., Fister, I., Mernik, M., and Brest, J. (2011). Design and implementation of domain-specific language easytime. Computer Languages, Systems and Structures, 37(4):151-167.
- Kang, K., Cohen, S., Hess, J., Novak, W., and Peterson, A. S. (1990). Feature-Oriented Domain Analysis (FODA) Feasibility Study. Technical report.
- Ko, A. J., Abraham, R., Beckwith, L., Blackwell, A., Burnett, M., Erwig, M., Scaffidi, C., Lawrance, J., Lieberman, H., Myers, B., Rosson, M. B., Rothermel, G., Shaw, M., and Wiedenbeck, S. (2011). The state of the art in end-user software engineering. ACM Computing Surveys (CSUR), 43(3):21:1-21:44.
- Mernik, M., Heering, J., and Sloane, A. M. (2005). When and how to develop domain-specific languages. ACM Computing Surveys (CSUR), 37(4):316-344.
- Pérez, F., Valderas, P., and Fons, J. (2011). Towards the involvement of end-users within model-driven development. End-User Development, pages 258-263.
- Rusk, N. (2009). Focus on Next-Generation Sequencing Data Analysis. Nature Methods, 6(11s):S1.
- Schwaber, K. and Beedle, M. (2002). Agile software development with Scrum, volume 18. Prentice Hall PTR Upper Saddle Riverˆ eNJ NJ.
- Spinellis, D. (2001). Notable Design Patterns for DomainSpecific Languages. Journal of Systems and Software, 56(1):91-99.
- Strembeck, M. and Zdun, U. (2009). An approach for the systematic development of domain-specific languages. Software: Practice and Experience, 39(15):1253-1292.
- van Deursen, A., Klint, P., and Visser, J. (2000). Domainspecific languages: An annotated bibliography. ACM SIGPLAN Notices, 35(6):26-36.
- Visser, E. (2008). Webdsl: A case study in domain-specific language engineering. Generative and Transformational Techniques in Software Engineering II, pages 291-373.
Paper Citation
in Harvard Style
Villanueva M., Valverde F. and Pastor O. (2013). Involving End-users in Domain-Specific Languages Development - Experiences from a Bioinformatics SME . In Proceedings of the 8th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE, ISBN 978-989-8565-62-4, pages 97-108. DOI: 10.5220/0004450000970108
in Bibtex Style
@conference{enase13,
author={Maria Jose Villanueva and Francisco Valverde and Oscar Pastor},
title={Involving End-users in Domain-Specific Languages Development - Experiences from a Bioinformatics SME},
booktitle={Proceedings of the 8th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,},
year={2013},
pages={97-108},
publisher={SciTePress},
organization={INSTICC},
doi={10.5220/0004450000970108},
isbn={978-989-8565-62-4},
}
in EndNote Style
TY - CONF
JO - Proceedings of the 8th International Conference on Evaluation of Novel Approaches to Software Engineering - Volume 1: ENASE,
TI - Involving End-users in Domain-Specific Languages Development - Experiences from a Bioinformatics SME
SN - 978-989-8565-62-4
AU - Villanueva M.
AU - Valverde F.
AU - Pastor O.
PY - 2013
SP - 97
EP - 108
DO - 10.5220/0004450000970108