Software Engineering Principles and Practices / Software Security & Ethics

Intellectual Property Rights

In Software Engineering, Intellectual Property (IP) refers to the creations of the mind—specifically the source code, algorithms, UI designs, and documentation. Understanding IP rights is critical because, unlike physical property, code is easily copied and redistributed.


There are four main pillars of IP protection in the software industry:

1. Copyrights ✍️

In most jurisdictions, software code is treated as a "literary work."

  • What is protected: The specific expression of the code (the actual text/source code).

  • Duration: Typically the life of the author plus 70 years (or 95 years from publication for corporations).

  • Key Fact: Copyright is automatic the moment the code is written, though formal registration provides stronger legal standing.

2. Patents 💡

Patents protect inventions and functional ideas rather than just the text of the code.

  • What is protected: A unique algorithm, a specific software process, or a technical solution to a problem.

  • Requirements: The idea must be new (novel), useful, and non-obvious to an expert in the field.

  • Duration: Generally 20 years.

3. Trademarks ™️

Trademarks protect the brand identity of the software.

  • What is protected: Product names (e.g., "Windows"), logos, and slogans.

  • Goal: To prevent consumer confusion. You can't name your new database "Oracle" because that brand is already trademarked.

4. Trade Secrets 🤫

Some companies choose not to patent their code so they don't have to reveal how it works (since patents require public disclosure).

  • What is protected: Secret formulas or algorithms (e.g., Google’s Search algorithm or the Coca-Cola recipe).

  • Protection: This is enforced through Non-Disclosure Agreements (NDAs) and strict internal security.


📂 Software Licensing Models

A license is the legal instrument that governs the use or redistribution of software.

License Type

Definition

Examples

Proprietary

Closed source. Users pay for a "right to use" but don't own the code.

Microsoft Office, Adobe Photoshop.

Open Source (Permissive)

You can use, modify, and sell it with very few restrictions.

MIT, Apache, BSD.

Open Source (Copyleft)

If you use/modify the code, your resulting project must also be open source.

GPL (GNU General Public License).


⚠️ Common Legal Pitfalls for Engineers

  • Work-for-Hire: Under most employment contracts, any code you write on company time or using company resources belongs to the employer, not you.

  • License Contamination: If you copy-paste "Copyleft" code (GPL) into a proprietary corporate project, you may legally be forced to release your entire project's source code to the public.

  • Clean Room Design: A method of cloning software by having one team describe the features and a second team (who has never seen the original code) write it from scratch to avoid copyright infringement.


💡 The Ethical Link

IP rights link directly back to Professional Ethics. An ethical engineer never "borrows" code without checking the license and always gives credit where credit is due.