Assembling software by using predefined reusable parts, so-called components, is a goal that is already followed up for some time. Especially in the area of business applications, e. g. production planning or order management, this approach combines the advantages of individually programmed software with those of standardized off-the-shelf software. Components of different vendors may be plugged together to achieve an individual solution for a company, which may lead to competitive advantages. Today, techniques are already available that support building (business) application systems by combining components, e. g. different kinds of (mediating) wrappers, object request broker architectures, or interface definition languages. A component as a reusable, independent, self-contained software unit is not tied to a specific application system. Components execute functions through publicly offered services and have the following features:
A business component is then defined as a marketable component, whichhas a well-defined interface and can be employed together with other business components in combinations unforeseeable at the time of development; it can be adapted to company-specific requirements and can also implement a specific set of tasks in a business application domain. The concept of business component is thereby distinguished from the more general concept of component primarily through the explicit reference to the business application domain.
Despite the advances in this field, which mostly touch a more technical area, there are still open questions particularly concerning the semantic or content-related level of collaboration of components. Through collaboration on the content-related level it is ensured that common business concepts, e. g. order, customer, or account, and descriptions of business tasks as load balancing or stock keeping are understood in the same manner by any component of an application system. Especially, when talking about inter-organization business processes it is crucial to agree on the mentioned terms. Different standards (e.g. UN) and ongoing standardization efforts (e.g. OMG) try to solve this problem. One of the most important standards for inter-organizational data exchange was established by the United Nations the UN/EDIFACT (Electronic Data Interchange for Administration, Commerce and Transport). But, the standard did not get the expected recognition because of several drawbacks (e.g. high cost of implementation). With the upcoming success of the internet, and especially XML as a way to enrich data with semantics, a standard like UN/EDIFACT can gain new recognition. XML/EDI can not only be used to transfer business data from one component to another, it can also serve as a media for negotiation on technical details. When exchanging data between businesses it is important to transfer the data over secure channels. Several methods are nowadays available to encrypt data before transfer. But, suppose that companies (components) have to cooperate which do not know what protocols are understood by each other. Here, a service advertising protocol (SAP) can be used to negotiate on one protocol. The service advertising protocol is carried out in XML using SSL for secure transmission. The transferred XML document contains information about the protocols, the sending component understands and the preferred encryption method. The receiving component then decides over which protocol the crucial, and therefore encrypted business data, are transferred (e.g. RMI using RSA).
Another open problem is the extent and foundation of business components. Whereas present standardization efforts focus on standardizing fine-grained business components (e.g. OMG), we also suggest a standardization of coarse business components for several reasons. In particular, for small providers that offer industry-specific business components and for their customers, it is important that medium-sized business components may be offered. However, large providers can profit by marketing large business components, since their core competence usually consists in being able to cover a broad domain of application. To decide, how small or large a business component (proposed for standardization) must be, conceptual business models can be used. There exist well-understood business models for different business domains (e.g. ARIS), which can help in defining the extent of specific business components. Event process chains (EPC) can be used to identify coarse business components, whereas the resulting components have to be examined carefully for possible (semantic) conflicts as well as fine-grained business components that may be re-used in a different domain.
Combining the extraction of business components from conceptual business models with the Internet technology, in particular the use of XML/EDI gives a straightforward way to use business components into action for inter-organizational business processes.
In this work the extraction as well as the deployment of business components is done for the complex and until now not very well understood domain of inter-organizational recycling processes. Because of the difficulty to deal with data concerning waste the use of encryption methods is one of many crucial success factors (others are, e.g., trust or data precision).
(Comment: the full paper discusses in detail the extraction of business components from event process chain (EPC) models as well as an example for the service advertisement protocol)