Development of enterprise software systems is facing a big challenge to reengineer the business for digital business  . Since business process is the heart of enterprise software systems, the challenge goes to reengineer the business process under the following common situations:
1) An enterprise needs to reexamine its entire business process and software systems, and to align the business model, business process and software systems. The underlying motivation lies in that the enterprise needs to create new business model and its operating environments at a lower cost within a shorter time.
2) An enterprise needs to tackle new problems arising in today’s rapid changing business environment, and to develop a solution which may affect the entire enterprise.
To meet such demands, a lot of methods have been proposed for modeling, visualization and monitoring business process under the umbrella of BPM (Business Process Management)   . Moreover, the importance of clarifying the business process in the requirements analysis of enterprise software development has been recognized.
Techniques and tools for business process modeling, such as ARIS  , have been proposed  . In addition, many ERP (Enterprise Resource Planning) products provide various business process models in the form of templates. However, such business process models are increasingly inconsistent with actual customer businesses. Moreover, business analysts and developers tend to adopt their own business process analysis and developing techniques, which hinders to reuse the business process in the enterprise software development  . It is important to unify business process models.
To enable the reuse of business process models, we developed a method of business process modeling by extending UML (Unified Modeling Language)  , which is widely used as a global standard notation. Our approach is similar to that of ISO/IEC OMG BPMN (Business Process Model and Notation) for representation   . However, it is reported problems arising in practical use of BPMN for BPM (Business Process Modeling)  . Therefore, we defined an extended meta-model to guide the business process modeling, and reuse method with a set of BPM templates and supporting IE (Integrated Environment), which are the major contributions of this work.
This paper proposes our business process modeling methodology and its supporting integrated environment, process template development techniques that enable business process reuse, and our artifacts from applying the methodology, integrated environment, and techniques. In Section 2, we briefly describe business process modeling meta-model and language. In Section 3, we provide the details of our business process modeling methodology and the integrated environment. In Section 4, we describe the reuse technique and support of integrated environment, and in Section 5 we discuss the evaluation with an application to an actual enterprise software development project. We discuss the contribution of this work with related work in Section 6 and Section 7. We conclude in Section 8.
2. Business Process Modeling
The goal of our business process modeling is to shorten the time needed to reengineer the customers’ business process and to develop the enterprise software supporting the business process. To make the reengineering agile, we focus on the visualization and reuse of the business process. If the business process is modelled as reusability in mind, we can reuse the process, and quickly reengineer the process, and shorten the development time of enterprise software.
To enable the reuse, we identified the following properties of reusable business process model.
1) Objectivity: The operational semantics should be clearly defined.
2) Consistency: The modeling technique should be unified.
3) Maintainability: Continuous control of maintenance should be easy.
4) Reusability: An output document can be reused as an input for business process analysis.
5) Descriptiveness of details: Enough details should be described at a reusable level.
The authors have developed a business process modeling methodology and integrated environment that meet these requirements.
2.2. Metamodel and BPML (Business Processes Modeling Language)
The metamodel includes indexes for the evaluation of business process modeling. The authors defined the following attributes as the generic evaluation criteria of a business process with meta-class name: Process.
1) Duration 1 and duration 2: the time required.
Figure 1. BPML metamodel (part).
Table 1. Correspondence between the BPML metamodel and UML 2.5.1 superstructure.
2) Cost: cost spent.
3) Condition: starting conditions.
On the notations of business process modeling language, it is needed to maintain a consistency with UML at a high level. The business process flow diagram explained later is an extension of UML activity diagram with additional icons. The business structure diagram, and business data diagram, and organization diagram are extensions of the UML class diagram with additional icons.
2.3. Elements of Business Process Model
Based on the BPML metamodel, we define the major elements of business process model for facilitating reuse. As explained below, a business process model consists of two layers of 1) global business structure and the detail structure of a business process layer consisting of 2) business process flow, 3) business data, 4) roles, and 5) BPM properties.
1) Global business structure
A global business structure is modeled with layered structure and relations between businesses processes within a layer. A “Business Structure Diagram” is based on the UML class diagram and package diagram. It is intended to describe the global business structure. Each business process module is expressed as a UML package in the diagram. The details of the business structure diagram is described by the following business processes flow, and business data.
2) Business processes and business process flows within a business module
A unit of work is generally called “Business Process”  . A business process is structured into an ordered flow of unit of works, hence flow of business processes. It is described by “Business Process Flow Diagram”. A business process flow diagram is based on UML activity diagram.
As illustrated in Figure 2, it represents a unit of business process model as a work flow of business processes. The business process is a unit of work done by not only a computing system, but also people. Therefore, each business process can be typed with three stereotypes of <
A condition can be associated to a branch of flow to control the flow into multiple parallel flows. Moreover, if the business process flow needs to be further refined, a process flow showing the details of one business process can be used. Figure 3 illustrates the refined business process flow of “Order Processing” business process shown in Figure 2.
3) Business data
Business data is the input and/or output of a business process, and is created and/or changed by the process. A “Business Data Diagram” represents a holistic view of data involving the business process. It is based on the UML class diagram with semantic extension of business. Business data are expressed as a “Class” with a set of types specific to business data. A unique icon is used to indicate the type of data as exemplified in Figure 3. If necessary, the means of
Figure 2. Example of business process flow.
Figure 3. Refined business process flow of “Order Processing” in Figure 2.
sending data are described; in Figure 3, an e-mail is used for sending “Order Check”.
4) Roles in an organization
Role is an organizational element which executes a business process. The “Organization Diagram” based on the UML class diagram is used to describe roles in organization. A role is expressed as a “Class” in this diagram.
5) BPM properties
To improve a business process through BPM, it is necessary to provide evaluation criteria. The evaluation criteria and associated statistics can be defined in a business process, business data, and an organization. For a business process, the time and cost required for completion, pre-conditions, for example, at the first day of every month, are defined.
3. Metamodel-Driven Business Process Modeling Methodology and Supporting Integrated Environment
3.1. Objectives of BPM Methodology
Based on the goals stated in Section 2.1, the authors set the concrete objectives to elaborate the metamodel-driven BPM methodology and BPM-IE (Business Process Modeling Integrated Environment).
1) BPML metamodel
Through the BPML metamodel, the meaning of each entity described in Section 2.2 is clarified. Therefore, the metamodel ensures the consistency between entities across different business process models, and makes it possible to reuse a business process model as data shared through the BPM-IE. The metamodel also helps maintainability of business process models by governing the change of models. Especially, the metamodel helps extension of business process models, like UML superstructure, for meeting the demands from customers. By verifying the extension of the models against metamodel, it is possible to ensure consistency, completeness and unambiguity of the extended models.
2) Metamodel-driven business process modeling methodology
The metamodel-driven business process modeling means that the entire process of business process modeling is governed by a metamodel through the BPM-IE explained below. The proposed methodology focuses on reuse of business process, the metamodel can ensure the consistency as mentioned above.
3) BPM-IE (Business Process Modeling Integrated Environment)
The BPM-IE supports the modeling of business processes under the governance of the metamodel. With metamodel, BPM-IE assures the consistency, completeness and unambiguity of the business process created. Therefore, BPM-IE is indispensable to create and reuse the business processes based on the business process modeling methodology.
3.2. Business Process Modeling Methodology
Figure 4 illustrates an outline of three-stage processes of the business process modeling methodology.
In “Preparation”, the business process modeling project is initiated, followed by determining the context of business process, including target organization, target business process and BPM properties to be clarified. After initiation, we can collect and define the vocabulary used in the organization, set evaluation criteria, and create agreement among stakeholders involving the business process modeling.
2) Business process modeling
“Business Process Modeling” is the central process of the methodology. It consists of two activities of “Analysis of Business Process Flow” and “Analysis of Business Data”. The two activities view two sides, flow and data, of the same business process model, and can be done in an iterative way.
Figure 4. Three steps of business process modeling methodology (outline).
In “Analysis of Business Process Flow” activity, model elements are elicited, and business process flows are analyzed along with the workflow. The business processes are classified with three execution stereotypes. Then, the business data are elicited as the input and/or output of each business process. Each business process, a set of properties is identified.
After eliciting business data, in “Analysis of Business Data” activity, the data are analyzed and defined the attributes. Finally, the format of the screen page and list, which are input and out of the business process flow are specified.
3) Confirmation and recognition
“Confirmation and Recognition” is a process of verification of business process models and creating of consensus of the model with the stakeholders involving the business process modeling.
The proposed methodology has the following notable features:
1) “Preparation” is important to set the goals and scope of the methodology. Major stakeholders, including customers, i.e. the people conducting the business on the business process, business analysts, and developers set the goals of business process modeling in advance. Based on the goals, the analysis and evaluation criteria can be customized.
2) At the end of “Preparation”, it is expected to create an agreement of the goal and scope of business process modeling. The agreement is important to prevent the scope creek and promote sharing and reuse the business press models. For example, our business process flow diagram includes a set of constraints, so that the scope and execution semantics can be more clearly defined than the UML activity diagram.
3) In “Confirmation and Recognition”, the BPM-IE enables to verify the consistency, completeness and unambiguity of the business process models, which is tedious and error prone work.
3.3. BPM-IE (Business Process Modeling Integrated Environment)
We developed the BPM-IE (Business Process Modeling Integrated Environment) as shown in Figure 5.
The center window shows a business process flow diagram for CRM (Customer Relationship Management). The upper left window shows the directory of the repository of the business process models. The root directory indicates the whole business. Under the directory, layers of business process models are stored in the repository. The lower left window shows the definition of business data for CRM. Another lower left window shows the BPM properties including the metrics and the target value of a business process performance.
The BPM-IE has the following functions.
1) Business process modeling
The BPM-IE supports to create and edit the business structure diagram, the business process flow diagram, the business data diagram, and the organization diagram in an integral way.
Figure 5. Screen view of BPM-IE (Business Process Modeling Integrated Environment).
2) BPM properties design
The BPM-IE supports to create and edit the detailed information on business processes and business data.
3) Verification of business process models
The BPM-IE supports to assure that the business process model is unambiguous and consistent. It means there is no mismatching in the diagrams of a business process model. Verification is done based on the constraints defined by the metamodel and the notations. For example, if no condition is given at a conditional branch in a business process flow diagram, the BPM-IE suggests the problems and possible resolutions.
4) Generating documents of multiple-viewpoints
Documents of multiple viewpoint and notations are generated to support the review and approval of the business process models. For example, a table format document listing the properties of a business process can be generated. In addition, users can customize the format of a document, and the selection of the BPM properties to be presented.
5) Model extension
The model extension function can be used in the “Preparation” process for extending the business process modeling capability by adding user specific BPM properties, or changing the default BPM properties to the meta-class unit of the metamodel.
6) Toole integration through BPM-IE APIs
The BPM-IE provides the functions though the APIs. Other tools/IEs can access the modeling artifacts through the APIs. For example, data from the business process flow are provided to the BPM monitoring tool for monitoring the execution of business processes  .
4. Business Process Reuse Method with BPM Templates
4.1. Principles of the Business Process Reuse Method
Based on the business process modeling methodology mentioned in the previous section, we propose the business process reuse method with BPM templates. By reusing the verified business process models, we can expect to improve the agility, productivity, and quality of the business process modeling.
With the methodology and BPM-IE described in Section 3, modeling artifacts can be stored into the repository in a unified form. With the BPM-IE, the business process models are assured to be complete, consistent and unambiguous.
However, we realized that such artifacts cannot be reused by simply eliminating the customer-specific changes, extensions and information. To facilitate the reuse, we introduced the following two principles based on the principles of separation of concerns  .
1) A unified granularity of a business process and data component must be defined.
2) Separation of commonality and variability: Reusable common information and customer-specific information must be separated  . The variation points are specified as hot spots.
Note that the principles are consistent with the basis of OMG RAS (Reusable Asset Specification)  .
4.2. Business Process Reuse Method with BPM Templates
To materialize the principles of business process reuse, we defined two levels of the hierarchical BPM (Business Process Model) templates. With the BPM templates, we propose a method of development and application of BPM templates. First, the method enables to describe a reusable business process flow.
We also defined the roles of business process modeling team members to develop reusable business process models for actual projects.
Table 2 outlines the three-level structure of reusable business process models.
4.3. BPM-IE Functions for Reuse
To support the reuse of business process model by separating the common
Table 2. Hierarchy of a reuse-oriented business process model.
business parts from individual customer parts, the BPM-IE provides the following tool functions.
1) Support to reuse the lower-level business process flows by substitution
The lower-level business process flows refine the business process templates defined as the higher-level business process flows. To reuse the business process flows, appropriate sub-activity graphs are substituted to the templates in order to fit the lower level business process flows to the customer’s business.
2) Management of model components through the RAS
We use the “Default Profile” of the RAS  to manage the business process model components, which is a set of divided business process flows that are the candidates of a sub-flow of a business process. The RAS specifies the structures of reusable assets and description formats in XML to provide meta-information on the assets.
In our business process model, a subflow object describes a business process instance that has a refined business process flow illustrated in Figure 6.
The refined flow is represented by a Business Flow object that is linked to the subflow object. Our BPM-IE stores the following management information, written in XML, which complies with the RAS:
a) Subflow instances that have, or will have, multiple candidates for the refined Business Flow object to be linked with the subflow instance.
b) Business process flow instances that can be linked to the subflow instances.
This management information can be expressed by XML “Artifact” elements and “Artifact-Dependency” elements of the RAS default profile.
For example, the XML descriptions shown in Figure 7 express the relationship between subflow objects and Business Flow objects in Figure 6. In Figure 6, the subflow object with Id = “F67” is linked with the Business Flow object with Id = “287” selected from the set of candidates Business Flow objects with Id = “287”, Id = “050”, and Id = “E90”.
3) Selecting model components using the RAS
A business process model template includes information on relationships
Figure 6. Object diagram of a business process model.
Figure 7. An XML description of the relationships between objects in Figure 6.
between the business process model components. After importing a model template, the BPM-IE
1) highlights the hot-spots, the points where a refined business process flow can be substituted with the customer specific information,
2) shows candidates for substitution when a tool user selects the hot-spots, and,
3) substitutes the refined business process flow if the user requires a use-specific business process by substitution.
5. Evaluation in an Actual Enterprise Software Development Project
5.1. Project Outline and Evaluation Methods
We applied our modeling methodology, BPM-IE, and business process reuse method using BPM templates to an actual enterprise software development project of our customers, and evaluated the effectiveness of the proposed method and BPM-IE.
The customer is a company in the distribution industry. The company has 11 target businesses categories for the process modeling. The project member for business process modeling consists of one project manager, two leaders, and nine members. Another employee is assigned to the “Preparation” process for developing the templates described in Section 4.
Through the “Preparation” process, the project defined a set of business process templates for five business categories as listed in Table 3. The templates in Level 1, 2, and 3 are defined for two categories of “Order” and “Shipment”. On the other hand, three categories of “Supply”, “Accept”, and “Stock” have only Level 1 and 2 templates. The number of templates and person-days required for the preparation are shown in Table 3. We confirmed that for every project the workload of preparing level 1 and 2 templates was light.
5.2. Quantitative Evaluation of the BPM-IE and Templates
We defined business process flows for the 11 business categories of the project. Table 4 shows the average development effort in person-day of the business process flow modeling. From the members of the project, we collected the data of the development effort in three use cases: 1) actual development effort; 2)
Table 3. Preparation results.
Table 4. Development time (days).
estimated effort by using the BPM-IE, but without the templates; 3) estimated effort without using the BPM-IE and templates.
Based on the data collected from modeling 11 business categories, we revealed the following effects.
1) Productivity improvement by BPM-IE: the effort of business process flow modeling was reduced by 24.4% with the use of BPM-IE.
2) Productivity improvement by the combination of BPM-IE and templates: the effort of business process flow modeling was reduced by 45.8% for levels 1 and 2, and 47.1% for levels 1, 2, and 3, by the use of both BPM-IE and templates.
We can conclude that the productivity improvement proves a practical effectiveness of reusable business process flow modeling. The combination of the BPM-IE and templates makes the improvement effect double: from 24.4% to 47.1%, therefore, it is strongly recommended to create and use the templates for reusing business process flow. The effect of using templates clearly suggests the effect of business process reuse.
5.3. Qualitative Evaluation of the BPM-IE and Templates
We also evaluated the effects of BPM-IE and templates by collecting opinions from the users in the practice.
1) The BPM-IE is useful for ensuring business process flows, which are written in a uniform way.
2) The BPM-IE is useful to uniformly represent the elements in business process flows.
In addition, most of the users mentioned to use the BPM-IE and the templates in their future projects.
Thus, we can conclude that the BPM-IE and template are practically useful and effective.
5.4. Evaluation of Business Process Reuse Method
To evaluate the business process reuse method, we analyzed the artifacts for “Order” and “Shipment” as shown in Figure 8. Both level 2 and level 3 templates were provided for the two business categories. We analyzed the details on the changes of the business process models for reusing the templates to the CRM software.
1) At level 2, all the business processes were reused as is. We observed addition of process (Process) and an object (Object Flow State). However, such
Figure 8. Quantitative evaluation of productivity improvement by the BPM-IE and templates.
extension of the business process model did not need to change to the reused component, which indicates a good extensibility of the proposed method.
2) At level 3, the reuse rate was 50% of the business process flows, which were agreed to reuse within the assumed scope of the templates. For refining the templates, many slight modifications were substituted. However, in the case of the agreement was not set, the reuse ratio fell to lower than 20%. The enterprise organization was divided into 39 units and business data were added by 339 entities. This analysis indicates the even level 3 templates are significantly reusable if the scope is defined and agreed. We also found that refinement of the business data had a beneficial effect after the business process definition.
As a conclusion, we are confident that the proposed business process reuse method is effective in the practical business process modeling.
6. Related Work
6.1. Business Process Modeling Techniques
There is a bunch of publications on the business process modeling and business process management.
In their book, Eriksson and Penker proposed a business modeling technique where they introduce “Process” semantic to the UML activity diagram  . The “Process” is a stereotype of “Action State”. They also describe a set of patterns of business process models. In RUP (Rational Unified Process), Eriksson-Penker’s modeling method is recommended as a substitute business modeling approach  . However, these approaches focus on only the technique of business process modeling, and missed the reuse of business process modeling artifacts.
ISO/IEC OMG BPMN   is a standardized and popular business process modeling language. Another notable representation includes EPCs (Event Driven Process Chains)  . Both of them have a sub-process that presents the components of a business process, but not include reusable business process model components.
Although ISO/IEC OMG BPMN is a well-accepted standard of business process modeling, there are various problems in the use of the notation in practice  . There are still many issues in the business process modeling using BPMN   .
6.2. Variability and Reuse of Business Process Models
For the reuse of business process models, as we discussed, it is necessary to structure the business processes in order to manage the commonality and variability of business process models like product line software engineering  . Marshall describes how an activity diagram can be divided and simplified  . However, he does not suggest a method for reusing activity diagram.
A decomposition-driven method is proposed for modeling business process family which consists of many variants of business process models  . The method suggests to trade-off the common parts and variants in a top-down decomposition, and claims to reduce up to 50% of the number of duplication processes from two case studies. Although the concept of this work is in the same direction of our work, the tangible frameworks such as templates of our work are not provided.
6.3. Business Process Modeling Tools
There are a certain number of both academic/open source and commercial tools for business process modeling. However, they are different in terms of functionality, models for development, and goals in the use  . For example, ARIS toolset provides business process modeling tools with EPCs and BPMN  . Other diagramming tools, such as Enterprise Architects  and Cacoo  , support UML and BPMN. Those tools do not support reusable process templates based on standard reusable business process components.
Rational Software Architect can import and export RAS assets   . However, it cannot support process template to reduce the efforts of process modeling.
7. Discussions and Contributions of This Research
We discuss the contributions of this research by comparison with related work.
1) Contributions of metamodel driven business process modeling methodology
The uniqueness of the proposed methodology lies in the metamodel and metamodel-driven modeling. Most popular notation of business process modeling is ISO/IEC OMG BPMN   . Although the BPMN is well-defined notation, some limitations and issues in practical use are pointed out  . Our research contributes to the issues in the following two techniques of metamodel-driven business modeling methodology.
a) A business metamodel for business process modeling: BPMN comes with a metamodel which is based on UML metamodel, and defines the entity and relationship of BPMN entities for notation. However, it lacks the concrete semantics of business process models. As shown in Figure 1, the authors defined the business metamodel, starting from “Business Flow”, which can support to define business process models in a more concrete way. Therefore, our approach is considered as an extension of BPMN.
b) A set of supportive techniques to make business process modeling work in practice: BPMN focuses on the BPD (Business Process Diagram), and does not support to define the business vocabulary and organizational structure. The proposed methodology supports to define the business vocabulary, properties of business process, and organizational structure, which is necessary to clearly define the business process models and the operational context. To make business process modeling work in practice, our research suggests that it is necessary to provide further supports besides a business process modeling notation.
2) Contributions of business process reuse method with BPM templates and BPM IE (Integrated Environment).
The proposed business process reuse method contributes to the reuse of business processes with the following two techniques.
a) A structural decomposition method of business process variability: It is common to model business process models in a top down manner   . However, as pointed out  , many business process models have some similarities. Therefore, like product-line software engineering, it is necessary to identify and separate the commonality and variability among the business process models   . This research proposed a three-layer hierarchical framework of business process models to separate the variability with a set of criteria, which is a foundation and guide for reusing business process models.
b) BPM (Business Process Model) templates: To support the reuse of business process models, the authors defined templates based on the three-layer hierarchical framework. Although some templates might be domain specific in the sense that specific domain needs specific templates, the templates work as concrete and tangible business process components for reuse. The empirical study proved that the proposed reuse method improved the productivity of business process modeling by 46%. A case study on decomposition-driven approach reported that up to 50% of the number of duplication processes were eliminated  . These statistics may suggest a baseline of the reuse in business process modeling.
c) BPM IE for business process reuse: business process modeling is a complex task. Therefore, tool support is indispensable. There are many tools for modeling business processes  . However, most of the modeling tools focus either drawing the models. Few tools support reuse. The BPM IE we developed supports to reuse business process models together with BPM templates and repository. The empirical study proves the productivity improvement by 46%. From the empirical study in the real enterprise software development, the authors confirm the effectiveness of the BPM IE.
To facilitate the reuse of business process models, we have developed a business process modeling methodology based on the metamodel, business process reuse method, reusable business process templates, and its supporting integrated environment BPM-IE. The methodology consists of three processes of “Preparation”, “Business Modeling” and “Confirmation and Recognition”. In addition, the BPM-IE together with business process templates supports the creation and reuse of the business process models.
We applied the proposed method and BPM-IE to the real business process modeling of an enterprise software for CRM. From the statistics collected in the application, we confirmed that proposed methodology and BPM-IE contributed to improve the productivity by more than 46%. We also found that the business process templates contributed to improve the productivity of business process modeling when appropriate scope is set and agreed. Therefore, this research work contributes to reuse of business process modeling.
Business analyst and systems engineer in Fujitsu already defined some 12,000 business process flows with this methodology and BPM IE to the business process modeling of internal enterprise control.
From the practice and empirical study, the authors confirm the effectiveness of the proposed methodology and BPM IE.
Our next goal will be to extend the proposed business process modeling methodology. We plan to develop a technique for integrating business process modeling methodology with requirements engineering for enterprise software development, especially, with the Web APIs.
Conflicts of Interest
The authors declare no conflicts of interest regarding the publication of this paper.