2. B. J. D. Kalyani and Dr. Kolasani Ramchand H. Rao
http://www.iaeme.com/IJCET/index.asp 36 editor@iaeme.com
shown in Figure 1. These deployments allow users to take advantage of differences in
various clouds, including price, performance, capability, and availability differences.
Figure 1 Interoperability in a multi cloud environment: Services offered by different
providers interacting with each other.
Also trusting a single cloud is risky as there could be some malicious user or
software who is spying on the data being exchanged. So to deal with these issues
multi cloud environments have gained importance. The term multi cloud is defined as
Multi-cloud strategy [3] is the concomitant use of two or more cloud services to
minimize the risk of widespread data loss or downtime due to a localized component
failure in a cloud computing environment. As an example, a user may leverage
multiple clouds, including community clouds, such as Future Grid [4] , and for-pay
public clouds, such as Amazon EC2 [5] .
The software reliability of the cloud computing is very critical but hard to analyze
due to its characteristics of massive-scale service [6] sharing, wide-area network,
heterogeneous software/hardware components and complicated interactions among
them. Reasons to practice Multi Cloud Strategy are:
• More Architectural Flexibility
• More Technical Control
• Better Security
• Peace Of Mind
• Technical predictability
• Fostering Innovation
2. IMPACT OF SOFTWARE RELIABILITY
Software Reliability is very difficult to achieve due to the complexity of software. The
effect of software is getting more significant as an increasing number of digital
devices are putting into use. The scale and complexity in software also gives rise to
the increase of failure number. The increasing number of faults makes fault location
[9] more difficult and the repair cost rise radically.
For safety critical operations like the software used to control cars, turbines and
nuclear reactors etc software-controlled systems are essential. Defects in safety-
critical software [10] can lead to serious injury or death. For business-critical
operations like software that runs in mobile phones, powers web servers and manages
3. Significance of Software Reliability Assessment In Multi Cloud Computing Systems: A
http://www.iaeme.com/IJCET/index.asp
data centers software reliability is also important. Defects in this type of software can
lead to significant financial losses. This foundational role means that the reliability of
the software is of primary important.
3. SOFTWARE RELIABIL
MCCS
It’s vital that organizations think about how their service will and should operate
when a known failure condition [11] occurs. For example, what should the service do
when another cloud service on which it depends is not available? What
service do when it can’t connect to its primary database? To help organizations we
recommend software reliability assessment life cycle consists of the following phases
as shown in Figure 2. Designing a reliable multi cloud computing service
implementing robust revival mechanisms is an iterative process.
Figure 2
3.1. Failure mode and effects analysis
Failure mode and effects analysis is a key step in the design process for any online
service. Identifying the important interaction points and dependencies of a service
enables the engineering team to pinpoint changes that are required to ensure the
service can be monitored effectively for rapid detection of issues. This approach
enables the engineering team to develop ways for the service to withstand, or
mitigate, faults.
3.2. Design Coping Strategies
Fault-handling mechanisms are also called coping strategies. In the design stage,
architects define what the coping strategies will be so t
something reasonable when a failure occurs. They should also define the types of
instrumentation that engineers should include in the service specification to enable
monitors that can detect when a particular type of failure occurs
Significance of Software Reliability Assessment In Multi Cloud Computing Systems: A
Review
ET/index.asp 37 editor@iaeme.com
data centers software reliability is also important. Defects in this type of software can
lead to significant financial losses. This foundational role means that the reliability of
the software is of primary important.
3. SOFTWARE RELIABILITY ASSESSMENT LIFECYCLE IN
It’s vital that organizations think about how their service will and should operate
when a known failure condition [11] occurs. For example, what should the service do
when another cloud service on which it depends is not available? What
service do when it can’t connect to its primary database? To help organizations we
recommend software reliability assessment life cycle consists of the following phases
as shown in Figure 2. Designing a reliable multi cloud computing service
revival mechanisms is an iterative process.
Figure 2 Software Reliability Assessment Life Cycle
3.1. Failure mode and effects analysis
Failure mode and effects analysis is a key step in the design process for any online
service. Identifying the important interaction points and dependencies of a service
enables the engineering team to pinpoint changes that are required to ensure the
service can be monitored effectively for rapid detection of issues. This approach
he engineering team to develop ways for the service to withstand, or
3.2. Design Coping Strategies
handling mechanisms are also called coping strategies. In the design stage,
architects define what the coping strategies will be so that the software will do
something reasonable when a failure occurs. They should also define the types of
instrumentation that engineers should include in the service specification to enable
monitors that can detect when a particular type of failure occurs.
Significance of Software Reliability Assessment In Multi Cloud Computing Systems: A
editor@iaeme.com
data centers software reliability is also important. Defects in this type of software can
lead to significant financial losses. This foundational role means that the reliability of
LIFECYCLE IN
It’s vital that organizations think about how their service will and should operate
when a known failure condition [11] occurs. For example, what should the service do
when another cloud service on which it depends is not available? What should the
service do when it can’t connect to its primary database? To help organizations we
recommend software reliability assessment life cycle consists of the following phases
as shown in Figure 2. Designing a reliable multi cloud computing service [12] and
Failure mode and effects analysis is a key step in the design process for any online
service. Identifying the important interaction points and dependencies of a service
enables the engineering team to pinpoint changes that are required to ensure the
service can be monitored effectively for rapid detection of issues. This approach
he engineering team to develop ways for the service to withstand, or
handling mechanisms are also called coping strategies. In the design stage,
hat the software will do
something reasonable when a failure occurs. They should also define the types of
instrumentation that engineers should include in the service specification to enable
4. B. J. D. Kalyani and Dr. Kolasani Ramchand H. Rao
http://www.iaeme.com/IJCET/index.asp 38 editor@iaeme.com
3.3. Use Fault Injection
Fault injection [13] is often used with stress testing and is widely considered an
important part of developing robust software.
3.4. Monitor the Live Site
Accurate monitoring information can be used by teams to improve services in several
ways. Organizations can analyze failure and fault data that instrumentation and
monitoring tools [14] capture in the production environment to better understand how
the service operates and to determine what monitoring improvements and new coping
strategies they require.
3.5. Capture unexpected Faults
When using fault injection on a service that is already deployed, organizations target
locations where coping strategies have been put in place so they can validate those
strategies. In addition, cloud providers can discover unexpected results that are
generated by the service and that can be used to appropriately harden the production
environment.
4. SOFTWARE RELIABILITY IN MULTI CLOUD COMPUTING
SYSTEMS
All cloud service providers strive to deliver a reliable experience for their customers.
In essence, a reliable cloud service [15] is one that functions as the designer intended,
when the customer expects it to function, and wherever the connected customer is
located. Cloud Services should be designed to:
• Minimize the impact a failure has on any given customer. For example, the service
should degrade gracefully, which means that non-critical components of the service
may fail but critical functions still work.
• Minimize the number of customers affected by a failure. For example, the service
should be designed so that faults can be isolated to a subset of customers.
• Reduce the number of minutes that a customer (or customers) cannot use the service
in its entirety. For example, the service should be able to transfer customer requests
from one data centre to another if a major failure occurs.
4.1. Recommendations for improving the software reliability in MCS:
• IT management and departments need to realize that cloud providers are an extension
of their internal IT department. The key difference is that with internal departments, it
can be easier to validate, enforce and administer controls to manage risk.
• Choosing a cloud provider who can demonstrate validation of controls. Some of these
controls include audit, data, accessibility, datacenter security controls and data
encryption.
• Opt for a private cloud, or a virtual private cloud, where systems are virtually
separated from each other through an encrypted environment inside a public cloud.
• Analyze which legacy applications are appropriate for the cloud.
• Ask the cloud provider for a definitive disaster recovery plan [16].
• Maintain regular backups of critical cloud-based assets, and protect data through
strong encryption.
• Ask for regular security-event alerts from cloud vendors, and ask them to flag
specific mission-critical assets [17].
5. Significance of Software Reliability Assessment In Multi Cloud Computing Systems: A
Review
http://www.iaeme.com/IJCET/index.asp 39 editor@iaeme.com
• Seek independent audit reports from service providers for greater transparency.
• Add additional security measures [18] to the cloud such as single sign-on access to
multiple cloud applications.
5. CONCLUSION
Software consistency cannot be directly measured, so other related factors are
measured to estimate software reliability and equate it among products. This paper
describes fundamental reliability concepts and a reliability design-time process for
organizations that create, deploy, and/or consume cloud services. It is designed to
help decision makers to understand the factors and processes that make cloud services
more reliable.
ACKNOWLEDGEMENTS
Our thanks to Department of Computer Science and Engineering; Acharya Nagarjuna
University, Director, Secretary, Management, Principal & Department of Computer
Science and Engineering, Swarna Bharathi Institute of Science And Technology,
Khammam for providing necessary facilities to carry out the research work.
REFERENCES
[1] Buyya, R., Yeo, C., Venugopal, S., Broberg, J. and Brandic, I. Cloud Computing
and Emerging IT Platforms: Vision, Hype, and Reality for Delivering Computing
as the 5th
Utility. Future Generation Computer Systems, 25(6), 2009, pp. 599–
616.
[2] Armbrust, M., Fox, A., Griffith, R., Joseph, A., Katz, R., Konwinski, A., Lee, G.,
Patterson, D., Rabkin, A., Stoica, I. and Zaharia, M. above the Clouds: A
Berkeley View of Cloud Computing. University of California at Berkley, USA.
Technical Rep UCB/EECS – 2009-28, 2009.
[3] Weiss, A. Computing in the Clouds. NetWorker, 11(4), 2007, pp. 16–25.
[4] Kleinrock, L. A Vision for the Internet. ST Journal of Research, 2(1), 2005, pp.
4–5
[5] Amazon Elastic Compute Cloud (EC2), March 17, 2010,
http://www.amazon.com/ec2/.
[6] Cheung, R. C. A User Oriented Software Reliability Model. IEEE Transactions
on Software Engineering, 6(2), 1980, pp. 118–125.
[7] Cortellessa, V. and Grassi, V. Reliability Modeling and Analysis of Service-
Oriented Architectures. Test and Analysis of Web Services, 2007, pp. 339–362.
[8] Almorsy, M., Grundy, J. and Müller, I. An analysis of the cloud computing
security problem. Proc. of APSEC 2010 Cloud Workshop, Sydney, Australia,
Nov. 2010, pp. 109–114.
[9] Randell, B. System Structure for Fault Tolerance. IEEE Transactions on Software
Engineering, June 1975.
[10] Wood, A. Predicting Software Reliability. IEEE Computer, November 1996, pp.
69–77.
[11] Zhao, W. Melliar-Smith, P. M. and Moser, L. E. Fault Tolerance Middleware for
Cloud Computing. Proc. of IEEE 3rd International Conference on Cloud
Computing, Jul. 2010, pp. 67–74.
[12] http://www.slideshare.net/d501159/an-introduction-to-designing-reliable-cloud-
services-january-2014.
6. B. J. D. Kalyani and Dr. Kolasani Ramchand H. Rao
http://www.iaeme.com/IJCET/index.asp 40 editor@iaeme.com
[13] Zou, F. Z. A change-point perspective on the software failure process. Software
Testing, Verification and Reliability, 13, 2003, pp. 85–93.
[14] DeCandia, G. et al. Dynamo: Amazon’s Highly Available Key-value Store. ACM
SIGOPS Oper. Syst. Rev., 41(6), Oct. 2007, pp. 205–220.
[15] Carleton, A. D., Park, R. E. and Florac, W. A. Practical Software Measurement,
Tech. Report.
[16] M. E. Fagan. Design and Code Inspections to Reduce Errors in Program
Development. IBM Systems Journal, 15(3), 1976, pp. 182–211.
[17] Katz-Bassett, E., Scott, C., Choffnes, D. R., Cunha, I., Valancius, V., Feamster,
N., Madhyastha, H. V., Anderson, T. and Krishnamurthy, A. LIFEGUARD:
Practical repair of persistent route failures. In: SIGCOMM, 2012.
[18] Mandhare, S., Dr. Sen, A. K. and Shende, R. A Proposal on Protecting Data
Leakages In Cloud Computing. International Journal of Computer Engineering
& Technology, 3(2), 2012, pp. 12–18
[19] Mishra, K., Chaudhary, R. R. and Soni, D. A Premeditated CDM Algorithm In
Cloud Computing Environment For FPM. International Journal of Computer
Engineering & Technology, 4(4), 2013, pp. 12–18
[20] Denton A. D. Accurate Software Reliability Estimation, Master of Science
Thesis, Colorado State University, Fort Collins, Colorado, Fall 1999.