=Paper=
{{Paper
|id=Vol-2443/paper09
|storemode=property
|title=Predicting Next Wave of Digitalization: Towards a Theory of Evolution of Enterprise Applications
|pdfUrl=https://ceur-ws.org/Vol-2443/paper09.pdf
|volume=Vol-2443
|authors=Janis Grabis
|dblpUrl=https://dblp.org/rec/conf/bir/Grabis19
}}
==Predicting Next Wave of Digitalization: Towards a Theory of Evolution of Enterprise Applications==
Predicting Next Wave of Digitalization: Towards a Theory of Evolution of Enterprise Applications Jānis Grabis Riga Technical University, Institute of Information Technology Kalku 1, Riga, LV-1658, Latvia grabis@rtu.lv Abstract. There is a continuous strive for digitalization of business process exe- cution and different types of enterprise applications are used to implement busi- ness processes. The paper identifies types of enterprise applications, namely, functional applications, ERP systems, workflow management systems, service- oriented architecture applications and SaaS and analyzes suitability of these ap- plications for fulfilling business process execution requirements. This analysis yields a hypothesis that enterprise applications evolve cyclically and the cycles are determined by an interplay between standardization and customization tendencies in development of enterprise applications. This observation allows to structure existing developments in enterprise computing and to reason about fu- ture developments in digitalization of business processes. Keywords: Business processes, digitalization, enterprise applications, evolution 1 Introduction Companies make products and deliver services by performing business processes. There is large variety of business processes and they are interrelated. Enterprise appli- cations are used to execute these business processes. Over the course of time, new tech- nologies are becoming available to implement these enterprise applications. Occasion- ally, these new technologies cause a significant overhaul of enterprise applications by introducing new paradigms, platforms, capabilities and functionality. There is a contin- uous evolution of enterprise applications and several generations of applications can be identified. Comprehensive digitalization of enterprise business processes is the latest wave of adopting information technologies by businesses. Business process improvement is a continuous activity and digitalization technolo- gies play a major role in achieving the whole potential of process improvement [1]. Enterprise Resource Planning (ERP) systems were one of the first integrated solutions for running enterprise business processes [2]. Workflow Management (WfM) systems at one point arose as an alternative solution providing explicit representation of busi- ness processes [3]. Service-oriented architecture (SOA) applications distinguished themselves with increased flexibility and cross-enterprise integration [4]. New oppor- tunities for simplifying application management and execution of data intensive busi- ness processes were introduced by Software a as Service (SaaS) applications [5, 6]. At the height of their popularity, many of these applications were perceived as Copyright © 2019 for this paper by its authors. Use permitted under Creative Commons License Attribution 4.0 International (CC BY 4.0) 98 replacements of other types of applications although further developments showed that every type has its specific strengths and weaknesses resulting in complementary appli- cations. Obviously, areas of emphasis in enterprise applications have been changing over time. Shankararaman et al. describe four waves of evolution of enterprise systems starting with systems focusing on task automation to integrated systems and agile col- laborative systems [7]. ERP systems themselves have undergone multiple stages of evolution [8]. Business process and enterprise integration has been acknowledged as one of the main driving forces in evolution enterprise information systems [9]. How- ever, these investigations mainly focus on one type of enterprise applications. The objective of this paper is to propose a framework for describing evolution of enterprise applications according to fulfillment of process execution requirements. The process execution requirements are based on typical characteristics of business pro- cesses and their performance attributes. An ability of enterprise applications to meet these requirements is analyzed using general characteristics and features of these appli- cations as the evaluation framework. The results of the analysis are summarized as a hypothesis about evolution cycles of enterprise applications. The paper is not intended to provide comprehensive review of enterprise applications and their properties rather it reflects upon experiences and observations accumulated over more than fifteen years of academic work in the area. There are two main contributions of the paper: 1) summary on evaluation of types of enterprise applications according to their business process execution performance; and 2) formulation of the hypothesis about evolution cycles of enterprise applications. The rest of the paper is organized as follows. Section 2 describes general require- ments towards enterprise applications and defines performance attributes for evaluation of these applications. Section 3 provides an overview of types of enterprise applica- tions. The hypothesis on cyclical evolution of enterprise applications is formulated in Section 4. Section 5 concludes. 2 Requirements Business process execution needs pose requirements towards enterprise applications. These requirements are affected by typical business process characteristics: • Variety – companies have a large number of different processes ranging from pro- curement to sales and finance to human resources and every process has its own specific features; • Multiple stakeholders both internal and external – different stakeholders are in- volved in business processes and they should be able to collaborate efficiently; • Interdependencies – business processes are intertwined and depend on each other. That requires information exchange and coordination among the business processes; • Large volume – companies have many employees and partners executing many pro- cess instances creating large computational load; • Dynamic – business processes change frequently and enterprise applications need to be updated to reflect these changes. 99 The ultimate goal of using enterprise applications in business process execution is improvement of business process performance. The business process performance can be evaluated along four dimensions [10]: • Cost • Time • Quality • Flexibility The performance attributes can be evaluated using variety of specific measures. In this paper their interpretation is considered in relation to enterprise applications. The cost attribute is influenced by several aspects, notably, development and execu- tion costs. If an application provides specialized means for development without much reliance on proprietary technologies then development cost is lower. If execution does not incur significant overhead and does not require large computational resources then execution cost is lower. The time attribute characterizes ease and speed of business process execution from the user’s perspective. If an application provides task specific means for efficient pro- cess execution (e.g., data input is optimized in call center customer service process) it contributes to improving the time attribute. On the other hand if an application is built for every purpose and intent and provides generic support to business process execu- tion, its efficiency is not that high. From the business process execution perspective, quality concerns providing the right information for performing business tasks correctly. The level of integration among business processes is a significant factor affecting this ability. If an application is able to deliver information to users in a timely and suitable manner then it contributes to improving the quality attribute. Flexibility characterizes an ability to deal with heterogeneity and changing nature of business processes. If an application can be adapted to serve various types of processes and can be modified when necessary then its flexibility is high. 3 Types of Enterprise Applications Five types of enterprise applications, namely, functional applications, ERP systems, WfM systems, SOA applications and SaaS are considered in this paper. This section describes general characteristics of enterprise applications and peculiarities associated with every type. 3.1 General Characteristics The enterprise applications are applications used to execute business processes. Their common features are: • Support for large user base – many geographically distributed users access applica- tions concurrently; 100 • Support for data and process integration – users are able to share data and pass exe- cution control across multiple processes; • Computationally intensive operations – applications implement complex decision- making logics and provide information for data-driven processes; • Reuse – many companies and processes require similar functionality, which is re- used as often as possible at various levels of granularity; • Modifiability – to serve unique and changing requirements enterprise applications provides means for customizing business processes. The enterprise applications are very large and highly complex applications. Their development is time and resource consuming. Therefore, some sort of reuse features prominently to reduce this development complexity. That ranges from reuse of individ- ual components to whole package and enterprise applications are frequently provided by their vendors as commercial-of-the-shelf packages regardless of the type of delivery and licensing mode. The packaged applications often encompass business process ex- ecution knowledge and some of the processes have become commoditized or standard- ized. In order to support custom requirements in the packaged applications, various modification options are provided [11]. These range from high level code-free config- uration to low-level modification by coding. Utilization of standard reusable features reduces costs while modifications are aimed at improving business process execution efficiency. Finding a right balance between usage of standard features and customization is an ongoing discussion [12, 13]. This interplay between using standard features and customization can be generalized to other features as well (Table 1). Customization leaning enterprise applications implement custom processes, use proprietary technologies, are developed according to specialized designs (e.g., technical design, user interface) or rely on decentralization (e.g., data sharing, computations). Standardization leaning enterprise applications provide stand- ard processes, use open technologies, have unified design and are centralized to some extent. Table 1. Customized and standardized features of enterprise applications. Customized features Standardization features Custom process Standard process Proprietary technologies Open technologies Specialized design Unified design Decentralization Centralization 3.2 Functional Applications and ERP Systems Functional applications are intended for supporting a limited set of business process in a certain functional area of the company [14]. Their typical characteristics are: 1) cus- tom-built; 2) limited integration; and 3) usage of myriad of technologies in implemen- tation. The functional applications provide basic data processing and process tracking functionality though they do not support majority of the requirements towards enter- prise applications. 101 ERP systems are large packaged applications aimed at automation of majority of enterprise business processes. They consist of multiple functional modules joining to- gether related business processes in one area. ERP systems typically have three tier client-server architecture where centralized database serves as means for company- wide business process integration. The best practice processes are implemented in ERP systems and all modules typically have the same design. Although processes can be configured to the needs of a particular enterprise, they are hard-coded and somewhat obscure to end-users. The ERP systems are data-oriented applications. There are tools for customizing ERP systems. Some of these tools are special purpose tools while usage of general purpose development tools gradually increases. 3.3 Workflow Management Systems The Workflow Management (WfM) systems introduced explicit representation of busi- ness processes are used to develop process-oriented applications, which execute a se- quence of tasks. They allow definition of custom process logics and execution of these custom processes using specialized execution engine. Any task could be included in the custom process definition though WfM systems do not provide its business logics out- of-the-box and often tasks are limited to handling data input/output operations. Vendors of WfM initially developed their own methods and tools for development and execution although BPMN recently is widely used to define processes. WfM sys- tems were typically built according to the WfM systems reference architecture. WfM systems do not necessarily relay on centralized data storage and data can be passed directly from one task to another. That introduces a level of decentralization in WfM based applications. 3.4 SOA Applications SOA applications are developed by composing services provided by their providers. That potentially provides a high degree of reusability and possibility to modify appli- cations by replacing services. Web services are the most often used type of services. The web services use open standards making applications widely accessible and porta- ble. That leads to suitability of service-orientation for inter-enterprise integration. Exe- cutable business process modeling languages provide possibilities for model-driven or- chestration of the services, which provide reusable business logics. SOA is used to develop and execute SOA applications and the enterprise service bus is often used to ensure communications among services. Despite services being distrib- uted across multiple hosts, the service bus introduced some level of centralization in the system. The main drawback of SOA applications is execution overhead caused by excessive communication among services. That also increases application execution complexity and requires allocation of significant computational resources. 102 3.5 SaaS SaaS similarly as SOA applications follow the servitization paradigm. In this paper, the SOA applications are strongly associated with SOA as the development and execution platform while SaaS is the end-user facing cloud computing service model. In the case of SaaS, the whole enterprise application is provided over the Internet in a service mode [15]. From the consumer perspective, SaaS provides immediate access to required func- tionality while control over running and modifying the application is limited. From the provider perspective, SaaS provides cost saving opportunities chiefly due to multi-ten- ancy. These applications are deployed in the cloud environment inheriting cloud ena- bled properties such as scalability to deal with computationally intensive operations. SaaS applications can be built following variety of architectural styles. Recently, the microservice architecture [16] has become one of the dominant solutions. It furthers service-orientation by allowing each service to be developed and deployed inde- pendently using its own technology stack. The services communicate among each other using their API. Although web technologies based REST API are frequently used, other types of API are also available and their usage increases. Similarly, to SOA applications there is an execution overhead amplified by decen- tralized integration links. 4 Evolution Cycles Section 3 shows that consecutive generations of enterprise application all have their strengths and limitations. Table 2 summarizes evaluation of types of enterprise appli- cations according to the performance attributes. The main limitation of functional ap- plications is their isolationary nature causing costs increases and limited integration while proprietary technologies make modification difficult if there is lack of skills. ERP systems are built as generic applications what saves costs though might case inefficien- cies for execution of highly specific processes. The usage of standard processes brings benefits or reuse but limits company’s ability to respond to unexpected user require- ments and switching vendors is complicated. WfM systems extend internal integration to multiple applications. Although there are standards for making workflows compati- ble and portable, only simple administrative workflows are reused and implementation of business logics requires costly custom development. In the case of SOA applications, rightsized services could be used efficiently to define applications suitable for specific situations. Timewise, user interactions are often provided using universal web client technologies, which despite their increasing efficiency are still not as efficient as native client technologies. In the case of SaaS, there are often different incentives for service providers and consumers. This paper mainly focuses on consumer benefits and assumes that providers’ benefits are transferred to consumers. SaaS provides a complete busi- ness process development and execution environment. Companies can start-using SaaS quickly when a new business need arises. SaaS relies on web technologies extensively though there is significant share of proprietary technologies as well. The consumers do not have a full control of application and some specific requirements cannot imple- mented. 103 Table 2. Evaluation of types of enterprise applications according to business process perfor- mance attributes Type Cost Time Quality Flexibility Functional Little reuse (-) Possibly task Little integra- Proprietary specific (+) tion (-) technologies (-) ERP Package level Generic (-) Internal inte- Standard pro- reuse (+) gration (+) cesses (-) Real-time pro- Proprietary cessing (+) technologies (-) WfM Limited reuse Task specific Internal inte- Custom pro- (-) (+) gration (+) cess develop- ment (+) Proprietary technologies (-) SOA applica- Service level Universal (-) External inte- Open technol- tions reuse (+) gration (+) ogies (+) Execution overhead (-) SaaS API and Full- Highly task High-perfor- Quick ramp- stack reuse (+) specific (+) mance pro- up (+) Execution cessing (+) Modification overhead (-) Variety of limitations (-) consumers (+) Proprietary technologies (-) Types of enterprise applications at least partially have evolved in parallel though the interest in these types has developed chronologically as shown in Fig. 1. The first cycle of evolution concerns functional applications. They were built according to case spe- cific enterprise requirements using proprietary technologies what manifests the custom- ization approach. The functional applications provided the base functionality for run- ning enterprise applications. However, building custom solutions for every case is costly and integration among individual applications was weak. The ERP systems in- troduced standardized or best practice business processes integrated using the common database. The costs were shared among users of packaged applications. The ERP sys- tems can be perceived as a move towards standardized solutions. The standard pro- cesses with some configuration served well for commodity processes though the one- fit-all approach was not suitable for value-added processes. The WfM systems allowed to specify custom business processes at the cost of limited reuse of business logics. Usage of proprietary technologies and custom processes allow to attribute the WfM systems to the customization approach. Service-orientation came along to further de- velopment of custom processes and brought in reuse of business logics by means of web services. It also adopted web standards to enable integration among enterprises. 104 This way SOA belongs to the standardization wave. The major shortcoming of SOA was additional application execution overhead. SaaS applications are mainly intro- duced to reduce cost and shorten application ramp-up time. The microservice architec- ture allows building very specialized, for instance, high performance data analysis, ser- vices accessible through multitude of channels. That and frequent usage of proprietary technologies for cloud services suggests that this wave belongs to the customization wave. Customization Functional WfM SaaS Service- Next ERP oriented wave Standardization Fig. 1. Evolution cycle of enterprise applications It can be observed that standardization or customization traits may manifest differ- ently in every phase. Additionally, there is no claim that either customization or stand- ardization is a preferred way of enterprise application delivery. Different types of ap- plications are used simultaneously and jointly, for example, many ERP systems as well as SaaS include workflow development capabilities. However, observing this pattern of oscillation it could be hypothesized that: Evolution of enterprise applications follows a cyclical pattern fluctuating from customization to standardization. If the hypothesis is true then the next wave of enterprise application evolution will focus of standardization. The standardization aspects could be related to using decen- tralized technologies to achieve benefits of centralization (in a similar fashion as block- chains), promoting openness (e.g., open data usage and data markets) and seamless integration of various architecture styles. 5 Conclusion The paper has demonstrated that evolution of enterprise applications has responded to challenges faced by companies in business process execution. The evolution has been strongly affected by customization and standardization tendencies in development of enterprise applications. Similar patterns can be observed in other areas of information technology as well, for instance, fluctuation between centralized and decentralized computing in IT management and emergence of two-speed IT in product development. It is important to note that evolution of enterprise applications is not a linear, sequen- tial process and various types of enterprise applications are complementary. Similarly, the evaluation of enterprise applications according to the performance attributes focuses only on the main tendencies and there are overlapping, contradictions and alternative 105 interpretations. Enterprise applications evolve along multiple perspectives (develop- ment, usage, customization, etc.) and these perspectives are often difficult to separate and the overall picture would grow overly complex. The main limitation of the paper is that hypothesis is based on limited number of observations and there are no easy means to prove it. One of possibilities is to look at evolution of individual enterprise applications to trace possible alterations between cus- tomization and standardization. An indirect evidence shows that indeed in practice the development approaches fluctuate in time. Evaluation by means of extended literature analysis or expert interviews also would be prone to judgmental interpretation of ob- servations and would have limited practical value. References 1. Denner, M. Püschel, L.C., Röglinger, M. How to Exploit the Digitalization Potential of Busi- ness Processes, Business and Information Systems Engineering, 60, 4, 331-349 (2018) 2. Shehab, E.M., M.W. Sharp, L. Supramaniam and T.A. Spedding. Enterprise resource plan- ning, Business Process Management Journal, Vol. 10 No. 4, pp. 359-386 (2004) 3. Cardoso, J., Bostrom, R. P., Sheth, A. P. Workflow Management Systems and ERP Systems: Differences, Commonalities, and Applications. Information Technology and Management, 5 (3-4), 319-338 (2004) 4. Papazoglou, M.P., Traverso, P., Dustdar, S., Leymann, F. Service-oriented computing: State of the art and research challenges, Computer, vol. 40, no. 11, pp. 38-45 (2007) 5. Benlian, A., Hess, T. Opportunities and risks of software-as-a-service: Findings from a sur- vey of IT executives. Decision Support Systems Volume 52, Issue 1, 232-246 (2011) 6. Hofmann, P. ERP is dead, long live ERP, IEEE Internet Computing, vol. 12, no. 4, pp. 84- 88 (2008) 7. Shankararaman, V., Eng Kit, L. Dale, S. Integrating enterprise system's 3rd wave into IS curriculum, 18th Americas Conference on Information Systems 2012, AMCIS 2012, pp. 1887 (2012) 8. Chung, S.H., Snyder, C.S. ERP adoption: a technological evolution approach, International Journal of Agile Management Systems, Vol. 2 No. 1, pp. 24-32 (2000) 9. Romero, D., Vernadat, F. Enterprise information systems state of the art: Past, present and future trends Computers in Industry, Volume 79, 3-13 (2016) 10. Dumas, M., La Rosa, M., Mendling, J., Reijers, H. A. Fundamentals of Business Process Management, Springer (2018) 11. Uppström, E., CM Lönn, M Hoffsten, J Thorström. New implications for customization of ERP systems. 48th Hawaii International Conference on System Sciences, 4220-4229 (2015) 12. Parthasarathy, S., Sharma, S. Efficiency analysis of ERP packages - A customization per- spective. Computers in Industry, vol. 82, pp. 19-27 (2016) 13. Grabis, J. Optimization of Gaps Resolution Strategy in Implementation of ERP Systems. ICEIS (1), 84-92 (2019) 14. Laudon, J., Laudon, K.C. Essentials of Business Information Systems (7th Edition). Pren- tice-Hall, Inc. Upper Saddle River, NJ, USA (2006) 15. Alex Peng, G.C., Gala, C. Cloud ERP: A new dilemma to modern organisations?, Journal of Computer Information Systems, vol. 54, no. 4, pp. 22-30 (2014) 16. Dragoni N. et al. Microservices: Yesterday, Today, and Tomorrow. In: Mazzara M., Meyer B. eds. Present and Ulterior Software Engineering. Springer (2017) 106