Skip to main content
Log in

FlexiSketch: a lightweight sketching and metamodeling approach for end-users

  • Regular Paper
  • Published:
Software & Systems Modeling Aims and scope Submit manuscript

Abstract

Engineers commonly use paper and whiteboards to sketch and discuss ideas in early phases of requirements elicitation and software modeling. These physical media foster creativity because they are quick to use and do not restrict in any way the form in which content can be drawn. If the sketched information needs to be reused later on, however, engineers have to spend extra effort for preserving the information in a form that can be processed by a software modeling tool. While saving information in a machine-readable way comes for free with formal software modeling tools, they typically anticipate the use of specific, predefined modeling languages and therefore hamper creativity. To combine the advantages of informal and formal tools, we have developed a flexible tool-supported modeling approach that augments a sketching environment with lightweight metamodeling capabilities. Users can create their own modeling languages by defining sketched constructs on demand and export model sketches as semiformal models. In this article, we first give an overview of FlexiSketch and then focus on an evaluation of our approach with two studies conducted with both novice modelers and experienced practitioners. Our goal was to find out how well modelers manage to use our lightweight metamodeling mechanisms, and how they build notations collaboratively. Results show that experienced modelers adopt our approach quickly, while novices have difficulties to distinguish between the model and metamodel levels and would benefit from additional guidance and user awareness features. The lessons learned from our studies can serve as advice for similar flexible modeling approaches.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Fig. 1
Fig. 2
Fig. 3
Fig. 4
Fig. 5
Fig. 6
Fig. 7
Fig. 8
Fig. 9
Fig. 10
Fig. 11

Similar content being viewed by others

Notes

  1. Since in our case the motivation for performing (“just enough”) metamodeling is to formalize sketches rather than defining high-quality modeling languages, it does not make sense to compare the quality of the created metamodels with those built by metamodeling experts at this stage. However, a future study about metamodel quality could help to improve the generated metamodels and thus enhance the reusability of FlexiSketch artifacts.

  2. Results of an earlier study have shown that node-and-edge diagrams are among the most frequently used diagram types in early requirements elicitation and design sessions [59].

  3. In the next tool version, the user will be able to see a list of all graphical representations for a type and to manage them. This will allow the user to delete a representation, to choose which representation should be used for the drag and drop mechanism, and to replace all symbols with a particular type on the sketch canvas with one of the representations in the list.

  4. A demo video of the FlexiSketch tool is available at http://youtu.be/0kHjNfHLViM.

  5. The handouts and survey for the student groups are available at https://files.ifi.uzh.ch/rerg/flexisketch/StudentHandouts.pdf.

  6. The members of PG1 picked a task from one of their companies and turned it into a more general problem to which all group members could relate to.

  7. Choosing a GUI enabled us to also evaluate the fitness of our tool for diagram types that consist of containment relationships rather than nodes and edges, while it still allowed us to observe how students collaboratively define a modeling notation.

  8. The full diagrams can be found in high resolution at https://files.ifi.uzh.ch/rerg/flexisketch/TeamResults.pdf.

  9. https://files.ifi.uzh.ch/rerg/flexisketch/Handouts.pdf.

  10. https://files.ifi.uzh.ch/rerg/flexisketch/Questionnaire.pdf.

  11. https://files.ifi.uzh.ch/rerg/flexisketch/GroundTruth.pdf.

  12. This could be changed in future tool versions by using placeholders for the relationship types.

  13. docs.google.com.

  14. https://www.yworks.com/products/yed.

References

  1. Alvarado, C., Davis, R.: SketchREAD: a multi-domain sketch recognition engine. In: 17th Annual ACM Symposium on User Interface Software and Technology (UIST 2004), pp. 23–32. ACM (2004)

  2. Branham, S., Golovchinsky, G., Carter, S., Biehl, J.T.: Let’s go from the whiteboard: supporting transitions in work through whiteboard capture and reuse. In: 28th International Conference on Human Factors in Computing Systems (CHI 2010), pp. 75–84. ACM (2010)

  3. Chen, Q., Grundy, J., Hosking, J.: SUMLOW: early design-stage sketching of UML diagrams on an e-whiteboard. Softw. Pract. Exp. 38(9), 961–994 (2008)

    Article  Google Scholar 

  4. Cherubini, M., Venolia, G., DeLine, R., Ko, A.J.: Let’s go to the whiteboard: how and why software developers use drawings. In: 25th International Conference on Human Factors in Computing Systems (CHI 2007), pp. 557–566. ACM (2007)

  5. Cho, H., Gray, J., Syriani, E.: Creating visual domain-specific modeling languages from end-user demonstration. In: 2012 ICSE Workshop on Modeling in Software Engineering (MISE), pp. 22–28 (2012)

  6. Cicchetti, A., Ruscio, D.D., Eramo, R., Pierantonio, A.: Automating co-evolution in model-driven engineering. In: 12th International IEEE Enterprise Distributed Object Computing Conference (EDOC 2008), pp. 222–231. IEEE Computer Society (2008)

  7. Correia, F.F., Aguiar, A.: Patterns of flexible modeling tools. In: 20th Conference on Pattern Languages of Programs (PLoP 2013). Article No. 9. The Hillside Group (2013)

  8. Coyette, A., Schimke, S., Vanderdonckt, J., Vielhauer, C.: Trainable sketch recognizer for graphical user interface design. In: Baranauskas, C., Palanque, P., Abascal, J., Barbosa, S.D.J. (eds.) Human-Computer Interaction—INTERACT 2007, LNCS, vol. 4662, pp. 124–135. Springer, Berlin (2007)

  9. Dekel, U., Herbsleb, J.D.: Notation and representation in collaborative object-oriented design: An observational study. SIGPLAN Not. 42(10), 261–280 (2007)

    Article  Google Scholar 

  10. Di Ruscio, D., Iovino, L., Pierantonio, A.: Managing the coupled evolution of metamodels and textual concrete syntax specifications. In: 39th EUROMICRO Conference on Software Engineering and Advanced Applications (SEAA 2013), pp. 114–121 (2013)

  11. Do, Q., Cook, S., Campbell, P., Scott, W., Robinson, K., Power, W., Tramoundanis, D.: Requirements for a metamodel to facilitate knowledge sharing between project stakeholders. Procedia Comput. Sci. 8, 285–292 (2012)

    Article  Google Scholar 

  12. Ellis, T.O., Heafner, J.F., Sibley, W.L.: The GRAIL project: an experiment in man-machine communications. Tech. Rep. RAND Memorandum RM-5999-ARPA, RAND Corporation (1969)

  13. Ferguson, I., Hunter, A., Hardy, C.J.: Metabuilder: the diagrammer’s diagrammer. In: Theory and Application of Diagrams. LNCS, vol. 1889, pp. 407–421. Springer (2000)

  14. Gabrysiak, G., Giese, H., Lüders, A., Seibel, A.: How can metamodels be used flexibly? In: ICSE Workshop on Flexible Modeling Tools. http://www.researchgate.net/publication/235675453_How_Can_Metamodels_Be_Used_Flexibly (2011). Accessed 7 Apr 2016

  15. Goel, V.: Sketches of Thought. The MIT Press, Cambridge (1995)

    Google Scholar 

  16. Golra, F.R., Beugnard, A., Dagnat, F., Guérin, S., Guychard, C.: Using free modeling as an agile method for developing domain specific modeling languages. In: 19th ACM/IEEE International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), pp. 24–34. ACM (2016)

  17. Gross, M.D., Do, E.Y.L.: Ambiguous intentions: a paper-like interface for creative design. In: 9th Annual ACM Symposium on User Interface Software and Technology (UIST 1996), pp. 183–192. ACM (1996)

  18. Grundy, J., Hosking, J.: Supporting generic sketching-based input of diagrams in a domain-specific visual language meta-tool. In: 29th International Conference on Software Engineering (ICSE 2007), pp. 282–291. IEEE Computer Society (2007)

  19. Gutwin, C., Greenberg, S.: Design for individuals, design for groups: tradeoffs between power and workspace awareness. In: 1998 ACM Conference on Computer Supported Cooperative Work (CSCW), pp. 207–216. ACM (1998)

  20. Gutwin, C., Greenberg, S.: The mechanics of collaboration: Developing low cost usability evaluation methods for shared workspaces. In: 9th IEEE International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises (WETICE 2000), pp. 98–103. IEEE (2000)

  21. Haller, M., Leitner, J., Seifried, T., Wallace, J.R., Scott, S.D., Richter, C., Brandl, P., Gokcezade, A., Hunter, S.: The NiCE Discussion Room: integrating paper and digital media to support co-located group meetings. In: 28th International Conference on Human Factors in Computing Systems (CHI 2010), pp. 609–618. ACM (2010)

  22. Hammond, T., Davis, R.: Tahuti: a geometrical sketch recognition system for UML class diagrams. In: ACM SIGGRAPH 2006 Courses, Article No. 25, ACM (2006)

  23. Hili, N.: A metamodeling framework for promoting flexibility and creativity over strict model conformance. In: 2nd Workshop on Flexible Model Driven Engineering Co-Located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), pp. 2–11. CEUR-WS.org (2016)

  24. Izquierdo, J.L.C., Cabot, J.: Collaboro: a collaborative (meta) modeling tool. Peer J. Comput. Sci. 2, e84 (2016)

    Article  Google Scholar 

  25. Javed, F., Mernik, M., Gray, J., Bryant, B.R.: Mars: a metamodel recovery system using grammar inference. Inf. Softw. Technol. 50(9–10), 948–968 (2008)

    Article  Google Scholar 

  26. Johansson, M., Arvola, M.: A case study of how user interface sketches, scenarios and computer prototypes structure stakeholder meetings. In: 21st British HCI Group Annual Conference on People and Computers: HCI... but not as we know it (BCS-HCI 2007), pp. 177–184. British Computer Society (2007)

  27. Johnson, G., Gross, M.D., Hong, J., Yi-Luen Do, E.: Computational support for sketching in design: a review. Found. Trends Hum.-Comput. Interact. 2(1), 1–93 (2009)

    Article  Google Scholar 

  28. Kelly, S., Lyytinen, K., Rossi, M.: MetaEdit+: A fully configurable multi-user and multi-tool CASE and CAME environment. In: Constantopoulos, P., Mylopoulos, J., Vassiliou, Y. (eds.) Advanced Information Systems Engineering, LNCS, vol. 1080, pp. 1–21. Springer, Berlin (1996)

  29. Kleffmann, M., Hesenius, M., Gruhn, V.: Connecting UI and business processes in a collaborative sketching environment. In: 7th ACM SIGCHI Symposium on Engineering Interactive Computing Systems (EICS 2015), pp. 200–205. ACM (2015)

  30. Kleppe, A.: Software Language Engineering: Creating Domain-Specific Languages Using Metamodels. Addison-Wesley Professional, Boston (2008)

    Google Scholar 

  31. Kuhrmann, M.: User assistance during domain-specific language design. In: ICSE Workshop on Flexible Modeling Tools. https://www4.in.tum.de/publ/papers/kuhrmann2011a.pdf (2011). Accessed 7 Apr 2016

  32. Landay, J.A., Myers, B.A.: Sketching interfaces: toward more human interface design. Computer 34(3), 56–64 (2001)

    Article  Google Scholar 

  33. Lee, J.S., Tatar, D., Harrison, S.: Micro-coordination: because we did not already learn everything we need to know about working with others in kindergarten. In: 2012 ACM Conference on Computer Supported Cooperative Work (CSCW), pp. 1135–1144. ACM (2012)

  34. Lee, L.C., Wei, W.J.: Comparison study on sketching behaviors with and without interactive pen displays. In: 11th International Conference on Computer Supported Cooperative Work in Design (CSCWD 2007), pp. 567–574. Springer, Berlin (2008)

  35. Loksa, D., Mangano, N., LaToza, T.D., van der Hoek, A.: Enabling a classroom design studio with a collaborative sketch design tool. In: 35th International Conference on Software Engineering (ICSE 2013), pp. 1073–1082. IEEE (2013)

  36. López-Fernández, J.J., Cuadrado, J.S., Guerra, E., Lara, J.: Example-driven meta-model development. Softw. Syst. Model. 14(4), 1323–1347 (2015)

    Article  Google Scholar 

  37. Van der Lugt, R.: Functions of sketching in design idea generation meetings. In: 4th Conference on Creativity & Cognition (C&C 2002), pp. 72–79. ACM (2002)

  38. Mangano, N., Baker, A., Dempsey, M., Navarro, E., van der Hoek, A.: Software design sketching with Calico. In: 2010 IEEE/ACM International Conference on Automated Software Engineering (ASE), pp. 23–32. ACM (2010)

  39. Mangano, N., LaToza, T.D., Petre, M., van der Hoek, A.: Supporting informal design with interactive whiteboards. In: 32nd International Conference on Human Factors in Computing Systems (CHI 2014), pp. 331–340. ACM (2014)

  40. Mernik, M., Hrncic, D., Bryant, B.R., Sprague, A.P., Gray, J., Liu, Q., Javed, F.: Grammar inference algorithms and applications in software engineering. In: 22th International Symposium on Information, Communication and Automation Technologies (ICAT 2009), pp. 1–7. IEEE (2009)

  41. Minas, M.: Generating meta-model-based freehand editors. In: 3rd International Workshop on Graph Based Tools (GraBaTs 2006), Satellite event of the 3rd International Conference on Graph Transformation, Electronic Communications of the EASST, vol. 1 (2006)

  42. Ossher, H., Bellamy, R., Simmonds, I., Amid, D., Anaby-Tavor, A., Callery, M., Desmond, M., de Vries, J., Fisher, A., Krasikov, S.: Flexible modeling tools for pre-requirements analysis: conceptual architecture and research challenges. In: 2010 ACM International Conference on Object-Oriented Programming Systems Languages and Applications (OOPSLA), pp. 848–864. ACM (2010)

  43. Ossher, H., John, B., Desmond, M., Bellamy, R.: Are flexible modeling tools applicable to software design discussions? IBM Tech. Rep. RC24949 (W1002-054) (2010)

  44. Plimmer, B., Apperley, M.: INTERACTING with sketched interface designs: an evaluation study. In: 2004 CHI Extended Abstracts on Human Factors in Computing Systems (CHI EA), pp. 1337–1340. ACM (2004)

  45. Plimmer, B., Freeman, I.: A toolkit approach to sketched diagram recognition. In: 21st British HCI Group Annual Conference on People and Computers (BCS-HCI 2007), pp. 205–213. British Computer Society (2007)

  46. Qattous, H., Gray, P., Welland, R.: An empirical study of specification by example in a software engineering tool. In: 2010 ACM-IEEE International Symposium on Empirical Software Engineering and Measurement (ESEM). Article No. 16. ACM (2010)

  47. Sánchez-Cuadrado, J., De Lara, J., Guerra, E.: Bottom-up meta-modelling: An interactive approach. In: 15th International Conference on Model-Driven Engineering Languages and Systems (MODELS 2012), pp. 3–19. Springer, Berlin (2012)

  48. Sangiorgi, U.B., Barbosa, S.D.: Sketch: Modeling using freehand drawing in eclipse graphical editors. In: ICSE Workshop on Flexible Modeling Tools. http://www.academia.edu/369660/SKETCH_Modeling_Using_Freehand_Drawing_In_Eclipse_Graphical_Editors (2010). Accessed 7 Apr 2016

  49. Sangiorgi, U.B., Beuvens, F., Vanderdonckt, J.: User interface design by collaborative sketching. In: 2012 ACM Conference on Designing Interactive Systems (DIS), pp. 378–387. ACM (2012)

  50. Scharf, A., Amma, T.: Dynamic injection of sketching features into GEF based diagram editors. In: 35th International Conference on Software Engineering (ICSE 2013), pp. 822–831. IEEE Press (2013)

  51. Shih, P.C., Nguyen, D.H., Hirano, S.H., Redmiles, D.F., Hayes, G.R.: GroupMind: Supporting idea generation through a collaborative mind-mapping tool. In: 2009 ACM International Conference on Supporting Group Work (GROUP), pp. 139–148. ACM (2009)

  52. Sottet, J., Biri, N.: JSMF: a javascript flexible modelling framework. In: 2nd Workshop on Flexible Model Driven Engineering co-located with ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems (MODELS 2016), pp. 42–51. CEUR-WS.org (2016)

  53. Sutherland, I.E.: Sketchpad: a man-machine graphical communication system. Ph.D. thesis, Massachusetts Institute of Technology, Department of Electrical Engineering (1963)

  54. Tang, J.C.: Findings from observational studies of collaborative work. Int. J. Man Mach. Stud. 34(2), 143–160 (1991)

    Article  MathSciNet  Google Scholar 

  55. Tversky, B.: What do sketches say about thinking? In: 2002 AAAI Spring Symposium on sketch understanding. AAAI Press (2002)

  56. Volz, B., Zeising, M., Jablonski, S.: The open meta modeling environment. In: ICSE Workshop on Flexible Modeling Tools. http://www.researchgate.net/publication/266871141_The_Open_Meta_Modeling_Environment (2011). Accessed 7 Apr 2016

  57. Wachsmuth, G.: Metamodel adaptation and model co-adaptation. In: 21th European Conference on Object-Oriented Programming (ECOOP 2007), LNCS, vol. 4609, pp. 600–624. Springer, Berlin (2007)

  58. Wouters, L.: Towards the notation-driven development of DSMLs. In: Moreira, A., Schätz, B., Gray, J., Vallecillo, A., Clarke, P. (eds.) Model-Driven Engineering Languages and Systems, LNCS, vol. 8107, pp. 522–537. Springer, Berlin (2013)

  59. Wüest, D., Seyff, N., Glinz, M.: FlexiSketch: a mobile sketching tool for software modeling. In: 4th International Conference on Mobile Computing, Applications and Services (MobiCASE 2012), pp. 225–244. Springer, Berlin (2013)

  60. Wüest, D., Seyff, N., Glinz, M.: Semi-automatic generation of metamodels from model sketches. In: 28th IEEE/ACM International Conference on Automated Software Engineering (ASE 2013), pp. 664–669. IEEE (2013)

  61. Wüest, D., Seyff, N., Glinz, M.: FLEXISKETCH TEAM: Collaborative sketching and notation creation on the fly. In: 37th International Conference on Software Engineering (ICSE 2015), pp. 685–688. IEEE Press (2015)

  62. Wüest, D., Seyff, N., Glinz, M.: Sketching and notation creation with FlexiSketch Team: Evaluating a new means for collaborative requirements elicitation. In: 23rd IEEE International Requirements Engineering Conference (RE 2015), pp. 186–195. IEEE (2015)

  63. Zolotas, A., Matragkas, N.D., Devlin, S., Kolovos, D.S., Paige, R.F.: Type inference in flexible model-driven engineering. In: Modelling Foundations and Applications - 11th European Conference, (ECMFA 2015), Held as Part of STAF 2015, pp. 75–91. Springer (2015)

Download references

Acknowledgements

We would like to thank the journal reviewers and André van der Hoek for their very valuable feedback and comments on earlier versions of this article.

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Dustin Wüest.

Additional information

Communicated by Mr. Juan de Lara.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Wüest, D., Seyff, N. & Glinz, M. FlexiSketch: a lightweight sketching and metamodeling approach for end-users. Softw Syst Model 18, 1513–1541 (2019). https://doi.org/10.1007/s10270-017-0623-8

Download citation

  • Received:

  • Revised:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10270-017-0623-8

Keywords

Navigation