A linear time layout algorithm for business process models $ Thomas Gschwind a,n , Jakob Pinggera b , Stefan Zugal b , Hajo A. Reijers c,d , Barbara Weber b a IBM Research, Zurich, Switzerland b University of Innsbruck, Austria c Eindhoven University of Technology, The Netherlands d Perceptive Software, The Netherlands article info Article history: Received 6 September 2012 Received in revised form 5 June 2013 Accepted 14 November 2013 Available online 22 November 2013 Keywords: Layout Graph Workflow Workflow languages Business process model abstract The layout of a business process model influences how easily it can be understood. Existing layout features in process modeling tools often rely on graph representations, but do not take the specific properties of business process models into account. In this paper, we propose an algorithm that is based on a set of constraints which are specifically identified toward establishing a readable layout of a process model. Our algorithm exploits the structure of the process model and allows the computation of the final layout in linear time. We explain the algorithm, show its detailed run-time complexity, compare it to existing algorithms, and demonstrate in an empirical evaluation the acceptance of the layout generated by the algorithm. The data suggests that the proposed algorithm is well perceived by moderately experienced process modelers, both in terms of its usefulness as well as its ease of use. & 2013 Elsevier Ltd. All rights reserved. 1. Introduction Business process models serve a wide variety of pur- poses where a distinction can be made between models that are to be read by humans versus those to be read by machines [6]. In the latter case, one may think of workflow specifications, as enacted by process-aware information systems, or simulation models, which are used to estimate a certain measure's effect. Our concern in this paper, however, is with the former category, i.e., those models that are studied by humans to make sense of how organizational operations are related to one another. It is crucial that such models are understandable to end users from a variety of backgrounds [6]. The graphical layout of a process model has been named as affecting the ease with which a human reader can access the information in such a model [26,29]. When one is concerned with simplifying the task of reading a process model, layout seems a highly attractive angle. After all, in many situations, the graphical positioning of model elements is at the discretion of the modeler, who is creating the model, or even the user, who wants to read the model. Also, layout, as part of what is known as a model's secondary notation [22], does not affect the formal meaning of the model. In this way, focusing on a model's layout allows for a separation of concerns with respect to other quality aspects (e.g., a model's semantic quality). A considerable body of knowledge exists on how to layout graphical models in order to improve their readability [24,25]. What is currently missing is a clear understanding of how the specific characteristics of business process models can be taken into account when applying these insights. This hampers the transfer of such knowledge to its practical application. In that respect, it is telling that despite a huge availability of advanced process modeling tools (e.g., IBM Blueworks, Oryx, BPMOne), none of these provide automated layout features beyond elementary alignment operations. Contents lists available at ScienceDirect journal homepage: www.elsevier.com/locate/jvlc Journal of Visual Languages and Computing 1045-926X/$ - see front matter & 2013 Elsevier Ltd. All rights reserved. http://dx.doi.org/10.1016/j.jvlc.2013.11.002 This paper has been recommended for acceptance by S.-K. Chang. n Corresponding author. Tel.: þ41 44 724 8990; fax: +41 44 724 8953. E-mail address: thg@zurich.ibm.com (T. Gschwind). Journal of Visual Languages and Computing 25 (2014) 117132