APP下载

基于扎根理论的开源软件项目成员间知识共享模式质性研究

2022-06-09陈晓红

管理学报 2022年6期
关键词:开源编码软件

陈晓红 周 源

(1. 清华大学公共管理学院;2. 清华大学中国工程科技发展战略研究院)

1 研究背景

开源软件是一种开放源代码软件,任何人都可以自由使用源代码,以及出于任何目的进行代码修改或做出贡献,其具有质量高、功能稳定、可靠性强、绩效突出等特点[1]。随着数字经济的发展,开源越来越受到学界、业界及政府官员的高度关注。华为、腾讯、微软等都积极拥抱开源,建立开源事业部以推动开源技术的发展。中国政府积极制定产业政策,一方面是为了打破以美国为代表的软件垄断的局面,实现国家软件产业的自主创新;另一方面从电子政务的角度出发,降低政府采购成本,提高国家信息安全水平。

已有研究认为,开源软件的核心是知识[2],涉及系统、程序、商业规则等多方面。只有当知识在个人之间实现流动和共享时,其价值才能得到最大程度的发挥。软件开发的本质在于开发员利用已有知识进行分享和重组的过程,因此,有效的知识共享是推动开源软件项目发展的关键[3~5]。

然而,开源软件项目内有哪些影响要素,以及各个要素之间通过何种机制发挥作用,缺少大量的理论分析和实证调研,这为本研究提供了丰富的研究空间。本研究将运用扎根理论,具体采用参与式观察、结构化访谈、档案和文献研究的方法,对开源软件项目内成员间知识共享机制进行理论构建,以期对扎根理论在开源领域的应用提供一定的学术贡献。

2 理论基础

开源软件项目,旨在强调有意愿和有能力的人以开发开源软件为目的而共同参与的项目。参与主体主要分为两类成员:开发员和用户。开发员根据项目角色分为核心成员、积极成员和外围成员。核心成员一般数量有限,可以是项目的作者或创始人,对项目负有决策权。积极成员主要负责项目中的故障修复、代码提交、文档编写等。外围成员多基于共同兴趣聚集在开源项目,对项目进行微小修复。开发员根据自身知识背景和特长,自由参与项目和分享贡献。从严格意义上说,用户并不直接参与开源项目的实体构建工作,但用户体验及其对项目的反馈,对于开发工作具有直接影响。开源软件项目是开源软件的孵化器,比如Linux、分布式HTAP数据库TBase都是有名的开源软件项目。而与开源软件项目密不可分的就是开源社区,是软件开发的重要平台,国外如Github、Opensource,国内如Linux 中国、开源中国社区都是有名的开源社区。

知识共享指成员在协作过程中就观点、信息等进行互动和交流,其过程可以是面对面交流,也可以借由纸质、档案等载体进行共享。在开源软件项目当中,源代码既是知识的载体,也是共享的手段,围绕项目所产生的观点、评论、建议等都是需要考虑的知识。和商业软件“大教堂式”的开发模式不同,开源软件属于“集市模式”:开发员多处于不同的地理位置,任何人都可以随时加入或离开,成员之间自由进行知识共享。在扁平化的创新网络以及分布式的环境当中,如何高效地沟通和协作就成为知识共享的前提和保障[6]。好的知识共享机制,对于促进和提高开源项目质量及进度都发挥着非常重要的作用。在自由软件运动早期,知识共享作为活动目的,推动着软件产业的变革;时至今日,知识共享则作为核心过程,促进着开源软件产业的技术创新。

吉本斯在《知识生产的新模式》中指出,当代知识生产和共享方式正经历着模式上的转变[7]。传统的知识共享属于合作R&D模式,常见的包括交叉许可和合资研发两种。前者强调合作企业通过交叉授权许可专利,共同并免费享有合作的技术成果;后者主要通过合作方共同投资独立的组织,并需要向其支付版权许可,方可使用合作的技术成果。这种传统的知识共享合作R&D模式,技术成果的属性为产权私有。

而开源模式下的知识共享合作R&D,其核心不同在于保证产权共有。具体区别如下:①合作成员方面,传统的知识共享合作R&D多为企业或机构,成员进入退出有严格程序;开源模式下的R&D多为个人且无人数限制,成员流动较快,进入退出自由开放。②知识产权方面,前者多为合作研发组织私人拥有;后者对所有人开放,产权共有。③使用方式方面,传统合作R&D需要通过付费获得许可;开源模式的R&D 中任何人均可免费使用。④合作目标方面,前者有明确的目标和期限;后者则无。⑤合作方式方面,传统合作R&D管理规范,有明确的技术分工;开源模式的合作R&D管理松散,成员各尽所能。⑥收益方式,前者通过研发降低企业产品成本,增加产品收入;后者通过免费使用产品获得收益。

3 研究设计与数据收集

3.1 研究方法

本研究拟采用扎根理论的研究方法来构建初步的模型框架,主要原因在于:现有的关于开源软件知识共享的研究多立足于国外背景,很难了解中国在这方面真实的产业生态情况是什么。从研究方法上,定性研究是较好地构建初步理论框架的方式,而定量也多是在大样本数据的基础上进行验证,在国内开源软件知识共享定性和定量研究不多的情况下,通过定性研究来探索了解当中的核心要素,以及要素之间的关系就显得极为重要和迫切。出于这样的目的和背景,采用扎根理论就成为本研究较为理想的选择。

扎根理论是社会科学研究方法中应用最广泛的定性研究方法,主张在数据分析的基础上发现主体之间的关系,并通过研究主体间互动关系来构建理论[8]。扎根理论的关键就在于比较,不断实现数据、资料以及理论之间的比较,强调研究者本人与所收集数据和文献之间的三角互动。本研究采用扎根理论,通过科学地运用访谈、观察(参与式或非参与式)、档案资料等方法,对于理论框架的构建具备较强的解释力度。

3.2 研究设计

根据扎根理论,本研究的研究策略具体分为4步:第一,利用田野调查的方式进入情境并收集数据。访谈提纲在文献阅读的基础之上,在清华大学和剑桥大学教授的指导下,制定中英文双版访谈提纲,修改多次后定稿。这阶段的访谈问题不带任何研究者的理论预设,问题的制定遵循3个标准:①目的在于了解开源软件行业及专家的实际工作情况;②研究问题较好地嵌入访谈提纲,有助于核心影响要素的理论涌现;③了解具有代表性的开源软件项目案例,为后期的多案例分析做铺垫。

访谈之前笔者做了充分的准备,包括联系相关的业内专家、确认访谈对象、了解开源项目和行业内基本知识等。访谈过程以科学的研究方法为指导,每次访谈平均时长1.5~2小时,访谈结束后于当天整理笔记,并发送给受访专家予以补充和修改,确认访谈数据无误。再者,笔者加入到开源社区若干开源项目当中,能够较为便利地了解项目运作及开展情况;同时,以用户身份加入到若干社区、论坛、群组、邮箱列表、QQ群等,以半参与的方式进行观察。除此之外,为了尽可能多地获取有效且深入的数据,笔者从访谈者、若干项目、社区、论坛、网络等多渠道获得了相当多的内部档案资料。

第二,在已有文献的基础上,不断将获取到的数据资料与理论进行对比,从资料中提取关键概念和类属,并建立概念间关系;第三,对数据资料进行理论抽样和编码;第四,对所收集到的资料及初步建立的理论预设撰写报告和阶段总结,不断对比分析之后,确定初步的理论框架。

3.3 数据收集

笔者共访谈国内外专家43名,其中国内33名,国外10名。访谈对象主要集中在中国(以北京、上海、广州、佛山、成都为主)、英国(以剑桥大学制造工程学院和计算机实验中心为主)、美国(以开源国际年会专家访谈为主)。对所有访谈回复材料进行整理和总结,形成4万余字70多页的访谈笔记。

访谈对象的抽样方法,采取“理论性抽样”,又名“目的性抽样”,即研究者带有目的地选择样本,以便能够最大程度地获取样本信息。访谈对象主要来自开源领域,分布在产业界(如技术带头人、开发员、工程师)、学术界(高校教授、讲师)和政府部门(开源软件联盟等)。全部对象具备该领域丰富的实战经验和权威的话语权,能够在一定程度上真实、全面、客观地反映开源软件产业的生态环境,准确地回答访谈问题。

本研究对43份访谈记录进行编码,规则如下:①第一位数字代表国别,1代表中国,2代表国外;②第二位数字代表性别,1代表男性,2代表女性;③第三位数字代表访谈人员所属系统,1代表产业界,2代表学术界,3代表政府部门;④最后两位数字代表编号,如01、02、03。访谈样本编码示例见表1。

表1 访谈样本编码表(示例)

除此之外,笔者本人作为开源软件用户,亲自使用和追踪3个开源软件项目,以社区成员身份加入9个论坛,以及与开源相关的QQ群组18个,观察项目运作和实际开展情况。访谈方式主要分为线上(邮件、Skype 网络会议、电话会议、QQ、论坛等)和线下(面对面交流、学术汇报、国际会议)两种。通过数据分析获得初步的理论框架,并请业内众多专家对理论框架进行评审和校正,获取专家建议。综上,本研究主要运用访谈、观察、档案、文献等方法收集数据。

4 数据编码与分析

4.1 开放式编码

开放式编码是建构理论框架的第一步[9]。笔者对收集到的原始数据进行概念化标签以及编码,最终从4万余字的访谈记录中提取出15个概念范畴,而归纳后的范畴及概念主要基于英文缩写,比如第一个生成范畴为内在动机,英文为internal motivation, 即IM1;范畴内有若干概念化标签,则根据概念化数量,编码为im11, im12,…,im1n等。具体的编码分析如下,编码范畴化见表2。

(1)内在动机(IM1)、外在动机(EM2)已有研究在分析开发员为什么愿意参与开源贡献时,发现内在动机和外在动机是驱动开发员参与贡献的两个主要因素。前者包括对编程和代码的热爱、解决技术难题所带来的自我满足、对新技术的不懈探索等[10];后者包括开发员对同行荣誉和地位的追求、为职业晋升所做的积累,以及商业模式所带来的金融刺激和薪酬奖励等。

表2 开放式编码范畴化

在访谈过程中,笔者在编码第4个访谈问题中问到,“开源软件项目中人员进行知识共享的目的和动机是什么?什么因素会促进他们愿意去共享知识?哪些是阻碍因素?”通过对已有访谈、档案以及观察等资料的整理和分析,笔者将开发员参与动机概括为内在动机和外在动机两种。内在动机主要集中在以下几个方面:①兴趣爱好。基于对代码和编程工作的热爱,开发员能够从软件开发中感受智力激发所带来的乐趣。②能力提升。一般来说,开发员建立或参与项目是为了探索或解决一个现实问题,通过与项目内其他成员的交流能够快速找到解决问题的方案,并从知识共享中提升开发技能。③感恩回馈。开源项目给予参与成员学习与交流的机会,很多人基于感恩心理,对开源项目或社区心怀奉献的责任感。比如在笔者的访谈案例中,一位开源软件项目创始人表示,“我虽然计算机基础差,但对于开源特别感谢和迷恋,究其原因,在于开源为我提供了接受更高教育的机会,使我近距离学习诸如华为等高级开源软件的代码细节。作为自由主义的追随者,开源不仅帮助我提高开发水平,更是成为重要的生活方式”(访谈记录:11102)。外在动机主要集中在以下几个方面:①职业晋升。当开发员在社区贡献突出时,随着其声望的提升,也会促进其职业的晋升和发展。②自我认同。一些开发员在开源社区中能够收获他人的认可和尊敬,随着社区地位的提升以及自信心的提高,自我认同得到满足。比如有被访者提到,“通过开源以及不断的贡献,能够从同辈中获得认同感,也可以解决我的生活压力”(访谈记录:11104)。

(2)认知网络(CN3)、关系网络(RN4)、结构网络(SN5)已有研究认为,认知型社会网络重视成员拥有共同的交流背景以及共享目标所带来的影响;关系型社会网络强调成员互动中的信任、规范、义务以及彼此的认同,特别是信任感对于信息和知识的交互影响巨大;结构型社会网络则强调成员在网络中的互动频率和关系强弱[11]。

笔者在访谈问题7问到,“哪些因素会影响一个开源软件项目的执行和绩效?”以及访谈问题9中,“哪些因素会影响开源软件项目中的知识共享绩效?什么因素会促进良好的知识共享?为什么?哪些是阻碍因素?”不少专家强调项目的共同目标及对其的认同非常重要。比如有专家提到,“国际化的开源软件项目都是英文交流与记录,这从交流工具上无形中给中国开源软件项目的一些开发员设置了门槛。由于英文理解等存在的差异和障碍,客观上造成一些中国的优秀的开源软件项目开发员无法参与,或者深入地加入到项目贡献中来”(访谈记录:11307)。可以看出,基于相同的语言、政治和文化背景,多少会对项目的国际化造成不同程度的影响。也有开发员提到,“在同一个项目中,因为大家目标是一致的,所以沟通交流越好,项目进展越顺利”(访谈记录:21209),以此来说明共同目标的重要性。

在关系网络方面,国际开源软件基金会主席说道,“网络效应的作用依然存在,比如我负责A和B项目,另外一位专家负责B和C项目,因为B项目的因素,我与这位专家相识,最终又共同组建了D项目”(访谈记录:21111)。对于开源项目规则的说明,一位专家说,“开源许可证就是规则。开源开发中,个人用户可能不太关心,但对于公司来说,就是一件很严肃的事,因为这涉及到专利保护等问题……从开源项目创立那一瞬间,知识共享就已经确立起了完备的专有机制、规约、手段”(访谈记录:11114)。这些都在强调制度、规则等在开源软件项目中的作用。

在结构网络方面,本研究认为,互动频率和关系强弱会影响知识贡献。比如,有专家提倡,“多沟通、多交流、多反思、多总结,然后形成文档,才能促进知识分享、传播与记录”“伴随着项目的发展,成员之间的关系由弱变强,基于个人的技术背景,工作的模块化亦有了自然分工”(访谈记录:21119)。

(3)自由开放(FO6)、合作共享(CS7)、极客精神(GS8)开源作为一种特有的社会现象,有其自身所具备的独特文化:①科学性。作为计算机技术的一种,客观上具备科学技术的要求和追求。②开源的开放性以及成员工作成效的透明化,使得成员愿意主动地进行交流共享以保证技术品质。③集体行为属性[12]。作为一种公共物品,代码开放并面向所有人参与,使得开源已不仅仅是一种软件技术,更多的是一种“众智”行为的体现。④开源代表的是新的知识产权模式。开源的成功挑战了传统的对知识产权的界定,无论是对虚拟网络项目管理,还是开源许可证所特有的版权法依据,带来的无疑是一场全新的知识产权革命。⑤对“极客精神”的标榜。开源以成员兴趣为始,推动成员不断进步的就是对 “科技改变人类” 的信仰和 “技术精进”的不懈追求[13]。

笔者在对所有的访谈、专家日志、档案以及文献等各种资料观察和分析中,也被开源所具备的强大文化所震撼,体会较为强烈的是自由开放、合作共享以及极客精神的社区文化。有开发员提到,“之所以喜欢开源是因为工作自由,不受公司限制,且没有太多的等级。除此之外,共享是证明自己、寻找知己、提升自己的最好方法”(访谈记录:11120)。在谈到开源所体现的追求卓越的极客精神时,一位隶属红帽公司的技术专家说,“我的同事来自世界各地,他们都非常优秀,整天思考的就是如何用开源创造新技术,如何用新技术改变人类生活,这让我很受感染”(访谈记录:21223)。在对所有的数据进行综合整理之后,笔者认为,开发员之所以不断贡献,即使在没有薪酬支持的情况下,还愿意主动花时间和精力参与,很重要的因素就在于对开源社区文化的认同。

(4)创新意愿(IW9)、创新能力(IC10)在开源社区,用户是继开发员之外的另一主体,包括开发员用户和非开发员用户。前者凭借其专有的技术开发经验对开源项目贡献显著,且已有一部分研究进行了证实[14]。本研究关注的是后者,即不是专职从事软件开发的大众用户——非开发员用户。对于非开发员用户而言,一般并不具备快速找到解决问题办法的能力,其多以收集问题并提出假想解决方法,以期开发员回应的方式出现在论坛或社区。这当中不乏一些优质用户,凭借其多领域的知识和经验,提供的方案能够较好地启发开发员,并引领未来科技发展方向。更多的非开发员用户因为技术背景有限,在项目中常会分享软件使用心得,叙述遇到的问题、错误做法、提问,以及分享可能的解决办法[15]。开发员与用户的交流也许并不能直接产生创新,但能从用户的反馈中快速地找到问题的所在;当后续用户进驻社区,看到已有的开发员与用户间的探讨,会对“什么是可操作性的用户创新”具备更直接有效的理解。可见,对于大部分参与贡献的用户来说,参与项目讨论,仍然是获取并分享知识的最佳途径[16]。

根据理论和实际调研,笔者发现用户在开源软件项目的参与贡献可以分为两个方面:创新意愿和创新能力。前者强调“想参与”的主观意愿,后者强调“能够贡献以及贡献多少”的客观能力。比如有专家认为,“开源社区不仅是开发者的沟通平台,也是用户的分享平台,用户乐意分享更多接近最终用户的知识”(访谈记录:11331)。在用户实际发挥的创新效力来说,一位专家认为,“开源软件涉及到的是最终用户,这些用户是开源软件社区的最基础的参与者……就文档而言,用户(尤其是资深用户、专家)是开源软件知识共享的主力”(访谈记录:11132)。可以看出,用户在想要做出贡献,以及在实际上做出贡献时,都已经对知识共享产生或多或少的作用。

(5)显性知识(EK11)、隐性知识(IK12)开源项目中的源代码、书籍、视频、讲座、文章,甚至是邮件等可以看作数据,当数据之间的延展获得相关性,就会产生信息;当信息被再次整合起来,就意味着知识的产生。显性知识和隐形知识之间的互动,是开源项目知识共享的主要内容。前者以代码、文档等可见信息为主,后者则以听、说等信息不可见的方式呈现。首先,获取隐性知识的能力是前提,以便于理解和分析从邮件等渠道获取到的显性知识[17];其次,知识的传播和扩散有利于提升成员对隐性知识的理解,这中间包含显性和隐性知识互动继而创造新知识的过程[18];再者,显性知识的共享渠道对于隐性知识的分享亦是较好的选择平台。比如,开放源代码本身是显性知识,但其建构和表达的过程包含隐性知识,开发员可以通过对源代码的研究来学习更高级的编程逻辑。

笔者在访谈过程中亦对开源项目成员间知识共享的内容和方式进行挖掘。比如编码第5的访谈问题,“开源软件项目中进行知识共享的内容主要集中在哪些方面?为什么?”和访谈问题6,“开源软件项目中的人员通过哪些载体,以及形式进行知识共享?知识共享的过程是什么?”就是较好的匹配问题。通过数据分析可知,开源项目进行知识共享的内容主要集中在应用场景、软件架构、软件代码、软件文档、组织管理等方面。代码和文档是较为基本且重要的内容。代码是否有注释、命名是否规范、是否符合业界最佳编码实践、是否易维护、易扩展以及可读性是否良好、文档是否完善,对于开源项目最终绩效影响非常关键。有受访者认为,“项目中沟通良好、文档良好,是知识共享有效的重要标志。文档良好有助于知识记录,如果不记录下来,沟通完了就无法追踪了”(访谈记录:11133)。而对于隐性知识,也有开发员提出,“与维基百科不同,开源软件的知识是需要再发掘的,并非完全显而易见,而隐性知识也常常以口头传输、线下聚会、会议等形式开展,这些隐性知识也包括诸如经验、经历、感受等一些不易被记录出来的知识,对于知识共享亦发挥作用”(访谈记录:21236)。

(6)市场成功(MS13)、技术成功(TS14)、社区成功(CS15)开源软件项目绩效,是衡量开源软件项目总体发展情况的简称,不同的学者有不同的衡量标准。比如,PROCACCINO等[19]认为,开源项目发展可以从成本、计划、范围、软件质量等角度衡量。AGARWAL等[20]认为,衡量开源项目成功与否,主要以是否实现其目标为度量标准。也有学者认为,由于开源软件以自愿为发展原则,所以诸如是否准时、是否在预算内、是否达到预期等衡量标准可能并不适用于开源软件;成员参与和开展项目活动是较好的衡量标准,特别是后者,可以从团队规模、社区规模(项目的积极参与者人数)、漏洞修复次数等指标进行衡量[21]。GREWAL等[22]认为,市场成功和技术成功是全面衡量开源项目是否成功的有效标准,新的软件发布次数以及下载量也是很好的衡量指标。

综合所有数据及编码,本研究认为,市场成功、技术成功、社区成功能够全面且细致地衡量开源项目绩效。在访谈过程中,针对开源项目绩效,本研究设置了多重问题进行双重验证,比如访谈问题7,“什么是成功的开源软件项目?其衡量和评估的标准是什么,以及为什么?哪些因素会影响一个开源软件项目的执行和效果?”访谈问题8中,“什么是成功的开源软件项目中的知识共享?其衡量/评估的标准是什么,以及为什么?”访谈问题9中,“哪些因素会影响开源软件项目中的知识共享绩效?什么因素会促进良好的知识共享?为什么?哪些是阻碍因素?”

在市场使用方面,一位专家说道,“开源项目的执行成效,本质上和该开源项目的市场接受程度有关。这点上,和商业软件是一样的”(访谈记录:11137)。同时也有专家认为,“成功的开源软件项目就是得到了商业应用,为社会创造了价值”(访谈记录:11139)。因此,可将市场接受度和商业价值两个概念标签作为市场成功的分析依据。在开源技术方面,一位著名开源软件社区资讯站站长,专门负责收集和报道Linux 及开源领域最新资讯的专家说,“衡量开源软件项目成功的标准,对于个人程序员来说,对开源项目有足够的兴趣,且项目开发的技术能够解决实际的问题”(访谈记录:21140)。在开源社区方面,一位隶属Redhat红帽公司的资深专家说,“开源软件如果能够解决大家实际问题,就会吸引大量的用户,健康的社区环境可以造就好的社区,好的社区为开源项目开发不断提供生命力”(访谈记录:21143)。也就是说,社区成熟度是衡量社区成功的具体概念标签和指标。

4.2 主轴式编码

主轴式编码是继开放式编码之后的第二步,主张在提取出范畴之后,根据范畴之间的逻辑关系,进行进一步的高阶整理[23,24]。本研究在15个范畴的基础上,进一步归类整理,可以得到以下6个主范畴(见表3),具体为参与动机、社会网络、文化认同、用户创新、知识共享、项目绩效。其中,参与动机是在内在动机和外在动机的基础之上提取,主要用于解释行为的原因。社会网络是在认知型、关系型和结构型网络的范畴之上建构归纳,主要强调资源在个人、群体、组织以及社区中互动所形成的网络关系[25]。文化认同是在自由开放、合作共享、极客精神的范畴上归纳主范畴,指组织内部所共有的价值观、符号、行为方式和信念等组成的特有的文化现象,常体现在成员的行为规范、组织价值和决策哲学方面[26]。用户创新是在创新意愿和创新能力的基础上提取,也是被VON HIPPEL[27]首次提出的概念,被认为在现代社会发挥着越来越重要的作用[28]。知识共享在显性知识和隐性知识上提取。项目绩效是衡量开源软件项目总体发展情况的简称,在市场成功、技术成功、社区成功的基础上归纳为主范畴。

表3 主轴式编码形成的主范畴

4.3 选择式编码

选择式编码强调寻找范畴之间的逻辑关系,并且以“故事线”的形式进行呈现和解释。本研究提取和建立了7条逻辑关系,诠释各自变量之间的关系,编码结果见表4。

表4 选择式编码结果

在主范畴的基础之上,本研究最终确定了开发员和用户两大核心范畴。开发员作为知识共享的供给端,分别从参与动机、社会网络、文化认同影响知识共享;用户作为知识共享的需求端,两者共同影响知识共享,进而影响开源软件的项目绩效。基于扎根理论分析的编码结构见图1。

根据扎根理论建构的编码结构综合示意图,进一步展开案例研究。研究发现,针对以上这15个副范畴(二级维度),可以根据其类别和含义,进一步归类为6个主范畴(一级维度),即:参与动机、社会网络、文化认同、用户创新、知识共享、项目绩效。在笔者选取的案例内和案例间研究发现,尽管不同案例对于细化的三级维度表征不同,但却都具备15个副范畴的表征特征,因此笔者进一步提升了理论框架的解释层次,建立了由主范畴和副范畴共同构成的具备通识意义的理论模型(见图2)。

4.4 理论饱和度检验

为了进一步验证框架的合理性和正确性,笔者一方面不断扩大访谈对象的范围,直至无法提取新的额外信息;另一方面请国内外受访专家对建构的框架进行确认。当进行到第28位访谈者时,检验结果表明,已建构的框架已无法发展出新的重要范畴。由此可以说明,本研究所建构的模型已经达到饱和。

注:实框内为一级和二级编码,虚框内为三级编码。图1 基于扎根理论建构的编码结构综合示意图

注:实线表示为影响关系,虚线表示为隶属关系。图2 基于扎根理论建构的理论模型

5 结语

本研究运用扎根理论,建构了开源项目内知识共享的理论模型框架。研究表明,开发员和用户是参与项目贡献的两大主体,前者作为供给端,推动着知识创新和转移;后者作为需求端,拉动知识应用和创新,“供给推动-需求拉动”的互动模式共同促进成员间的知识共享。具体来说,开发员方面主要通过参与动机、社会网络和文化认同影响知识共享;用户则通过用户创新发挥作用。参与动机以内在动机和外在动机为支持维度;社会网络以认知维、关系维、结构维为支持维度;文化认同以自由开放、合作共享、极客精神为支持维度。用户方面,用户的创新意愿、创新能力为支持维度。开发员和用户共四大核心要素,共同作用于成员之间的知识共享,以显性知识和隐性知识为支持维度;最终影响开源软件的项目绩效,其以市场成功、技术成功、社区成功为维度。

管理启示方面,笔者在讨论开源软件项目知识共享机制时发现,除了促进成员共享的因素以外,也存在阻碍因素,可以从个人和组织两个方面进行分析。个人方面:①能力短板,即“不能”。开发员因为语言、文化、教育背景等固化因素,或自身开发技能不足等核心因素,无法支撑项目贡献。②信任偏差,即“不愿”。开发员由于对项目缺乏信任和兴趣,拒绝进行知识共享。组织方面:①开源社区缺乏活力;②开源项目缺乏前景;③所在企业文化的限制,因此需要对个人和组织采取针对性的管理举措。

为了最大程度地发挥开源的优势,可从以下理论启示辅助开源创新模式的扩散:①合作者众多,即活动的开展时间、地点、人数、参与方式不受限制;②研发者即消费者;③工作任务的模块化和标准化。成员参与不同模块,不同模块之下又具备不同的细分类别,参与者完全基于兴趣和能力进行贡献和分享,集体合作的效果也相对更好。

本研究还存在一些不足,例如用户创新的变量方面,由于本研究以开发员为主要研究对象,但事实上所有开发员在工作过程中不可避免地同时担任了部分用户角色,很难绝对化地割裂开发员用户和非开发员用户,未来可考虑对用户创新进行纯化地定量研究。

猜你喜欢

开源编码软件
禅宗软件
基于SAR-SIFT和快速稀疏编码的合成孔径雷达图像配准
《全元诗》未编码疑难字考辨十五则
子带编码在图像压缩编码中的应用
五毛钱能买多少头牛
2019开源杰出贡献奖
软件对对碰
Genome and healthcare
大家说:开源、人工智能及创新
开源中国开源世界高峰论坛圆桌会议纵论开源与互联网+创新2.0