University Community

Learn how the process works, from disclosure to product!

Software Development FAQs

This primer serves as a starting point for some of the issues that the students/researchers encounter when considering commercializing their software creation.

What is UofG’s Policy on software creation?

UofG’s Software Creation Policy stipulates that ownership resides with the software creator(s), with some exceptions based on conditions attached to funding and resources used for creation, and creator(s)’ specific job responsibility. Please see policy for details.

Can I distribute my software as Open Source (OS)?

UofG supports researchers’ choice to distribute their software through open source licenses and encourages researchers to consider innovative business models to commercialize their open source software (OSS).

Why Open Source?

As Open Source Software (OSS) is essentially software licensed to allow others to collaboratively develop the source code while the owner retains copyright, the Open Source (OS) licensing model can result in great leaps in innovation.  Just some of the many benefits can include lower costs, shared risks, and faster time to market.

There are many types of OS licenses. All researchers are advised to carefully consider which suits their goals. For more detail and examples of open source licenses: http://www.opensource.org/licenses 

What is OS Licensing?

Open Source licensing involves intellectual property protection in the form of copyright and should not be confused with the public domain, OS licenses generally ensure that the author retains copyright while granting rights to the user such as the freedom to use, copy, distribute, study, modify, and create derivative works.

Public domain is the absence of copyright. In Canada, items end up in the public domain after the term of copyright ceases (roughly 50 years after the death of the author).

Who owns the Software?

Software creation projects, including those on Apps development often involve many contributors.  Ensure you give credit where it is due by considering the following:

  • Was the code developed under a funding project? Some funds require that you share the results with certain entities or that you attribute their support
  • Did you incorporate anyone else’s code or pre-existing third-party OS code? If so, ensure that the licenses for this code permit you to use and/or further license the code. Some OS licenses are incompatible with others.
  • Did you start the project while you were employed by another organization?  Your previous employer may have a right to your intellectual property.
  • In the case of Faculty, did any research assistants, students or staff contribute to the code?  Did the project have any partners from other institutions?  Individuals at your own institution or at other institutions may be subject to other employment agreements.  It is advisable for you to obtain their written consent to any licensing plans.
  • In the case of students, research assistants and staff, did Faculty assign or supervise your work?  It is advisable for you to obtain their written consent to any licensing plans.
  • Did anyone else contribute to the project? 

 

In certain circumstances, lead researchers may consider having contributors assign copyright and waive moral rights.

If you are distributing your software as OSS you must ensure that you have the right to offer your source code under an OSS license, and that all owners agree to this licensing model.

Which OSS license should I choose?

Creative Commons (CC), a non-profit corporation offering a number of standardized copyright license agreements. It features a useful questionnaire (http://creativecommons.org/license/) that helps you select a CC license that best fits your requirements.

The following short-list provides some considerations for your choice of OS licenses:

  • What are you hoping to achieve?
    • broad adoption in the academic community?
    • is your code synergistic with widely open sourced applications like Linux?
    • broad adoption in industry?
    • continued development by others?
  • What level of access do you want to permit
    • executable?
    • code?
  • What do you want others to be able to do with the software?
    • modify and come up with other versions or derivatives?
    • create competing software? or incorporate it with their existing products?
  • What do you want others to be able to do with any derivatives?
    • contribute to open source community?
    • bundle and sell as a supported product?
  • Do you want changes or bug fixes sent back to you?
  • Do you want to be able to incorporate these contributions into your next release? If, yes, you will need an assignment from the contributors.