Patent na oprogramowanie to patent prawny dotyczący urządzenia lub maszyny, która wykorzystuje oprogramowanie w określony sposób do wykonania określonego zadania. Ten rodzaj patentu przyznaje wynalazcy tej maszyny lub firmie, która zatrudniła go do opracowania wynalazku, prawo własności do konkretnego procesu użytego do działania maszyny. Istnieje wiele dyskusji i kontrowersji dotyczących tego rodzaju patentów, często z powodu zbyt szerokich patentów przyznawanych różnym firmom. Patent na oprogramowanie może być również trudny do łatwego zdefiniowania, ponieważ oprogramowanie jest również chronione prawem autorskim.
Ogólnie rzecz biorąc, patent jest formą własności intelektualnej w odniesieniu do konkretnego urządzenia lub wynalazku, która pozwala wynalazcy tego urządzenia na prawo własności do niego. Nie odnosi się to do własności określonego modelu lub fizycznej reprezentacji tego urządzenia, ale raczej własności do koncepcji tego urządzenia i sposobu jego funkcjonowania. Jeśli ktoś stworzy nową maszynę, która zamienia wkręty w drewno lub inne powierzchnie w sposób, który wcześniej nie został opracowany, może wystąpić o patent na tę maszynę. Jest to podobne do tego, jak można ustanowić patent na oprogramowanie, chociaż istnieją pewne problemy z takimi patentami.
Patent nie może zazwyczaj obejmować algorytmu, podobnie jak patent nie może być udzielony na określone słowo lub wyrażenie. Ponieważ oprogramowanie komputerowe składa się głównie z różnych algorytmów i wyrażeń pojęć matematycznych, toczy się debata na temat tego, w jaki sposób można legalnie przyznać patent na oprogramowanie. Argumentem za legalnością patentu na oprogramowanie jest to, że sposób, w jaki to oprogramowanie działa w maszynie, jest przedmiotem patentu. Pod tym względem patent służy jedynie przyznaniu prawa własności do sposobu, w jaki urządzenie wykorzystuje oprogramowanie do działania, a nie wierszy kodu zawartych w samym oprogramowaniu.
Jednakże to rozumienie legalności patentów software’owych wciąż jest ustalane i osoby odpowiedzialne za udzielanie patentów w różnych krajach nie zawsze mogą wykazać to podstawowe zrozumienie. Zrozumienie takich patentów jest jeszcze bardziej utrudnione przez fakt, że oprogramowanie jest również chronione prawem autorskim. Prawa autorskie to forma własności intelektualnej, która obejmuje dzieła sztuki lub dzieła artystyczne, a takie prawa ustanowiły oprogramowanie jako literaturę będącą taką własnością. Przeciwnicy patentów na oprogramowanie twierdzą, że takie prawa autorskie powinny wystarczyć do ochrony oprogramowania. Zwolennicy takich patentów argumentują jednak, że patent na oprogramowanie jest odrębną formą ochrony, która obejmuje rzeczywiste funkcje niechronione prawem autorskim.