Abstract
Recently, a generic approach for syntax-based user assistance in diagram editors has been proposed that requires the syntax of the visual language to be defined by a graph grammar. The present paper describes how this approach can be applied to the language of business process models (BPMs), which is widely used nowadays. The resulting BPM editor provides the following assistance features: combination or completion of BPM fragments, generation of BPM examples, an extensive set of correctness-preserving editing operations for BPMs, and auto-link, i.e., the automatic connection of activities by sequence flow.
Furthermore, this paper contains a discussion of the scalability and scope of the used approach. This also comprises a characterization of the languages where it can be put to a good use.
Preview
Unable to display preview. Download preview PDF.
Similar content being viewed by others
References
Kelly, S., Tolvanen, J.P.: Domain-Specific Modeling: Enabling Full Code Generation. Wiley-IEEE Computer Society (2008)
Gronback, R.C.: Eclipse Modeling Project: A Domain-Specific Language (DSL) Toolkit. Addison-Wesley Longman, Amsterdam (2009)
de Lara, J., Vangheluwe, H., Alfonseca, M.: Meta-modelling and graph grammars for multi-paradigm modelling in AToM3. Softw. and Syst. Modeling, 193–209 (2004)
Zhu, N., Grundy, J., Hosking, J., Liu, N., Cao, S., Mehra, A.: Pounamu: A meta-tool for exploratory domain-specific visual language tool development. Systems and Software 80(8), 1390–1407 (2007)
Minas, M.: Concepts and realization of a diagram editor generator based on hypergraph transformation. Science of Computer Programming 44(2), 157–180 (2002)
Mazanek, S., Maier, S., Minas, M.: An algorithm for hypergraph completion according to hyperedge replacement grammars. In: Ehrig, H., Heckel, R., Rozenberg, G., Taentzer, G. (eds.) ICGT 2008. LNCS, vol. 5214, pp. 39–53. Springer, Heidelberg (2008)
Mazanek, S., Maier, S., Minas, M.: Auto-completion for diagram editors based on graph grammars. In: Proc. of the 2008 IEEE Symposium on Visual Languages and Human-Centric Computing, pp. 242–245. IEEE, Los Alamitos (2008)
Mazanek, S., Minas, M.: Generating correctness-preserving editing operations for diagram editors. In: Proc. of the 8th Int. Workshop on Graph Transformation and Visual Modeling Techniques. Electronic Communications of the EASST, vol. 18. European Association of Software Science and Technology (2009)
Mazanek, S., Minas, M.: Contraction of unconnected diagrams using least cost parsing. In: Proc. of the 8th Int. Workshop on Graph Transformation and Visual Modeling Techniques. Electronic Communications of the EASST, vol. 18. European Association of Software Science and Technology (2009)
Object Management Group: Business Process Modeling Notation, BPMN (2009), http://www.omg.org/docs/formal/09-01-03.pdf
Gruhn, V., Laue, R.: What business process modelers can learn from programmers. Science of Computer Programming 65(1), 4–13 (2007)
Gschwind, T., Koehler, J., Wong, J.: Applying patterns during business process modeling. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 4–19. Springer, Heidelberg (2008)
Drewes, F., Habel, A., Kreowski, H.J.: Hyperedge replacement graph grammars. In: Rozenberg, G. (ed.) Handbook of Graph Grammars and Computing by Graph Transformation. Foundations, vol. I, pp. 95–162. World Scientific, Singapore (1997)
Reps, T.W., Teitelbaum, T.: The Synthesizer Generator: A System for Constructing Language-Based Editors. Springer, Heidelberg (1989)
Horgan, J.R., Moore, D.J.: Techniques for improving language-based editors. SIGSOFT Softw. Eng. Notes 9(3), 7–14 (1984)
Nilsson-Nyman, E., Ekman, T., Hedin, G.: Practical scope recovery using bridge parsing. In: Gašević, D., Lāmmel, R., Van Wyk, E. (eds.) Proc. of the First Int. Conf. on Software Language Engineering. LNCS, vol. 5452, pp. 95–113. Springer, Heidelberg (2009)
Tolvanen, J.P.: How to support language users? (2008), http://www.metacase.com/blogs/jpt/blogView?entry=3405240161 (accessed July-09-2009)
Sen, S., Baudry, B., Vangheluwe, H.: Domain-specific model editors with model completion. In: Giese, H. (ed.) MODELS 2008. LNCS, vol. 5002, pp. 259–270. Springer, Heidelberg (2008)
Hessellund, A., Czarnecki, K., Wasowski, A.: Guided development with multiple domain-specific languages. In: Engels, G., Opdyke, B., Schmidt, D.C., Weil, F. (eds.) MODELS 2007. LNCS, vol. 4735, pp. 46–60. Springer, Heidelberg (2007)
White, J., Schmidt, D.C., Nechypurenko, A., Wuchner, E.: Model intelligence: an approach to modeling guidance. UPGRADE 9(2), 22–28 (2008)
Blanc, X., Mounier, I., Mougenot, A., Mens, T.: Detecting model inconsistency through operation-based model construction. In: Proc. of the 30th Int. Conference on Software Engineering, pp. 511–520. ACM, New York (2008)
Ehrig, K., Küster, J.M., Taentzer, G.: Generating instance models from meta models. Software and Systems Modeling (2008)
Hornung, T., Koschmider, A., Lausen, G.: Recommendation based process modeling support: Method and user experience. In: Li, Q., Spaccapietra, S., Yu, E., Olivé, A. (eds.) ER 2008. LNCS, vol. 5231, pp. 265–278. Springer, Heidelberg (2008)
Vanhatalo, J., Völzer, H., Koehler, J.: The refined process structure tree. In: Dumas, M., Reichert, M., Shan, M.-C. (eds.) BPM 2008. LNCS, vol. 5240, pp. 100–115. Springer, Heidelberg (2008)
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2009 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Mazanek, S., Minas, M. (2009). Business Process Models as a Showcase for Syntax-Based Assistance in Diagram Editors. In: Schürr, A., Selic, B. (eds) Model Driven Engineering Languages and Systems. MODELS 2009. Lecture Notes in Computer Science, vol 5795. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-04425-0_24
Download citation
DOI: https://doi.org/10.1007/978-3-642-04425-0_24
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-642-04424-3
Online ISBN: 978-3-642-04425-0
eBook Packages: Computer ScienceComputer Science (R0)