A FLOSS License-Selection Methodology for Cloud Computing Projects

Preview:

Citation preview

A FLOSS License-Selection Methodology for Cloud Computing Projects

CLOSER 20166th International Conference

on Cloud Computing and Services Science

Rome (Italy) – April 23-25, 2016robert.viseur@cetic.be

Who I am?

• Dr Ir Robert VISEUR. • Education: Civil Engineer (FPMs), Master in Innovation Management, Doctor in

applied sciences.• Skills: management of innovation, co-creation, open source and information

processing.• Affiliations:

– Teaching Assistant, UMONS Faculty of Engineering (www.umons.ac.be), Department of Technological Innovation Management (Pr Vankerkem).

– Senior R&D Expert, CETIC (www.cetic.be).

• Freelance photographer (www.derriereleviseur.be).• More information: www.robertviseur.be.

What is the Context?

• Context: PaaSage EU-funded project.• Agreement to publish the project under open source license.

What license?!

• FLOSS license as part of project governance.• Strong influence of FLOSS licenses on the future of projects.

The work presented in this paper has been partially funded by the EU FP7-ICT project PaaSage (grant no. 317715).

This presentation is published under CC-BY-ND.

What is PaaSage?

PaaSage?

“an open source integrated platform to support both design and deployment of Cloud applications, together with an accompanying methodology that allows model-

based development, configuration, optimisation, and deployment of existing and new applications independently of the existing underlying Cloud infrastructures”

(paasage.org).

What are the Families of FLOSS Licenses?

What are the Issues?

• Issues around license selection:

– Impact on business model.

– Impact on license changes.

– Impact on project success.

What are the Steps of the Methodology? (#1)

• Valuation schema divided in three steps (based on Viseur, 2013a): – Step 1: choosing the type of license (proprietary, hybrid, open source).

– Step 2: choosing an open source license (if an open source license is chosen in step 1).

– Step 3: checking general constraints (e.g. compatibility issues or organization policy).

What are the Steps of the Methodology? (#2)

• Second step divided into four sub-steps.

– Sub-step 2.1: It checks the interest or the willingness to join an existing community or ecosystem. If yes, the license of the ecosystem is retained (e.g. Apache license for Apache Foundation or Eclipse license for Eclipse Foundation).

– Sub-step 2.2: It tests if the priority is given to the maximum distribution of the software. If yes, a permissive license is chosen (e.g. MIT or BSD).

– Sub-step 2.3: The priority is given to the sharing of developments. This sub-step verifies if the license should facilitate the integration of software into third-party software that are potentially under other licenses (→ sub-steps 2.3.1 and 2.3.2).

– Sub-step 2.4: It verifies the willingness to share the source code ownership. If yes, a contributor agreement is imposed to the contributors.

What are the Steps of the Methodology? (#3)

• The sub-step 2.3 is divided into two sub-steps.

– Sub-step 2.3.1: If the integration with third-party software is not preferred, the willingness to cover the use of the software as SaaS is checked. If yes, a license with network reciprocity is chosen (e.g. AGPL or OSL). Otherwise, a license with strong reciprocity is chosen (e.g. GPL).

– Sub-step 2.3.2: If the integration with third-party software is preferred, the degree of permissiveness accepted in case of new features addition is checked. In case of high permissivity, a license with file-based weak copyleft is used (e.g. MPL). Otherwise, the LGPL is used.

What are the Common Choices in CC projects?

• Distinction between SaaS and PaaS / IaaS FLOSS software.

– FLOSS SaaS:

● Rise of reciprocal licenses with network effect (i.e. AGPL and OSL).

– FLOSS PaaS / IaaS:

● Case studies: OpenStack, Eucalyptus, OpenNebula, CloudStack, DeltaCloud, OpenShift, Appscale, Stratos and Tsuru.

● Common choice: Apache license.

What is our FLOSS License-Selection Process for CC projets?

• FLOSS license selection in 5 steps:

– Inventorying software components.

– Selecting open source license.

– Approving license selection.

– Spreading practical details.

– Monitoring source code.

What are the Results for the PaaSage Use Case? (#1)

• Inventorying software components.

– Existing components under open source licenses or privative source code.

• Selecting open source license.

– Alternatives: LGPL 3.0, CPL/EPL, CDDL and MPL 2.0 (weak copyleft).

– Choice: MPL 2.0.

• Approving license selection.

– Vote between partners.

What are the Results for the PaaSage Use Case? (#2)

• Spreading practical details.

– Put the text of the license in the root of the source code.

– Description of the license in the header of each file.

– Documented in Mozilla website.

• Monitoring source code.

– Use of Apache RAT (planned).

What are the Limitations?

• Limitations in the license-selection methodology: – No distinction between the versions of a same license (→ step 3).

– No detection for copy-and-paste source codes.

What are the Improvements?

• Improvement:

– Use of design tools allowing to detect legal issues (e.g. OSSLI).

Aéropôle de Charleroi-GosseliesRue des Frères Wright, 29/3B-6041 Gosseliesinfo@cetic.be

www.cetic.be

Thank you!

Contact:

robert.viseur@cetic.be

More information:

www.robertviseur.be twitter.com/robertviseur

www.linkedin.com/in/robertviseur