Towards a Workflow-Driven Multi-model BIM Collaboration Platform

. Building Information Modelling (BIM) based way of work leads to increased data complexity in early phases of construction project and to higher effort in managing collaboration. In this context, techniques and methodologies have to be developed to support the participants in collaboration process. One technique is the integration of a workflow management system in a collaboration platform handling the data in an automatic way. This can be done if two approaches, the data exchange of an Industrial Foundation Classes (IFC) data model and a multi-model containing several data models also addressing non-IFC information, for collaboration in building industry are combined to form a multi-model BIM collaboration platform. The collaboration platform can be used to integrate and check relevant data models, which will be utilized by a workflow engine in a second step. This allows a very flexible and partly automated data and work management and facilitates the work of participants.


Introduction
The BIM based way of work wants to achieve a shift of effort from documentation and construction phase to concept and design phase. This has the advantage that in the construction phase can more effectively be responded on problems, which often happens due to the uniqueness of the production place of a building. This is described in [1,2] and expressed as MacLeamy-curve [3]. Because of the digital way of work and the associated new possibilities to support design decisions and planning decisions by simulation and calculation, the effort increases in sense of data management as well as the management of participants and their software tools in collaboration process. When working with BIM the actors in a collaboration process are already confronted in the early phase with raising complexity of data. Furthermore, quality requirements concerning the work results have to be fulfilled so that the next collaborator is able to work with it. The data can be managed in a local or distributed folder structure as handled in many companies or they can be stored on a file server or model server. Each participant uses several software tools that can differ from other participant's tools. With regard to a computer aided way of work in a collaborative process, the respective software solutions should not be restricted but should support the way of work of the collaborators. In this context, the BIM-Manager is a new role within construction industry [4]. The upcoming of this new role confirms the raised effort regarding data management and associated problems during BIM based way of work. It is essential to develop techniques and software for automated data handling so that the new role will be supported in an efficient way.
Considering the changed way of work in concept and design phase, we look on already existing collaboration approaches to support the work of a BIM manager by proposing a more automatic way of interaction and data validation. The IFC based collaboration is based on following concepts: IFC, Information Delivery Manual (IDM), Exchange Requirement (ER), Model View Definition (MVD) and Open BIM Collaboration Format (BCF). IFC is an open data standard defined by buildingSMART and registered as ISO 16739 [5]. It represents the geometry of a building and its elements which compose it, a logical building structure and properties as well as quantities of building elements. It serves the exchange of digital building models and is widely used in open BIM environment to support high degree of interoperability. The Information Delivery Manuals is a standardized methodology to identify and to specify information flow during lifecycle of a facility. It has been developed by buildingSMART and is registered as ISO 29481-1:2010 and ISO 29481-2:2010. The methodology is used to describe information that has to be exchanged between parties working along a collaborative process [6]. Basis of the IDM methodology is a Process Map [7]. A Process Map documents the flow of activities of particular business use case and their required, consumed and produced information as well the actors involved [6]. The Process Map acts as fundament to identify each data exchange of a common information model between activities. They are documented as Exchange Requirements specifying a set of information. An ER describes the information in non-technical terms [6] normally in tabular or spread sheet applications [7]. The elaborated ERs are handed over to software implementation group specifying out of ERs a more technical, model/data-specific description of exchanged information documented as Model View Definition (MVD) [8]. A MVD defines a subset of the IFC schema that is needed to satisfy one or many ERs and is published by the software tool ifcDoc that was developed by BuildingSMART [5]. The Open BIM Collaboration Format enables a model-based communication between different users based on the standardized data model IFC. It has been adopted by BuildingSMART as standard. BCF can be used to exchange information between different software products [5]. While IDM describes and specifies the data flow within a collaboration process, BCF provides a technical solution for communication of the actors within collaboration process. BCF provides the opportunity to exchange issues, proposals or change requests on a particular topic. With BCF it is possible not only to address a specific IFC data model, but also to specify the location of the topic in form of snapshots or camera perspectives. It is possible to set up an own BCF server based on a RESTful API developed by the Institute of Applied Building Informatics (IABI) [9].
In contrast to described data-centric and very monolithic way of work, where collaborators work together on and exchange information about one single IFC data model, the multi-model approach assumes that one single data model (also called elementary model) is not sufficient during collaboration. The information space spreads over several data models during construction project, especially after design phase where other data models are added to the initially IFC data model like time models in the planning phase. The individual elementary data models are composited to one multi-model (MM) and also exchanged in that way between collaborators. In addition, the multi-model approach pursues the idea to link the elements of the different data models to raise the information space of a multi-model [10]. The linkage of elements is described in a separate link model (LM). The common holistic approach in [11] can be used in all project phases, e.g. in the design phase for energy efficient simulations [12]. Regarding the technical implementation of multi-model approach and its use, the multi-model container (MMC) was developed to transfer multi-models between participants within a collaboration process [10]. On the other hand a higher semantic way of the multi-model approach based on ontologies is established. It does not mainly focus on the exchange of multi-models but it focuses on the centralized management of the distributed data models and the development of methods based the linkage of information. By means of ontology, rules can be defined for automatic validation of data quality [13] and automatic linkage of data models.

Multi-model BIM Collaboration Platform based on IDM/MVD and BCF
Facing the changed way of work in concept and design phase of a construction project, there is a need to integrate the multi-model approach into conventional BIM collaboration platform based on the two standards, IDM/MVD and BCF. These established methodologies and techniques have to be advanced so they can also be used as basis of a distributed multi-model BIM collaboration platform. The potential of MVDs is not fully exploited in the validation and filtering of data in today's perspective. Today, mvdXML is mainly used for certification of software products primarily exporting IFC. A certification server is used to validate the exported data against mvdXML. The software tool ifcDoc has also a feature for data validation but there is no more implementation for data validation using mvdXML on the market. MVDs can also be used to filter IFC data [5] or to provide a partial model which can be an important feature in a collaboration platform regarding information security and data traffic. The word BimSnippet defined within BCF suggests that it should be also possible to address partial models. This snippet concept is supposed to prevent downloading and uploading of entire bulk of data model. Therefore, we see a potential to address predefined MVD integrated in the data management system.
The IDM methodology and the resulting ERs are independent from used data schemas because of their only documentary nature. BuildingSMART recommends using BPMN in an IDM specific way [5]. The Process Map is modeled as Pool including the actors as Swim Lanes. The Swim Lanes contain the activities assigned to the actors connected by the flow (see Fig. 1). The information model is also modeled as Swim Lane, the ER as document from or to the information model connected to the exchange point modeled as message event. This notation can be extended to cover the multi-model approach by splitting one common information model into elementary models and link models. An ER can be modeled by aggregating model-specific ER (see Fig. 1). Fig. 1 shows that the IDM/MVD methodology produces a lot of documents that can be used as basis of a contractual collaboration but not as structured data for software interoperability. However focusing on technical interoperability, IDM/MVD only provides the computer-readable XML based format mvdXML that have to be laboriously created by entering the MVDs in ifcDoc tool and only works for IFC data schema. As far MVDs are used as document, there should be no problem to use this document structure to describe also the exchanged data of non-IFC data schemas. Regarding the technical utilization of MVD, like mvdXML for IFC data schema, we have to figure out what kind of other description languages of non-IFC data schemas exist and how they can be integrated. Furthermore, we have to elaborate methods how the model specific model views work together aggregating to one multi-model view definition (MMVD).

Fig. 1. Output of IDM/MVD based on Process Map a) conventional single model (IFC) b) multi-model approach c) process-centric multi-model approach
Regarding the usage of BCF in a multi-model based data management a BimSnippet addresses one specific data model mostly IFC. To use BCF for multimodels the fixed cardinality should be increased so that BCF itself can be used as container for all relevant models of multi-model. But this change can affect software products already using BCF. A MMC encapsulates the necessary data models and link models using XML based description and the concept to provide data models as raw format or to address data models via Uniform Resource Identifier (URI). Instead addressing all necessary data models of a multi-model, MMC makes it possible to use only one address. Hence, it fits perfectly to the BimSnippet of BCF and it would just impact the syntactical way and not the semantic way. Extending the standards BCF and IDM/MVD to support the multi-model approach as described in the sections before, a more dynamic architecture of a collaboration platform can be developed.

Workflow-driven Multi-model BIM Collaboration Platform
The elaborated process of IDM/MVD methodology with its activities and their flows, even modeled in the standardized format BPMN, as well as the link information of an activity to its consumed and produced data and its assigned actor or executing service is only used as process documentation until now. This information is available and can be easily integrated in multi-model content management system by storing the process model and user model in a content management system using an ontology to link the activities to data models and actors (see Fig. 2). This process-centric data management can be used as basis of a process-driven collaboration platform by integrating a workflow management system (WMS) handling primarily the data flow. Considering the raising amount and complexity of data during early phases of a construction project, software solutions are needed to support the collaborators as well as the decision-maker and BIM manager in handling with data during collaboration process in the sense of an automatic data validation, data linkage, data filtering and data transfer/transport Thereby the requirement models introduced in [14] can have a major role. The requirement model specifies the requirements on a specific task e.g. the design of a building that an architect has to create or the resulting values of simulation that an engineer has to deliver and how they can be verified to guarantee data quality. These task requirements are also assigned to a task and could also be integrated in the ontology based content management and be linked with tasks (see Fig. 2).

Fig. 3 Excerpt of UML sequence diagram of workflow execution
The Workflow Management Coalition developed a Workflow Reference Model that describes the components and interfaces of a common WMS [15]. The core component is the workflow engine that provides the runtime environment for a workflow instance. During execution of a workflow instance the engine consumes and produces different data that is provided by the Workflow Enactment System. In Fig. 2 is illustrated that these data can be also provided by the described multi-model content. Fig. 3 shows the UML sequence diagram of a common use case describing two interacting participants. The participants are using a collaboration client including the functionality of a multi-model client and a workflow engine. The workflow execution begins by editing the first or more than one task. After completing his task, the workflow participant releases his work results for the next participants in the workflow. A release leads to automatic validation of the results. When the validation fails the work results cannot be released. The work results are encapsulated and delivered to the next participants in the workflow who is known because of the underlying process model and the linkage of the activities to participants. The successor receives the BCF and begins his task. Based on the validation, there should be no complications in terms of data quality, but still the receiver should also be given the opportunity to reject the received work results. In case of a rejection, a BCF is sent with the appropriate comment and possibly even the same data back to the sender of the BCF. This can then go back and forth, in which case BCF is more used as a comment. We have identified a set of topics used to execute the workflow in an automatic way: "Task released" and "Task rejected" during execution and "New Task" and "New Task rejected" during set up. After receiving a new task in the set-up phase, it can be accepted or rejected by the workflow participant. In case of rejecting, the decision maker is notified and changes the entire workflow and distributes it again to all participants or a single activity is changed and distributed to one specific participant. In case of accepting the tasks, no further notification to decision-maker is necessary. If all tasks are accepted the workflow can be executed.
Based on the process, task and user information within the multi-model, the workflow engine takes over the function (1) to identify the next actor in the workflow, (2) to load the content of the activity based on previous finished tasks and (3) to identify all actors in a process they have to be informed during setting-up the workflow. In addition, the workflow engine is in charge (4) to manage the state of the activities and also the state of the process. The collaboration client has the functionality to fire the described BCF topics and to validate/check the quality of work results before they are released. Supporting the multi-model way of work, the collaboration client must be able to assemble multi-models by different elementary models and to link them. Especially the linkage of necessary information and tasks done by decision-maker is important.

Summary and Conclusion
This paper presented an approach for the integration of a workflow engine into a multi-model BIM collaboration platform. In a simple use case we showed how the workflow engine could be integrated to increase the degree of automation. In addition, the requirements on necessary software components were listed. It was also shown how a multi-model BIM collaboration platform based on ontologies and BCF can be formed, which made it possible to integrate workflow-specific data models. It was explained that MVDs are crucial factors in an automatic driven collaboration process. But their usage for validation and filtering of data is not fully evolved. It has been shown how the work-flow specific data can be obtained from the multi-model IDM/MVD methodology, not only data relevant information but also process model and user model as well as their linkage information.
In next steps the sketched workflow-driven BIM collaboration platform will be implemented successively focusing on the workflow engine. First, a collaboration client will be developed including the functionalities of a workflow engine. Hence, the elaborated execution of a workflow can be proofed and be advanced. In a second step, the developed functionalities of a workflow engine are deployed as services in combination with BCF server.