You are on page 1of 20

1

Cloud Computing
Case Study
On
Cloud computing
By
Bidur Basnet
Course: BUS 530: Management Information System (MIS)
Teacher: Mr. Surya Bahadur Basnet
Date: 10/08/2014
NOVA International College, Kathmandu, Nepal
Affiliated to
INTERNATIONAL AMERICAN UNIVERSITY
(IAU), CA, USA
2014
2
Cloud Computing
Abstract:
Cloud computing emerges as one of the hottest topic in field of information technology.
Cloud computing is based on several other computing research areas such as HPC,
virtualization, utility computing and grid computing. The ready availability of cloud storage
and compute services provides a potentially attractive option for curation and preservation of
research information. In contrast to deploying infrastructure within an organisation, which
normally requires long lead times and upfront capital investment, cloud infrastructure is
available on demand and is highly scalable. However, use of commercial cloud services in
particular raises issues of governance, cost-effectiveness, trust and quality of service. In order
to make clear of Cloud Computing, this report emphasize the Cloud computing models, types
of cloud computing, benefits of cloud computing, milestone in development of cloud
computing, some cloud computing using organization and future development areas of cloud
computing.
3
Cloud Computing
1. Cloud Computing An Overview
The term "cloud" is analogical to "Internet". The term "Cloud Computing" is based on
cloud drawings used in the past to represent telephone networks and later to depict Internet in.
Cloud computing is TCP/IP based high development and integrations of computer technologies
such as fast micro-processor, huge memory, high-speed network and reliable system
architecture. Without the standard inter-connect protocols and mature of assembling data centre
technologies, cloud computing would not become reality too.
Cloud computing is a computing paradigm, where a large pool of systems are connected
in private or public networks, to provide dynamically scalable infrastructure for application,
data and file storage. With the advent of this technology, the cost of computation, application
hosting, content storage and delivery is reduced significantly.
Cloud computing is a practical approach to experience direct cost benefits and it has
the potential to transform a data centre from a capital-intensive set up to a variable priced
environment.
The idea of cloud computing is based on a very fundamental principal of reusability of
IT capabilities. The difference that cloud computing brings compared to traditional concepts
of grid computing, distributed computing, utility computing, or autonomic computing
is to broaden horizons across organizational boundaries.
Forrester defines cloud computing as: A pool of abstracted, highly scalable, and
managed compute infrastructure capable of hosting end-customer applications and billed by
consumption.
During the last several decades, dramatic advances in computing power, storage, and
networking technology have allowed the human race to generate, process, and share increasing
amounts of information in dramatically new ways. As new applications of computing
4
Cloud Computing
technology are developed and introduced, these applications are often used in ways that their
designers never envisioned.
New applications, in turn, lead to new demands for even more powerful computing
infrastructure. To meet these computing-infrastructure demands, system designers are
constantly looking for new system architectures and algorithms to process larger collections of
data more quickly than is feasible with todays systems. It is now possible to assemble very
large, powerful systems consisting of many small, inexpensive commodity components
because computers have become smaller and less expensive, disk drive capacity continues to
increase, and networks have gotten faster. Such systems tend to be much less costly than a
single, faster machine with comparable capabilities.
Building systems from large numbers of commodity components leads to some
significant challenges, however. Because many more computers can be put into a computer
room today than was possible even a few years ago, electrical-power consumption, air-
conditioning capacity, and equipment weight have all become important considerations for
system designs. Software challenges also arise in this environment because writing software
that can take full advantage of the aggregate computing power of many machines is far more
difficult than writing software for a single, faster machine.
Recently, a number of commercial and academic organizations have built large systems
from commodity computers, disks, and networks, and have created software to make this
hardware easier to program and manage. These organizations have taken a variety of novel
approaches to address the challenges outlined above. In some cases, these organizations have
used their hardware and software to provide storage, computational, and data management
services to their own internal users, or to provide these services to external customers for a fee.
We refer to the hardware and software environment that implements this service-based
5
Cloud Computing
environment as a cloud-computing environment. Because the term cloud computing is
relatively new, there is not universal agreement on this definition. Some people use the terms
grid computing, utility computing, or application service providers to describe the same
storage, computation, and data-management ideas that constitute cloud computing.
Regardless of the exact definition used, numerous companies and research
organizations are applying cloud-computing concepts to their business or research problems
including Google, Amazon, Yahoo, and numerous universities.
1.1.Cloud Computing Models
Cloud Providers offer services that can be grouped into three categories.
1.1.1. Software as a Service (SaaS): In this model, a complete application is offered
to the customer, as a service on demand. A single instance of the service runs on the cloud &
multiple end users are serviced. On the customers side, there is no need for upfront investment
in servers or software licenses, while for the provider, the costs are lowered, since only a single
application needs to be hosted & maintained. Today SaaS is offered by companies such as
Google, Salesforce, Microsoft, Zoho, etc.
1.1.2. Platform as a Service (Paas): Here, a layer of software, or development
environment is encapsulated & offered as a service, upon which other higher levels of service
can be built. The customer has the freedom to build his own applications, which run on the
providers infrastructure. To meet manageability and scalability requirements of the
applications, PaaS providers offer a predefined combination of OS and application servers,
such as LAMP platform (Linux, Apache, MySql and PHP), restricted J2EE, Ruby etc.
Googles App Engine, Force.com, etc are some of the popular PaaS examples.
6
Cloud Computing
1.1.3. Infrastructure as a Service (Iaas): IaaS provides basic storage and computing
capabilities as standardized services over the network. Servers, storage systems, networking
equipment, data centre space etc. are pooled and made available to handle workloads. The
customer would typically deploy his own software on the infrastructure. Some common
examples are Amazon, GoGrid, 3 Tera, etc.
1.2. Types of Cloud Computing
Enterprises can choose to deploy applications on Public, Private or Hybrid clouds.
Cloud Integrators can play a vital part in determining the right cloud path for each organization.
1.2.1. Public Cloud: Public clouds are owned and operated by third parties; they
deliver superior economies of scale to customers, as the infrastructure costs are spread among
a mix of users, giving each individual client an attractive low-cost, Pay-as-you-go model.
All customers share the same infrastructure pool with limited configuration, security
protections, and availability variances. These are managed and supported by the cloud provider.
One of the advantages of a Public cloud is that they may be larger than an enterprises cloud,
thus providing the ability to scale seamlessly, on demand.
1.2.2. Private Cloud: Private clouds are built exclusively for a single enterprise. They
aim to address concerns on data security and offer greater control, which is typically lacking
in a public cloud. There are two variations to a private cloud:
1.2.2.1. On-premise Private Cloud: On-premise private clouds, also known as internal
clouds are hosted within ones own data centre. This model provides a more standardized
process and protection, but is limited in aspects of size and scalability. IT departments would
also need to incur the capital and operational costs for the physical resources. This is best suited
7
Cloud Computing
for applications which require complete control and configurability of the infrastructure and
security.
1.2.2.2. Externally hosted Private Cloud: This type of private cloud is hosted
externally with a cloud provider, where the provider facilitates an exclusive cloud environment
with full guarantee of privacy. This is best suited for enterprises that dont prefer a public cloud
due to sharing of physical resources.
1.2.3. Hybrid Cloud: Hybrid Clouds combine both public and private cloud models.
With a Hybrid Cloud, service providers can utilize 3
rd
party Cloud Providers in a full or partial
manner thus increasing the flexibility of computing. The Hybrid cloud environment is capable
of providing on-demand, externally provisioned scale. The ability to augment a private cloud
with the resources of a public cloud can be used to manage any unexpected surges in workload.
1.3. Cloud Computing Benefits
Enterprises would need to align their applications, so as to exploit the architecture
models that Cloud Computing offers. Some of the typical benefits are listed below:
1.3.1. Reduced Cost: There are a number of reasons to attribute Cloud technology with
lower costs. The billing model is pay as per usage; the infrastructure is not purchased thus
lowering maintenance. Initial expense and recurring expenses are much lower than traditional
computing.
1.3.2. Increased Storage: With the massive Infrastructure that is offered by Cloud
providers today, storage & maintenance of large volumes of data is a reality. Sudden workload
spikes are also managed effectively & efficiently, since the cloud can scale dynamically.
8
Cloud Computing
1.3.3. Flexibility: This is an extremely important characteristic. With enterprises
having to adapt, even more rapidly, to changing business conditions, speed to deliver is critical.
Cloud computing stresses on getting applications to market very quickly, by using the most
appropriate building blocks necessary for deployment.
2. About Report
The premise behind cloud computing is to enable you to store information and run
applications in an Internet-accessible location, which is usually one or more of the many
massive server farms around the world that have been built to enable cloud technology. With
the way business is conducted in our world today, more companies are planning to increase
their spending in cloud services. This trend is very strong in some of the larger developed
countries thats why I choose to study about cloud computing concept as mid-term assignment
paper. Cloud computing may not literally involve storing data in the clouds, it's still a pretty
fascinating field. Here is one very good reason to learn cloud computing, and that the cloud
computing has very good future and involvement of human minds in it and in todays world
many organizations are moving towards it creating a lot of job opportunities. There is wealth
of chapter and hype around the world about cloud computing right now. It seems very
important learning cloud computing because of its more application are available on cloud,
increased growth in market for cloud, increased development for the cloud, innovation in cloud
, hybrid cloud adoption and many more.
9
Cloud Computing
3. Major milestones in the development of cloud computing
Cloud computing and other internet-based services continue to develop rapidly, though
it hasnt exactly been a direct path to get to where we are now. The current state of the industry
may seem like obvious and inevitable when we look back, but just a short time ago it would
have been hard to guess that this is where this is where things were actually going.
The history of cloud computing has gone through a number of major changes that have
made it more accessible and affordable. Like many other things, though, its important to
understand where its been to make any sort of guess at where its going.
Cloud computing can trace its roots back to the 1950s. Back then, organizations started
using large-scale mainframe computers but due to their high cost couldnt afford to purchase
one for each user. As a result, they employed a practice known as time-sharing to maximize
their ROI; this allowed multiple users to access a single mainframe using terminals that had no
internal processing capabilities of their own.
Since then, of course, the technological landscape has changed dramatically.
Mainframe computers are still around, but just about everyone has their own personal computer
now, something unthinkable in the 1950s. This does show, however, that the basic premise of
cloud computing is not actually that new.
The next notable event in cloud computings history came in 1969, courtesy of
American computer scientist J. C. R. Licklider. He helped to develop the Advanced Research
Projects Agency Network (ARPANET), the so-called predecessor to the Internet. Licklider
also had a vision for everyone in the world to be interconnected and accessing programs and
data at any site and from anywhere. It should do, as it is exactly what cloud computing enables
us to do today. Licklider, then, is a hugely important figure in the history of cloud computing
and could possibly even be called the father of the technology.
10
Cloud Computing
Other experts attribute the cloud concept to computer scientist John McCarthy who
proposed the idea of computation being delivered as a public utility, similar to the service
bureaus which date back to the sixties.
Between the 1970s and mid-1990s, various other developments occurred to contribute
to the development of cloud computing. IBM released the first version of its VM operating
system in the 1972 and in the 1990s a number of telecoms companies started offering
virtualized private network connections. The origin of the term cloud computing, however,
isnt completely clear, it is often said to have first been used by executives at Compaq
Computer in 1996, but University of Texas professor Ramnath Chellappa has also been
credited as the first person to use it academically in a talk in 1997 called Intermediaries in
Cloud-Computing: A New Computing Paradigm.
One of the first major milestones in cloud computing history was the arrival of
Salesforce.com in 1999, which pioneered the concept of delivering enterprise applications via
a simple website. The services firm paved the way for both specialist and mainstream software
firms to deliver applications over the internet.
Another major stride into Cloud Computing came in 1999, when Intacct, a leading
cloud financial software platform, was founded by David Chandler Thomas.
2002: A Cloud Odyssey, when Amazon created and released Amazon Web Services
(AWS), providing an advanced system of cloud services from storage to computation. By 2006,
Amazon introduced the Elastic Compute Cloud (EC2) as a commercial web service. The EC2
let small companies rent computers on which they could run their own computer applications.
By 2004, the theory of Cloud was becoming a reality. SugarCRM, a flexible and user
friendly customer relationship management system, can trace its roots to beginnings in
11
Cloud Computing
California. Since then, the company has seen immense growth and now offers international
CRM offerings to businesses of all sizes.
Another big milestone came in 2009, as Web 2.0 hit its stride, and Google and others
started to offer browser-based enterprise applications, though services such as Google Apps.
In July 2010, Rack space Hosting and NASA jointly launched an open-source cloud-
software initiative known as Open Stack. The Open Stack project intended to help
organizations offer cloud-computing services running on standard hardware. The early code
came from NASA's Nebula platform as well as from Rack space's Cloud Files platform.
On March 1, 2011, IBM announced the IBM Smart Cloud framework to support
Smarter Planet. Among the various components of the Smarter Computing foundation, cloud
computing is a critical piece.
On June 7, 2012, Oracle announced the Oracle Cloud, While aspects of the Oracle
Cloud are still in development, this cloud offering is posed to be the first to provide users with
access to an integrated set of IT solutions, including the Applications, Platform, and
Infrastructure layers.
The current state of cloud computing rests on a strong internet backbone, but that isnt
how it started or where it ends. The private cloud is now an important part of many business
IT infrastructures, making elements like virtualization and service-oriented architecture even
more important. If we look at the development of the cloud over the years, it is easier to see
why the cloud is such an integral component of modern IT solutions.
12
Cloud Computing
4. Organization using Cloud Computing
4.1.Google Approach to Cloud Computing:
Google is well known for its expanding list of services including their very popular
search engine, email service, mapping services, and productivity applications. Underlying
these applications is Googles internally developed cloud-based computing infrastructure.
Google has published a series of papers in the computer-science research literature that
demonstrate how they put together a small collection of good ideas to build a wide variety of
high performance, scalable applications.
Google made big waves in cloud computing last year by launching its own IaaS service,
the Compute Engine. Google Apps was the company's attempt to branch out beyond the
consumer search market and become a player in the enterprise. Google unveiled the enterprise
version of Apps in February 2007 in a competitive strike against rival Microsoft, and followed
up by releasing App Engine in April 2008.
But even before that, Google was doing a bunch of stuff in the cloud including running
a popular PaaS called Google App Engine, offering Google Cloud Storage and launching a
new big data cloud app, Google BigQuery. Plus there's consumer and business cloud apps like
Google Drive and Google Apps. Its Chrome OS lead to Chromebook and Chromebox PC-like
devices that run all apps from the cloud, too.
4.2.Amazon Approach to Cloud Computing
Amazon is best known for selling books online, but they are also actively investing in
services that allow developers to take advantage of their computing technology. Amazon Web
Services provide developers use of open APIs to access Amazons vast infrastructure in a
manner vaguely reminiscent of timeshared computing. By using these APIs, developers can
13
Cloud Computing
create interfaces and access the computing infrastructure provided by Amazon on a fee-based
schedule, with the ability to grow as needed. Software developers, start-up companies, and
established companies in need of reliable computing power are members of a large and growing
crowd using Amazon services.
One of these services is the beta launch of Amazon Elastic Compute Cloud or EC2. The
Amazon Elastic Compute Cloud provides virtualization for developers to load Amazon-
managed machines with their preferred software environments and execute custom
applications. This is accomplished by first creating an Amazon Machine Instance (AMI) with
the operating system, custom configuration settings, libraries, and all needed applications.
Once created, the AMI is loaded into the Amazon Simple Storage Service (AS3) and receives
a unique identifier. The unique identifier can then be used to run as many instances of the AMI
as needed using Amazons APIs. Additionally, Amazon provides a set of prebuilt AMIs that
can be used by developers.
AMIs can be sized to the requirements of individual applications. AMIs fall into
categories ranging from a small instance to an extra-large instance. A small instance has less
memory, virtual cores, storage, and I/O performance than a large one. Similar to a timesharing
system, Amazon bills users by the instance-hour. As the size of memory, number of cores, or
other features increases, the instance-hour fee increases. Amazon offers standard instances as
well as high-CPU instances.
Amazon is also now claiming location transparency for a globally distributed cloud.
They are building out their computational footprint to be more geographically distributed.
Additionally, they are improving fault tolerance by creating Availability Zones that will allow
users to create instances of their applications in distributed regions.
14
Cloud Computing
Amazon is now really going after the enterprise market, adding more security features
to its cloud and hiring enterprise salespeople. It's not going to let VMware, Citrix and the
OpenStack folks snap up enterprise customers without a fight.
It's amazing to think that an online retailer could have caused so much change in the IT
industry and our daily lives. But it did.
4.3.Microsoft Approach to Cloud Computing
Microsoft announced its Azure Services Platform in October 2008. Similar to the
Amazon approach, Microsoft is developing a cloud-based, hosted-services platform. In
addition to providing compute and storage resources for consumers to develop and host
applications, Microsoft is also offering cloud applications that are already developed and ready
for consumption.
The Azure Service Platform is built on the Windows Azure cloud operating system,
which provides a development, hosting, and management environment for cloud applications.
Numerous services are available on top of the Azure operating system including Live Services,
SQL Services and.NET Services.
During the Community Technology Preview, Azure is offered for free to allow users
and consumers to test and evaluate it. Potential users can also download an Azure SDK and
Azure tools for Microsoft Visual Studio to simulate the Azure framework during the preview
period. Once Azure is launched for commercial use it will be priced using a consumption-based
model. Consumption will be measured in compute time, bandwidth, and storage and
transactions (put and gets).
Microsoft is using a combination of Microsoft .NET framework and the Microsoft
Visual Studio development tools to provide a base for developers to easily launch new solutions
in the cloud. It is noted that both applications running in the cloud and outside of the cloud can
15
Cloud Computing
use the Azure cloud platform. For the initial offering, only applications built with .NET can be
hosted.
Azures storage framework is based on storing of binary large objects (blobs),
communications queues to provide access to the data via Azure applications, and a query
language that can provide table-like structures. An Azure account holder can have one or more
containers where each container can hold one or more blobs. Each blob has a maximum size
of 50 GB, and can be subdivided into smaller blocks. To work with the blobs of data, entity
and property hierarchies are provided through tables. These tables are not SQL-like relational
tables and are not accessed using SQL. Instead, access to these tables is provided via the
Microsoft Language Integrated Query (LINQ) syntax query language. Queues are also
available to provide communication between instances as will be discussed later.
Representational State Translation (REST) is the convention used to both expose and identify
data stored in the Azure cloud. All Azure data storage is replicated three times to enhance fault
tolerance. The .NET Services provide access control at the application level, a service bus for
exposing application services and allowing services to communicate with each other, and a
workflow management system for creating complex services from existing simpler services.
4.4.Other Cloud Computing Approaches
Amazon, Google, and Microsoft are not alone investing in computing as a service.
Other organizations to test the waters include Dell, IBM, Oracle, and some universities.
IBM is providing a variety of cloud-based services by using existing functionality and
capabilities of the IBM Tivoli portfolio. Tivoli is a collection of products and software services
that can be used as building blocks to support IBM Service Management software. IBMs
cloud-based services, which target independent software vendors (ISVs), offer design of cloud
infrastructures, use of worldwide cloud computing centres, and integration of cloud services.
16
Cloud Computing
Researchers at the University of Michigan (UM) have developed a novel anti-virus
application using cloud computing ideas. By aggregating a collection of open source and
commercial anti-virus software as a cloud-based service and letting the individual anti-virus
packages vote on whether an infection has occurred on a host, they demonstrated that their
CloudAV service was more effective at detecting viruses than any single anti-virus software
package. With a small software client running on each end user host, the UM researchers also
claimed that a centralized virus detection system would be easier to manage in an enterprise
than maintaining signature files and software releases on hundreds or thousands of end hosts.
4.5.Concern and challenges
The Amazon approach to cloud computing is ideal for small organizations or
organizations with unpredictable computing usage requirements. For large organizations or
organizations that process particularly sensitive data, this approach may not effectively renting
computing resources. Renting computing resources may not be the most cost effective use of
funds for a large corporation. As an organization grows in size and importance, the value of its
data also increases dramatically. An automotive manufacturer would probably not want to store
the highly proprietary designs for next years car models on another companys servers.
Similarly, a government agency and the citizens it serves would probably not want sensitive
data such as citizens tax returns to be stored on a computer system that is not owned and
controlled by the government.
Cloud computing approaches use parallelism to improve the computational
performance of applications. The Google MapReduce framework is particularly good at this
so long as the problem fits the framework. Other approaches to high performance computing
have similar constraints. Its very important for developers to understand the underlying
algorithms in their software and then match the algorithms to the right framework. If the
17
Cloud Computing
software is single-threaded, it will not run faster on a cloud, or even on a single computer with
multiple processing cores, unless the software is modified to take advantage of the additional
processing power. Along these lines, some problems cannot be easily broken up into pieces
that can run independently on many machines. Only with a good understanding of their
application and various computing frameworks can developers make sensible design decisions
and framework selections.
5. Future Development Areas of Cloud Computing
Although much progress has already been made in cloud computing, we believe there
are a number of research areas that still need to be explored. Issues of security, reliability, and
performance should be addressed to meet the specific requirements of different organizations,
infrastructures, and functions.
5.1. Security
As different users store more of their own data in a cloud, being able to ensure that one
users private data is not accessible to other users who are not authorized to see it becomes
more important. While virtualization technology offers one approach for improving security, a
more fine-grained approach would be useful for many applications.
5.2.Reliability
As more users come to depend on the services offered by a cloud, reliability becomes
increasingly important, especially for long-running or mission critical applications. A cloud
should be able to continue to run in the presence of hardware and software faults. Google has
developed an approach that works well using commodity hardware and their own software.
18
Cloud Computing
Other applications might require more stringent reliability that would be better served by a
combination of more robust hardware and/or software-based fault-tolerance techniques.
5.3.Vulnerability to Attacks
If a cloud is providing compute and storage services over the Internet such as the
Amazon approach, security and reliability capabilities must be extended to deal with malicious
attempts to access other users files and/or to deny service to legitimate users. Being able to
prevent, detect, and recover from such attacks will become increasingly important as more
people and organizations use cloud computing for critical applications.
5.4.Cluster Distribution
Most of todays approaches to cloud computing are built on clusters running in a single
data centre. Some organizations have multiple clusters in multiple data centres, but these
clusters typically operate as isolated systems. A cloud software architecture that could make
multiple geographically distributed clusters appear to users as a single large cloud would
provide opportunities to share data and perform even more complex computations than possible
today. Such a cloud, which would share many of the same characteristics as a grid, could be
much easier to program, use, and manage than todays grids.
5.5.Network Optimization
Whether clouds consist of thousands of nodes in a computer room or hundreds of
thousands of nodes across a continent, optimizing the underlying network to maximize cloud
performance is critical. With the right kinds of routing algorithms and Layer 2 protocol
optimizations, it may become possible for a network to adapt to the specific needs of the cloud
application(s) running on it. If application level concepts such as locality of reference could be
coupled with network-level concepts such as multicast or routing algorithms, clouds may be
able to run applications substantially faster than they do today. By understanding how running
19
Cloud Computing
cloud applications affects the underlying network, networks could be engineered to minimize
or eliminate congestion and reduce latency that would degrade the performance of cloud-
applications and non-cloud applications sharing the same network.
5.6.Interoperability
Interoperability among different approaches to cloud computing is an equally important
area to be studied. There are many cloud approaches being pursued right now and none of them
are suitable for all applications. If every application were run on the most appropriate type of
cloud, it would be useful to share data with other applications running on other types of clouds.
Addressing this problem may require the development of interoperability standards. While
standards may not be critical during the early evolution of cloud computing, they will become
increasingly important as the field matures.
5.7.Applications
Even if all of these research areas could be addressed satisfactorily, one important
challenge remains. No information technology will be useful unless it enables new
applications, or dramatically improves the way existing applications are built or run. Although
the effectiveness of cloud computing has already been demonstrated for some applications,
more work should be done on identifying new classes of novel applications that can only be
realized using cloud computing technology. With proper instrumentation of potential
applications and the underlying cloud infrastructure, it should be possible to quantitatively
evaluate how well these application classes perform in a cloud environment. Along these same
lines, experimental software engineering research should be conducted to measure how easily
new cloud-based applications can be constructed relative to non-cloud applications that
perform similar functions.
20
Cloud Computing
6. Conclusion
This paper have described a number of approaches to cloud computing and pointed out
some of their strengths and limitations. This paper also have provided motivation and
suggestions for additional research. The approaches outlined in this article, along with other
strategies, have already been applied successfully to a wide range of problems. As more
experience is gained with cloud computing, the breadth and depth of cloud implementations
and the range of application areas will continue to increase.
Like other approaches to high performance computing, cloud computing is providing
the technological underpinnings for new ways to collect, process, and store massive amounts
of information. Based on what has been demonstrated thus far, ongoing research efforts, and
the continuing advancements of computing and networking technology, we believe that cloud
computing is poised to have a major impact on our societys data centric commercial and
scientific endeavours.

You might also like