Service-Oriented Development of Federated ERP Systems
Service-Oriented Development of Federated ERP Systems
Systems
Abstract. The paper presents a new architecture approach for the distribution of
the application logic in ERP systems. The approach proposes the provision of
software components which implement specific functionality as Web Services.
The paper shows how these Web Services can be developed and provided by
independent software vendors. The model advances the reusability of data types
and reduces the necessity of data transformation functions in business process
descriptions. Furthermore a first prototype implementation (FERPxONE) is
presented and an example process for the generation of a simple diagram for the
comparison of customers is given.
1 Introduction
Because business processes do not stop at artificial borders which had been set by the
structure of the functional organization of enterprises the integration of cross-
department business processes has been becoming a more and more frequently
discussed topic. Since now the IT support of enterprises still faces problems which
result from the missing interoperability of available software systems or the non-
availability of software functionality which matches individual requirements of single
enterprise departments.
One of the main reasons which increased the demand of ERP system technology in
the last two decades results from its data-centric view. This paradigm forms the basis
for the internal architecture of ERP systems as well as the structure of the business
functionality. ERP systems facilitate the view of the enterprises as a whole. The
application of ERP systems mainly aims at the improvement of the collaboration
between the different departments of an enterprise. An ERP system is a standard
software system which integrates operational application systems of different
enterprise sectors. The integration is based on a common data model for all system
components. Modern ERP systems consist of many software components which are
2 Nico Brehm, Jorge Marx Gómez
• The price- performance ratio is dependent to the potential benefit an ERP system is
able to generate.
• Not all installed components are needed.
• High-end computer hardware is required for the application of complex ERP
systems.
• Customizing is expensive because specialists are needed in order to manage the
complexity of the overall system.
• Utilizing enterprises are dependent to one ERP system provider. This aspect is in
particular a disadvantage for Small- and Medium-sized Enterprises (SME) because
of their demand as regards to the necessary flexibility of their business processes.
• A migration from one ERP system to another is very time-consuming and
expensive. Even a partial migration by means of the exchange of components
requires manual effort for the adaptation of interfaces because software
components are mostly not interoperable on the business abstraction level.
Furthermore the composition of business application systems out of subsystems
from different vendors often leads to a redundant keeping of data and a redundant
application of functionality because the functionality is overlapping.
Due to the expensive installation [8] and maintenance proceedings of ERP systems
normally only large enterprises can afford complex ERP systems which cover all
enterprise sectors. In practice small- and medium sized enterprises (SME) deploy
several business application systems in parallel. Often many of these systems
Service-oriented Development of Federated ERP Systems 3
approach the definition of an ERP system. However, the full potential of each system
is not exploited.
Survey results
Because of the problem that the currently available ERP software products do not
include all necessary functions companies have to run various systems in combination
with each other. In order to prove this proposition the authors carried out an empirical
investigation which was completed in the third quarter of 2006. This investigation
was based on a survey where more than 600 German SMB with up to 250 employees
answered a questionnaire. Amongst others the following figures could be extracted as
results:
• In order to meet the overall core functionality requirements 1 the average SMB in
Germany runs four software products in parallel.
• 47 percent of the interviewed enterprises complain about the serious problem of the
redundant keeping of data. Other 30 percent agree that at least a part of their
enterprise data is double-stored. Only 18 percent state that they do not have a
problem with redundant data. 5 percent could not form an estimate.
Taking a look at the practical use of parallel business applications, problems like data
inconsistencies in independent databases and increased communication expenses for
function transitions in business processes become obvious. Furthermore it has to be
mentioned that in most cases the software solutions come from different vendors.
The parallel operation of business application systems causes problems which
jointly arise from insufficient system integration [1, 4].
A new solution to face these problems is the application of a shared ERP system
which makes its components available over a network of services providers. This
component ensemble (federated system) still appears as single ERP system to the end-
user, however it consists of different independent elements which exist on different
computers. Based on this construction it is possible for an enterprise to access on-
demand functionality (business components) as services 2 of other network members
over a P2P network. This approach solves the mentioned problems as follows:
• The total application costs conform to the effective use of software functions.
• Due to the separation of local and remote functions, no local resources are wasted
for unnecessary components.
• Single components are executable on small computers.
• Due to decreasing complexity of the local system also installation and maintenance
costs subside.
1 The term core functionality refers to the support of business tasks in the areas of financial
accounting, customer management, sales, payroll accounting, controlling, procurement,
administration of inventory, personnel administration, production planning and control,
quality management as well as research & development.
2 In this term, a service is a software component that encapsulates one or more functions, has a
well defined interface that includes a set of messages that the service receives and sends and
a set of named operations [6].
4 Nico Brehm, Jorge Marx Gómez
This motivation leads to the definition of a Federated ERP system which can be
defined as follows:
Definition 1: A federated ERP system (FERP system) is an ERP system which allows
a variable, adaptive or dynamic assignment of business application functions to
independent software providers. The overall functionality is provided by an
ensemble of standardized subsystems that all together appear as a single ERP system
to the user. Different business components can be developed by different vendors.
In this paper we present a FERP system based on Web Services. The main idea
follows the multi-layer paradigm of modern information systems which aims at the
separation of the application logic from the presentation layer and the database layer.
In our approach the application logic of ERP systems is encapsulated in a multiplicity
of Web Services which can be provided either locally or remotely. The vision of this
approach is to allow the application of business logic components in a distributed
manner. In order to facilitate a vendor-independent development and provision of
those components the approach considers the standardization of Web Services as well
as GUI descriptions and database interactions. The standardization process is
supposed to be advanced by a consortium of ERP vendors, utilizing enterprises and
scientific institutions (FERP standardization consortium).
As described above the idea of FERP is the shared development of ERP functionality
in a community of Web Service providers and workflow designers. Figure 2 shows
the development and marketing model of this vision. The model consists of four
layers. The standardization layer represents an initiative for the standardization of
Web Service types. The development layer represents two types of actors. On the one
hand workflow designers are responsible for the specification of ERP business logic
by an orchestration of Web Services. On the other hand Web Service developers
encapsulate business functionality in Web Services. Both groups are referencing the
same standard in order to potentiate a matching of demand and supply at execution
time of workflows. Workflow definitions can be considered as best practice processes
which represent one part of the business logic of a standard software system.
The marketing layer is represented by a marketplace for workflow definitions and
Web Service offerings. Because Web Service descriptions have to comply with
predefined standards a concurrent offering of Web Services by a variety of providers
and their dynamic use is possible. The utilization layer in this model is represented by
a standard software system for utilizing enterprises which consists of a graphical user
Service-oriented Development of Federated ERP Systems 5
interface, a database and a Workflow management system [1]. This system allows the
execution of workflows. The administrator of this system can choose workflow
definitions from the market place and feed them into the workflow management
system. Concrete Web Services are chosen automatically on execution time on the
basis of standardized type descriptions. Finally a user is able to initiate the execution
of workflows and by this to use the system.
Figure 3 shows the vision of a Federated ERP system from the point of view of a
utilizing enterprise. The basic FERP framework consists of a graphical user interface,
a workflow management system, a central enterprise database and several business
components which are encapsulated in Web Services. The workflow management
system is responsible for the execution of business processes which include three
different types of tasks. GUI-tasks describe generic user interfaces for the
communication with end users. Database-tasks describe operations which are related
6 Nico Brehm, Jorge Marx Gómez
to the data accesses. Web Service tasks include information about the dynamic
invocation of Web Services.
As shown in figure 3 FERP aims to closely connect various services which can be
implemented by independent providers. This directly implies that the services must
share common understanding of some important aspects, such as what they offer,
what they assume, and how they handle sensitive information. Some aspects can be
predefined in the architecture or system model and implemented, but many others
need to be negotiated and agreed on during system construction, configuration, and
operation.
Figure 4: Centralized architecture approach of an FERP system with as UML 2.0 component
diagram
• model based user interface functions, e.g. show, edit, select, control
• database access functions, e.g. read, update
• application tasks which are connected to Web Service calls
to generate user screens at runtime. Screen descriptions which have to comply with
the FERP User Interface standard are transformed to an end device-readable format,
e.g. HTML in case of web browsers.
Web Service calls are initiated by the FWfS as well (see figure 5). Therefore the
FWfS sends a standardized XML representation of the appropriate input message to
the FWCS. A second XML document contains configuration parameters which
specify the concrete Web Service provider to be chosen by the FWCS. Those
Service-oriented Development of Federated ERP Systems 11
parameters include either a URL for a static Web Service call or requirements for a
dynamic call like e.g. a maximum price. An alternative way for the specification of
requirements for dynamic calls is a centralized mapping between Web Service types
and requirements. Once the FWCS chose an appropriate Web Service provider it will
repack this message to a SOAP operation request which includes the standardized
name of the Web Service operation to be invoked. This request will be sent to the
FWPS. After having finished the processing of the business logic the FWPS will
return a SOAP operation response which includes a standardized response message.
Figure 5 shows how this response message is going to be sent back to the FWfS that
primarily initiated the Web Service call.
6 Example process
Figure 6 shows an example process model which is described in YAWL (Yet Another
Workflow Language). In this process model tasks are assigned to one of the three
following function types:
All other symbols comply with the graphical notation of YAWL. The example
process model demonstrates a workflow for the display of the top-five customers. The
example includes only one Web Service call which is responsible for the creation of a
diagram. The Web Service receives the all contracts of all customers. Having finished
the comparison the Web Service returns a diagram as Base-64-encoded PNG-file. The
next workflow task visualizes this diagram.
The tasks in figure 6 refer to the communication with the connected subsystems.
The interactions between these components are based on standardized communication
languages. A workflow designer is supposed to refer to these standards in order to
ensure the compatibility between workflow definitions and implementations of FERP
client systems. The architecture of a FERP client system is shown in figure 4 and has
to be considered as reference architecture. The standardization process has to cover
the specification of standardized reference interfaces which are provided by these
components and an inclusion of workflow task types which are directly associated to
the invocation of interface operations. Furthermore the standardization of interaction
protocols (by means of languages for the specification of commands to be executed)
has to be done.
Figure 7 shows a screenshot of the graphical user interface of a first FERP system
prototype (FERPxONE) which has been developed in order to verify the practicability
of the proposed architecture approach. The left hand side represents the entry point
for the navigation through a catalogue of workflows which have been registered in the
FWfS and which can be started by a user. The right hand side shows the list of active
tasks a user might select for completion. In the middle all user-relevant process
12 Nico Brehm, Jorge Marx Gómez
outputs are shown. In this example the input form of the first workflow task of figure
6 is presented to the user.
Figure 6: Process model in YAWL as simplified example for the display of the top-five
customers
The necessary parameters in this case are a time period which marks the start and end
dates of customer contracts and the number of top-customers which have to be shown
Service-oriented Development of Federated ERP Systems 13
in the opposing diagram. The next two workflow tasks will request the respective
contracts by communicating with the FDS (see figure 6).The FDS will return an XML
document which contains a list of all customer contracts.
The next workflow task encapsulates all relevant parameters 3 in a web service
operation call where the standardized Web Service type is referenced and sends it to
the FWCS. The FWCS sends a UDDI search request the FWD by submitting the Web
Service type as name of the Web Service to be found. The FWD returns a list of
references to Web Service descriptions as URLs. These descriptions include specific
information about the price of operations calls as well as a reference to a WSDL
document. The FWCS chooses one of the Web Services on the basis of a price
comparison and sends an invocation request to the Web Service. The response
message includes content of a PNG-File as Base64-encoded String which is decoded
and stored in the FUS. Figure 8 shows how the result is presented to the user in the
next step.
Comparing distributed ERP systems and ERP systems running on only one
computer, the distributed systems offer a lot of advantages. Particularly small- and
3 Relevant parameters are the Web Service type as string, the operation name and an
information object which includes the input parameters for the Web Service invocation.
14 Nico Brehm, Jorge Marx Gómez
medium sized Enterprises (SMB) benefit from using shared resources. The example
in paragraph 6 shows how the system is able to react on market changes by comparing
the prices of Web Service operation calls. However, the design of distributed system
architectures is subject to a number of problems [2, 3]. The paper addresses the
problem of redundant data in business application systems of independent vendors
presents a basis for the standardization of ERP system components that are provided
as Web Services. A standardized data model builds the basis for message and service
standardization. The hierarchical structure of the presented standard advances the
reuse of existing data types. Furthermore we presented a reference architecture of
FERP systems which reduces the necessity of data transformation functions in
business process descriptions. The standardization of the syntactic level is only the
first step. Semantic, Behaviour, synchronization and quality of Web Services must
flow into the definition of an overall ERP system standard. The future work must pick
up these problems to realize the vision of a loosely coupled ERP system which allows
the dynamic outsourcing of applications [5, 7] and the combination of software
components of different providers.
References
1. Brehm, N., Marx Gómez, J.: Web Service-based specification and implementation of
functional components in Federated ERP-Systems. In: Abramowicz, W. (ed.): 10th
International Conference on Business Information Systems. Springer, Poznan, Poland
(2007) 133-146
2. Brehm, N., Marx Gómez, J.: Secure Web Service-based resource sharing in ERP networks.
International Journal on Information Privacy and Security (JIPS) 1 (2005) 29-48
3. Brehm, N., Marx Gómez, J.: Standardization approach for Federated ERP systems based on
Web Services. 1st International Workshop on Engineering Service Compositions,
Amsterdam (2005)
4. Brehm, N., Marx Gómez, J.: Federated ERP-Systems on the basis of Web Services and P2P
networks. International Journal of Information Technology and Management (IJITM) (2007)
5. Brehm, N., Marx Gómez, J., Rautenstrauch, C.: An ERP solution based on web services and
peer-to-peer networks for small and medium enterprises. International Journal of
Information Systems and Change Management (IJISCM) 1 (2005) 99-111
6. Cuomo, G.: IBM SOA “on the Edge”. ACM SIGMOD international conference on
Management of data. ACM Press, Baltimore, Maryland (2005) 840-843
7. Dan, A., Davis, D., Kearney, R., Keller, A., King, R., Kuebler, D., Ludwig, H., Polan, M.,
Speitzer, M., Youssef, A.: Web services on demand: WSLA-driven automated management.
IBM SYSTEMS JOURNAL 43 (2004) 136-158
8. Vogt, C.: Intractable ERP: a comprehensive analysis of failed enterprise-resource-planning
projects. Software Engineering Notes 27 (2002) 62-68