Overview Of The Cloud Computing Paradigm Information Technology Essay

Published: November 30, 2015 Words: 2889

Time-sharing paradigm was one of the technologies that emerged almost half a century ago. It proved to be a reliable technology and performed well as demanded by the industry at that time. With the progression in computer technology, time sharing has been replaced by a new technology called Cloud Computing. This report presents the concept, services, essential characteristics and benefits of this rapidly evolving technology. In addition some of the challenges involved in Cloud Computing are also discussed. Furthermore of this report focuses the impact of this technology on the developing countries, who don't have enough financial nor business infrastructure and still can get maximum benefits from Cloud Computing.

Cloud Computing paradigm is the latest technology, which has already made its impact on the computer industry. This technology is based on the concepts of Time-sharing paradigm that emerged in 1960's. Cloud Computing paradigm offers many benefits through its services that come in the form of Software, Platform, Infrastructure and Database. Many organizations like IBM, Microsoft, Google and Amazon have already adopted this paradigm because of its rich benefits. By using this paradigm organisations can cut down cost of hardware maintenance, databases management, software up-gradation\installation etc.

Different types of Cloud Computing viz. public, private and hybrid, offer organisations controlled way of displaying their data over the internet. This paradigm helps organisations produce best quality result with minimum hardware and soft ware resources. This is particularly advantageous for organizations in third world countries with limited financial resources.

Cloud 2.0, the latest infrastructure, offers friendly interface which is rapid and easy for development

FaceBook is a perfect example of it.

2) Time-sharing

The concept of Time-sharing was a major shift in technology in 1960's which comprised sharing of computing resource among many users. A user is unaware of the presence of other users and it also appears that he/she owns everything1. This sharing of resource is done by multiprogramming and multitasking. When a user with access to resources on a computer system is idle another user can get access to the same resources. Time-sharing worked well in the era where computer systems were as big as rooms but with the advent of microprocessors in 1980's time-sharing faded.

3) Cloud Computing

There is no universally agreed definition of Cloud Computing. According to Armbrust et al.2 "Cloud Computing refers to both the applications delivered as services over the Internet and the hardware and system software in the datacenters that provide those services". Buyya et al.3 defined Cloud Computing as a "type of parallel and distributed system consisting of a collection of interconnected and virtualized computers that are dynamically provisioned and presented as one or more unified computing resources based on service-level agreement". The above two definitions suggest that Cloud Computing delivers software and infrastructure as services.

A diagrammatic presentation of the two definitions mentioned above is shown in Figure1

Figure 1: Cloud Computing Overview4

3.1) What is "Cloud" And what is "Computing" in Cloud Computing?

Cloud in the term Cloud Computing refers to the services over the internet. If I am a user who wants to use a service over the internet, I have no concern about the location of this service, its installation and maintenance etc. I am there just to use this service to get my job done. For me location, installation and maintenance are "cloudy" areas. It's someone else's concern to deal with these issues. "Computing" is generally referred to usage of a service on pay per use basis. So I'll be only charged for the period I use the service.

This Cloud Computing stands is the use of software, hardware or infrastructure as a service, eventually on a pay per use basis.

4) Services Offered by Cloud Computing

Cloud Computing offers three types of services which are regarded as pillars of cloud computing for the delivery of solutions to end users. These pillars are

4.1) Software as a Service (SaaS)

Users within the SaaS space rent softwares hosted on the web by third party, identified as a provider/vendor4. The user in SaaS is like a tenant of a house, except that unlike house which is physically located at some place, the software is somewhere out in the "cloud" which can be accessed via internet.

Examples:

i) CRM (Customer Relationship Management) services provided by salesforce5. (http://www.salesforce.com).

ProjectClarizen.com, a provider of on line project management services5 (http://www.clarenz.com).

4.2) Platform as a Service (PaaS)

PaaS is a platform for those who love to code, that is the developers. PaaS provides development platform5. Developer writes a piece of code and then it's the responsibility of PaaS provider to upload this code and present it on the web.

Examples:

iGoogle AppEngine5 (http://code.google.com/appengine/docs/whatisgoogleappengine.html)

ii) Azure5 by Microsoft (http://www.microsoft.com/azure/)

4.3) Infrastructure as a Service (IaaS)

This service is also referred as Hardware as a Service (HaaS). IaaS is the delivery of computing infrastructure as an outsourced service which includes well managed hosting and development environment. The user only needs to buy the infrastructure when its needed 6. As defined earlier the concept of 'Virtualization', in IaaS, the user gets access to unlimited virtual servers which makes it cost effective .IaaS is very suitable for those organisations who don't have a very big infrastructure. To get their job done what they need to do is to pay for this service and enjoy the high level IT infrastructure and a very low cost.

Types Of Cloud

Based on their characteristics cloud are divided in three types

5.1) Public or External Clouds

A type of cloud where an organisation accesses resources from third party vendors5 (like Amazon S3, Iron Mountain, Google, etc.) only when there is a need to use them. These resources are publicly available over the internet. .

5.2) Private or Internal Clouds

These are the internal data centers of an organisation, which are not available to the general public2. The reason of not making is public could be the security where organisation does not want its data to be shared.

5.3) Hybrid Clouds

An environment which has characteristics of Public and Private clouds2. Consider an example of an organisation who wants it customers' financial or personal data to be stored privately (in-house servers), while using some other services available publically for its normal computing. The whole idea of Cloud

computing described above is summarized in figure 3 below

Figure 2: Cloud Computing Architecture5

Advantages and Disadvantages of Cloud Computing

Advantages

Usability

An advantage to any cloud computing services (Iaas,Paas,Daas or Saas) is its ease of use as the deployment details are hidden from the user6. The user just needs to use them and need not to worry about the other technical details involved.

Pay Per Use or Usage-based Pricing

Cloud computing offers Pay Per use or Usage- based pricing model7. This is very beneficial for those organisations which cannot afford expensive infrastructure but are willing to keep abreast with the latest technologies. Using any cloud computing service of their need they can still get the best quality result at a very cheap cost.

Ubiquitous network access

This is what makes cloud computing so special that it is available on standard Internet enabled devices8. These devices include laptops, desktop computers, iPad, mobile phones and many other gadgets. All you need is a device which can connect to an internet and provide you a web interface.

iv) No geographical barrier and survival in disasters

I come up with this advantage based on my personal experience in Pakistan, a country which is in lots of crises in these days. There are electricity issues, political issues, suicide bombing issues and natural disasters which the country or I should say that the world has never experienced before. But the amazing thing is that Pakistan is one of countries where many companies from developed countries outsource their IT projects. The obvious reason is the cost of IT professionals is cheaper in this part of the country but imagine how cloud computing had helped the organisation who had to move its office from Islamabad to another location because of the suicide attack on Marriot Hotel which also effected offices at the 'Software Technology Park" building which stand right next to it. The companies had to find new place and start working again in days without delaying the support to their clients, and they were able to do so, as the data server and email server were hosted in America. Employees could still access the data servers, they were able to access emails and respond to their clients' problem even from their homes. The services to its client were not stopped for a day. So this does not affect how far and where you are and no matter how much the magnitude of disaster is, cloud computing can still save you from lots of hustle.

6.2) Disadvantages

Latency

Services offered by cloud computing are usually remote so they can suffer from latency and bandwidth related issues while using any remote application9. This is a problem in developing countries where although companies claim to offer high speed internet and bandwidth but the services offered are not of better quality.

Security

As data can be available in public cloud, this means that your data is available or accessible to other third parties users. This gives rise to security, regulatory and compliance issues9.

Shared Resources

Multiple customers are served by cloud services using same hardware, so, if one user's application compromises the system, there is a possibility that it can also compromise application of other users that share the same system9.

7) Cloud 2.0 Infrastructure

Cloud 2.0 is a term which applies to SaaS and PaaS. Cloud 2.0 integrates web2.0 social networking features and functionality into cloud based applications. An example of this is a 'Chatter' from Salesforce.com which provides a twitter type facility to the Salesforce.com CRM application suite10. Face book is another social networking example which is very widely used and is a good example of Cloud 2.0.

7.1) Characteristics of Cloud 2.0

Cloud 2.0 carries the characteristics of SaaS and PaaS as defined above but with the latest web2.0 involved in it there are few characteristics that need to be described here. These are

User - Centered Design

A web design created in a way that it fulfills every possible need of the end user and also gives the user to perform customization up to certain level. iGoogle, a customizable Google homepage is one of the most appropriate examples of a User-centered design11.

Web as Platform

The requirement of a certain operating system is no longer there. Everything is web based so whatever operation system or platform is there , one can access applications and web services11.

Rich User Experience

With the introduction of Xhtml, CSS 2.0, ajax and other similar technologies have helped to developed attractive and lighter web interfaces11. Users look for interfaces which are easier to use and also have attractive visual interfaces.

Challenges to Cloud 2.0

i) Security

Data for organisations and their users is very important. Organisations want their users' data to be available somewhere in clouds because it is cheaper and easy to access but, on the other hand this data has to be secured, so that no unauthorized user can access it. This must be done even if the data is in "Private Cloud" as for example the organisation's financial data should not be available to everybody.

On the web, users are allowed to upload dynamic content and if proper security measures are not taken in to account then user can upload any scripting content, which can run code or carry malware or look for keys entered by user (keyloggers)12. This is where web content needs to be handled very carefully so that there is no room available for hackers. widespread confusion about who is responsible for securing cloud data13, is it the service provider or the organisation who wants it data to be available in clouds should take

measures about it security itself.

ii) What is good for you is not good for me

Consider a web service which keeps record of the address of the users and gives an interface where entering a Postcode is a mandatory field. Now this could be a good thing for users from UK or USA where postcode is an important part of address but in countries like Pakistan there is no such concept of Postcode. So what is useful and good for some users might not be for others.

iii) Cultural Differences

Cultural differences must be taken into account while developing services for cloud 2.0. Cultural difference could be explained by the example of driving a car on the right hand side of many countries in Europe but on other side of road in sub-continent. Driving a car will eventually lead to the destination and it does not matter which side of the road you are travelling, but, in terms of cloud computing things must be taken into account that these two driving cultures give rise to different driving rules and the service on the web must offer correct rule based on the cultural info of the user.

Cloud Computing and developing countries

Cloud computing has helped organisations like Google, Microsoft and Amazon to give their business a completely new dimension. These companies are based in the part of the world which is rich and has good infrastructure In this section, I 'll try to describe the impact of cloud computing on companies in the developing countries services and infrastructure are not of same level as in other developed countries.

Based on my personal experience in Pakistan, I'll mention some of the problems that the country is facing and I think these are the common problems in almost all the developing countries. Along with it, I'll discuss how cloud computing benefits to improve the business and help solving the problems. The main issues in these countries are:-

Poor Bandwidth

Even though internet is much more common in these countries now a days than it was a few years ago, but that doesn't mean that the quality of the internet is up to the mark. For organisations who want to have their own data centers is something which is of a high risk. They cannot afford to have delays because of poor bandwidth, when their users are requesting some large chunks of data.

Power/electricity cuts

In Pakistan these days electricity cut down is one of the major issues which the country is facing. Call it a negligence of government or inappropriate planning but that this has affected many businesses. Many businesses have either been shut down or moved to other parts of the world. Consider a user requesting some data using the web interface and instead of getting the required result, a "server not found" message pops out on screen. How annoying that would be

iii) Expensive Hardware/Software

Expensive hardware and software makes it difficult for small organisations to compete with other organisations. In country like Pakistan you can get pirated softwares, but this compromises the quality and also is not in compliance when you are marketing the international market. Also when it comes to hardware, its not just buying the hardware, this has to be maintained and skilled resources are required to do so.

Lack of Research

In developing countries there is not much funding offered to students to do the research. Governments do not allocate too much budget to education department. The result is that you will not see too many new innovations from these countries. Students are forced to look at advancements done by developed countries in their respective fields.

With Cloud computing, now it is possible for companies to host their data to countries like USA, UK and Norway etc. These countries offer high speed internet and good infrastructure of hosting and maintaining data and electricity is not a problem in these countries. Similarly organisation don't need to buy the hardware and then maintain it, they can rent the hardware and forget the technical issues related to hardware. Also, for softwares, SaaS is there to help the organisations as they can use software using web2.0 instead of buying them which could be expensive. So organisations in the developing countries can now focus more on the other technical aspect of the issues which includes the development of new modules of the applications and improving quality of their services. They can also save cost on hardware and software and yet provide quality services.

For students who are willing to research but due to lack of proper resources they cannot, cloud computing offers them the great opportunity to connect to many libraries over the web and search for their related subjects. Also one can use the technology to get trained to the new technologies in the market.

Development of iPhone applications is another example, iPhone is not as common In developing countries as it is here in UK, but there are now developers from these countries who use online simulator to develop applications. The New York Times recently reported that Wilfred Mworia, a developer from Nairobi, Kenya, built an iPhone app using online iPhone simulator (iPhone service isn't available in Kenya), which he can sell all over the world19. Also, in the southern Sahara region of Sahel, farmers now use a cloud-based trading system that gives information about planting schedules, crop status, harvesting times, and market prices through mobile phones.