跳到主要内容

英文专利律师

美国软件专利的可专利性:35 U.S.C. § 101 下的关键考量因素

软件专利

摘要

  • 软件发明除了满足新颖性、非显而易见性和充分披露等要求外,还必须满足 35 U.S.C. § 101 的专利适格性要求。
  • Alice/Mayo 框架主要分析权利要求是否针对抽象概念,以及在这种情况下是否包含足以构成发明性概念的附加技术特征。
  • Tailored software(定制化软件)和 innovative coding(创新性编码)并不会自动使软件具有专利适格性,其重要性取决于是否形成了具体的技术改进。
  • 软件专利权利要求应尽可能关注实现技术解决方案的具体机制,而不仅仅是描述软件所要达到的结果。
  • 在提交专利申请前尽早考虑 § 101 专利适格性,有助于协调说明书撰写、权利要求设计、现有技术分析和整体专利战略。

导言

软件发明可能具有极高的商业价值,但要在美国获得专利保护,通常需要特别关注 35 U.S.C. § 101(美国专利法第101条)项下的专利适格性(patent eligibility)。与新颖性和显而易见性不同,§ 101 所解决的是一个更基础的问题:所主张的发明是否属于专利法允许获得专利保护的客体?

这一问题对于软件发明尤其重要。即使一项软件具有商业价值,并且其具体实现方式是全新的,如果权利要求被认定为针对抽象概念(abstract idea),且没有将该抽象概念充分整合到具有专利适格性的实际应用中,仍然可能面临 § 101 驳回。

与此同时,美国专利法并没有将软件一概排除在专利保护之外。软件发明仍然可以具有专利适格性,尤其是在其被权利要求限定为一种技术改进、针对技术问题提供具体技术解决方案,或者将某一抽象概念以特定方式应用于实际技术系统的情况下。

因此,对于开发软件、SaaS 平台、人工智能系统以及其他计算机实现技术的企业而言,在早期了解软件专利适格性问题,有助于制定更合理的专利申请和知识产权战略。对于希望了解美国专利申请流程的企业而言,了解美国专利律师服务可以帮助企业更好地评估软件发明的专利保护路径。

什么是软件专利的专利适格性?

美国专利适格性的主要法律依据是 35 U.S.C. § 101。该条规定,包括方法(process)、机器(machine)、制造物(manufacture)和组合物(composition of matter)在内的特定类别发明可以获得专利保护。

软件发明通常可能落入“方法”或“机器”的类别。例如,计算机实现的方法可以作为一种 process,而配置为执行特定操作的计算系统则可能作为一种 machine 受到保护。

但是,§ 101 同时也排除了若干司法确立的例外(judicial exceptions)。对于许多软件发明而言,其中最重要的例外就是抽象概念(abstract idea)。

因此,需要区分两个不同的问题:

一项软件发明可能是新的、有用的,但如果权利要求针对的是抽象概念,并且没有将该概念充分转化为具有专利适格性的实际应用,那么该发明仍可能面临 § 101 驳回。

因此,在分析软件发明时,应当将专利适格性与其他专利性要求分开考虑。

除了 § 101 之外,软件发明通常还必须满足:

  • § 102 的新颖性(novelty)要求
  • § 103 的非显而易见性(non-obviousness)要求
  • § 112 的书面说明(written description)和实施(enablement)要求
  • § 112(b) 的权利要求明确性(definiteness)要求

因此,即使一项软件发明通过了 § 101 的专利适格性分析,也不意味着它一定能够获得专利。它只是通过了“所主张的客体是否属于可以获得专利保护的范围”这一门槛。

理解 Alice/Mayo 框架

软件专利适格性分析的核心框架来自美国最高法院建立的 Alice/Mayo framework(Alice/Mayo 框架)。

该分析通常包含两个步骤。

第一步:权利要求是否针对司法例外?

第一步通常需要判断权利要求是否针对某种司法例外,例如抽象概念。

在软件领域,某些权利要求可能被认定涉及以下类型的抽象概念:

  • 基本经济活动
  • 组织人类活动的方法
  • 管理交易或商业关系的方法
  • 某些数学概念
  • 心智过程(mental processes)
  • 某些信息组织和分析方法

仅仅因为一项发明通过计算机实现,并不意味着该发明自动具有专利适格性。

例如,如果一项权利要求本质上描述的是一种商业实践,然后仅仅指示通用计算机执行该商业实践,那么该权利要求可能面临 § 101 挑战。虽然计算机执行了这些步骤,但底层的核心概念仍然可能被视为抽象概念。

因此,仅仅在抽象概念的基础上增加“处理器”“存储器”“服务器”或“计算机系统”等通用计算组件,通常并不足以解决专利适格性问题。

第二步:权利要求是否包含“发明性概念”?

如果权利要求被认定为针对司法例外,下一步通常需要判断权利要求是否包含足够的发明性概念(inventive concept),从而将该司法例外转化为具有专利适格性的实际应用。

这一分析通常会考虑权利要求整体,并判断其中的附加技术要素是否提供了超出使用常规技术实施抽象概念的内容。

对于软件发明而言,这使得发明的技术细节尤其重要。

相关问题通常不仅仅是:

软件实现了什么功能?

还包括:

软件是如何实现该功能的?这种实现方式是否提供了技术改进,或者是否以特定且具有技术意义的方式将该概念应用于实际系统?

这一区别会直接影响发明说明书的撰写方式以及专利权利要求的设计。

在准备美国专利申请时,了解如何进行专利性检索也有助于确定哪些技术特征最有可能成为专利保护的核心。

软件是否改进了计算机技术?

判断软件专利适格性时,一个重要考量因素是该发明是否改进了计算机或其他技术系统的运行方式。

当软件发明以特定方式改善技术时,通常可能具有更有力的专利适格性论证。例如:

  • 提高处理效率
  • 降低内存需求
  • 改进数据检索
  • 提高网络性能
  • 改进计算机安全性
  • 降低计算复杂度
  • 改进数据库运行方式
  • 改进专用计算系统的运行
  • 使计算机能够以新的方式执行某项技术功能

关键在于确定产生该技术改进的具体技术机制。

例如,一项权利要求仅仅规定计算机“更高效地处理数据”,可能无法充分说明该发明在技术上有何不同。相比之下,如果权利要求明确规定一种特定的数据结构、处理顺序、算法技术或系统架构,并且这些技术特征产生了效率上的改进,那么其专利适格性论证可能更有说服力。

软件发明有时还会与实体计算系统或专用设备相结合。例如,用于控制特定设备的软件,可能与单纯自动化商业流程的软件面临不同的专利适格性问题。在这种情况下,如果软件与底层技术之间的交互关系本身是发明的重要组成部分,可以考虑将这种技术关系纳入权利要求。

Tailored Software(定制化软件)和专用软件

**Tailored software(定制化软件)**可以指针对特定技术环境、行业、系统或问题而专门开发的软件。

但是,仅仅因为软件是针对特定环境进行定制,并不意味着它自动具有专利适格性。

更重要的问题是:

为什么该软件需要进行这种定制,以及这种定制具有什么技术意义?

例如,针对特定计算架构设计的软件,如果其配置方式改善了该架构的运行效率、减少了资源消耗,或者解决了该架构本身固有的技术限制,那么这些因素可能与专利适格性分析有关。

同样,如果软件运行于特定技术环境中,并且该发明解决的问题是由该技术环境本身产生的,那么该发明也可能具有更有力的专利适格性论证。

这一点可以概括为:

仅仅进行定制并不必然构成技术改进。

针对某个客户的商业偏好进行定制的软件,仍然可能只是针对抽象商业流程的计算机实现。相反,如果软件是专门设计用于克服计算机系统、网络、设备或其他技术本身存在的技术限制,那么这种软件的技术特征可能更有利于支持专利适格性。

这一问题对于开发高度专业化软件和 SaaS 产品的技术公司尤其重要。

Innovative Coding(创新性编码)是否能够使软件具有专利适格性?

**Innovative coding(创新性编码)**可能与软件专利有关,但仅仅因为软件编写困难,或者需要程序员使用高水平、非常规的编程技巧,并不会自动使软件具有专利适格性。

专利制度通常并不是因为程序员以聪明或非常规的方式编写了代码,就授予专利保护。

相反,创新应当体现在所主张的发明本身。

可能具有专利意义的创新包括:

  • 新的计算技术
  • 新颖的算法实现方式
  • 专用数据结构
  • 新的数据组织或处理方式
  • 降低计算需求的技术
  • 新的计算资源分配方式
  • 软件组件之间的新颖交互方式
  • 改进系统运行效率的特定架构
  • 控制硬件或与硬件交互的新方法

可以比较以下两种表述:

“该软件实现了一项新的功能。”

以及:

“该软件通过一种新的技术机制实现该功能,并由此改进了计算机系统的运行。”

第二种表述更直接地指出了潜在的技术贡献。

当然,这并不意味着每一种新算法或创新编程技术都自动具有专利适格性。某些算法仍可能被认定为抽象数学概念。关键仍然在于该算法或技术如何被应用,以及权利要求整体是否针对一种具有专利适格性的技术应用。

软件解决的技术问题是什么?

另一个重要考量因素是软件试图解决的问题本身是什么。

同样的软件技术,可能因为所解决问题的性质不同而面临不同的 § 101 分析。

例如,将原本由人手完成的商业流程自动化的软件,如果本质上只是使用通用计算机替代人类执行某种抽象活动,可能面临专利适格性问题。

相比之下,如果软件解决的是计算机运行过程中产生的技术问题,则可能具有更有力的专利适格性论证。

可以考虑以下问题:

  • 发明之前存在什么技术问题?
  • 为什么传统软件或计算系统无法有效解决该问题?
  • 该问题是否是计算机技术本身产生的问题?
  • 该发明是否改变了计算机的运行方式?
  • 该发明是否改善了现有技术的性能?
  • 该发明是否使用特定技术机制解决该问题?

这些问题也可以帮助确定专利申请中最值得强调的技术特征。在提交申请前进行专利性检索时,这些技术特征也通常是评估现有技术的重要起点。

权利要求应当保护技术解决方案,而不仅仅是期望结果

撰写软件专利权利要求时,一个重要问题是区分期望达到的结果和产生该结果的技术解决方案。

例如,一项宽泛的权利要求可能规定计算机系统:

“分析数据以确定最佳结果。”

但这种表述并没有说明系统究竟如何进行分析。

更具有技术针对性的权利要求可能进一步限定:

  • 系统接收的具体数据;
  • 数据如何被转换;
  • 多组数据如何被关联;
  • 用于处理数据的特定数据结构;
  • 数据处理操作的具体顺序;
  • 一个处理步骤的输出如何被另一个处理步骤使用;
  • 系统如何根据处理结果调整后续操作。

目标并不是必须把每一行源代码或所有实现细节都写进权利要求。这样做反而可能不必要地限制专利保护范围。

更重要的是确定:

哪些技术特征真正使该发明与传统系统的运行方式不同。

这也是软件专利权利要求撰写中的重要平衡。一方面,权利要求过于抽象可能导致 § 101 问题;另一方面,如果加入过多具体实现细节,又可能不必要地缩小专利保护范围。

在决定如何保护这些技术特征时,也应当考虑发明的整体专利策略,而不仅仅是单一权利要求的范围。

专利说明书对于软件专利适格性的重要性

专利说明书同样可能对专利适格性分析产生重要影响。

一份高质量的软件专利申请通常应当解释:

  1. 所要解决的技术问题;
  2. 现有技术或传统方法的局限;
  3. 发明人开发的技术解决方案;
  4. 软件如何实现该解决方案;
  5. 相关软件组件及其相互关系;
  6. 为什么该特定方法能够改进系统或相关技术;以及
  7. 发明所产生的技术优势。

说明书应当提供足够的信息,说明发明人实际开发的技术,同时避免将发明不必要地限制在单一、狭窄的实施方式中。

这一点在专利申请进入专利审查和申请程序后尤其重要。如果申请人收到 § 101 驳回,能否有效回应,在一定程度上可能取决于原始申请是否已经充分说明了发明的技术性质。

例如,如果申请仅仅描述软件用于实现某种商业功能,而没有解释该软件如何通过特定技术机制改善计算机或其他技术系统,那么在后续审查中再主张该发明具有从未充分披露的技术改进,可能会更加困难。

软件专利适格性中的常见问题

1. 权利要求仅仅保护抽象商业概念

如果权利要求主要针对一种商业实践,即使该实践通过软件实现,也可能面临 § 101 挑战。

2. 依赖通用计算机组件

仅仅在抽象概念中加入处理器、存储器、服务器或数据库等通用计算机组件,通常并不足以产生发明性概念。

3. 仅仅保护期望结果

如果权利要求描述软件能够实现什么结果,却没有说明产生该结果的技术机制,可能更容易面临专利适格性问题。

4. 认为 Tailored Software 自动具有专利适格性

软件并不会仅仅因为针对特定客户、行业或应用进行了定制,就自动成为具有专利适格性的发明。

这种定制应当具有实质性的技术意义。

5. 将 Innovative Coding 直接视为发明本身

软件采用了创新的编程方法,并不必然意味着软件具有专利适格性。相关技术创新通常需要体现在权利要求所保护的技术功能和技术机制中。

6. 没有解释技术改进是什么

申请文件应当解释发明改进了什么,以及该改进为什么具有技术意义。

7. 添加硬件但没有体现有意义的技术关系

仅仅在软件权利要求中加入通用硬件,并不一定能够克服抽象概念问题。如果硬件是发明的重要组成部分,权利要求应当考虑软件与硬件之间具体的技术交互关系。

8. 等到审查阶段才考虑 § 101

如果等到专利申请收到 § 101 驳回后才开始考虑专利适格性,申请文件中可能已经缺少能够支持技术改进论证的必要披露。

因此,在发明开发和专利撰写阶段尽早考虑 § 101,通常比把专利适格性仅仅视为审查阶段的问题更有效。

提交软件专利申请前应考虑的问题

在针对软件发明寻求专利保护之前,发明人和企业可以考虑以下问题:

  • 该发明解决了什么具体技术问题?
  • 解决该问题在技术上有什么困难?
  • 该发明与传统软件有什么不同?
  • 该发明是否改善了计算机的功能?
  • 是否改善了其他技术或技术领域?
  • 是否使用了新颖的算法或计算技术?
  • 是否采用了专用数据结构?
  • 是否使用了独特的软件架构?
  • 软件与硬件之间是否存在具有技术意义的交互?
  • 权利要求是否能够明确限定产生技术改进的技术机制?
  • 说明书是否充分解释了该技术改进?

这些问题不仅可以帮助评估 § 101 专利适格性,也可以帮助企业在专利性检索过程中识别最重要的现有技术,并进一步确定哪些技术特征值得在专利申请中重点保护。

软件专利适格性只是整体专利战略的一部分

即使软件发明通过了 § 101 专利适格性分析,也不意味着专利一定能够获得授权。

软件发明仍然需要面对现有技术,并满足美国专利法的其他要求。一项技术上非常创新的软件发明可能具有专利适格性,但仍然可能因为缺乏新颖性或因现有技术组合而被认定为显而易见。

因此,软件专利战略通常不应当将 § 101 适格性作为孤立问题,而应当将其与更广泛的知识产权战略结合起来考虑。

例如,企业可能需要确定:

  • 是否应当在提交专利申请之前进行专利性检索;
  • 软件的哪些技术特征应当作为核心保护对象;
  • 是否应当先提交临时专利申请;
  • 权利要求应当保护多大的范围;
  • 是否应当将相关硬件纳入权利要求;
  • 是否需要寻求美国以外的专利保护;以及
  • 该专利如何融入企业整体知识产权组合。

例如,在软件发明尚处于早期阶段时,企业可能会考虑先提交临时专利申请,以便在继续开发技术的同时建立美国专利申请的优先权基础。不过,临时申请的披露质量仍然十分重要,因为后续申请能够获得的优先权范围取决于临时申请中实际披露的内容。

对于计划在多个国家寻求保护的软件企业,还应当尽早考虑国际专利战略以及国际和 PCT 专利申请

这些决策属于整体专利战略的一部分,而不仅仅是单独的专利适格性问题。对于希望建立系统性知识产权保护的企业而言,了解如何创建知识产权组合有助于从更长远的角度规划软件及其他技术资产的保护。

结论

软件并不会因为属于软件而天然被排除在美国专利保护之外。关键问题通常在于:

软件发明究竟贡献了什么技术,以及这种技术贡献如何体现在专利权利要求中

具有较强专利保护潜力的软件专利申请通常不仅仅描述一个期望达到的结果,也不仅仅是将现有商业活动自动化,而是能够明确识别具体的技术问题、解释技术解决方案,并说明该解决方案如何改善计算机、网络、设备或其他技术系统的运行。

Tailored software(定制化软件)、专用软件架构以及Innovative coding(创新性编码)技术都可能与专利适格性有关,但从专利法角度来看,当这些因素能够形成具体的技术改进,而不仅仅是提供商业定制或一般性的程序实现时,其价值通常更加明显。

由于 Alice/Mayo 框架和 § 101 专利适格性分析可能同时涉及权利要求撰写、说明书准备、现有技术分析和专利审查,因此,这些问题通常应当在专利申请流程的早期就予以考虑。尽早进行分析,可以帮助发明人和企业识别软件发明中最具技术价值的部分,并确保这些技术特征在专利申请中得到充分、恰当的披露。

对于开发软件、SaaS 平台、人工智能技术以及其他计算机实现发明的企业而言,在早期阶段与美国专利律师合作,有助于使技术披露和专利策略更好地适应美国专利适格性要求,并围绕获得具有实际保护价值和可执行性的专利权制定更完整的知识产权战略。

关于我

我从法学院毕业就开始了自己的律师事务所,在俄亥俄州从事法律工作已经有5年多了。 在那段时间里,我专注于商业法和诉讼,获得了一些知识产权法的接触。 在2021年经营我的公司时,我决定回到学校拿到我的专利许可证。 从那以后,我一直致力于通过我在知识产权和商业法方面的专业知识来保护创新者和企业家。

安排病人谘询