Article Preview
TopIntroduction
Software engineering is rarely built completely from scratch. In order to fit new requirements and get a great extend, existing software documents are copied and adapted. Software reuse (Kirsch et al., 2012) is considered as the process of creating software systems from existing software rather than building them from scratch. However, software reuse is still an emerging discipline.
Indeed, considering the constant evolution of business requirements and the need for a flexible and adaptable information system (Tavana 2012; Feger 2011) to change business processes, the need of reusing functional and pre-tested business parts in the current information system emerge. This reuse can offer a solution to the business process flexibility and business agility for the information system.
We distinguish two methods related to the reuse engineering. Design for reuse and Design by reuse (Saidi et al., 2009). The Design for reuse summarizes the activities of production of reusable artifact. It concerns the problems of identification, representation and organization of the business process, while the Design by reuse represents the activities of the inclusion of previously designed business process in an application under development. It concerns the problems of finding, selecting, adapting and assembling the business process. In this paper, we are interested in the design for reuse.
Business processes are usually big and complex models (Chaâbane et al., 2011) which make them unreadable; they cannot be easily understood and maintainable and they cannot be reusable in totality. For this reason, we attempt to propose a method that enables the extraction of business fragments from business process models.
To do this, we need to build reusable business processes fragments from operational Business process. The goal is not to create those fragments from scratch. But the idea is to decompose the business processes, which has generally a big and a complex structure, into small business process fragments. Indeed, smaller business fragments are easier to understand, easier to maintain and faster to reuse. These fragments can be reused from another functional business process in order to adapt it according to the new business requirements.
Many approaches have been proposed to deal with this identification, but most of them have other motivations such as the service orientation, the reduction of complexity, the representation of variability, etc. They are rarely approaches that have dealt with the identification in order to get reusable units and none of these approaches have really given a detailed and structured method.
In this paper, we propose a method for the decomposition of business process into reusable business fragments. This method uses the variability of business process which is expressed in terms of variation points and variants (Santos et al., 2010) to delimit the extracted fragments. The method is also taking into account goal orientation according to a given algorithm. In fact, the proposed method allows the extraction of business fragments for the presentation of business process using BPMN (Omg, 2012). BPMN is widely used for business process definition. BPMN's models are simple; they can be easily understood without deep knowledge of this standard.