Before sharing software

In order to share software developed at EPFL a set of basic steps shall be done in order to clarify the ownership and copyright.

 
Ownership
Specific software or a software function or library is generally the result of many working hours on different projects.
The contribution of each of the authors of the software shall be clearly identified.
All contributors which are not EPFL’s employees (e.g. master students, visiting scientists …) own the copyrights on the code they develop unless they sign an assignment agreement with EPFL. Please contact the TTO to discuss the possible assignment of the rights before sharing the code or before starting a project where persons not hired by EPFL will develop software at EPFL.
 
Dependencies
Depending on the research activity related to the development of such software, contracts or research agreement may imply prohibition of or restrictions to sharing the software. Third parties’ software that might be integrated or linked to the software may also impact the possibilities of sharing it.
Before sharing any software you should clarify dependencies with the head of the laboratory or the TTO.
For open source software compatibility of licenses should also be checked.
 
Head of laboratory approval
All software developed by  EPFL employees is owned by EPFL.
The approval of the head of the laboratory is mandatory to share any software. In case of conflict of interests please contact the TTO.
 
Preparing the code
Place the copyright notice into the header of your files:
 
 
 
© All rights reserved. ECOLE POLYTECHNIQUE FEDERALE DE LAUSANNE, Switzerland, Laboratory ……………, 201X
See the LICENSE.TXT file for more details.
 
The list of authors with a precise date and a description of the contributions should generally also be added to each file to ease the tracking of further files modifications.
 
Patents
In case concepts, algorithms or processes implemented in the software are covered by EPFL patents please contact the TTO before sharing any code. Indeed, sharing such software may lower the value of the patent.
 
Integrate the license terms
Ensure integration of the license terms in the package/software. This can be done with a single plain text file attached to the software or in the header of each file.
For open source licenses guidelines are generally available in the license file.