Научная статья на тему 'Fuzzy production network model for quality assessment of an information system based on microservices'

Fuzzy production network model for quality assessment of an information system based on microservices Текст научной статьи по специальности «Компьютерные и информационные науки»

CC BY-NC-ND
111
21
i Надоели баннеры? Вы всегда можете отключить рекламу.
Ключевые слова
microservice architecture / service-oriented architecture / quality of service / business process / information system / fuzzy model

Аннотация научной статьи по компьютерным и информационным наукам, автор научной работы — Alexey I. Doljenko, Irina Yu. Shpolianskaya, Sergey A. Glushenko

This article describes the analysis of the quality of microservice architectures, which are one of the main approaches to the creation and maintenance of modern information systems capable of quickly respond to changes in business demands. The implementation of continuous delivery of software components for dynamic business processes of information systems can be carried out by various sets of microservices, the optimal choice of which is a complex multi-alternative task. The paper presents a review of existing approaches to solving the problem, which showed that the development of models for assessing the quality of microservices of information systems requires further elaboration in terms of accounting for uncertainty in the initial data and modes of operation. The authors have proposed an approach to solving the problem of analyzing the quality of a microservice architecture which is implemented on the basis of a fuzzy production network model. The model allows for comprehensive accounting of various parameters (qualitative and quantitative). The article shows the implementation process of the fuzzy production network that was developed to analyze the functional quality of the microservice architecture for processing customer orders using fuzzy modeling software. The results of the analysis will allow managers and system architects to make an informed choice of the microservice architecture of the information system, as well as use it in their reports when arguing the need for scaling the system and increasing the availability of microservices.

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Fuzzy production network model for quality assessment of an information system based on microservices»

DOI: 10.17323/2587-814X.2020.4.36.46

Fuzzy production network model for quality assessment of an information system based on microservices

Alexey I. Doljenko ©

E-mail: [email protected]

Irina Yu. Shpolianskaya

E-mail: [email protected]

Sergey A. Glushenko ©

E-mail: [email protected] Rostov State University of Economics

Address: 69, Bolshaya Sadovaya Street, Rostov-on-Don 344002, Russia

Abstract

This article describes the analysis of the quality of microservice architectures, which are one of the main approaches to the creation and maintenance of modern information systems capable of quickly respond to changes in business demands. The implementation of continuous delivery of software components for dynamic business processes of information systems can be carried out by various sets of microservices, the optimal choice of which is a complex multi-alternative task. The paper presents a review of existing approaches to solving the problem, which showed that the development of models for assessing the quality of microservices of information systems requires further elaboration in terms of accounting for uncertainty in the initial data and modes of operation. The authors have proposed an approach to solving the problem of analyzing the quality of a microservice architecture which is implemented on the basis of a fuzzy production network model. The model allows for comprehensive accounting of various parameters (qualitative and quantitative). The article shows the implementation process of the fuzzy production network that was developed to analyze the functional quality of the microservice architecture for processing customer orders using fuzzy modeling software. The results of the analysis will allow managers and system architects to make an informed choice of the microservice architecture of the information system, as well as use it in their reports when arguing the need for scaling the system and increasing the availability of microservices.

Key words: microservice architecture; service-oriented architecture; quality of service; business process; information system; fuzzy model.

Citation: Doljenko A.I., Shpolianskaya I.Yu., Glushenko S.A. (2020) Fuzzy production network model for quality assessment of an information system based on microservices. Business Informatics, vol. 14, no 4, pp. 36-46. DOI: 10.17323/2587-814X.2020.4.36.46

Introduction

Microservice architecture is an evolution of the service-oriented architecture (SOA) of information systems (IS). Microservice architecture assumes weak cohesion and strong cohesion of software components, as well as the possibility of their implementation on various technological platforms [1]. At the same time, the issues of choosing a microservice architecture have common principles with the choice of web services for a service-oriented architecture. That demonstrates the similarity of methodological approaches to the procedures for selecting SOA and microservice architectures of information systems.

The technology platforms for implementing microservices can be different, and different vendors can supply microservices. That determines the importance of the problem of quality assessment of a set of microservices for IS developers to implement the information system's business tasks more effectively. A business task is an ordered set of activities that, following some rules, transform resources to achieve the planned result [2]. As an example, we can mention such business tasks of the information system as interaction with customers, order processing, order execution.

API Gateway and Message Bus approaches are used in microservice architecture development in order to organize the interaction of microservices.

The API Gateway sits between clients and microservices (Figure 1). The API Gateway is a single point of interaction with microser-

vices for clients, ensuring that client requests are redirected to a specific service — a business task. API Gateway can also act as a load balancer.

Microservices subscribe to specific events that trigger the execution of a given business task when the Message Bus is used (Figure 2).

Within the microservices architecture, microservices do not exchange messages, i.e., they do not interact directly. That eliminates the impact of the service quality of one microservice on another. It should be noted that even

Fig. 1. Microservices architecture with API Gateway

Fig. 2. Microservices architecture with Message Bus

if one or more microservices may fail, the other microservices will continue to function. That is guaranteed through the weak cohesion of microservices in the microservice architecture. At the same time, the operation quality of the IS may decrease, but the failure of the entire system does not occur.

The choice of the optimal set of microservices that implements the business tasks of the information system with a given level of service quality is an important task for increasing the efficiency of IS [3]. Decision-making processes during the execution of this task proceed under conditions of significant uncertainty, which arises due to a lack of data, the complexity of building functional dependencies that determine the quality of the implementation of business functions, as well as sets of microservices implemented on various technological platforms. In addition, the quality of performance of business functions by microservices depends on functional (qualitative) and non-functional (quantitative) parameters, which increases the complexity of decision making.

1. Review of the literature

Further, we consider the existing approaches to solving the problem of selecting the optimal set of microservices and building a model of the microservices architecture of the information system.

In paper [4], the author analyzes the process of modeling microservices in the corporate IS, types of micro-service architectures, ways of interaction between microservices, as well as ways to ensure high application performance. The proposed methodology allows you to create scalable and fault-tolerant applications. However, it does not consider the quality of implementation of business functions with microservices, and that reduces the value of the proposed approach.

The work in [5] considers the problem of selecting IT services for implementation in the organization. The author notes that decisionmaking when choosing an enterprise's IT services is carried out in conditions of uncertainty and ambiguity. The proposed structural synthesis model is used to develop a service-oriented enterprise architecture. The model uses an oriented hypergraph that takes into account the constraints of alternative design solutions. The choice of the best option for a set of information services is made according to the specified additive criteria. In general, the proposed approach to solving the problem of selecting IT services for an enterprise can be used in the design of microservices and service-oriented architectures of corporate IS. However, the structural synthesis model does not take into account the uncertainty in the initial data, the quality of IT services that implement business processes, as well as the risks of using microservices on various technological platforms within the information systems.

In [6], the authors proposed using the SOA concept in the Enterprise Architecture framework. They presented an axiomatic method for domain modeling. Domain knowledge is represented as a set of structural elements. The modes match the set of business functions to a set of information services with some restrictions (standards and standardized decisions). Formalization of the rules for constructing the utility function of the IT services elements and decision rules can be used for the integral assessment of design decisions. The authors describe conditions for the formation of a knowledge base based on the structural, mathematical and conceptual foundations of decision-making systems for a given domain when choosing competitive service-oriented architectures of the organization. At the same time, the authors do not analyze the risks of implementing web services, in particular, cloud services, as well as limitations associ-

ated with uncertainty in assessing the quality of implementation of some business processes of an organization by web services.

The work in [7] considers the problem of assessing the technological level of IT services. The author notes that the task belongs to the class of semi-structured problems. She proposes to use fuzzy sets to assess the technological level of the formed variant of the strategic IT profile — a set of IT services. When forming linguistic variables for unified indicators, the trapezoidal type membership functions on the segment [0,1] are used. The value of aggregated unified indicators is obtained with the double convolution method, and the indicators are ranked based on the Fishburne rule. To assess the parameters of the technological level of the design solution formed in this way, the author proposes to use the ratio of the ranked indicators of the dynamic and static parts of the formed variant of the strategic IT profile. Analysis of the approach proposed in [8] shows that the author has attempted to take into account the uncertainty in setting unified indicators of the quality of IT services in the model for assessing the technological level of IT services. However, the correctness of the fuzzy model is not discussed in the work. Besides, when preparing the initial data for a fuzzy model, it is quite difficult for experts to determine the estimates to form the trapezoidal membership function parameters. The above doubts about the legality of using the fuzzy model can be eliminated by adjusting the parameters of the membership functions of a fuzzy model, but the paper does not address these issues [8].

In [9], the issue of choosing the correct criterion for comparing web services for systems in service-oriented architecture is considered. The author considers the sensitivity of performance to be such a criterion when the load on the web service changes. At the same time, the use of reliability and performance of web services limits the application of this approach to

solving the problem of choosing a set of corporate IS web services.

In [10], the use of fuzzy models when choosing a corporate service-oriented architecture is discussed. The model uses functional and non-functional criteria. Non-functional criteria take into account one-time, recurring and indirect costs. Functional requirements are determined by expert judgment. The economic aspect of the web services selection problem predominates in the model and does not consider other significant issues of the problem solving.

The work [11] considers the problem of synthesizing a configuration option for a service-oriented IS architecture. Structural models were proposed for the synthesis of the information system architecture. The author gives a conceptual scheme for synthesizing a variant of a service-oriented architecture configuration, although it is difficult to understand the mathematical model for solving the problem.

The tasks of choosing web service, as well as the formation of effective criteria and selection methods, are considered in [12]. A typical procedure for selecting appropriate web services from a set of alternatives for subsequent integration into an information system is based on requirements that describe the quality of service [13]. When modeling IS with a service-oriented architecture, the selection of appropriate web services from a set of available services with a given quality of service for non-functional requirements, such as performance, reliability, security, response time, etc., is performed [14—16].

Many of the non-functional properties of web services, such as response time, are stochastic in nature. A dynamic service deployment environment, due to different network conditions, delays, and server overload, can lead to deviations in the values of nonfunctional indicators of service quality [17]. Some

web services in a particular set for an information system may require significantly longer execution times, which in turn will increase the total cost of ownership.

Several methods have been developed based on the quality of service characteristics to select appropriate web services from a set of candidates with similar functions. Most of these methods focus on analyzing the non-functional characteristics of web services as the main factors influencing their choice. In [18], the authors proposed a systematic approach to assessing the quality of composite services with complex structures, taking into account the probabilities and conditions of each execution. In [19], evolutionary algorithms for solving the problem of web services selection were discussed.

The above review of literature shows that the existing approaches to solving the problem of choosing the optimal set of microservices for IS do not fully take into account the factors that determine such a choice, which leads to decreased efficiency of information systems in operation. Thus, the issues of developing models for assessing the quality of IS microservices require further development in terms of accounting for uncertainty in the initial data and modes of operation.

2. Fuzzy methods and models

The model for analyzing the quality of the microservices architecture should take into account the qualitative and quantitative parameters of the information system performance, as well as uncertainty in the evaluation of the initial data. These requirements can be successfully implemented with fuzzy models, which make it possible to perform an integrated assessment of various parameters (qualitative and quantitative). In addition, the use of fuzzy models makes it possible to build models of subject areas characterized by significant uncertainty, which is relevant to solving the problem.

When constructing a model for analyzing the operational quality of a microservice architecture, it is proposed to use fuzzy production networks [15]. A fuzzy production model is based on fuzzy production:

IFx is A, THEN y is B,

where x — an input variable, x e Х;

X — the domain of definition of the antecedent of the fuzzy rule;

А — a fuzzy set defined on X;

HA (x) e [0,l] — the membership function of a fuzzy set А;

y — an output variable, y e Y;

Y — the domain of definition of the consequent of the fuzzy rule;

В — a fuzzy set defined on Y;

HB (j) e [0,1] — the membership function of a fuzzy set B.

Let us assume that the membership function of a fuzzy set А — fiA (x) is known, and the fuzzy binary relation R cz Xx Y, which reflects the implication А —> В, has a membership function ¿iR (x, j). Then, for a fuzzy set B, the membership function is determined by the composition rule:

xeX

where sup — the operation of determining the upper bound of the set of elements;

T — the T-norm operation.

In a fuzzy production model (FPM), input variables are fuzzified to obtain the values of linguistic variables. At the output, we will have a linguistic variable that characterizes the quality of service of a business task by a microservice. We define input and output linguistic variables on the following term sets: Tin/out = {"low" (L), "middle" (M), "high" (H)}. The L term corresponds to a input low level or low quality of service of the microservice business function, the M term corresponds to the medium level, and the H term — to the high level.

Input linguistic variables are converted to outputs using a set of production rules.

3. Method implementation

Let us consider the problem of analyzing the quality of service of the IS microservice architecture for processing customer orders of the company as an example of the implementation of the proposed approach. The information system includes the following business tasks: interaction with customers, order processing, and order fulfillment. These functions can be realized by microservices implemented on various platforms. When designing a microservice architecture, it is necessary to analyze the quality of microservices performing business tasks and obtain a generalized, integral indicator of the IS service quality.

The developed structure of the fuzzy production network for analyzing the quality of the IS microservice architecture for processing customer orders is shown in Figure 3.

The input parameters for microservices are the intensity of service requests Xn1 (n is the number of the business task/microservice) and the amount of data Xn2 requested/transmitted by the microservice. The input data must be

pre-normalized and reduced to the interval [0, 10]. The normalized input data is fed to fuzzification blocks, which form the values of the linguistic variables Lnm (m = 1, 2) defined on the term sets Tin/out. Linguistic variables enter the input of the corresponding rule base (BRn), which, based on the generated fuzzy products, determines the output linguistic variables Yk (k = 1, 2, 3), which characterize the quality of microservice while performing the business task. The linguistic variables Yk are the input to the BR4 rule base, which evaluates the quality of the information system microservice architecture. The output linguistic variable Y characterizes the quality of the IS microservice architecture as a whole. Experts set the parameters of fuzzy term sets and the rule base.

The data were obtained by summarizing the opinions of experts with the Delphi method, the essence of which is collective expert search forecasting. This method assumes the anonymous survey of experts by several rounds to identify an agreed assessment of a group of experts. According to the approach in [20], the results of the previous round should be announced for additional adjustment of the expert's assessment in the next round.

Fig. 3. The structure of a fuzzy production network BUSINESS INFORMATICS Vol. 14 No 4 - 2020 =

When forming the rule base for the fuzzy inference system for analyzing the quality of the IS microservices architecture, a situation may arise in which a group of experts forms incompatible rules. Some mathematical methods have been used to form rule bases in conditions of the inconsistency of expert opinion [21, 22] to eliminate this problem. The essence of the methods is to add incompatible rules to the rule base based on the confidence level of the experts. The confidence level value for the rule is calculated based on the skill level and the number of experts and is determined by the formula [21]:

where y — the average value of the confidence level;

y. — the estimate provided by the i-th expert; n — the total number of experts in the group; k — the coefficient of competence of the i-th expert.

The difference between the method used and similar methods used in the formation of rule bases in the presence of conflicting expert

assessments consists in taking into account each expert opinion to form a balanced decision, which eliminates the loss of information about the research object. The algorithm of the method and the results of the numerical experiment are presented in [22].

An example of a BR1 rule base for assessing the quality of microservice 1 for a business task of interacting with customers is presented in table 1.

The output linguistic variable Y enters the defuzzification block D, which forms a single crisp value of the quality indicator of the IS microservices architecture.

The implementation of the production model was done using a fuzzy modeling software tool (ST) ModelingFuzzySet [23]. It is necessary to carry out some actions that are described in detail in [24] to perform the process of fuzzy modeling.

At the first step, it is necessary to create a multilevel fuzzy production model using the model designer following Figure 3. The second step involves the creation of a membership function for term sets of input and output linguistic variables. Figure 4 shows the membership functions for the term sets of the input lin-

Table 1.

Fuzzy production rules

Rule designation Antecedent Consequen Confidence level

Rule Base 1 (BR1)

R1.1 (/11 = L a /12 = L) v (/11 = L A X12 = M) v (X11 = MA X12 = L) v (X11 = M A /12 = M) Y1 = H 1

R1.2 (/11 = M A /12 = H) v (/11 = H A /12 = M) v (/11 = L A /12 = H) v (/11 = H A /12 = L) Y1 = M 0.9

R1.3 /11 = H A /12 = H Y1 = L 1

Low Middle High

Fig. 4. Terms of the linguistic variable "The intensity of the customer's requests"

Risk indicator value: 84.6 Confidence level: 0.79

Fig. 5. The terms of the linguistic variable "Quality of microservice 1"

guistic variable (LV) X11 "The intensity of the customer's requests".

When the third step "Setting fuzzy rules" was completed, fuzzy modeling was performed to evaluate the quality of microservice 1 with nor-

malized input variables: the low intensity of client requests ("low" (L)), (X11 = 1.5) and the average amount of transmitted data ("middle" (M)), (X12 = 5.5). As a result, the quality of microservice 1 performing the business task "Interaction with customers" is assessed with

Risk indicator value: 84.0 Confidence level: 0.70

Fig. 6. The results of modeling of the information system microservices architecture quality

the model as high ("high" (H)) with a confidence of 79% (Figure 5).

When modeling IS microservices architecture with a high service quality by microservice 1 and microservice 2 (X14 = 8.2, X24 = 9.5) and an average service quality by microservice 3 (X34 = 7.5), the integral assessment of the information system service quality is high with a degree of confidence 70% (Figure 6).

Conclusion

Thus, the article proposes a fuzzy production model for analyzing the quality of the

microservice architecture of an information system. The results of the analysis can be used when choosing microservices from different vendors, justifying the need to scale the system, and also to increase the availability of microservices. The example shows the possibilities of developing a microservice architecture of an IS using a fuzzy model to analyze the quality of its performance.

In further research in this area, the authors plan to carry out a deep comparative analysis of the results of applying the proposed method and similar approaches. ■

References

1. Malikov S.N. (2017) Construction of the concept of service-oriented approach to management

of information technologies based on the axiomatic method. Information Technologies, vol. 23, no 3, pp. 212—218 (in Russian).

2. Grubnikov S.Yu. (2019) Definition of the "business process" concept: The ontological level. Herald of Tver State University. Series: Economics and Management, no 2 (46), pp. 241—249 (in Russian).

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

3. Dolzhenko A.I. (2014) Tasks of selecting cloud technologies for economic information systems. Vestnik of Rostov State University of Economics, no 4 (48), pp. 22—27 (in Russian).

4. Shitko A.M. (2017) The design of the microservice software architecture. Proceedings of BSTU. Series: Physics and Mathematics. Informatics, no 2 (200), pp. 122—125 (in Russian).

5. Parfenova M.Ya. (2016) Structural synthesis of service-oriented IT architecture profile. Educational Resources and Technologies, no 4 (16), pp. 64-71. DOI: 10.21777/2312-5500-2016-4-64-71 (in Russian).

6. Ouzzani M., Bouguettaya A. (2004) Efficient access to web services. IEEE Internet Computing, vol. 8, no 2, pp. 34-44. DOI: 10.1109/MIC.2004.1273484.

7. Parfenova M.Ya. (2017) Assessment of technological level of formed variants of strategic IT-profile

of the organization on the basis of fuzzy model. Proceedings of the 10-th All-Russian Multi-Conference on Management Problems, pp. 90-92 (in Russian).

8. Newman S. (2016) Building microservices. Saint-Petersburg: Piter (in Russian).

9. Evlanov M.V. (2016) Development of a model and method for choosing a description of rational information system architecture. Eastern-European Journal of Enterprise Technologies, vol. 79, no 2, pp. 4-12 (in Russian).

10. Zatesa A.V. (2010) Fuzzy cost model in terms of service-oriented architecture approach. Economics, Statistics and Informatics, no 6, pp. 162-164 (in Russian).

11. Dushkin D.N. (2012) Sensitivity analysis of web services in the problem of choosing the optimal system configuration with a service-oriented architecture. Control in Large Systems: Collection of Works, no 40, pp. 164-182 (in Russian).

12. Zheng Z., Ma H., Lyu M.R., King I. (2011) QoS-aware web service recommendation by collaborative filtering. IEEE Transactions on Services Computing, vol. 4, no 2, pp. 140-152. DOI: 10.1109/TSC.2010.52.

13. Zeng L., Benatallah B., Ngu A., Dumas M., Kalagnanam J., Chang H. (2004) QoS-aware middleware for Web services composition. IEEE Transactions on Software Engineering, vol. 30, no 5, pp. 311-327. DOI: 10.1109/TSE.2004.11.

14. Menasce D. (2002) QoS issues in web services. IEEE Internet Computing, vol. 6, no 6, pp. 72-75. DOI: 10.1109/MIC.2002.1067740.

15. Piegat A. (2001) Fuzzy modeling and control. Heidelberg: Physica-Verlag.

16. Rosario S., Benveniste A., Haar S., Jard C. (2008) Probabilistic QoS and soft contracts for transaction-based web services orchestrations. IEEE Transactions on Services Computing, vol. 1, no 4, pp. 187-200. DOI: 10.1109/TSC.2008.17.

17. Hwang S., Wang H., Tang J., Srivastava J. (2007) A probabilistic approach to modeling and estimating the QoS of web-services-based workflows. Information Sciences, vol. 177, no 23, pp. 5484-5503. DOI: 10.1016/j.ins.2007.07.011.

18. Zheng H., Zhao W., Yang J., Bouguettaya A. (2013) QoS analysis for web service compositions with complex structures. IEEE Transactions on Services Computing, vol. 6, no 3, pp. 373-386.

DOI: 10.1109/TSC.2012.7.

19. Klein A., Ishikawa F., Honiden S. (2014) SanGA: A self-adaptive network-aware approach to service composition. IEEE Transactions on Services Computing, vol. 7, no 3, pp. 452-464.

DOI: 10.1109/TSC.2013.2.

20. Khubaev G.N. (2011) Obtaining a group expert evaluation of indicators: step-by-step procedure and software. Software and Systems, no 2, pp. 13-16 (in Russian).

21. Sergeeva Yu.V. (2016) Mathematical methods of group expert estimates. Vestnik of Nizhny Novgorod Institute of Management, no 1 (38), pp. 33-40 (in Russian).

22. Sorokin A.A. (2019) Development of rules base for a fuzzy inference system in the conditions

of unharmonious expert's opinion. Control in Large Systems: Collection of Works, no 81, pp. 26-49 (in Russian). DOI: doi.org/10.25728/ubs.2019.81.2.

23. Dolzhenko A.I., Glushenko S.A., Kalugyan K.Kh., Lozina E.N., Cherednichenko A.S. (2010) Production fuzzy network modeling system (PRONES). Certificate of state registration of a computer program, no 2010612952, 25 May 2010 (in Russian).

24. Glushenko S.A., Dolzhenko A.I. (2015) Fuzzy modeling of risks in investment and construction projects. Business Informatics, no 2 (32), pp. 17-27 (in Russian).

About the authors

Alexey I. Doljenko

Dr. Sci. (Econ.), Associate Professor;

Professor, Department of Information Systems and Applied Computer Science, Rostov State University of Economics, 69, Bolshaya Sadovaya Street, Rostov-on-Don 344002, Russia;

E-mail: [email protected]

ORCID: 0000-0002-8168-3290

Irina Yu. Shpolianskaya

Dr. Sci. (Econ.), Associate Professor;

Professor, Department of Information Systems and Applied Computer Science, Rostov State University of Economics, 69, Bolshaya Sadovaya Street, Rostov-on-Don 344002, Russia; E-mail: [email protected] ORCID: 0000-0002-1834-6419

Sergey A. Glushenko

Cand. Sci. (Econ.);

Assocoate Professor, Department of Information Systems and Applied Computer Science, Rostov State University of Economics, 69, Bolshaya Sadovaya Street, Rostov-on-Don 344002, Russia; E-mail: [email protected] ORCID: 0000-0001-9255-9722

i Надоели баннеры? Вы всегда можете отключить рекламу.