Skip to content. | Skip to navigation


Personal tools
You are here: McMaster Industry Liaison Office > FAQs > Software FAQs

Software FAQs

How copyright and patents apply to software

Software basics

Software at McMaster

Protecting and commercializing software at McMaster

What kind of legal protection is available for software?

Software can be protected by a range of different types of intellectual property laws. The main protection comes from copyright, but in some cases, it may also be possible to patent the software. In addition, if the code has commercial value and measures are put in place to ensure it is kept confidential, the software may also be protected as a trade secret. Each of these types of protection has different benefits and drawbacks. Please contact MILO's Copyright Officer to find out more.

What elements of software are protected by copyright?

Copyright only protects certain aspects of software. It protects the underlying code, both the source code and object code, against unauthorized copying and distribution. It will also protect some of the external elements in a program, such as any music, pictures or text which appear on the screen, as well as some of the elements of the user interface.

However, because copyright doesn’t protect ideas, only the expression of ideas, it won’t protect the concept of a program. So anyone is free to produce a similar program as yours, provided they don’t copy the source code. In addition, copyright may not protect some of the functional elements of a program, such as having a print function, or commonly used elements where it is difficult to say who the original author was. There are also some grey areas, such as the user interface, the ‘look and feel’ of a program, the internal structure and programming methodologies. The case law in this area is uncertain so you may not get protection for these aspects of any program you create.

Can you patent software?

Traditionally software was considered unpatentable because it is simply mathematical formulas and algorithms. As such, it is mere scientific principle or abstract theorem which cannot be patented. However, in some countries, the patent offices will now allow software to be patented provided it meets certain criteria. In the U.S. for example, software is now commonly patented provided that it is a practical application of an abstract idea that produces a useful, novel, non-obvious, tangible and concrete result. In Canada, the patent office has a slightly stricter test, making it harder to patent software here.

What can I do to protect my software?

The main form of protection for software is copyright. This arises automatically from the moment you have written the code and there is no requirement to register it or comply with any other formalities. However, it’s a good idea to mark the program with a copyright notice (e.g. ‘Copyright 2006 McMaster University’) so that people are aware of who the copyright owner is and who they should contact if they have any questions about the program.

You can also use technical and legal measures to protect your software. Technical measures include methods such as encryption and digital watermarking. Legal measures include using a licence whenever you provide your software to others. This licence should set out the terms and conditions for others using your software. For example, you can specify whether they can use if for commercial purposes or whether they can copy it and share it with others.

How does open source licensing work?

Open source licensing is a form of licensing under which the source code of a program is made available under terms that allow recipients to modify and redistribute the program for free. While you can charge a fee for the initial distribution of the program, you must allow the recipient the right to modify and distribute it, without having to obtain your consent or pay you any additional royalties. So, for example, if you write a program and you want to make it available as open source you cannot prohibit commercial use and cannot prohibit the recipient from modifying your program and then selling their modified version.

Open source licensing emphasizes freedom — freedom to modify and distribute programs — and is appropriate where you want to make your program available for others to build on and distribute. However, if you don’t want to allow people to sell your program or use it for commercial purposes, or you want to keep your code secret, it may not be appropriate for you. For more information, visit the Open Source Initiative’s website at 

What kind of things should I think about when creating software?

Before you create software, you should think about the intellectual property implications of what you want to do. For example, consider what purpose you want to use the software for as this will affect whether or not you should incorporate open source code in the program. If you ultimately want to license the software for commercial use, open source may or may not be appropriate.

In addition, you should keep track of all contributors, including any external collaborators, students and independent contractors. Depending on their contribution, they may have ownership rights or additional rights known as moral rights, so it may be appropriate to obtain copyright assignments and moral rights waivers to ensure that you are free to use, modify and distribute the software as you want without having to obtain other people’s consent or pay additional royalties.

Are there any copyright issues if I want to hire a student or external software developer to help me write code?

Copyright law provides that the owner of the copyright in a software program is whoever wrote the software unless there is an agreement to the contrary or it was created by an employee (in which case their employer owns the copyright). So if you’re using a student or an external developer to write the code, they may own or have partial ownership rights in the code. Accordingly, you should make sure you are clear upfront about what sort of interests and rights each participant will have in the software and get their agreement to this in writing.

What are the implications of using open source code in a research project?

Open source code is great for research purposes as it allows you to view, use and modify source code and is often free. However, if you incorporate source code into a program, open source licensing conditions will usually attach to your program so that your program will also have to be distributed ‘openly’, that is, the source code must be made available and all recipients must be permitted to use, modify and distribute the program as they wish. Accordingly, before you use open source code in a research project, you should think about what you want to achieve and prepare open source guidelines setting out what can and can’t be done. If you do use open source code, you should track all use and keep records of the associated open source licences.

Who owns the software I create at McMaster?

Ownership of software developed at McMaster, Hamilton Health Sciences or St. Joseph's Healthcare Hamilton is covered by the Joint Intellectual Property Policy as well as the Ownership of Student Work Policy and will depend on considerations such as whether you are a student, a professor or staff, how the development of the software was funded and whether there were any external consultants involved. To help determine who may have an ownership interest in software you’ve developed, contact MILO's Copyright Officer.

How can MILO help me commercialize my software?

You have a number of options if you want to commercialize software. Generally, software is commercialized by licensing it, either directly to end-users or to an entity that will further develop and distribute it themselves. In some cases, commercialization may mean collaborating with an industry partner to improve the software and make it suitable for distribution. In other cases, the software may form the core intellectual property of a spin-off company that uses it as the basis for a service and support business.

MILO can also help you explore alternatives, such as open source licensing and shareware, an arrangement under which software is distributed for free for a trial period, after which the user may be asked to pay a one-time fee for ongoing use. To find out more about the different commercialization avenues available to you, contact MILO.

What types of software does McMaster license?

McMaster already licenses a range of software programs, including MAX3D, an x-ray diffraction visualization program that enables users to examine both single crystal and 2D powder diffraction frames and generates three dimensional images and videos, as well as the GASP Cross Platform Software which aligns peaks from multiple gas chromatograms enabling the user to detect statistically significant differences between levels of compounds present in the specimen under study.

For more details of the software available for license, visit McMaster’s Flintbox site, an online portal for McMaster technologies.