You are on page 1of 8

The Third International Conference on Software Engineering Advances

Standardization and Agile Business Processes

Jaroslav Král and Michal Žemlička


Charles University, Faculty of Mathematics and Physics
Malostranské nám. 25, 118 00 Praha 1, Czech Republic
kral@ksi.mff.cuni.cz, zemlicka@ksi.mff.cuni.cz

Abstract so called business agility is to be enabled.


We will discuss the implementations of business pro-
We show that it is crucial for the support of business cesses as service-oriented systems. Service-oriented sys-
processes and intelligence as well as for the technical ad- tems are virtual peer-to-peer networks of permanently ac-
vantages that the peers (services) in service-oriented sys- tive processes provided by autonomous software compo-
tems have user-oriented interfaces. Such a requirement is nents – peers of the network. The peers are called (soft-
at present difficult to implement if we require that the inter- ware) services. They have a lot of common with real-world
faces must be completely implemented according to world- services.
wide standards – i.e. no proprietary (ad hoc) solutions are We discuss the most practically important implementa-
allowed. The reason is that the user-oriented interfaces tion when the ”atomic” steps of business processes are pro-
must be implemented as semi-formal interfaces inspired by vided by the services. Every service has an interface accept-
the interfaces of real-world services and therefore must be ing messages – service requests – from users or other ser-
ultimatively based on the knowledge domains, domain lan- vices. The service can generate answers or requests requir-
guages, and even of the domain habits and local cultures of ing capabilities of other services. The properties of service
users. We further show that there are at least for the time interfaces determine the substantial properties of service-
being technical reasons why it is not feasible to standardize oriented systems.
such interfaces fully as there is a danger that the hurried The requirement that business processes should be agile
standardization of the interfaces can lead to many prema- have substantial impacts on the standardization of service
ture cumbersome standards not to be well usable. We pro- interfaces:
pose a solution of this problem. Our proposal is supported
by the observed tendency of modern service-oriented sys- 1. The interfaces of the services must be user oriented
tems to use XML-based proprietary interface languages and (usable), i.e. understandable for (some) users – at least
SOAP-message encoding instead of the SOAP-RPC one. for process owners. As such they must use coarse-
grained interfaces reflecting user knowledge domain
and also user domain languages and local habits1 must
1. Introduction be applied. All that implies that the interfaces tend to
be rather proprietary.
It is often assumed that all (business) processes sup-
ported by an information system should be fully comput- 2. The used standards and agreements must be often de-
erized. It is sometimes acceptable for information systems veloped iteratively in the close cooperation of users
providing information only, i.e. for systems having no (di- and developers, i.e. many principles of agile develop-
rect) process control abilities (compare [25]). It is nowa- ment [3] should be applied2 .
days rather an exception than a rule. The decision and
actions of the system able to control business processes Under these circumstances it can be more important that
or their parts must be supervised/committed and on-line the used message formats are user-oriented than that they
changed by authorized users – process owners. The rea- 1 Note that SOAP [28] is now often used as an envelope of semanti-

son is that for many business actions/operations caused by cally rich user-oriented XML messages. The solution is known as SOAP-
the software there must be a person responsible for them document encoding or SOAP-document literal [6]. The reasons can be
technical (effectiveness [6, chap. 14]). But the most important effect is
– i.e. the authorized person (process owner) should be able that user domain languages in XML formatting can be used.
to influence the process execution. Even more: the owner 2 We must therefore implement tools for agile business using agile de-

must be often able to change the process ”on the fly” – it is, velopment principles.

978-0-7695-3372-8/08 $25.00 © 2008 IEEE 184


DOI 10.1109/ICSEA.2008.40
are standardized using open formats. The two require- 1. Information system of an international global enter-
ments are therefore difficult to meet in the systems like prise having the structure of a network of autonomous
e-commerce (often B2C) where communication partners organizational units (divisions). The information sys-
should be potentially looked for all over the world at the tem of the enterprise is formed by a peer-to-peer net-
start of their communication. It is obvious that the search- work of the information systems of the divisions and
ing process must be based on open world-wide accepted by some additional units serving the whole system of
standards. We call such systems alliances. Fortunately, the enterprise (e.g. system portals or support of busi-
there is a broad collection of systems where constituent ser- ness processes). In other words the system has the
vices ”know each other” for ever as the services must be service-oriented architecture (SOA) [8, 18]. The mes-
e.g. trusted or support divisions of an enterprise. In such sages can have the format defined as an XML dialect.
cases the communication partners need not be looked for. Note that such an architecture simplifies the integra-
The communication protocols can be then agreed locally, if tion of new divisions and/or of newly acquired enter-
it is appropriate. We call such systems confederations [16]. prises as well as the selling out (outsourcing) some di-
visions or some parts of IS or splitting the enterprise
into smaller units.
2. Flood of Standards and How Not To Sink
2. Information systems of e-government ([14]). Such in-
Standards are used for different purposes. Some fix best formation systems must be built as a network of the
practices, some are interoperability agreements. The prob- information systems of particular offices3 with addi-
lem with standards on web and with SOA-related standards tional services. We shall discuss this case in details
is that there are too many standards and that they grow and below.
change quickly. The standards explosion is enabled by the
use of XML framework as XML makes it easy to define new 3. The collaboration between the information system(s)
languages and new formats. One of the unpleasant conse- of the given enterprise and the information systems of
quences is that many standards try to fix practices being still its business partners supporting advanced variants of
immature and even to address problems that are not impor- supply chain management (SCM, [23]) and customer
tant enough (yet). relationship management (CRM, [7]).
Service-oriented techniques and patterns discussed be- 4. The information system supporting a purchase coali-
low open the ways of software development and use without tion of car vendors. The aim of the coalition is to bet-
excessive use of the newest standards. Such standards are ter the position of the coalition members with respect
sometimes quickly obsoleting and often cumbersome. The to the suppliers of the automobile parts and to cumu-
service-oriented techniques make it possible to invent, use, late the member orders.
and perfect best practices before fixing them in an (interna-
tional) standard. The techniques enable saving/retaining of 5. An information system for a highly open association
the experience and data collected in the form required by of health organizations (physicians, hospitals, labora-
long time used standards considered now not to be used any tories, health database services, etc.) intended to sim-
more. plify, enhance, and speed up health care.
Service orientation also provides not only the opportu-
nity to develop software incrementally but also to modern- 6. Open dynamically changing network of cooperating
ize it incrementally together with the progress of business software systems (typically web services) necessary
practices and enhancements of software engineering prac- for supporting of e-commerce.
tices. We therefore can modernize incrementally the entire
As noted above (see also [17]), we call the systems support-
collection of needed software standards.
ing e-commerce alliances whereas the cases 1 through 5
We think that standardization process should take into confederations. Let us repeat that the distinguishing feature
account such issues like easy user involvement and agility is that in confederations communicating partners are mutu-
and gradually collected experience and knowledge. ally known and can therefore agree (semi)proprietary mes-
sage formats and protocols, whereas in alliances the part-
3. Confederations and Alliances ners must be looked for.
Our list indicates that confederations occur rather as a
Services in service-oriented systems can be newly de- rule than as an exception, especially in the cases when very
veloped applications, encapsulated legacy systems, or third large software systems must be built.
party products. 3 Other solutions are not feasible for technical as well as for practical

Examples of service-oriented systems are: and political reasons ([16, 14, 26]).

185
Note that in business, especially in the case of B2B, the language features. In confederations such requirements can
software services enhancing communication protocols can be implemented in a seamless way.
wrap information systems of business partners. The busi- The dialog between web services can be in a SOAP-
ness properties of the business partners (trustability, eco- based language format or we can use attitudes based on
nomical health, etc) must be as a rule verified by a long REST philosophy [9]. It is important to choose a format
term human driven evaluation process. A business partner easily understandable by users. An example is the use of
is then acceptable only if it is on a (virtual) list of trustable SOAP such that the messages contain user-oriented parts. It
business partners or it is acceptable for process owner. In has implied the use of SOAP-document encoding protocol
this situation the requirement that the information systems [28].
of business partners ”are known” is not too limiting.  
g - g
Log
4. Agility and Agile Business Processes  
A 6 A
BM BM
The business processes must be based on the user needs  B  B
and requirements. Users – as we pointed above – must have  BN    BN
at least in principle a possibility to supervise business pro- AC G - Middleware - G AC
 
cesses and to modify them on-line. The reasons are:
• Every business process should have its owner respon- Figure 1. Semi-automated contract dialog
sible for the run of the process, for the correctness, scheme: Users should be able to supervise
feasibility and profitability of the process, as well as communication and to analyse Log datas-
for accidental losses and emergency responses. There tore. Log can be inspected by third parties
must therefore be a tool allowing post-mortem analy- (e.g. by experts at court trial)
sis of the business processes – eventually using a log
file.
5. Business Processes in SOA
• Inherent property of business processes in B2B busi-
ness is the possibility of the agility of the businessmen Business processes are usually designed such that they
of business partners. To be more specific: the initia- are the internal matters of the communicating business par-
tor of a business action can (but need not) look for a ties. The coordination of the business processes of sev-
business partner using e.g. UDDI/WSDL. The initiator eral partners can be a quite complicated task. Require-
must take into account not only the information ob- ments specifications on the supervising activities of indi-
tained via e.g. UDDI or even by a web search engine vidual steps of business processes are an important part of a
but also the information from other sources (knowl- service-oriented system.
edge on the business quality of the potential partner). The main advantage of alliances is their flexibility, gen-
It follows that the start of a business contact cannot be erality, and standardized solutions. The disadvantage is the
in many cases fully computerized and that users must problems with timeliness, efficiency, quality, and the size of
have the possibility to switch to manual mode. On standards, their quick changes and quick getting obsolete,
the provider side there must be someone able to evalu- and problems with integration of legacy systems and third
ate the quality of the business initiator and to have the party products. A deeper problem is caused by the fact that
right to start the business and to conclude agreements. the tools used in alliances are not very user friendly as they
Both business partners must have the possibility to for- are based on tools that are rather programmers’ knowledge
mulate the conditions of the agreement using personal domain oriented and not user knowledge domain oriented.
contacts. Under such conditions the full computeriza- It complicates requirements specification and business pro-
tion of the business action is acceptable for repeated cess agility.
business actions covered by a long-term general agree- Alliances are better suited to business operations than
ment. Even in this case it must always be possible to to business process analysis. The important business deci-
influence the business process manually. sions should be, however, often preceded by the analysis of
The implementation of the cooperation should therefore be the market, references, and the history of cooperation with
based on schema from Fig. 1. It is obvious that the mes- a given business partner. The analysis must often be per-
sages must be understandable to the businessmen (users). formed by human beings.
So the messages should have the format, syntax and seman- Communication of software parties can be in alliances
tics near to the syntax and semantics of user knowledge do- designed in the framework of the web services quite indi-
main languages and should reflect local culture and/or local vidually. It is a substantial advantage.

186
Some business cases (processes or process steps) can Human involvement should be based on the following prin-
fail for some reason. In this case the reasons of the fail- ciples:
ure and the businessmen responsible for it can be detected
• The system interface and the interfaces of components
via the analysis of the relevant logged messages. The anal-
should support the intuition of the users and employ
ysis could be used as evidence at a court, if necessary. It
their experience. There are no very strong reasons
follows that the messages stored in the log memory must be
against if the interfaces simulate existing business pro-
understandable (possibly using appropriate trustable soft-
cesses. It has the advantage that it reduces the risks of
ware tools) for users as well as for experts in economy and
business process reengineering mentioned in [22].
even for lawyers taking part in business-related trials. The
best solution is, if possible, if the messages themselves are • So long as the non-computerized version of an ac-
legible. Such a solution is needed for system flexibility, ap- tivity is not substantially worse than its computerized
plication of agile methods in development, and for agility in version, the non-computerized version should be pre-
business. ferred. The business process reengineering and soft-
ware development costs and the expenses connected
6. Specific Cases of Human Involvement with hardware purchasing and the system run are very
high and often not taken into account. There can be yet
Humans must take part in business processes: another loses connected with the loss of staff knowl-
edge related to the traditional processes and with the
1. Many business processes must use data of a poor qual- expenses of staff training.
ity (e.g. incomplete or not trustable). It is true espe-
The experience of the authors with SOA indicates that the
cially in the case of small and medium enterprises. It
above points are in SOA quite easily implemented. Incom-
is quite common that some data are missing or their
plete computerization is therefore no drawback, it can be an
quality is not known. There can be problems with sup-
important advantage.
pliers, etc. The data like the duration of operations
We stress out that the user-oriented interfaces are a con-
needed in scheduling need not be exact. Let us con-
cept to a high degree independent on the tools and tech-
sider, for example, the management of machine tools
niques used to transfer the messages between the services.
floor workshop. If the manager of the workshop has
Typical solutions of message transfers can be:
an appropriate tool displaying manufacturing schedule
and the situation on the floor, he/she can – using his/her 1. Direct transferring of a user-oriented message M
experience and the support of the information system (e.g. an invoice possibly coded in XML) via a mid-
– find a (semi)optimal solution. It can happen that the dleware.
scheduling system cannot find a good solution due to
poor data quality. The scheduling can be so time con- 2. SOAP-document encoding protocol.
suming that the scheduler must work in batch mode. 3. Other transport means transporting M (e.g. in REST
In this case the communication between the scheduler [9] manner).
and the machine tool floor control must be via data
store implemented as a specific infrastructure service Note that the use of SOAP-RPC based on remote pro-
[18]. Such a service enables the integration of batch cedure call leads to talkative procedural (implementation-
systems into service-oriented systems. It can be fur- oriented) interfaces. It often leads to SOA antipattern
ther used to implement proprietary multipoint commu- Chatty Service [2].
nication protocols. The solution 1 tends not to obey public standards but it
implies the need that the format of M must be agreed by
2. Some parts of the business processes can be influenced communicating partners as a proprietary solution. It has
by a fallout. It is very desirable that the activity of [21] obvious drawbacks. The drawbacks in confederations
the not yet available part of the system being not yet are, however, quite bearable whereas the drawbacks of the
available can be replaced by human activities. use of the cumbersome quickly changing and obsoleting
standards can be unacceptable.
3. If the system is service-oriented, the above point is
implementable quite easily. The idea is that the mes-
sages can be redirected to people. They must, how- 7. Towards User-Oriented Interfaces (Service
ever, understand them. Such an implementation offers Adapters)
desirable software engineering properties like stabil-
ity, openness, incremental development, software pro- Confederations have the structure from Fig. 2. Any con-
totyping of not yet existing services, etc. [16, 19]. federation should have its global interface – one or more

187
AC AC
G G
6 S
7 o
? /
 S
w
FEG FEG

   
UC - Middleware - G AC UC - FEG Middleware FEG - G AC
   

6 6
? ?
G G
AC AC

Figure 2. Software confederation with gates Figure 3. The structure of a confederation


with front-end gates. One AC can have none,
portals. The services must be connected to a middleware, one, or more front-end gate(s).
usually via gates (sockets) G. The services need not be web
services in the sense of W3C or OASIS. Front-end gates play several roles5 :
The services are implemented as autonomous pieces of • They stabilize and generalize the interfaces of compo-
software (components) that can be usually developed au- nents – the interface based on a problem-oriented lan-
tonomously4 . We therefore call them autonomous compo- guage.
nents (AC) [13].
The development and maintenance of service-oriented • They can provide different interfaces of given AC for
systems is substantially simplified if the interfaces of the different groups of users/partners.
AC’s are stable (not varying) and independent on the im-
plementation details of the components. It is quite easily • In some situations one FEG can provide access to more
achievable if it is the case when the interface is based on than one autonomous component. This feature can be
user knowledge domain languages. used to implement composite services [24].
If it is required that the gate G from Fig. 2 should offer The interface of a FEG can be specified by a language L
an access to all functionality of the corresponding compo- based on the knowledge domain and languages of the users
nent, the gate must usually disclose the main features of the of the autonomous component.
component’s implementation. Under such a condition the There is a good chance that L will be able to specify se-
‘language’ of G must be to some degree implementation mantics of an AC in the form required by its partners. As
oriented. As such it is not stable enough neither optimal FEG is used as a ”white box”, the properties of L (if not
for the communication partners of the given autonomous L itself) must be specified during the development of the
component. The main problem is that it discloses imple- entire system. This task is similar to the task of the speci-
mentation details. It is known as a very dangerous feature fication and design of user interface components (portals),
[27]. compare [16]. The specification of gates and front-end gates
It follows that there must be a tool transforming mes- can simplify the system specification and documentation. If
sage formats. We can use for that a yet another type of the interfaces are user oriented, it can happen that the only
autonomous components (services) – front-end gate (FEG) documentation of the system is the description of the inter-
[15]. FEG is again an autonomous component (peer) with faces.
the external properties similar to user gates: from the devel- FEG can be also felt and used as an enhancement of mid-
oper’s point of view it is a white box and a node (service) of dleware services (Fig. 3). The specification of its properties
the peer-to-peer network of components forming the con- can be therefore felt as a specification of middleware func-
federation. tions. In other words, the developers develop in this case
4 It is possible and often desirable to implement (pack) several related rather the infrastructure than the applications (see [12]). It
services into one software component. If designed properly, it can increase opens the opportunity to use proprietary standards in this
the autonomy of the component and reduce development, administration, area instead of the international ones if appropriate.
and maintenance costs. To use analogy: the car services are not provided
in the form of one service type per one service provider but one service 5 FEG is a generalization of Object Adapter from object-oriented

provider for a set of auto repair and maintenance activities (services). methodology. FEG can be viewed as an Service Adapter – compare [10].

188
In confederations the formats of messages between large A business process P is typically generated (enacted) on
autonomous components can be based (as we have seen) a request of a user (process owner) responsible for the busi-
on proprietary XML formats or XML-based standards like ness consequences of the process. It is desirable to have
RDF, SOAP, etc. The issue is when to use standard formats some model (template) M of the process. M is during the
and when an ad-hoc customer-oriented solution. process enactment parameterized and modified. The result
The first choice can benefit from the know-how of a stan- is a process control structure C. C can be a data structure
dardization committee. It leads to formats generally known describing the process structure and process state. C can be
and usable. But the standards can be, however, obsolete, again in different languages. BPEL [1] is recommended to
changing, not well suited to the particular needs and – what be used for C now. M is a part of business intelligence of
is the most important issue – overly cumbersome (hundreds an enterprise often based on a long-term experience. M can
of pages of a text difficult to read, compare UDDI and also therefore be based on various process modeling/definition
the design antipattern Designed by a Committee, see [4]). standards. BPML [5] or BPEL can be used here.
The national or international standards are often too P is ”executed”, i.e. C is used to control the actions re-
dependent on object-oriented philosophy or vendor inter- quired by P . It follows that C must store the state of the pro-
ests. Many users prefer message formats that would cor- cess. This note is important as in e-commerce (and there-
respond/reflect the syntax (and semantics) of their profes- fore in alliances) the communication of services tend to be
sional user-oriented languages and/or intuition. There is a stateless and specific turns are therefore necessary. Dur-
good chance that the interfaces based on professional (user ing the execution of the process P the structure C can be
related) languages will be stable as they benefit from a long modified to respond to unexpected problems and situations
term experience. Such languages need not disclose the way (rejects, failures, temporarily not available resources, and
the program is designed/structured. snags in process models).
The proprietary solutions can easily result into Babel of C can be in some situations generated directly, without
formats. If, however, the message formats reflect (describe) the model M .
properly the notions of some well established knowledge
domain, the Babel need not arise. It can be expected in 9. Implementation of Business Processes Al-
the confederations having quite stable partnerships between lowing Business Agility
components.
If we implement business processes in service-oriented
systems, we must decide how to represent the model M and
8. Standards and Business Processes the control structure C and how to implement the above
issues. We propose the following solution ([20]; compare
Business processes are crucial for the software systems Fig. 4):
supporting business activities. Let us summarize (obvious)
1. The model M of a business process can be stored in
facts important for the design and use of business processes.
database(s) of models and can be generated from con-
A business process can cause substantial losses if
trol data of already performed processes.
1. it involves untrustable business partners; 2. During the process enactment a new service (peer)
2. it is not flexible enough to respond ”on the fly” prop- PM called process manager is created. PM uses the
erly on emergency situations like supply failures, er- control structure C generated (possibly) from M . PM
rors/deficiencies in process definition (design) due the communicates with the process owner. The process
fact that the data used in the definition were not of a owner usually starts and supervises the enactment of
satisfactory quality, there can be sudden changes in his/her processes.
business plan (e.g. parts suddenly needed to respond 3. P can be on-line modified and its actions can be su-
to sudden crashes or failures), etc. pervised and committed by its process owner. P com-
municates with services providing the steps of the pro-
It is clear that the second reason is more common in small
cess. The communication is based on messages having
economies, in small firms, and for business involving prod-
user-oriented declarative formats. The services can re-
ucts produced in short series (e.g. specialized machine tools,
turn the information about the results of their actions
rare chemicals, etc.). The processes are often designed us-
(e.g. OK, some problems occurred, failure) to P .
ing statistical analysis of data bodies being as large as pos-
sible. Small factories are, however, unable to collect data As the process control service C of P can be hidden in its
collections large enough to be able to support optimization. process manager PM , PM can use any appropriate process
Flexibility of business processes is more and more desir- control standards (e.g. BPEL [1], workflow [29], or Aris
able for large firms, car producing factories inclusive. [11]; even text descriptions can be used here).

189
g process 1. Multipoint communication has many specific (propri-
enactment
Portal  etary) variants. The variants can be sometimes too
request A owner specific – so it is then doubtful whether to standardize
6parameters them. An example is a network of real-world services
that can replace each other under some conditions only
interactions (e.g. some operations on A can be performed by an op-
modifications eration of B but not vice versa; it can depend on the
? ?
preferences of the requesters).
datastore C service - service C:
of models generation process control 2. If the communication is performed by a middleware,
 B @ the middleware must be as a rule bought from a vendor.
commands for services performing  B @ It can be costly and sometimes the middleware need
business process steps  B @ not provide exactly what is needed (see point 1) and
 B @ can lead to the antipattern Vendor Lock-In [4].
services performing the actions
A good alternative is to generalize front-end gates so that
Figure 4. Implementation of business pro- they can maintain/contain a data store of messages (service
cesses in SOA. Note that C can be edited requests) so that proprietary needs are met. The full (non-
from scratch (without datastore of models) proprietary) standardization of multipoint communication
then can be postponed till enough experience and best prac-
The model M of P can be in different languages like tices can be used – or can be postponed for ever.
XML dialects or formalized natural languages (plain text) Similar turn can be used if we want to integrate batch
and stored in different repositories. The communication be- applications into a service-oriented system [20].
tween process manager and the software components pro-
viding process operations can be in different protocols in- 11. Conclusions
dependently on the choice of the standard for C, if appro-
priate. It is also possible under some arrangements to enable
FEG to provide security functions like encoding/decoding, It is often forgotten that it is necessary for service-
e.g. to apply new WS-* standards for C. It is reasonable oriented systems supporting business processes to be com-
and often necessary to hide the channels between appli- posed as tools enabling symbiosis of software and its users.
cation services and their front-end gates into a protected The users bring to the system their own dialects, habits,
area. So we must cope with the explosion of standards, re- and culture. If the users should give their best to achieve
tain business intelligence and data depending on ”obsolete” the complex goal, it is necessary for the software part of
standards – we must avoid the standardization paralysis. the system to communicate with the users with their lan-
guage. Many different tasks can be supported by user aware
We think that the complains saying that SOA is based on
service-oriented systems – software confederations. As
too quickly developing technologies should be rather com-
people are used to use their own dialects (that is typically
plains against quickly developed standards often designed
used for decades), it is reasonable to support these dialects.
such that the enterprises using them are induced to use
Such dialects tend to be stable (not changing), understand-
the support of large software vendors (the situation is also
able by users, and imply coarse-grained interfaces.
known as vendor lock-in antipattern). Our proposal has a
further advantage: Process manager can in fact orchestrate Every such a language leads to a proprietary standard. It
all service types. It can therefore orchestrate process man- is not reasonable to design another incompatible standard –
ager services as well. So we need no process orchestration even if it is intended for world-wide use, as such a standard
standards for the near future. cannot fulfill the needs of so wide spectrum of existing user
domain languages. Applying an artificial world-wide stan-
dard would worse the reactions of the people involved into
10. Data Store Services the systems as they will be forced to use language different
from their long time tuned one.
Many standards to be applied in service-oriented systems Many complains on service orientation can be charac-
implicitly assume or work well only if the point-to-point terized as consequences of the antipattern Standardization
communication is used. It is known as a SOA antipattern Paralysis (overuse of latest standards). We have shown that
[2]. Various variants of multipoint communication in SOA it can be in practically important cases avoided by imple-
need not be provided by middleware for the following is- mentations based on proper use of the service-oriented phi-
sues: losophy and techniques. It is a good message for interna-

190
tional standardization effort as it can benefit from the long [15] J. Král and M. Žemlička. Component types in software con-
term experience with best practices and de-facto standards. federations. In M. H. Hamza, editor, Applied Informatics,
pages 125–130, Anaheim, 2002. ACTA Press.
Acknowledgement This research was partially supported by
[16] J. Král and M. Žemlička. Software confederations – an ar-
the Program ”Information Society” under project 1ET100300517.
chitecture for global systems and global management. In
S. Kamel, editor, Managing Globally with Information Tech-
References nology, pages 57–81, Hershey, PA, USA, 2003. Idea Group
Publishing.
[1] T. Andrews, F. Curbera, H. Dholakia, Y. Goland, J. Klein, [17] J. Král and M. Žemlička. Software confederations and al-
liances. In CAiSE’03 Forum: Information Systems for a
F. Leymann, K. Liu, D. Roller, D. Smith, S. Thatte, I. Trick-
ovic, and S. Weerawarana. Specification: Business pro- Connected Society, Maribor, Slovenia, 2003. University of
Maribor Press.
cess execution language for web services version 1.1, 2003.
[18] J. Král and M. Žemlička. Service orientation and the quality
http://www-106.ibm.com/developerworks/library/ws-bpel/;
[2] J. Ang, L. Cherbakov, and M. Ibrahim. SOA antipat- indicators for software services. In R. Trappl, editor, Cy-
terns, Nov. 2005. http://www-128.ibm.com/developerworks bernetics and Systems, volume 2, pages 434–439, Vienna,
/webservices/library/ws-antipatterns/. Austria, 2004. Austrian Society for Cybernetic Studies.
[3] K. Beck, M. Beedle, A. van Bennekum, A. Cock- [19] J. Král and M. Žemlička. Architecture, specification, and
burn, W. Cunningham, M. Fowler, J. Grenning, J. High- design of service-oriented systems. In Z. Stojanovic and
smith, A. Hunt, R. Jeffries, J. Kern, B. Marick, R. C. A. Dahanayake, editors, Service-Oriented Software System
Martin, S. Mellor, K. Schwaber, J. Sutherland, and Engineering: Challenges and Practices, pages 182–200,
D. Thomas. Agile programming manifesto, 2001. Hershey, PA, USA, 2005. Idea Group Publishing.
http://www.agilemanifesto.org/. [20] J. Král and M. Žemlička. Implementation of business pro-
[4] W. J. Brown, R. C. Malveau, H. W. S. McCormick, III, and cesses in service-oriented systems. In Proceedings of 2005
T. J. Mowbray. AntiPatterns: Refactoring Software, Archi- IEEE International Conference on Services Computing, vol-
tectures, and Projects in Crisis. John Wiley & Sons, New ume II, pages 115–122, Los Alamitos, CA, USA, 2005.
York, 1998. IEEE Computer Society.
[5] Business Process Management Initiative. Business process [21] J. Král and M. Žemlička. Software architecture for evolv-
modeling language, 2004. http://www.bpmi.org/downloads ing environment. In K. Kontogiannis, Y. Zou, and M. D.
/BPML-BPEL4WS.pdf. Penta, editors, Software Technology and Engineering Prac-
[6] F. Cohen. Java Testing and Design: From Unit Testing To tice, pages 49–58, Los Alamitos, CA, USA, 2006. IEEE
Automated Web Tests. Prentice Hall Publishing, 2003. Computer Society.
[7] J. Dyché. The CRM Handbook: A Business Guide to Cus- [22] T. K. Landauer. The Trouble with Computers. MIT Press,
tomer Relationship Management. Addison Wesley Profes- 1995.
sional, Boston, 2002. [23] B. Lowson, R. King, and A. Hunter. Quick Response: Man-
[8] T. Erl. Service-Oriented Architecture: Concepts. Technol- aging the Supply Chain to Meet Consumer Demand. John
ogy, and Design. Prentice Hall PTR, 2005. Wiley & Sons, New York, 1999.
[9] R. T. Fielding and R. N. Taylor. Principled design of the [24] Z. Maamar, D. Benslimane, C. Ghedira, and M. Mrissa.
modern web architecture. ACM Trans. Internet Techn., Views in composite web services. IEEE Internet Comput-
2(2):115–150, 2002. ing, 9(4):79–84, 2005.
[10] E. Gamma, R. Helm, R. Johnson, and J. Vlissides. Design [25] C. M. MacKenzie, K. Laskey, F. McCabe, P. F.
Patterns. Elements of Reusable Object-Orieneted Software. Brown, and R. Metz. Reference model for service-
Addison-Wesley, Boston, MA, 1993. oriented architecture 1.0, commitee specification 1, 19
[11] IDS Scheer. Aris process platform. http://www.ids- july 2006, 2006. http://www.oasis-open.org/committees
scheer.com/international/english/products/31207. /download.php/19361/soa-rm-cs.pdf.
[12] J. Král. Middleware orientation: Inverse software devel- [26] D. Rowe. e-government motives & organisational frame-
opment strategy. In W. Wojtkovski, W. G. Wojtkowski, work. In J. Pour and J. Vořı́šek, editors, Systems Integra-
S. Wrycza, and J. Župančič, editors, Systems Development tion 2002, Conference Presentations, pages 93–99, Prague,
Methods for Databases, Enterprise Modeling, and Work- Czech Republic, 2002. Prague University of Economics.
flow Management, pages 385–396, New York, 1999. Kluwer [27] I. Sommerville. Software Engineering. Number 42765 in
Academic/Plenum Publishers. International Computer Science. Addison-Wesley, Reading,
[13] J. Král and M. Žemlička. Autonomous components. In MA, 5th edition, 1996.
V. Hlaváč, K. G. Jeffery, and J. Wiedermann, editors, SOF- [28] W3 Consortium. Simple object access protocol, 2000. A
SEM’2000: Theory and Practice of Informatics, volume proposal of W3C consortium. http://www.w3.org/TR/SOAP.
1963 of LNCS, pages 375–383, Berlin, 2000. Springer. [29] Workflow Management Coalition. Workflow specification,
[14] J. Král and M. Žemlička. Electronic government and soft- 2004. available at http://www.wfmc.org/standards/docs/Wf-
ware confederations. In A. M. Tjoa and R. R. Wagner, XML-11.pdf.
editors, Twelfth International Workshop on Database and
Experts System Application, pages 125–130, Los Alamitos,
CA, USA, 2001. IEEE Computer Society.

191

You might also like