为你的软件选择正确的许可证方案

简介:


原文地址:[url]http://software.gurock.com/articles/selecting-the-right-license-strategy-for-your-software/[/url]


为你的软件选择正确的许可证方案
周四,2005-7-14 作者:Tobiass Gurock
介绍
一个软件产品能否成功,选择一种合适的许可证方案至关紧要。一旦应用了错误的许可证方案,即使你的软件产品比其他同类产品表现要好,潜在用户根本就不耐烦注册你的软件,(更勿论选择你的软件了)。另外,合适的许可证方案可以激发用户兴趣,并为市场推广奠基开路。因此,软件业务的成功与选择何种许可证方案休戚相关。
既然SmartInspect是一个软件开发工具,那么当我们考虑它的许可证方案时,我们很自然地会按照每一个用户来派发许可证。但是当我们想到这件事情的时候,我们已经有了另外可替换的一个许可证方案,目前已经证明是相当成功的。接下来我们也会提到这个方案。
许可证方案的重要性
销售软件时,选择什么样的许可证方案只是很多考虑因素的一个方面,但它很大程度上能够影响其它部分。像市场销售或者定位市场都可不能独立于的许可证方案选择,他们相互作用。
座位一个例子,依赖于你的许可证方案,你的软件产品对于整个市场来说,可能相当引入注目或者根本是无用的。在后一种情况,如果市场销售是你第一考虑因素的话,那么你的软件产品可能前景惨淡,你遇到了很棘手的问题。
另外,你应该在软件开发早期就意识到你需要选择许可证方案,你也应该知道你的许可证会产生的所有技术性后果。例如,在你开始这个产品设计时,你必须清楚是否需要许可证并且如何实现。
许可证方案
以下是几种已经建立好的软件许可证方案及简短描述。大多数都依赖于软件的架构和它们市场目标。
  • 指定用户许可
指定用户许可意味着该许可证将会绑定于一个确定的用户,对于Web应用程序和许多压缩包发行的桌面程序,很受欢迎。这种方案对于桌面程序,该方案一般允许软件在同一时刻安装在多个计算机上,但只能被同一个用户使用。
  • 指定计算机许可
指定计算机许可允许在一台计算机上安装并使用。如果一个用户想在多台计算机上使用该软件的话,必须要有多个许可证。另一方面,该方案也允许该软件被多个用户使用,但在用一个计算机上使用。
  • 指定客户端许可
这种观念一般适用于C/S体系。通常你需要为每一个客户端生成一个许可证(Client Access License客户端访问许可证,简写为CAL),在大多数情况,服务器端都另外需要一个服务器许可证。如果我想得不错的话,Microsoft SQL Server就应用了这种方案,例如,你不仅需要为直接连到SQL服务器的每个客户端生成一个访问证,你还需要为每个客户端保存数据生成一个许可证。
  • 免费许可
开源或免费软件经常使用这种方案。当对一个软件提供收费服务要比出售该软件更赚钱的时候,这种方式倍受青睐。
免费软件对于市场来说非常有用。这种方案也是SmartInspect市场策略的一部分,这同时也是我在文章开篇里提到的那个方案。我们提供了一个功能简化的SmartInspect个人版,该方案颇见成效。
我们希望通过(发行)个人版会产生两种效果:一方面,我们希望我们能够得到更多一些(市场)对SmartInspect的认可,交口称赞将会提高我们的产品的知名度。我们也希望那些喜欢个人版和需要更多高级特性的用户能够升级到专业版。我可以确定我们已经看到了成效和它所带来的回报。
我们希望个人版将会减少盗版的专业版是另一个我们希望看到的效果。我们不敢肯定这种效果一定能够达到。但是如果用户能够不用盗版就有一个可用版本的话,他们可能更倾向于使用个人版。我们期待着它以后能够达到这个效果。
  • 指定开发者许可
如果你出售开发工具或者其他组件/库的话,指定开发者许可的方案将会比较适合。你需要为每一个开发者派发许可证使得它都能使用该工具或组件。当你使用到该组件的应用程序部署后,终端用户一般不再需要许可证,这也叫做免版。
我们决定为SmartInspect专业版使用这种许可证方案。这种许可证方案对于规模无论大小的软件提供商都非常容易并可接受。
  • 站点许可证
站点许可证意味着该软件可以被同一个站点的所有用户使用。这里的站点意思是处于同一个建筑里,或者同一个实际地址上的所有人或者一个公司的所有人。就像很多人认为的那样,这种许可证方案因为可能被忽略而很少使用,买方通常使用制作这种方案许可证,利用这种方案也可以很容易对许可证进行控制。
设想你有一个软件是采用按用户名许可方案。现在,你需要许可你的很大规模公司所有销售员工的对该软件的使用。精确地算出你需要多少许可证并发现这个数字随时间的变化规律,将会非常困难。(当然,还有)一种方法可以确保你能够通过使用某种许可管理工具许可你的所有用户,即购买更多的许可证而不是简单地使用一个站点许可证。
  • 流动许可证
流动许可意味着你可以免费在多台计算机上由多个用户使用该软件。你必须确保同一时刻只有一个用户使用该许可证。当你的软件产品非常昂贵而用户又不得不使用的时候流动许可证方案是很有必要的。在大多数情况,流动许可证都是在不提供其他许可证时提供的,它更为昂贵。
  • 指定商品版税
该方案只适用于那些作为其他软件程序部分或者发售软件包部分。该许可证必须支付版税以便许可每个终端用户使用。以嵌入式市场为例,考虑一个拥有微处理器和特定的软件系统的自动化工业机器人,当商人卖掉一个机器人时,他同时也必须为最初的软件提供商提供版税。
在这种特殊情况,该方案对于许可那些需要支付版税的软件是极为有用的,因为这些非常专业化的昂贵的产品数量非常有限。对于大多数软件组件来说,采用这种方案反而效果不佳。
方案确定的依据
我们已经提到了,许可证方案尤其依赖软件自身的架构。例如,在C/S架构中,很自然地会要求对每一个客户端提供一个许可证。但是(有时候),我们还需要注意一些其他方面:
市场
你的目标市场会影响你选择哪种方案来许可你的软件。首先,了解你的竞争对手的许可证方案。是否你已经在考虑一些问题?你认为他们的软件许可证方案对他们还是对他们的用户都很清楚吗?哪些部分能够改进?你是否在这些同类产品的不同注册机制中发现了类似的东西?市场上是否有更好的方案来许可软件?
当然,我们更应该关注那些可能(使用软件的)用户。所以,尽力去设计一种方案,能够让你和你的用户都觉得满意。要时时提醒自己,许可方式很大程度上会影响用户的决定。已经提到了,你可能拥有这个行星上最大的软件产品,但如果使用了不合适的许可证方案,那些用户将不愿意甚至完全不想购买你的软件。
例如,如果你为自己的软件开发组件征收版税,那么很多软件商店就是不会购买它。他们不想为他们所卖的许可证支付你费用。另一方面,在另一些领域,版税是可被接受的并能很好工作(嵌入式市场,高度专业化和昂贵的设备等等)
市场策略
当设计一种许可证方案时,考虑可能的市场策略是有好处的。在压缩包程序市场为你的产品提供一种功能简化版本或者提供免费支持的版本会产生一定的市场推广效果。你可以考虑为你自己的产品(加上这种方案)。
另一种可能的市场策略主要是关于基于C/S架构的软件程序的。依托目标市场,(为用户)提供一个服务器或者一或两个客户端免费许可证可能是很好的一种市场策略。有些小型的企业,一开始使用你的软件是为了省钱,然后当他们成长起来后,可能仍然会继续使用你的软件,那么就会购买更多的客户端许可证了。
结论

我希望在这篇文章里,我已经解释清楚了不同的许可证方案和它们的优缺点,也很明确地说明了选择你的许可证方案是非常重要的一件事。关于软件许可的内容,我在这篇文章里仅涉及到冰山一角。但是它应该会是你开始软件许可研究的一个不错的起点。如果你有什么想法或者问题,随时通过([email]tg@gurock.com[/email]) 与我联系。





  本文转自 cuiyingfeng 51CTO博客,原文链接:http://blog.51cto.com/cuiyingfeng/14836,如需转载请自行联系原作者

相关文章
|
4月前
|
缓存 数据可视化 安全
C盘满了?告别磁盘告急!基于Python打造高性能磁盘清理工具 TurboClean【复制即可用】
TurboClean是一款基于Python+PyQt6开发的高性能跨平台磁盘清理工具,支持多进程加速扫描/删除、三种扫描模式、可视化树形界面及安全批量操作,显著提升清理效率与体验。开源免费,适配Windows/Linux/macOS。(239字)
391 2
|
4月前
|
人工智能 安全 测试技术
从传统编程转向大模型编程
本文提出“文档即源码”新范式,倡导开发者从“代码产出者”转型为“文档定义者”。核心是用结构化文档(需求/架构/约束)驱动AI生成代码,实现“改文档→自动重写代码”,提升知识复用性、模型无关性与安全可控性。
从传统编程转向大模型编程
|
人工智能 前端开发 API
MoneyPrinterTurbo:23.9K Star!这个AI把写文案+找素材+剪视频全包了,日更10条不是梦
MoneyPrinterTurbo 是一款功能强大的 AI 工具,支持通过主题或关键词自动生成视频文案、素材、字幕与背景音乐,并合成高清短视频,适合批量生成与多语言支持。
2174 4
|
6月前
|
Java Maven 数据安全/隐私保护
06-nexus私仓环境搭建
本文详细介绍Nexus Repository Manager OSS的安装与配置,涵盖JDK环境准备、服务部署、用户创建及启动操作。指导用户搭建Maven和Docker私有仓库,实现jar包与镜像的上传下载,并配置匿名访问与本地客户端信任。支持多种仓库类型,适用于企业级制品管理。
369 0
|
存储 安全 Linux
【实战指南】7个设置/获取接口了解Linux时间管理
本文系统介绍了Linux时间管理中的7个关键设置/获取接口,涵盖时间获取(如`time`、`gettimeofday`、`clock_gettime`)、时间设置(如`stime`、`settimeofday`、`clock_settime`)以及时间转换和格式化等内容。文章详细解析了绝对时间和相对时间的概念,包括GMT、UTC及本地时间的区别,并通过实例测试展示了各接口的使用方法与特性。此外,还探讨了时区设置对时间计算的影响,强调在实际开发中推荐使用UTC作为基准时间以避免时区变化带来的问题。总结部分结合项目经验,提醒开发者注意时间服务的重要性及潜在风险,例如时间跳跃可能引发的应用故障。
978 124
【实战指南】7个设置/获取接口了解Linux时间管理
|
监控 文件存储 Docker
实现NAS远程下载,Docker部署qBittorrent、Transmission、贝锐花生壳
与电脑不同,NAS通常7x24小时运行,便于下载资源,解决BT/PT下载需长时间在线的问题。因此,qBittorrent、Transmission等下载管理工具成为NAS用户的必备应用。通过Docker,用户可在多种NAS设备上快速安装这些工具,并通过局域网IP地址+端口访问。然而,缺乏公网IPv4地址导致远程访问困难,贝锐花生壳提供了解决方案,允许无公网IP情况下通过固定域名远程访问NAS中的下载工具,简化了部署过程,使用户能随时随地控制家中的下载任务。
1594 33
实现NAS远程下载,Docker部署qBittorrent、Transmission、贝锐花生壳
|
8月前
|
人工智能 API 数据库
Semantic Kernel .NET 架构学习指南
本指南系统解析微软Semantic Kernel .NET架构,涵盖核心组件、设计模式与源码结构,结合实战路径与调试技巧,助你从入门到贡献开源,掌握AI编排开发全栈技能。
940 2
|
API 文件存储 数据安全/隐私保护
python 群晖nas接口(一)
这段代码展示了如何通过群晖NAS的API获取认证信息(SID)并列出指定文件夹下的所有文件。首先,`get_sid()`函数通过用户名和密码登录NAS,获取会话ID(SID)。接着,`list_file(filePath, sid)`函数使用该SID访问FileStation API,列出给定路径`filePath`下的所有文件。注意需替换`yourip`、`username`和`password`为实际值。
1347 19
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
522 1
linux特殊权限!!
|
存储 PHP 对象存储
开源免费的图床源码整理汇总-个人自用图床相册程序推荐
图床,也可以称之为相册,即存放图片的地方。 图床与普通的相册不同,图床上传的图片可以作为外链使用,也可以作为公共图片访问使用。除了支持匿名形式访问外,还支持多用户注册与登录,管理员批量管理审核等,当然高级一点功能就是自动审核、AI识别等。 图床需求不如博客建站程序那么,算是一个小众的需要,所以基本上没有什么大规模的免费图床程序。比较受欢迎的Chevereto,已经宣传转为了付费产品,虽然Github上的Chevereto还可以继续下载使用,但是作者已经铁了心要主推他的Chevereto Pro版,免费版的命运走向何方也未知。 本篇文章就来搜集整理一下开源免费的图床源码,由于很多源码都是个人开发
1886 0