Una patente de software es una patente legal con respecto a un dispositivo o máquina que utiliza software de una manera particular para lograr una determinada tarea. Este tipo de patente otorga al inventor de esa máquina, oa la empresa que lo ha empleado para desarrollar la invención, la propiedad sobre el proceso particular utilizado para hacer que la máquina funcione. Existe un gran debate y controversia sobre este tipo de patente, a menudo debido a que se otorgan patentes demasiado amplias a varias empresas. Una patente de software también puede ser difícil de definir fácilmente, ya que el software también está protegido por la ley de derechos de autor.
En general, una patente es una forma de propiedad intelectual con respecto a un dispositivo o invención en particular que permite al inventor de ese dispositivo la propiedad sobre él. Esto no se refiere a la propiedad sobre un determinado modelo o representación física de ese dispositivo, sino a la propiedad sobre el concepto de ese dispositivo y cómo funciona. Si alguien crea una nueva máquina que convierte tornillos en madera u otras superficies de una manera que no se había desarrollado previamente, entonces podría solicitar una patente para esa máquina. Esto es similar a cómo se puede establecer una patente de software, aunque existen ciertos problemas con dichas patentes.
Por lo general, una patente no puede cubrir un algoritmo, al igual que no se puede otorgar una patente para una palabra o expresión en particular. Dado que el software informático consta principalmente de varios algoritmos y expresiones de conceptos matemáticos, existe un debate sobre cómo, por lo tanto, se puede otorgar legalmente una patente de software. El argumento a favor de la legitimidad de una patente de software es que la forma en que ese software funciona dentro de una máquina es objeto de la patente. A este respecto, la patente solo sirve para otorgar propiedad sobre cómo un dispositivo utiliza el software para operar, en lugar de las líneas de código contenidas dentro del propio software.
Sin embargo, esta comprensión de la legalidad de las patentes de software aún se está estableciendo y los responsables de otorgar patentes en varios países no siempre pueden demostrar esta comprensión básica. La comprensión de tales patentes solo se enturbia aún más por el hecho de que el software también está protegido por la ley de derechos de autor. Un derecho de autor es una forma de propiedad intelectual que cubre obras de arte o creaciones artísticas, y tales leyes han establecido el software como literatura bajo dicha propiedad. Quienes se oponen a las patentes de software afirman que dichos derechos de autor deberían ser suficientes para proteger el software. Quienes están a favor de tales patentes, sin embargo, argumentan que una patente de software es una forma distinta de protección que cubre funciones reales no protegidas por la ley de derechos de autor.