Investigations on user perspective evaluation of some

0 downloads 0 Views 217KB Size Report
performance by implementing a financial model. ..... EasyFit Distribution tools available at http://www. math- ... ability and Statistics”, Schaum's Outline Series,.
Computer, Communication and Electrical Technology – Guha, Chakraborty & Dutta (Eds) © 2017 Taylor & Francis Group, ISBN 978-1-138-03157-9

Investigations on user perspective evaluation of some reliability aspects of web services Subhash Medhi, Abhijit Bora & Tulshi Bezboruah Department of Electronics and Communication Technology, Gauhati University, Assam, India

ABSTRACT: Web services have emerged as a web based technology for accessing information over the internet using platform neutral web standards and protocols. In this paper we propose to develop and implement a service oriented prototype research service application using. Net technology to study and predict reliability aspects of web services. The uniqueness of our proposed system is the hierarchically designed parent service that authenticates a particular user to invoke services, acting as a service broker and redirects the query to execute children services, acting as a service provider. An automated software testing tool, Mercury LoadRunner is deployed to test and record the specific attributes of the web services and analyse the reliability aspects of the services. The outcome of the experiment will help in adoption and usage of the web services in business applications and integrations. We present here the architecture, procedure of testing, transaction status and reliability estimation of the system under gradual stress of end users. 1

ability of software becomes a major concern of the companies as unreliable software may lead to huge economic loss and also may degrade the reputation of an organization. The software failure depends on the software and hardware. Hence, it is essential to assess the reliability of software in parallel to hardware reliability. The software reliability is a probabilistic measurement that can be defined as the probability that the software runs without failure during a specified period of time for a specified environment (Goel, 1985). Many analytical models have been developed to estimate the reliability of software that helps to develop high quality software. In this paper we emphasize on recording the quality attributes of the WS using mercury LoadRunner automated testing tool and used statistical method for data analysis to predict the reliability aspects of the service.

INTRODUCTION

Web Service (WS) technology follows Service Oriented Architecture (SOA) that provides remote procedure call mechanism in distributed environment over the web. Once WS is deployed, various heterogeneous organizations that are running on diverse networks can be interconnected for business processes. The coordination leads to composite services. It is an important issue to assess the trustworthiness of composite WS built on different networks and languages (Duhang et al., 2006). The ever growing reliance on the data and services provided by various WS vendors endorsed these services to be of superior performance and reliable as these services offered over the internet have rapidly permeates our lives due to the convenience and low cost factors (Gokhale Swpana S, Paul J. Vandal and Jijun Lu, 2006). In widespread application of internet technology, WS applications such as online shopping, banking, travel booking, stock trading have been adopted and developed tremendously (Suichang Wang, Fei Ding, 2013). WS is becoming more familiar to the people due to the recent development and applications over the internet as many top companies such as Microsoft, IBM, Oracle and SUN have launched supports for technologies related to WS (Hou et al., 2010). An important quality aspect of software is the capability to which it can perform to its intended operation. The reliability attribute is one of the important qualities of services that affects in overall performance of a WS system. Thus the reli-

1.1

Related works

Abdelkarim et al. (2006) had elaborated some recovery policies to handle and recover from service faults during WS composition. Duhang et al. (2006) had introduced an approach to predict the reliability of WS composition by transformation of Business Process Execution Language (BPEL) specifications into Stochastic Petri Nets (SPN) model. Pat et al. (2007) had identified some parameters that can impact the WS dependability. They had elaborated the methods of dependability enhancement by redundancy in space and time. Gokhale et al. (2006) had proposed Stochastic Reward Net (SRN)

75

Downloaded by [subhash medhi] at 04:37 13 March 2017

ent application, (ii) one parent service where users are authenticated and, (iii) a Computing Agents (CA) to execute Business Logic (BL) components. The authenticated user query parameters are redirected to the service agents for executing BL solutions. The Mercury Load Runner is deployed to perform the load test on the proposed model. The prototype WCF service has been developed to cover all facilities that a bank ATM facilitates to a customer. We implement the service using C# language, Microsoft Internet Information Server (IIS) as Web Server and database with Microsoft Structured Query Language (SQL) 2005, and MS Visual Studio 2012 as Integrated Development Environment (IDE). A client application has also been developed to invoke the service in the same environment. The database size for testing the proposed service is 15,000. The service application has been tested against 200, 400, 600, 900, 1100 and 2000 Virtual User (VU) by deploying it on Mercury LoadRunner to evaluate the reliability attributes of the WS. The statistical analysis is done over the recorded attributes to estimate the reliability of the WS.

based analysis methodology to quantify the performance and reliability tradeoffs. Lizun et al. (2009) had proposed a reliability modeling framework for system reliability and suggested that dynamic modeling and decomposed models reflect the characters of SOA systems and supportive to reliability analysis. Hou et al. (2010) had suggested that WS performance can be improved by optimizing SOAP messages and adopting suitable methods. Bora et al. (2014) presented an empirical study on hierarchical SOAP based WS by implementing WS Security policy. They had elaborated that the response time with security, encryption and signature is more than without security. Medhi et al. (2014) had performed empirical and statistical analysis of hierarchical WS performance by implementing a financial model. Bezboruah et al. (2015) had performed an evaluation of performance of hierarchical WSs using a cluster and non cluster web server. Bora et al. (2015) had proposed a quality evaluation framework for multi service SOAP based WS. The uniqueness of our proposed work from the previous works is that we have performed investigations on user perspective evaluation of some reliability aspects of WS by monitoring HTTP transactions using Microsoft’s service oriented application building framework Windows Communication Foundation (WCF). The novelty of this work is that we have monitored the transactional status, reliability analysis and prediction of the system under massive stress of concurrent end user request. 2

3 SOFTWARE AND HARDWARE SPECIFICATION The software specifications at server side are: (a) IIS 7.5 as Web Server, (b) MS SQL version 2005 as database server, (c) Microsoft Visual Studio version 2012 as Integrated Development Environment (IDE), (d) Internet Explorer as web browser and (e) Windows Server 2008 as Operating System (OS). The software tools such as Microsoft SDK version 7.1 and EasyFit, version 6.5 are used. The hardware configuration includes Intel(R) Xenon(R) CPU E5620 processor with 2.4 GHz speed, 8 GB RAM and 600 GB hard drive. The load generator machine contains the software testing tool such as Mercury LoadRunner. We have created the service script by using the testing tool. The load was given on the WS from a remote desktop PC whose OS is windows XP. The hardware configurations for the remote desktop PC are: (i) Intel(R) Pentium (R) Dual CPUE2200, (ii) Processor speed: 2.2 GHz, (iii) RAM: 1GB and (iv) Hard drive: 150 GB.

PROPOSED WORK AND METHODOLOGY

The objective of the proposed work is to implement a hierarchical electronic Automated Teller Machine (e-ATM) service using WCF technology to study the reliability aspects of the service. The proposed financial prototype service has three tiers compositions as shown in Figure 1, namely: (i) a cliSen-ice Station Load Station Client PC

I

Parent service

I

I

t

-~~---r---r------~

I I I I

4 AUTOMATED TESTING TOOL

I I I

I

:.._-------------.--

-----------------t+

The Mercury LoadRunner was deployed to test the services. The Mercury LoadRunner can produce real sense of Virtual User (VU) to stress the system and retrieve information from database servers through web servers (Load Runner, 2016). We have monitored some parameters as displayed

Business Logic Executing Service Agent

L-------------------Figure 1.

Proposed service architecture.

76

To further ascertain the distribution, we use EasyFit (EasyFit distribution tool, 2016) parameter estimating statistical software, version 5.6 to estimate the value of shape (α) and scale parameter (β) which is found as α = 26.11 and β = 178300 respectively. The weibull Cumulative Distribution Function (CDF) is calculated using the following formula (1) (Chandra et al, 1981) for each FC.

in the Load Runner controller. We have recorded the results for statistical analysis. During the testing, a user was set for a think time of 30 s in one transaction and the average steady state period was set for 300 s for each test.

Downloaded by [subhash medhi] at 04:37 13 March 2017

5

TESTING PARAMETERS

The test settings are: (i) think time that a user delayed time for performing successive operations, (ii) work load intensity measured in terms of gradually increasing VU and, (iii) the network speed, which specifies the Bandwidth (BW) of a network. By generating load and gradually increasing stress over the service, we have monitored the HTTP transactions to see how the service performs in real time and its potential bottlenecks. During the testing schedule, we have monitored the number of successful and failure transactions of the service. 6

CDF

)

}

The Kolmogorov Smirnov (KS) GoF test is used to test whether a sample comes from a population with a specific distribution. In the test, the assumed distribution is correct, if the maximum departure between the assumed CDF (Fo) and the empirical CDF (Fn) distributions is small. We have calculated the intermediate values for KS GoF test for weibull distribution. It is seen that the KS GoF test statistic value Dmax (0.14376) is smaller than the KS table critical value (0.24) for α = 0.05 and a sample of size n = 30. Based on these results, we do not reject the hypothesis that the obtained CDF of the FC is distributed weibull (α = 26.11, β = 178300). Hence, the population from where these data were obtained is distributed weibully.

We have conducted the empirical test at different stress level VU such as: 200, 400, 600, 900, 1100, 1400 and 2000 with maximum BW of 1GBPS. A test case for select operation has been prepared for accessing the ATM service. A data sample against each test is recorded for service metrics. The statistical analysis is carried out over that. The response for 5 minutes duration was considered. The entire load tests were conducted with a ramp up schedule with 1 VU operating for every 15 s. After completion of steady state period of 300 s, all the VU are phased out simultaneously. The different transaction status against massive stress level is given in Table 1. For statistical analysis we have recorded the test for 30 times at 900 VU and the system shows an average connection refusal of 28%. The frequency table and the histogram are shown in Table 2 and Figure 2 respectively. It is observed that the highest density of failure is occurred in the range from 177420.2 to 183430.6. The histogram is skewed left. From these outcomes, we can infer that our Failure Count (FC) distribution is a weibull distribution.

Table 2.

Bin and frequency of failure count at 900 VU.

Failure ranges

Frequency

0–159389 159389–165399.4 165399.4–171409.8 171409.8–177420.2 177420.2–183430.6 >183430.6

1 2 7 8 9 3

HTTP transactions at different VU.

Scenario

VU

Pass

Fail

Total

SQL select operation

200 400 600 900 1100 1400 2000

20489 28699 34568 486031 443837 482628 529208

0 0 0 175319 195749 271696 339527

20489 28699 34568 661350 639586 754324 868735

(1)

6.1 Goodness of Fit (GoF) evaluation using Kolmogornov-Smirnov test

RESULTS AND ANALYSIS

Table 1.

{

1 exp p ( − FC

$ -

3 2 -

F.ai lure:Co ulrt

Figure 2.

77

Histogram of failure count.

6.2

in higher load level such as 900, 1100, 1400 and 2000; the reliabilities estimated are 0.73, 0.69, 0.64, and 0.61 respectively. Thus, we can conclude that the reliability falls with the rising number of service users, i.e. the user will get less response from the WCF based service as the web server refuses at massive concurrent request.

Confidence interval of CDF

We estimate the mean value for CDF at 95% confidence interval for 900 VU. The population mean μ can be computed using equation 2 (Spiegel, M. R, 2000).

μ = x ± tcSD / N

(2)

Downloaded by [subhash medhi] at 04:37 13 March 2017

We consider the mean value of CDF as x , the critical value from tc (0.05,29), the standard deviation as SD, sample size as N and the margin of error as tcSD/√N. The estimated population mean μ is calculated and given in Table 3. At 95% confidence interval, the mean value of CDF lies between 0.51 ± 0.12, i.e. 0.63 and 0.39. 6.3

7

The overall reliability evaluation for the WCF based service is given in Table 4. In the FC histogram, it is observed that the highest density of FC value is 9 and is occurred in the range from 177420 to 183431 transactions. The FC follows left skewed. Thus we can assume that our FC distribution is a weibull distribution. Using CDF values we have computed the KS statistic using Easy Fit version 5.6. It is a tool for statistical data analysis and simulation that allows fitting probability distributions to make better decisions. In the analysis, it is revealed that the statistics value obtained (0.14386) is smaller than the critical value (0.2417) at α = 0.05 which indicates that the assumed samples were from a population with a specific distribution is weibull. Based on the software analysis results we can conclude that the observed data adequately fits in the weibul distribution. We have evaluated the reliability of our proposed system by increasing VU. For lower

Reliability estimation

Reliability of a system is estimated over phases of time that the system executes without failure in specified period. We have calculated the reliability of our proposed system using average FC and HTTP transactions from 30 sample data i.e FC = 175319, HTTP transaction = 661350. The probability of failure (Pf) is calculated as FC/Total HTTP i.e 175319/661350, Pf = 0.27. The probability of success is the reliability and can be calculated as reliability (R) = 1–Pf = 0.73 (Martin L, Shooman, 2002). Thus the reliability is the probability of no failure within a specified period in a specified environment. Reliability can also be estimated using equation (3) as in (Lizun et al., 2009). R

e − λt

Table 4.

(3)

where, λ is failure rate. It is a probability density function for operational time, λ (t). The execution time unit is considered as one day, so we set t = 1, the reliability becomes R = e–λ. In practice reliability can be measured approximately using equation (4). R = 1− λ

OVERALL RELIABILITY ASSESSMENT

Overall reliability evaluation of the service.

Experimental observation

Results

HTTP transaction failure against 200,400,600 HTTP transaction failure against 900, 1100,1400,2000 FC Histogram against 900 VU

Not observed

(4) Nature of failure distribution K-S test of GoF at 95% confidence level CDF

Thus we estimate the following reliabilities at incremented VU level: R(9000) = 0.73, R(1100) = 0.69, R(1400) = 0.64, R(2000) = 0.61. It is observed that the reliability is falling with the rising number of VU. We performed the test at different VU and observed that the reliability at 200, 400 and 600 VU is 1. For these load level, the system will be served as expected to the user’s request. However,

Reliability up to 600 VU

Reliability for 900 VU Table 3.

Estimated values for μ.

N

tc(0.05,29)

Parameter

x

SD

tcSD/√N

30

2.045

CDF

0.51

0.31

0.12

Reliability more than 900 VU

78

Observed and increases gradually Left skewed with highest failure density 9 in the range from 177420 to 183431 Weibull Failure distribution fits Weibull Mean CDF is 0.51 and lies in between 0.63 to 0.39 R = 1. Strong reliability. Consumer will get expected response R = 0.73, Moderate reliability with the probability of failure occurrences Service response degrades gradually.

number of VU up to 600, the reliability estimated to be 100% and the reliability decreases at higher number of VU, that is 73%, 69%, 64%, 61% against 900, 1100, 1400 and 2000 VU respectively.

Downloaded by [subhash medhi] at 04:37 13 March 2017

8

Proceedings of the World Congress on Engineering, 2013, Vol II, pp. 891–896, WCE 2013, July 3–5, 2013, London, U.K. Bora, A., Bezboruah, T. (2014). “Investigation on Security Implementation and performance Aspects of MedWS: a Hierarchical SOAP based Web Service”, International Journal of Database Theory and Application, Vol. 7, No. 4, pp. 169–188, DOI: http:/dx.doi. org/10.14257/ijdta.2014.7.4.13, 2014. Chandra, M, Singpurwala, N.D and Stephen, M.A. Kolmo-gorov (1981). “Statistics for Test of Fit for the Extreme Value and Weibull distribution”, Journal of the American Statistical Association, Taylor & Francis, Vol. 76, No. 375, pp. 729–731. Duhang Zhong and Zhichang Qi. (2006). “A Petri Net Based Approach for Reliability Prediction of Web services”, School of Computer Science, National University of Defence Technology, Changsha, China. EasyFit Distribution tools available at http://www. mathwave.com/easyfit-distribution-fitting.html, Retrieve on 2015. Goel A. L. (1985). “Software reliability Models: Assumptions, Limitations, and Applicability”, IEEE Transactions on Software Engineering, Vol SE 11, No. 12, pp. 1411–1423. Gokhale Swapna S, paul J. Vndal and Jijun Lu: “Performance and Reliability analysis of web server Software Architectures”, 12th Pacific Rim International Symposium on Dependable Computing (PRDC, 06). Hou Zhai-wei, Zhai Hai-xia, Gao Guo-hong (2010). “A Study on Web Services Performance Optimization”, Proceedings of the Third International Symposium on Electronic Commerce and Security Workshops, pp. 184–188. Lizun Wang, Xiaoying Bai, Lizhu Zhou and Yinong Chen (2009). “A Hierarchical Reliability Model of Services Based Software System”, 33rd Annual IEE International Computer Software and Applications Conference. Loadrunner (2015). Available at http://www.en.wikipedia. org//wiki/HP_LoadRunner, Retrieve on 2015. Martin L. Shooman (2002). “Reliability of computer systems and networks: Fault Tolerance, Analysis, and Design”, Polytechnic University and Martin L. Shooman & Associates. Medhi, S., Bezboruah, T. (2014). “Investigations on implementation of e-ATM Web services based on .NET technique”, International Journal of Information Retrieval Research, Vol. 4 Issue. 2, pp. 41–56. Pat. P. W. Chan, Michael R. Lyu and Miroslaw Malek (2007). “Reliable Web Services: Methodology, Experiment and Modeling”, IEEE International Conference on Web Services, USA. Speigel, M. R. (2000). “Theory and problems of probability and Statistics”, Schaum’s Outline Series, MaGraw-Hill Book Company, SI edn, 2000.

CONCLUSION AND FUTURE WORK

In this paper we have conducted user perspective evaluation of some reliability aspects of WS implementing a financial e-ATM model. The proposed model was tested in an automated testing tool Mercury LoadRunner by randomly varying VU. We have observed that the reliability of the system is strong up to 600 VU. Then it decreases gradually with higher number of VU. This occurrence of service failures may be attributed to database server or system resources. The experimental study revealed the strong evidence of availability, scalability and reliability of the proposed service to communicate with massive number of VU. As part of the future work we propose to investigate more reliability aspects of WS which can highlight the reliability of the system. ACKNOWLEDGEMENT The acknowledgement goes to the All India Council of Technical Education (AICTE), Govt. of India for the financial support towards the work (F.No. 8023/BOR/RID/RPS (NER)-84/2010–2011 31st March 2011). REFERENCES Abdelkarim, E, Maheswary, P., Vladimir, T. (2006). “Recovery Policies for Enhancing Web service Reliability”, IEE International Conference on Web Services (ICWS’06). Bezboruah, T and Bora, A. (2015). “Performance Evaluation of Hierachical Soap Based Web Service in Load Balancing Cluster-Based and Non-Cluster Based Web Server”, International Journal of Information Retrieval Research, Vol. 5, Issue 4, pp. 20–31. Bora, A and Bezboruah, T. (2015), “Some aspects of QoS for Interoperability of Multi Service Multifunctional Service Oriented Computing”, IEEE International Conference on Research in Computational Intelligence and Communication Network, pp. 363–368, India. Bora, A., Bezboruah, T. (2013). “Investigations on Hierachical Web service based on Java Technique”,

79

Downloaded by [subhash medhi] at 04:37 13 March 2017