Advertisement

How to Make Visual Modeling More Attractive to Software Developers

  • Andrey Terekhov
  • Timofey Bryksin
  • Yurii Litvinov
Chapter

Abstract

The visual modeling paradigm has already been known for a number of decades, but still a vast majority of software engineers prefer traditional programming to automated code generation from visual models. This happens mostly because of the programmers’ habit of creating the textual code and almost emotional attachment to it, but also because of the common prejudice toward code generation from general purpose modeling languages (especially UML) and the lack of ease of use of visual integrated development environments (IDEs). In this chapter, we address the last issue and discuss several ways to make modeling using diagrams acceptable for industrial software development. Specialized domain-specific visual languages could be used to make models clearer and more understandable. In addition, a lot of effort is required for tool developers to make tools supporting these languages less difficult to use in everyday work. We present a QReal domain-specific modeling (DSM) platform and discuss what we have done to make visual IDEs created on this platform easier and more productive to use, and the process of their creation simpler, e.g., mouse gestures recognition for rapid creation of elements and links on diagrams, or a number of special features that increase the productivity of the modeling process.

Keywords

Domain-specific modeling Visual models Usability of modeling 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Bishop, A.: Is a picture worth a thousand words? Math. Teach. 81, 32–35 (1977)Google Scholar
  2. 2.
    Cleland-Huang, J.: Requirements engineering’s next top model. IEEE Softw. 30(06), 24–29 (2013)CrossRefGoogle Scholar
  3. 3.
    DeLoache, J.S., Marzolf, D.P.: When a picture is not worth a thousand words: young children’s understanding of pictures and models. Cogn. Dev. 7, 317–329 (1992)CrossRefGoogle Scholar
  4. 4.
    Gleitman, L.R., Gleitman, H.: A picture is worth a thousand words, but that’s the problem: the role of syntax in vocabulary acquisition. Curr. Dir. Psychol. Sci. 1(1), 31–35 (1992)CrossRefGoogle Scholar
  5. 5.
    Koznov, D.V.: Teaching to write software engineering documents with focus on document design by means of mind maps 2012. In: Proceedings of the IASTED International Conference on Computers and Advanced Technology in Education, CATE 2012, pp. 112–118Google Scholar
  6. 6.
    Mayer, R.E., Gallini, J.K.: When is an illustration worth ten thousand words? J. Educ. Psychol. 82(4), 718–726 (1990)CrossRefGoogle Scholar
  7. 7.
    Miller, G.A.: The magical number seven, plus or minus two: some limits on our capacity for processing information. Psychol. Rev. 63, 81–97 (1956)CrossRefGoogle Scholar
  8. 8.
    Wollows, D.M.: A picture is not always worth a thousand words: pictures as distractors in reading. J. Educ. Psychol. 70(2), 255–262 (1978)CrossRefGoogle Scholar
  9. 9.
    Shneiderman, B.: Software Psychology. Human Factors in Computer and Information Systems. Winthrop Publishers, INC, Cambridge (1980)Google Scholar
  10. 10.
    Larkin, J.H., Simon, H.A.: Why a diagram is (sometimes) worth ten thousand words. Cogn. Sci. 11, 65–99 (1987)CrossRefGoogle Scholar
  11. 11.
    Green, T.R.G., Petre, M.: Usability analysis of visual programming environments: a ‘cognitive dimensions’ approach. J. Vis. Lang. Comput. 7(2), 131–174 (1996)CrossRefGoogle Scholar
  12. 12.
    Specification and Description Language specification, URL: http://www.itu.int/rec/T-REC-Z.106/en
  13. 13.
    Marca, D.A., McGowan, C.L.: SADT: Structured Analysis and Design Technique. McGraw-Hill, New York (1987)Google Scholar
  14. 14.
    Business Process Model and Notation specification, URL: http://www.omg.org/spec/BPMN/
  15. 15.
    Unified Modeling Language specification, URL: http://www.omg.org/spec/UML/
  16. 16.
    Petre, M.: UML in practice. In: 35th International Conference on Software Engineering (ICSE 2013), pp. 722–731. IEEE Press, Piscataway (2013)CrossRefGoogle Scholar
  17. 17.
    Repenning, A., Sumner, T.: Agentsheets: a medium for creating domain-oriented visual languages. Computer. 28(3), 17–25 (1995)CrossRefGoogle Scholar
  18. 18.
    Kelly, S.: Visual domain-specific modeling: Benefits and experiences of using metaCASE tools [electronic resource]. In: Kelly, S., Tolvanen, J.P. (eds.) International Workshop on Model Engineering, at ECOOP (2000), URL: http://dsmforum.org/papers/Visual_domain-specific_modelling.pdf (online; accessed: 25 Oct 2015)
  19. 19.
    Tolvanen, J., Kelly, S.: Model-driven development challenges and solutions. Modelsward. 2016, 711–719 (2016)CrossRefGoogle Scholar
  20. 20.
    Terekhov, A.: QReal:Robots — an environment for teaching computer science and robotics in schools [electronic resource]. In: Terekhov, A., Litvinov, Y., Bryksin, T. (eds.) CEE-SECR ‘13 Proceedings of the 9th Central & Eastern European Software Engineering Conference in Russia. ACM, New York (2013), URL: http://dl.acm.org/citation.cfm?id=2556610.2596543 (online; accessed: 30 Nov 2015)
  21. 21.
    Koznov, D., Pliskin, M.: Computer-supported collaborative learning with mind-maps. Communications in Computer and Information Science 17 CCIS, pp. 478–489 (2008)Google Scholar
  22. 22.
    Ledeczi, A.: The generic modeling environment [electronic resource]. In: Ledeczi, A., Maroti, M., Bakay, A., Karsai, G., Garrett, J., et al. (eds.) Workshop on Intelligent Signal Processing (WISP’2001), Budapest, Hungary (2001)Google Scholar
  23. 23.
    Viyovic, V.: Sirius: a rapid development of DSM graphical editor. In: Viyovic, V., Maksimovic, M., Perisic, B. (eds.) IEEE 18th International Conference on Intelligent Engineering Systems INES 2014, pp. 233–238. IEEE Computer Society, Los Alamitos (2014)CrossRefGoogle Scholar
  24. 24.
    Zhu, N., Grundy, J., Hosking, J., Liu, N., Cao, S., Mehra, A.: Pounamu: a meta-tool for exploratory domain-specific visual language tool development. J. Syst. Softw. 80(8), 1390–1407 (2007)CrossRefGoogle Scholar
  25. 25.
    Cook, S.: In: Cook, S., Jones, G., Kent, S., Wills, A.C. (eds.) Domain-Specific Development with Visual Studio DSL Tools, p. 576. Addison-Wesley, Crawfordsville (2007). ISBN: 978-0-321-39820-8Google Scholar
  26. 26.
    The Eclipse Foundation. Eclipse Modeling Project home page [Electronic resource], URL: http://www.eclipse.org/modeling/ (online; accessed: 12 Jan 2015)
  27. 27.
    Kelly, S., Tolvanen, J.-P.: Domain-Specific Modeling: Enabling Full Code Generation, p. 444. Wiley-IEEE Computer Society Press, Hoboken (2008). ISBN: 978-0-470-03666-2Google Scholar
  28. 28.
    Aaen, I.: CASE tool bootstrapping – how little strokes fell great oaks. In: Lyytinen, K., Tahvanainen, V.-P. (eds.) Next Generation CASE Tools, pp. 8–17. IOS Press, Amsterdam (1992)Google Scholar
  29. 29.
    Damm, C.H.: Creative object-oriented modelling: support for intuition, flexibility, and collaboration in CASE tools. In: Damm, C.H., Hansen, K.M., Thomsen, M., Tyrsted, M. (eds.) 14th European Conference on Object-Oriented Programming, pp. 27–43. Springer, London (2000)Google Scholar
  30. 30.
    Davis, E.D., Bagozzi, R.P., Warshaw, P.R.: Extrinsic and intrinsic motivation to use computers in the workplace. J. Appl. Soc. Psychol. 22(14), 1111–1132 (1992)CrossRefGoogle Scholar
  31. 31.
    Gillies, A.C.: Managing software engineering. In: Gillies, A.C., Smith, P. (eds.) Case Studies and Solutions. Chapman & Hall, London (1994)zbMATHGoogle Scholar
  32. 32.
    Huang, R.: Making active CASE tools – toward the next generation CASE tools. ACM SIGSOFT Softw. Eng. Notes. 23(1), 47–50 (1998)CrossRefGoogle Scholar
  33. 33.
    Jarzabek, S., Huang, R.: The case for user-centered CASE tools. Commun. ACM 41(8), 93–99 (1998). ACM New YorkCrossRefGoogle Scholar
  34. 34.
    Ol’khovich, L.B., Koznov, D.V.: OCL-based automated validation method for UML specifications. Programmirovanie. 29(6), 44–51 (2003)Google Scholar
  35. 35.
    Sharma, A.: Framework to define CASE tool requirements for distributed environment. ACM SIGSOFT Softw. Eng. Notes 19(1), 86–89 (1994). ACM PressCrossRefGoogle Scholar
  36. 36.
    Lending, D.: The use of CASE tools. In: Lending, D., Chervany, N.L. (eds.) Proceedings of the 1998 ACM SIGCPR Conference on Computer Personnel Research, pp. 49–58. ACM Press, New York (1998)CrossRefGoogle Scholar
  37. 37.
    Hutchinson, J.: Model-driven engineering practices in industry. In: Hutchinson, J., Rouncefield, M., Whittle, J. (eds.) 33rd International Conference on Software Engineering, pp. 633–642. IEEE, New Jersey (2011)Google Scholar
  38. 38.
    Mohagheghi, P., Gilani, W., Stefanescu, A., Fernandez, M.A.: An empirical study of the state of the practice and acceptance of model-driven engineering in four industrial cases. Empir. Softw. Eng. 18(1), 89–116 (2013). Springer USCrossRefGoogle Scholar
  39. 39.
    Selic, B.: What will it take? A view on adoption of model-based methods in practice. Softw. Syst. Model. 11(4), 513–526 (2012). Springer-Verlag New YorkCrossRefGoogle Scholar
  40. 40.
    Kuzenkova, A., Deripaska, A., Bryksin, T., Litvinov, Y., Polyakov, V.: QReal DSM platform: an environment for creation of specific visual IDEs. In: Proceedings of 8th International Conference on Evaluation of Novel Approaches to Software Engineering (ENASE 2013), pp. 251–257. SCITEPRESS, Setúbal (2013)Google Scholar
  41. 41.
    Terekhov, A.N., Romanovskii, K.Y., Koznov, D.V., Dolgov, P.S., Ivanov, A.N.: RTST++: methodology and a CASE tool for the development of information systems and software for real-time systems. Program. Comput. Softw. 25(5), 276–281 (1999)zbMATHGoogle Scholar
  42. 42.
    Птахина, А.И.: Разработка метамоделирования “на лету” в системе QReal // Список-2013. In: Материалы всероссийской научной конференции по проблемам информатики. 2013г, pp. 28–36. СПб.: Изд-во ВВМ, Санкт-Петербург (2012) (in Russian)Google Scholar
  43. 43.
    Osechkina, M., Litvinov, Y., Bryksin, T.: Multistroke Mouse Gestures Recognition in QReal metaCASE Technology. In: SYRCoSE 2012: Proceedings of the 6th Spring/Summer Young Researchers’ Colloquium on Software Engineering, pp. 194–200 (2012)Google Scholar
  44. 44.
    DRAKON visual language, URL: http://en.wikipedia.org/wiki/DRAKON
  45. 45.
    Литвинов, Ю.В.: Реализация визуальных средств программирования роботов для изучения информатики в школах. Компьютерные инструменты в образовании. (1), 36–45 (2013) (in Russian)Google Scholar
  46. 46.
    Кузенкова, А.С.: Анализ пользовательского интерфейса QReal:Robots, курсовая работа, URL: http://se.math.spbu.ru/SE/YearlyProjects/2013/YearlyProjects/2013/445/445-Kuzenkova-report.pdf (in Russian)
  47. 47.
    Соковикова, Н.А.: Usability в проекте QReal:Robots // Список-2012. In: Материалы всероссийской научной конференции по проблемам информатики. 25–27 апр. 2012г, pp. 66–69. СПб.: Изд-во ВВМ, Санкт-Петербург (2012) (in Russian)Google Scholar
  48. 48.
    Брыксин, Т.А.: Платформа для создания специализированных визуальных сред разработки программного обеспечения: диссертация на соискание степени кандидата технических наук, Санкт-Петербургский государственный университет, Санкт-Петербург (2016) (in Russian)Google Scholar

Copyright information

© Springer International Publishing AG 2017

Authors and Affiliations

  • Andrey Terekhov
    • 1
  • Timofey Bryksin
    • 1
  • Yurii Litvinov
    • 1
  1. 1.Saint Petersburg State UniversitySankt-PeterburgRussia

Personalised recommendations