Academia.eduAcademia.edu

Outline

Patterns for Evaluating Usability of Domain-Specific Languages

2012, HAL (Le Centre pour la Communication Scientifique Directe)

Abstract

For years the development of software artifacts was the sole domain of developers and project managers. However, experience has taught us that the users play a very important role in software development and construction. The inclusion of the Domain Experts directly in the development cycle is a very important characteristic of Domain-Specific Languages, as they have often an important role in making and constraining the domain of the language. DSLs are credited with increased productivity and ease of use, but this fact is hardly ever proven. Moreover, Usability tests are frequently only performed at the final stages of the project when changes have a significant impact on the budget. To help prevent this, in this paper we present a pattern language for evaluating the usability of DSLs. These patterns can help show how to use an iterative usability validation development strategy to produce DSLs that can achieve a high degree of Usability.

References (45)

  1. Alférez, M., Kulesza, U., Sousa, A., Santos, J., Moreira, A., Araújo, J. AND Amaral, V. 2008. A Model-Driven Approach for Software Product Lines Requirements Engineering. In Proceedings of the 20th International Conference on Software Engineering and Knowledge Engineering, San Francisco Bay, USA, July 1-3 2008 Knowledge Systems Institute Graduate School, 779-784.
  2. Amaral, V. 2005. Increasing productivity in High Energy Physics data mining with a Domain Specific Visual Query Language. In Phd. Thesis, University of Mannheim.
  3. Barišić, A., Amaral, V., Goulão, M. AND Barroca, B. 2011. How to reach a usable DSL? Moving toward a Systematic Evaluation. presented at the 5th International Workshop on Multi-Paradigm Modeling (MPM'2011) at Models 2011 Volume 50.
  4. Barišić, A., Amaral, V., Goulão, M. AND Barroca, B. 2011. Quality in Use of Domain Specific Languages: a Case Study. In Proceedings of the presented at Workshop on Evaluation and Usability of Programming Languages and Tools (PLATEAU) at SPLASH 2011 Portland, USA, October 2011 ACM.
  5. Barišić, A., Amaral, V., Goulão, M. AND Barroca, B. 2012. Evaluating the Usability of Domain-Specific Languages. In Formal and Practical Aspects of Domain-Specific Languages: Recent Developments, M. Mernik Ed. IGI Global, 386-407.
  6. Basili, V.R. 1996. The role of experimentation in software engineering: past, current, and future. In Proceedings of the 18th International Conference on Software Engineering (ICSE 1996)1996 IEEE Computer Society, 442-449.
  7. Beck, K., Fowler, M. AND Beck, G. 1999. Bad smells in code. Refactoring: Improving the design of existing code, 75-88.
  8. Buschmann, F., Meunier, R., Rohnert, H., Sommerlad, P. AND Stal, M. 1996. A system of patterns: Pattern-oriented software architecture Wiley New York.
  9. Carlshamre, P. 2001. A usability perspective on requirements engineering: from methodology to product development Linköping.
  10. Catarci, T. 2000. What happened when database researchers met usability* 1. Information Systems 25, 177-212.
  11. Cho, H. AND Gray, J. 2011. Design patterns for metamodels. In Proceedings of the compilation of the co-located workshops on DSM'11, TMC'11, AGERE!'11, AOOPES'11, NEAT'11, & VMIL'11 ACM, 25-32.
  12. Conte, T., Massollar, J., Mendes, E. AND Travassos, G.H. 2007. Usability evaluation based on Web design perspectives IEEE, 146- 155. Dumas, J.S. AND Redish, J. 1999. A practical guide to usability testing. Intellect Ltd.
  13. Ferre, X., Jusisto, N., Moreno, A.M. AND Sánchez, M.I. 2003. A software architectural view of usability patterns. In 2nd Workshop on Software and Usability Cross-Pollination, INTERACT, Zürich, Switzerland.
  14. Folmer, E. AND Bosch, J. 2003. Usability patterns in software architecture. In 10th Int. Conf. on Human-Computer Interaction (HCII2003), pp. 93-97.
  15. Gabriel, P., Goulão, M. AND Amaral, V. 2010. Do Software Languages Engineers Evaluate their Languages? In Proceedings of the XIII Congreso Iberoamericano en "Software Engineering" (CIbSE'2010), ISBN: 978-9978-325-10-0, Cuenca, Ecuador, April 2010, X. Franch, I.M.D.S. Gimenes AND J.-P. Carvallo Eds. Universidad del Azuay, 149-162.
  16. García Frey, A., Céret, E., Dupuy-Chessa, S. AND Calvary, G. 2011. QUIMERA: a quality metamodel to improve design rationale ACM, 265-270.
  17. Gellner, M. AND Forbrig, P. 2003. A Usability Evaluation Pattern Language. In Proceedings of the 2nd Workshop on Software and Usability Cross-Pollination, INTERACT, Zürich, Switzerland2003.
  18. Goulão, M. AND Abreu, F.B. 2007. Modeling the Experimental Software Engineering Process. In 6th International Conference on the Quality of Information and Communications Technology (QUATIC 2007) IEEE Computer Society.
  19. Graham, I. 2002. A pattern language for web usability. Addison-Wesley Longman Publishing Co., Inc.
  20. Günther, S. 2011. Development of Internal Domain-Specific Languages: Design Principles and Design Patterns. In Proceedings of the PLoP 2011, Portland, OR, USA2011.
  21. Hussey, A. 1999. Patterns for safer human-computer interfaces. Computer Safety, Reliability and Security, 686-686.
  22. ISO 2001. ISO/IEC 9241-11 Ergonomic requirements for office work with visual display terminals (VDTs) --Part 11: Guidance on usability. ISO 2011. ISO/IEC 25010-11 -Systems and software engineering -Systems and software Quality Requirements and Evaluation (SQuaRE) -System and software quality models.
  23. Johnson, J. AND Henderson, A. 2002. Conceptual models: begin by designing what to design. interactions 9, 25-32.
  24. Jones, C. 1991. Applied software measurement: assuring productivity and quality. McGraw-Hill, Inc.
  25. Jones, C. 1996. Software change management. Computer 29, 80-82.
  26. Kelly, S. AND Tolvanen, J.-P. 2008. Domain-specific modeling: enabling full code generation. Wiley-IEEE Computer Society Press.
  27. Kleppe, A.G. 2009. Software language engineering: creating domain-specific languages using metamodels. Addison-Wesley.
  28. Kosar, T., Oliveira, N., Mernik, M., Pereira, M.J.V., Črepinšek, M., Cruz, D. AND Henriques, P.R. 2010. Comparing General-Purpose and Domain-Specific Languages: An Empirical Study. Computer Science and Information Systems 7, 247-264.
  29. Mahemoff, M. AND Johnston, L.J. 2001. Usability Pattern Languages: the" Language" Aspect IOS Press, 350.
  30. Martin, R.C. 2003. Agile software development: principles, patterns, and practices. Prentice Hall PTR.
  31. Mayhew, D.J. 1999. The usability engineering lifecycle: a practitioner's handbook for user interface design. The Usability Engineering Lifecycle A Practitioners Handbook for User Interface Design.
  32. Monteiro, M.P. September 2011. On the Cognitive Foundations of Modularity. In Proceedings of the Psychology of Programming Interest Group Annual Conference (PPIG), York, UKSeptember 2011.
  33. Moody, D. AND van Hillegersberg, J. 2009. Evaluating the Visual Syntax of UML: An Analysis of the Cognitive Effectiveness of the UML Family of Diagrams. Software Language Engineering, 16-34.
  34. Murray, N.S., Paton, N.W., Goble, C.A. AND Bryce, J. 2000. Kaleidoquery--a flow-based visual language and its evaluation. Journal of Visual Languages & Computing 11, 151-189.
  35. N. Genon, P.H.D.A. 2010. Analysing the Cognitive Effectiveness of the BPMN Visual Notation. Software Language Engineering. Nielsen, J. 1994. Usability engineering. Morgan Kaufmann.
  36. OReilly, T. 2007. What is Web 2.0: Design patterns and business models for the next generation of software. Communications & strategies. Öztaş, A. AND Ökmen, Ö. 2004. Risk analysis in fixed-price design-build construction projects. Building and Environment 39, 229- 237. Reisner, P. 1981. Human factors studies of database query languages: A survey and assessment. ACM Computing Surveys (CSUR) 13, 13-31.
  37. Righi, C. AND James, J. 2007. User-centered design stories: real-world UCD case files. Morgan Kaufmann.
  38. Roth, J. 2002. Patterns of mobile interaction. Personal and Ubiquitous Computing 6, 282-289.
  39. Rubin, J. AND Chisnell, D. 2008. Handbook of usability testing: how to plan, design and conduct effective tests. Wiley-India.
  40. Schmidt, V.A. 2010. User Interface Design Patterns Air Force Research Lab Wright-Patterson AFB OH Human Effectiveness Directorate.
  41. Spinellis, D. 2001. Notable design patterns for domain-specific languages. Journal of Systems and Software 56, 91-99.
  42. Tidwell, J. 2005. Designing interfaces. O'Reilly Media, Inc.
  43. Van Duyne, D.K., Landay, J.A. AND Hong, J.I. 2003. The design of sites: patterns, principles, and processes for crafting a customer-centered Web experience. Addison-Wesley Professional.
  44. Van Welie, M. AND Van der Veer, G.C. 2003. Pattern languages in interaction design: Structure and organization. In Interact'03, I. Press Ed., Amsterdam, Netherlands, 527-534.
  45. Völter, M. AND Bettin, J. 2004. Patterns for Model-Driven Software-Development. In Proceedings of the EuroPLoP'04, Irsee, Germany2004.