A Comparative Analysis of Reliability Assessment Methods for Web-Based Software

A Comparative Analysis of Reliability Assessment Methods for Web-Based Software

Jinhee Park (Korea Advanced Institute of Science and Technology, Daejeon, South Korea), Yeong-Seok Seo (Korea Advanced Institute of Science and Technology, Daejeon, South Korea) and Jongmoon Baik (Korea Advanced Institute of Science and Technology, Daejeon, South Korea)
Copyright: © 2013 |Pages: 14
DOI: 10.4018/ijsi.2013100103
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

As web technology has advanced, many business software applications are built on the web. In such web environment, it has become very important to ensure the reliabilities of web-based software systems such as Software as a Service (SaaS) or Service-Oriented Architecture (SOA) based systems because service failures in those systems may have an effect on extensive users. With the comparison to the reliability studies on traditional software, there are only a few studies on the reliability of web-based software. The dynamic environment of the web makes it much more complicated to assess the reliabilities of web-based software. In this paper, the authors investigate the characteristics of reliability assessment methods for web-based software such as SaaS and SOA based software systems. The authors also evaluate those methods based on hypothetical execution scenarios to analyze the strengths and weaknesses of each method. This analysis helps us to identify remaining problems on the reliability research in the web environment and provides insight into possible solutions.
Article Preview

Introduction

With the shift of a software development paradigm, web-based software has gained in popularity. Since the web environment is easy to access and provides immediate feedback on software modifications, software in this environment is very attractive to the companies that attempt to reduce development costs and respond to rapid technological advance. In recent years, as the flexibility towards a platform and the reusability of software are emphasized, Service-Oriented Architecture (SOA) has been developed. SOA based systems are now providing various services to potential worldwide users, and the IT infrastructures of many companies have been commonly implemented as the SOA based systems. More recently, as a cloud computing service market has rapidly grown, the concept of IT assets is shifting from owning to renting. While most of companies individually owned software assets in the past, they are widely renting software systems by adopting Software as a Service (SaaS) delivering software via the web. With the fast growth of the cloud computing market, its scale is expected to reach $420 billion in 2012 from $160 billion in 2008 (Mirzaei, 2008). According to the announcement of Gartner, 80% of the Fortune 1,000 companies would use some form of cloud services by 2012 (Garter, 2008).

In spite of the popularity of web-based software systems, they still suffer from various critical failures. These failures or service interruptions often cause extensive damages because they affect massive users. For example, due to the disabled cloud center of Amazon, the cloud services such as Foursquare (location-based SNS), Quora (social Q&A site), Zynga (social gaming site) have been discontinued for about thirty minutes in April 2011 (Amazon, 2011). It badly affected many of the Fortune 1,000 companies and hundreds of others. In addition, the overloaded Gmail servers due to the changes of a re-routing code caused a global outage in September 2009 (Gunawi et al., 2012). Since such impacts on users (i.e., individuals or companies) can be fatal, it is necessary to assure the high quality of web-based software systems. In particular, software reliability, which is often used for estimating the current state of software quality and predicting the occurrence of failures, is a precondition for a software quality assurance.

To assess the reliability of traditional software, multiple types of reliability models have been developed over the 40 years (Lyu, 1996). In particular, Software Reliability Growth Models (SRGMs) for a monolithic application have been often used to verify that software has achieved the reliability objective before release. They provide an analytical framework for describing a phenomenon that the reliability grows as the residual faults of software are removed during operational testing. Test managers can determine a software release date by assessing the software reliability at certain times of testing. As another major class of software reliability models, Component Based Reliability Models (CBRMs) have been employed to predict the software system reliability. These models reflect the internal structure of software and are applicable in the software design phase (Goseva-Popstojanova & Trivedi, 2001). They are usually classified into the four groups such as additive models, path based models, state based models, and UML based models. Using these models, the authors can find the optimal architecture in terms of reliability and understand how the reliability of each component affects the reliability of an entire software system.

Complete Article List

Search this Journal:
Reset
Open Access Articles: Forthcoming
Volume 6: 4 Issues (2018): 1 Released, 3 Forthcoming
Volume 5: 4 Issues (2017)
Volume 4: 4 Issues (2016)
Volume 3: 4 Issues (2015)
Volume 2: 4 Issues (2014)
Volume 1: 4 Issues (2013)
View Complete Journal Contents Listing