`
阅读更多

这类话题,百度一下就会有很多种不同的答案,笔者看到一种答案不禁想结合自己对开源OA和开源软件的理解感叹几句。

如上图所示:一种典型的回答是,优点就是可以自己改,缺点是安全性差。

当然,从优点上来讲,选择开源OA或者开源软件有非常多的优点,可不仅仅是可以自己改和便宜,比如:

1、能更详细地了解供应商或者选择的项目是否优质,代码一看就明白了;

2、可以得到更好的技术支持,发布开源软件的开发者一般都会留下联系方式,遇到问题可以直接通过公开的方式进行联系,解决自己遇到的问题;

3、因为有很多人都在使用,项目的迭代会持续进行,相当于大家都在为同一个项目不断提供经验,不断修复问题,项目会越来越趋于健壮;

优点还有很多,就不在此一一列举,至于上图所提到的缺点,笔者认为,刚好相反,优质的开源OA或者说开源软件反而更加安全,理由如下:

1、一般来说,作为开发者或者企业在开源自己的项目之前,会仔细审核自己的项目。原因很简单,写得太渣了,不太好意思开源,人都是要面子的,开发者也一样。所以选择Star和Fork数较多的,正在迭代更新的开源项目一般不会有太大的问题;

2、在一个项目开源,并且有一定数量的Star和Fork数之后(比如1000以上),使用项目的开发者或者用户会不断提交BUG或者反馈问题,随便一次次迭代,用户遇到的问题会一个个都被解决,用户会逼开源项目越来越好;

3、如果选择的项目是真正的开源项目(没有任何jar包闭源),使用者可以更清楚地看到每一行代码,也可以自己动手修复那些自己找出来的问题。开源社区的每一位贡献着也会积极地修复自己能找到的安全漏洞,让整个项目更加安全可靠。

综上,选择优质的开源项目,开源OA,相比闭源的项目更加安全可靠。至于上图中所说的开源项目便宜,这也应该是大多数人心底想法。选择开源软件的确会节约成本,但其实开源和免费,开源和便宜并不能直接划等号。选择开源软件,肯定也是需要一定的成本的,只是这些成本有可能不是RMB而已。比如,需要大量的精力研究源码,修改源码以达到项目的需求。笔者认为,如果能选择一款优质的开源项目作为基础平台,然后在此基础上完成自己的项目建设,业务落地,适当购买技术支持服务也是应该的。第一,可以大幅度缩短自己的学习成本,在短期内让团队快速熟悉平台的开发和使用模式;第二,还可以为自己的项目购买一个“技术保障”,在项目需要进行性能优化,需要进行故障处理时有足够的技术资源的支持,保障系统的稳定运行。

在此笔者也尝试着总结一下选择开源软件对企业带来的几个好处:

1、更直观的了解供应商的技术能力

在你投资工程和经济资源将产品整合到你的基础设施之前,需要确保产品的合格性:是否处于积极开发状态?是否有定期的漏洞修复和安全更新?产品是否能根据需求按时更新?

最后一点或许比你想象的还要重要。解决方案必须满足产品需求。但需求会随市场及商业的变化而变化,如果产品不随之做出改变,未来就需要花费一笔不菲的迁移成本。

而在开源的世界里,你可以综合产品的发展速度以及社区的健康程度来比较供应商。一个更积极、更多元化的社区能在一两年后开发出更好的产品,这是一个关键的参考因素。当然,供应商必须要有能力解决在项目发展过程中出现的不稳定性问题。最后,还需要供应商具备较长的支持周期,以避免更新混乱的出现。

2、更有利于产品的长期发展

福布斯杂志指出,90%的初创公司最后都会失败,而他们当中,只有不到一半的中小型公司存活期能超过5年。如果在产品开发的中途突然出现需要更换供应商的问题,那迁移的成本就很高了。所以,要避免选择只有一个供应商支持的产品。

而开源使得社区成员能够协同编写软件。如 OpenStack 就是由多个公司及个体志愿者共同编写的。这么做,就能保证,在一个供应商出现问题的情况下,其他供应商能继续支持。而且,软件一经开源,企业就会长期投入开发团队以实现产品开发。使用源代码的好处就是,你可以聘用贡献者来保证开发的活跃性。

3、项目更安全

开源软件的代码通常也更加安全,因为它经由社区进行了更为彻底的审查和检查(并且出现的任何问题往往会更加努力地进行修补)。企业采用开源代码长久以来都是犹豫不决的态度,不过现在看来,对安全性的担忧似乎不应是一个问题。以开源的方式进行开发,可以很直观地看到,供应商是如何对待安全问题,以及是否在积极保证产品安全。研究源代码并执行独立代码审核,也可以及时地发现问题并解决问题。

开源除了源代码开放外,开发的过程也是透明的,因此,你可以检查供应商是否遵循 ISO27001,云安全原则等基准行业标准开发流程。

4、更多的用户导向

开源能使顾客和用户直接看到并参与到产品开发中来,这比闭源软件开发更能了解客户的需求。供应商可能只关注产品的某一特定方面,而一个社区能致力于开发出更多的功能,能创造出对用户更有价值的产品。

5、避免被厂商技术锁定的风险

选择开源软件避免被锁定用于核心基础设施的专有软件会增加被供应商或技术锁定的风险。如果发生这种情况,企业就会收到供应商提升价格的要求,并且尝试到缺失灵活性的体验,还不能轻易摆脱他们的限制。不过企业对于真正开源解决方案的使用也应该谨慎,注意那些未完全开源,引入专有代码钩子的重新打包过的开源软件,这是天坑。

6、更有利的许可

典型的软件许可充斥这一些不公平条例,它通常是对产品供应商有利,而非客户。如果软件停止运行,或者如果供应商要求支付更多的费用,你甚至无法起诉供应商的不当行为。而像 GPL 一类的开源许可证就是为保护客户专门设计的,而不是供应商,它确保你按照自己的需求使用软件,而没有专制限制。

总结:我们相信开源,支持开源

我们相信开源本身所蕴含的的开放、协作与自由的精神必然引领越来越多的开发者和用户离开传统的商业软件的阵营。

因为开源,有无数的中小企业可以享受信息化升级带来的便利;

因为开源,你可以自己修复那个古老的bug,甚至通过定制升级目前的功能;

因为开源,无数的使用者和开发者一起参与了使用和测试,软件更加稳定与可用;

因为开源,在垄断软件巨头以外客户找到一个替代的解决方案;

因为开源,开发者与其他专业人士可以进行全球化协作与创作,史无前例的协作规模汇聚了众人的智慧;

因为开源,客户不再受到恶意的开发者的绑架, 开放的代码让他们可以随时换人;

因为开源,非主流软件的生产国不用担心国家安全的问题,开源是没有国界的;

因为开源,大笔的软件授权的费用将被节约,客户可以将资源用于对核心业务的关注。

 

分享到:
评论

相关推荐

    金蝶OA系统排名?金蝶OA办公系统怎么选?什么是用户口碑最好的金蝶OA系统?

    - **初期投入较高**:相对于一些小型或开源的OA系统,金蝶OA的初期购买成本相对较高。 - **定制化程度有限**:虽然支持一定程度的定制化开发,但对于一些非常规需求可能难以完全满足。 - **系统更新速度**:由于...

    OA系统需求分析报告(初).pdf

    随着互联网技术(Intranet、Internet)在我国迅速发展和普及,OA在数字化办公领域和企业信息化建设中扮演着越来越重要的角色。 IT知识点: 1. OA系统是将现代化办公和计算机网络功能结合起来的一种新型的办公方式...

    史上最具价值各大OA系统厂商详细研究资料

    近年来,随着信息技术的发展,OA系统变得越来越重要,对企业管理效率的提升和协同工作模式的推动有着显著的作用。OA系统厂商众多,不同的厂商提供不同特色的OA产品。本文将详细介绍几个在中国市场上颇具代表性的OA...

    OA办公自动化系统软件技术毕业论文.doc

    OA 办公自动化系统的发展前景非常广阔,随着信息时代的来临,各行各业都需要提高工作效率,降低生产成本,OA 办公自动化系统将扮演着越来越重要的角色。 OA 办公自动化系统的优点包括: 1. 提高工作效率:OA 办公...

    计算机专业-优秀毕业设计-OA办公自动化系统.doc

    随着办公自动化的广泛推广,越来越多的企业将OA系统融入日常运营中,这不仅简化了工作流程,降低了运营成本,还提高了信息的透明度和决策的效率,是现代企业管理的重要组成部分。对于计算机专业的学生来说,理解和...

    java开发oa办公系统源码-Andriod-APP:为什么混合应用程序现在更受欢迎?

    为什么混合应用程序现在更受欢迎? 抽象的 由于 IOS 和 Android 正在占据大多数移动设备市场,因此 App 越来越受欢迎。 开发人员知道有两种通用类型的 App。 一种是在浏览器上运行的Web应用程序,另一种是在移动设备...

    OA系统需求分析(初).pdf

    OA系统的建设背景是随着互联网技术的发展和普及,OA系统在数字化办公领域和企业信息化建设中扮演着越来越重要的角色。因此,现阶段有必要引进建设一套技术先进、符合当前办公发展需要的办公自动化系统,以增强协作,...

    基于android的移动OA的开发与设计.docx

    移动OA系统是指基于移动互联网技术,为用户提供随时随地处理事务能力的企业内部管理工具。它能够实现传统OA系统的全部功能,并在此基础上增加了新的特性,比如位置服务、即时通讯等,使企业能够更有效地管理和协调...

    ssm基于SSM的OA小型企业资源管理系统论文.docx

    SSM 框架在OA小型企业资源管理系统中的应用 摘要:本文介绍了基于 SSM 框架的 OA 小型企业资源管理系统的设计与实现。该系统旨在解决当前网上企业的实际需求,结合计算机系统的结构、概念、模型、原理、方法,采用 ...

    人事OA管理系统资料.docx

    ### 人事OA管理系统知识点 #### 一、背景与需求分析 在当前信息技术高速发展的背景下,企业对于人力资源管理的要求越来越高。传统的手工管理模式不仅效率低下,而且容易出现错误,这对于追求高效运营的企业来说是...

    基于Android平台的推送技术在移动OA中的应用.pdf

    在现代移动办公自动化(Mobile Office Automation, 移动OA)的实施过程中,推送技术扮演着至关重要的角色,尤其在Android平台上的应用尤为突出。本文将详细介绍在移动OA中运用推送技术的必要性和实现方法。 一、推...

    计算机毕业设计jsp办公OA考勤请假健康设备系统论文

    在国内,虽然起步较晚,但随着移动互联网技术的发展,越来越多的企业开始重视并投资于OA系统的建设。目前市场上也涌现出了多种成熟的产品和服务,如钉钉、企业微信等,它们为企业提供了多样化的选择。 #### 1.3 ...

    基于java的毕业设计(源代码+论文)3套(4)

    随着计算机专业的普及,越来越多的大学生选择了该热门专业,毕业时的毕业设计需要完整的源码以及论文。此资源是已毕业前辈的毕业作品,包含项目的源码、毕业设计论文的模板,项目匹配的毕业设计论文以及项目的设计和...

    基于Java的OA系统的设计与实现.docx

    ### 基于Java的OA系统的设计与实现 #### 一、系统开发背景与意义 ##### 1.1 系统开发背景 办公自动化(Office Automation, OA)是指利用先进的信息技术,通过各种设备和人机信息系统来辅助完成各种办公业务活动的...

    基于JBPM的公文流转系统的设计与实现.pdf )

    公文流转系统是办公自动化(OA)系统的一个关键组成部分,它主要用于管理和优化组织内部的文档处理流程,例如财务报销单、请假单、采购审批等。这种系统能够根据用户定义的工作流程,借助于工作流引擎来实现公文的...

    java办公oa系统源码-spring-security-oauth2-sso-sample:SSOsampleapplicationbase

    随着企业各系统越来越多,如办公自动化(OA)系统,财务管理系统,档案管理系统,信息查询系统等,登录问题就变得愈发重要。要记录那么多的用户名和密码,实在不是一件容易的事儿。而为了便于记忆,很多人都在不同的...

    网站项目可行性报告.doc

    目前,我们公司的现有网站是适应显示分辨率为 800*600 的显示器,但是现在的设备基本是 1024*768 以上。公司的现有网站是 ASP 程序的,在安全性等方面不能满足现在的要求。网站的可维护性比较差。网站部分功能不突出...

    PHP Excel Reader 2.21.zip

    在信息化时代,数据的处理和交换变得越来越频繁,而Excel作为办公领域的重要工具,其文件格式(如.XLS)被广泛应用。PHP作为服务器端脚本语言,用于开发Web应用时,有时需要与Excel文件进行交互,提取或写入数据。...

    java-web开发讲解

    ### Java Web 开发详解 #### 一、Java Web 开发基础 ##### 1.1 Web 入门 - **Web** 是指万维网(World Wide Web)...随着互联网的发展,Java Web 开发的应用场景越来越广泛,掌握这些基础知识对于开发者来说至关重要。

Global site tag (gtag.js) - Google Analytics