最近在写一个软件专利申请, 平时在公司里也经常要评审一些专利申请,所以想乘机把软件专利这块几个常见问题总结一下。各国专利法规定不一,由于工作地点的原因,我参考的是美国专利法。
- 软件可以申请专利吗?
可以。美国可专利物包括process, machine, compositions of matters等。软件算是一种computer-based process。
比较微妙的一点是纯算法不能申请专利,它被视为一种抽象精神活动,类似数学公式、游戏规则之类,不能申请专利。但是稍微修改一下措辞,把它变成一种process或method, 基本都可以申请。如果能再和特定系统、硬件结合一下那就更没问题了。
- 软件不是有各种copyright license了吗,为什么还要申请专利?
简单地说,copyright保护的是软件本身,专利保护的是软件中抽象的idea和设计。
比如说你开发了一个巨牛的搜索软件,用了一种创新算法和设计,比同类软件快1万倍。你的软件license可以阻止别人在没有你授权的情况下使用、销售这个软件。但是,竞争对手搞明白你软件的设计思想后,他可以用同样的算法、设计开发出另一个软件,比如换一种编程语言再实现一遍。因为那是一个新软件,也没有使用你软件的任何代码,你的软件license是无法阻止的。
专利保护的就是后者的情况,它保护你软件中抽象的创新想法和设计,往往这是更有价值的。
- 软件一定要有实现或者原型后才能申请专利吗?
不需要。这就是专利制度的好处(或者坏处)。你只要有个说得通的想法就可以去申请。软件实现?设计文档?原型?对不起,统统不存在的。Absolutely nothing。
往好了说这是刺激和保护创新,创新想法可以更快得到保护。如果一定要系统实现了才能申请,不利于小的创新者对抗大的组织。往坏处说就是催生了大量垃圾专利和流氓专利。反正只要钱够,可以把一个领域各种想到的可能路径和方式都申请上。(也许我应该去把鼠标连续3击、4击和5击之类的用途都申请一下,如果它们还没被申请的话 _ )
- 我在一个国家申请了,还需要去其他国家申请吗?
要的。在美国申请的专利只能保护你在美国的权益。要在另一个国家或地区保护你的权益,你还得向那个国家或地区再申请一遍。
- 论文都已经发表了或者软件都已经开源了,还可以申请吗?
这就是我现在遇到的情况了。美国专利法给予一年的grace period,在发明公开披露一年以内还可以申请专利。
不过要注意两点:
- 想法这时候已经披露出去了,专利申请是先到先得的,所以你得赶快。这时可以先申请一个provisional的。
- 其他国家不一定有grace period的规定,所以你的专利申请即使在美国接受了,很可能以后也没法再向其它国家申请。
所以最好还是在想法披露之前申请专利。如果要赶着发论文或者开源项目,也可以先申请一个provisional的。
- 啥是provisional patent application?
Provisional patent application就是先帮你占个注册位置,拿个早的filing date,然后你可以在一年之内补上一个正式的专利申请。注意最后授予的还是普通的patent, 不存在provisional patent。
Provisional patent application只要描述清楚你的发明就行了, formal patent claim、information disclosure statement都不需要。同时审查员也不会搜索比较,所以provisional application申请周期和费用都低很多。
- 专利申请是否通过,主要是哪几项评价指标?
从专利审查的角度看,主要判断标准是发明是否New、useful和non-obvious。注意专利主要讲的是unique,它和好坏没啥关系。一个专利并不意味着一个好设计,完全可以是个垃圾设计。很多同学的申请材料上花很多笔墨讲自己的设计性能多好,扩展性多好啥啥的,这是走错方向了。
- 哪些专利价值较大,或者专利怎么写有更大价值?
从个人或公司的角度看,主要评价的是专利的商业价值。有以下几个方面可以注意:
- Market value: 看专利的适用市场是否足够大。
- Avoidbility: 竞争对手是否很容易地绕过你的专利。
- Detectbility:一个系统是否使用了你的专利,最好能方便地从外部检测到。 这一点对于软件和云服务通常比较困难。
- Claim Coverage: 不要仅仅claim方法本身,还要claim该方法相关的系统、用途,这样才能更好地利用专利防御或进攻。