Open Source Software In Cloud Applications

Open Source Software In Cloud Applications

Providers of cloud-based solutions will bring in more than $241 billion in 2020, according to Forrester Research’s report on “Sizing the Cloud”. Since the emergence of cloud solution providers like Amazon, Rackspace, IBM and Microsoft, software development and deployment is increasingly taking place in the cloud. And, in the next few years, we are likely to see more and more innovative technology companies completely suspended in the cloud.

What makes the cloud particularly attractive to enterprises is that it enables companies to lease access to infrastructure, platforms and software, drastically reducing their overall operating costs. The economies of scale associated with the cloud, costs that accurately reflect usage, elimination of maintenance costs, and increased ability of users to enjoy access to applications across a variety of devices including tablets and smart phones are additional drivers behind adoption of cloud applications.

While enterprises are shifting from legacy solutions towards the cloud, open source software is gaining significant traction for similar reasons. Desirable attributes such as faster time to market, lower development cost, better security, peer-reviewed quality, zero licensing cost, and multiple sources from mostly reputable suppliers have made open source the software of choice for commercial business applications, including cloud-based applications and collaboration solutions. As open source software becomes increasingly available in the cloud, it is important for enterprises to understand how the cloud environment changes open source license obligations.

There are two broad categories of open source licenses – permissive and restrictive. Permissive licenses such as MIT and BSD provide minimal obligations on code use, modification and distribution, enabling developers to incorporate open source code into open source or proprietary software with their choice of license terms. In contrast, restrictive licenses such as the GPL force users of covered code to distribute derivative works under GPL only, and require these users of GPL code to make their source code available to downstream users. This feature of restrictive licenses, with few exceptions, renders it impossible to incorporate open source code into proprietary offerings. Failure to comply with such obligations can lead to severe consequences, including paying damages for license infringement.

In the pre-cloud environment, software vendors made their products available to end users through software distribution, and the reciprocal aspects of GPL ensured that the its creators ideals of software freedom were maintained. With emergence of cloud services, users of SaaS applications technically are not receiving any code as software applications that use GPL in their internals are not distributed, hence the old GPL terms governing distribution of code would not apply.

In order to maintain the software-freedom aspect of GPL when code is deployed in a cloud, Affero GPLv3 (AGPL for short) was created. Under provisions of AGPL, any user of the cloud that uses an application containing AGPL-licensed code must be provided with the source code of the entire application.

In summary, with GPL covered code:

  • If you distribute the software, you must make your code available to users
  • If you offer SaaS through the public or private cloud, you do not have to make your code available to users

With AGPL covered code:

  • If you distribute the software, you must make your code available to users
  • If you offer SaaS through the public or private cloud, you must make your code available to its users

Given the new obligations imposed by the AGPL, it is critical for SaaS providers to take inventory of the open source code embedded in their product offerings, and to ensure that their intellectual property policies are in line with the obligations imposed by the various open source licenses covering their code.

A variety of automated scanning tools generically known as enterprise analyzers are available that can assist SaaS providers to manage open source obligations in the cloud. In addition, a structured Open Source Software Adoption Process (OSSAP) can be used to define acceptable intellectual property license policies for the organization, audit the current software portfolio and incoming code, and ensure compliance through all of the software development and procurement stages. These open source license management solutions are now available in both On-Premises and hosted versions. Furthermore, these tools generally offer License Obligations Reporting, for a simplified “bulleted” view of the obligations associated with each open source package that is discovered in the SaaS code.

The emerging cloud-based SaaS model offers immense opportunities but also raises new risks for your organization’s intellectual property. If your organization’s intellectual property policies were developed for the traditional software distribution model, then they need to be re-assessed and updated to meet the distinct obligations associated with the cloud environment.

By Mahshad Koohgoli

Mahshad Koohgoli is CEO of Protecode, Inc. (www.protecode.com), a provider of open source license management solutions, based in Canada. He has more than 25 years of experience in the telecommunications industry, specializing in technology start-up businesses, and holds several patents in the computer and communications field.

David Friend

Data Centers Need to Wake Up and Compete with the Hyperscalers

Data Centers Need to Wake Up and Compete with the Hyperscalers Win Customer Hearts & Minds and Become a Trusted Technology Partner Data center operators have a choice: either they can expand their cloud offerings ...
David Gevorkian

How to Apply Website Accessibility in UX and How to Achieve Better User Experience

Design Tweaks: Apply Website Accessibility in UX In this current digital age, websites have become more complex because of the introduction of various aesthetic designs on a web page interface. It especially affects people with ...
Brian Day

Tips for Developing Apps In a Cloud Environment

DevOps and the Cloud Unless you’ve just started a brand-new organization, your IT environment is currently running a diverse collection of last-generation and older applications that were deployed with the one-application-per-server approach that unleashed the ...
Lauren Brunson

The Growing Need to Consolidate Multi-Tenant Environments

Consolidate Multi-Tenant Environments Over the past four months, countless businesses and universities have scrambled to the cloud to enable their employees and students to work remotely during the global coronavirus pandemic. Managed service providers (MSPs) ...
Tej Redkar

How AI Monitoring Can Make Your Business Smarter and Better

Business AI Monitoring When issues arise with digital technology—as they invariably do—companies must have the ability to fix them before they create any business impact. These days, more and more companies are discovering that the ...
Figure4

DevOps – Secure and Scalable CI/CD Pipeline with AWS

Secure and Scalable CI/CD Pipeline According to Gartner, a leading research company, worldwide public cloud revenue will grow by 17.3 percent in 2019. Total spending on IT infrastructure products (server, enterprise storage, and Ethernet switches) ...