petri net based components for evolvable architectures - CiteSeerX

9 downloads 0 Views 83KB Size Report
al., 2001), combines the advantages of both, because components are regarded as containers for software, business objects as well as process descriptions.
2002 Society for Design and Process Science Printed in the United States of America

PETRI NET BASED COMPONENTS FOR EVOLVABLE ARCHITECTURES

¨ ul* ¨ Julia Padberg* and Herbert Weber* and Asuman Sunb *Technical University Berlin Institute for Software Engineering and Theoretical Computer Science Germany padberg,hweber,asu @cs.tu-berlin.de



Evolvable architectures are an important design principle in order to cope with the continuously changing requirements for information systems. These changes are induced by changes of the market, changes of the society, and changes of the technology. We propose a design strategy for evolvable architectures, called E VA1 . This approach is component-based and process-centered. We suggest also to consider business process as composed of components. The main focus of this paper are components of business processes in terms of net components and their composition in this approach. We use net components that are based on Petri nets. The nets are restricted F UN S OFT nets. These nets, called FE VA net are used to model business processes as well as their consistent composition. Keywords: evolvable architectures, F UN S OFT nets, temporal logic, components, business processes

1. Introduction To maintain competitiveness enterprises have to be able to adapt their business processes to the changing requirements in a smooth and flexible way. The demand for suitable concepts has recently led to the new research area, continuous engineering (Weber, 1999). Evolvable architectures are needed to adapt to the changing environments. For the design of evolvable architectures we propose the combination of two successful strategies: component-based and process-centered design. E VA, short for E VOLVABLE A RCHI TECTURE FOR C OMMUNICATION AND I NFORMATION I NFRASTRUCTURES (Datta et al., 1999; Weber et al., 2001), combines the advantages of both, because components are regarded as containers for software, business objects as well as process descriptions. Petri nets have been chosen as the modeling technique for the process description since they provide an intuitive semantics as well as sufficient modeling power. 1

This paper gives the formal foundation for E VA, especially for the business process components. In contrast (Weber et al., 2001) focuses on the conceptual foundation of E VA.

Transactions of the SDPS

JUNE 2002, Vol. 6, No. 1, pp. 1-10

Therefore, we distinguish code components, business objects components, and business process components. In order to ensure correct and consistent composition of components their import and export are subject to compatibility conditions based on the verification of temporal logic formulas in Petri nets. Hence, in the E VA approach compositionality of components is provided independently of the internal structure of the component. E VA therefore supports a ”black box” metaphor on components. Moreover, this metaphor is transferred to processes since process descriptions are encapsulated as business process components. Hence, our approach improves adaptivity and flexibility of workflow based applications, because changes of the system – and even of the workflow itself – reduce to changes or replacements of components. Consistency and correctness of the system is assured due to the compatibility conditions of import and export. This paper is organized as follows: Next we introduce the E VA approach and discuss the different kinds of components (see also (Weber et al., 2001)). In Section 4. we explain the basic ideas of composition and give an example from our case study. The conclusion (Section 5.) summarizes our approach and discusses further topics.

2. The Components of E VA One of the main ideas of E VA is to introduce business processes as components. In usual work flow management systems (WMS) we have the business process on top of the software and communication infrastructure. In E VA we introduce a concept, where the business process are considered to be on the same conceptual level as other components. In E VA we propose components with the following properties:

 

The black box principle is well accepted and is supposed to be more adequate for component based approaches since it allows a loose connection and less dependencies between system parts (e.g. (Griffel, 1998)). A component is provided with interfaces and a body. The body is encapsulated and cannot be accessed.



Services are provided by components. Their signatures may be used in the interfaces, their implementation or model is encapsulated in the body of the component.



Interfaces provide the necessary information for the composition and the use of components. The interfaces we propose in the E VA approach are import and export. The import states the used services and the export states the services provided by a component. In order to stress the process aspects interfaces may be additionally provided with process information. The export interface is extended by constraints fixing the causal dependencies of services. The import interface may contain an abstraction of the progression, either sequential or parallel, of the imported services. Composition of components is based on matching signatures in the export and import. Moreover, the causal dependency constraints given in the export have to be satisfied by the import net. The composition of components is obtained by putting together components with matching interfaces. Hence, components are connected according to their use of services. The resulting composition hierarchy has to be acyclic.

E VA components comprises three types of components: business process components, business object components and code components. These three kinds of components provide nevertheless the same interfaces. The import interfaces contains on the one hand the signatures of the services used by this component and optionally an abstraction of the processes using the those services. The export interface provides the signatures of the services provided by the component together with constraints concerning the use of those services. Journal of Integrated Design and Process Science

JUNE 2002, Vol. 6, No. 1, 2



Business process components describe a subprocess of the overall business process using Petri nets. Petri nets have been chosen since they have a graphical representation and an intuitive semantics. Moreover, they are especially adequate for the modeling of workflows (van der Aalst, 1996; van der Aalst, 1998). The body contains a FE VA nets and a Petri net interpreter. The import contains the same net and the signatures of the imported services. For the imported services we have the following consistency condition: the imported services have to be annotated to some transition, so that the input parameters of the service corresponds to the types of the places in the pre-domain. Analogously, the output parameters have to correspond to the types of the places in the post-domain. Depending on the output behavior of the service the corresponding transition has to have the same firing modus.



The export provides the signatures of the provided services and constraints that state the causal dependencies between the provided services. Moreover, the export signatures and the corresponding net have to be related. The input parameters of the services correspond one-to-one to the types of the input places. The same holds for the output parameters and places.



3.

Code components contain code, that may offer general services. The export gives the corresponding signatures and may provide causal dependencies.For more details see (Weber et al., 2001). Business object components are special code components that contain business objects. Business objects can be identified with a real-world entity. A business object has a certain role in the business process and hence stays coherent during that process. It describes a data structure and and can be assigned values and types.A business object can be considered as an object in the object oriented paradigm. Business process components constitute the static part of the business process. Moreover, business objects are assigned to variables in the FE VA nets of some business process component. For more details see (Weber et al., 2001).

FE VA Nets

In this section we introduce a simple variant of F UN S OFT nets (see (Gruhn, 1991; Deiters and Gruhn, 1998)). This variant is quite simple but has nevertheless all the features to make the E VA concept work. Moreover, these nets can be transformed to place/transition nets (Reisig, 1985). Hence, they can be easily checked for the validity of temporal formulas. where we have: A FE VA net is given by 1. is a set of places, with . Moreover, we distinguish input IP and output OP places. 2. is a set of transitions. 3. is the set of arcs. There are no multiple arcs allowed. for all , analogously for . Input places are those without preset, output places those without post-set. where is a fixed set of object signatures. 4.

 

      ! "$#&%(') *%),+.-/ 021.345  67 89;: ?O 5A@BC =DEO 5 67F HGIJK L5NM   P 8Q R:

Suggest Documents