Software bzw. Computerprogramme sind durch das Urheberrechtgeschützt. Dabei schützt das Urheberrecht die konkrete Implementierung, also den Programm-Code, nicht aber das Verfahren, welches einem Computerprogramm zugrunde liegt. Ohne gegen das Urheberrecht zu verstossen, ist es möglich, dieselbe Idee in einem anderen Computerprogramm umzusetzen oder eine Software mit derselben Funktionalität nachzuprogrammieren. Es wäre also naheliegend, Software mittels Patenten zu schützen. Patente dienen dem Schutz technischer Erfindungen, also neuen und nicht naheliegenden Lösungen technischer Problemstellungen. Grundsätzlich jedoch sind in Europa Computerprogramme als solche vom Patentschutz ausgeschlossen. Reine Textverarbeitungsprogramme beispielsweise lösen kein technisches Problem und sind daher nicht patentierbar. Anders sieht es hingegen aus, wenn Computerprogramme dazu dienen, eine technische Lösung für ein technische Problem umzusetzen. Solche "computerimplementierte Erfindungen" sind unter gewissen Umständen durchaus patentfähig.