“互联网+”的概念从提出到深入人心不过1年的时间,以此为契机的是大众创业万众创新的热潮。这个过程中,无论是传统行业的线上转型还是新业态的兴起,“开发”已然成为想法从方案到落地的关键制约点;“程序猿”也水涨船高,成为最热门的高薪职业。对于很多企业而言,技术过硬的开发团队成为刚需,但坦率讲,并不是所有的团队在发展的任何阶段都养得起一个有一定规模的开发团队;另一方面,从成本和效率的角度讲,自建开发团队也不是唯一高效低成本的解决方案。

这篇文章主要为大家介绍一种常见但也饱受争议的开发方式——开发外包。在具体分析如何挑选开发外包服务之前,Chiefmore想从需求分析的角度就项目开发的解决方案做一个梳理,如下。

>>  解决方案

传统意义上的开发可能直接意味着写代码,但随着开发技术的发展和日渐成熟,越来越多的解决方案能够满足企业的项目需求,而且在某些条件下表现出高效和低成本的特点。尤其是针对创业或创新项目,非原生的开发能够以较低的成本和迅速的反应实现产品的试错和迭代。接下来,我们从PC端和移动端两个角度分别阐述。

(一)PC端

PC端网站的实现形式包括了建站工具、模板开发和原生开发三种,而这三种开发方式也大概能够反应网站从搭建到成熟的一个层次感:1、通过自助建站工具搭建的网站能够实现大多数的功能需求,目前各建站平台也逐渐以开放API接口的形式对网站功能进行补充,但也存在加载速度慢、功能简单、个性化程度低、灵活性差等缺点,仅适合于有建站想法的个人或初创企业,以及尝试线上转型的企业;2、模板开发网站是基于已成型的网站模板进行文字图片等的修改,开发周期短、成本低,同样存在灵活性和延展性差的问题,但相较于自助建站,模板建站基于自有服务器,访问更流畅(如目前的低配版 Chiefmore官网 就是基于这种开发方式呈现的);3、基于企业业务需求原生定制开发的网站开发周期长、费用高,相应地设计风格及功能不受限制,用户体验最好。

(二)移动端

移动端的开发思路与PC端相似,目前来说,移动端的解决方案更为多样:1、最常见的就是基于微信公众号的创业思路,一方面可以基于微信官方后台自主建设,另一方面还可以依托微信公众号开放平台快速上线;2、网页应用(Web App)可以理解为网页的移动端展示,开发难度小,成本低,维护更新容易,但一般仅适用于非游戏类的APP,如宣传、资讯、电商等应用;3、混合应用(Hybrid App)以原生APP为容器嵌套H5页面,即基于原生应用快速进行功能的补充更新,尤其适合于业务的快速迭代;4、原生应用(Native App)无疑是用户体验最好的移动端应用形式,也是开发成本最大,开发周期最长的一种开发形式,适合于接近成熟的产品。

很多时候,多种解决方案之间的关系并不是割裂的,也不存在绝对的好坏,企业需要在对产品的发展阶段、定位、功能需求、人力时间成本等进行综合评估之后进行决策。而且无论是自主研发还是外包开发,都需要首先明确采取什么样的开发方案之后再展开。

>> 开发方式

那么在明确解决方案之后是选择自建团队开发还是交付外包开发呢?chiefmore认为主要可以从以下几个方面综合考虑(财大气粗的互联网巨头不包括在内)。

(一)自建团队

自建团队开发基于几个前提:1、预算充足,能够吸引到优质的开发人才,通过严格的把控保障产品质量;2、已有短期解决方案,项目开发周期较长;3、开发难度低的产品(如web app)对工程师要求较低,也可以考虑自主开发;4、开发需求较为高频,即产品上线后仍需不断进行优化迭代的情况,最好选择自建团队开发。

(二)外包开发

外包对很多公司而言都是退而求其次的解决方案,如短期内招募不到合适的开发团队,项目预算不足以养活优质的开发团队等。而主观上最适合外包的一种情况是开发属于低频需求,也就是说一次开发之后只需简单的运维,产品不需要频繁地进行功能扩展,最常见地就是宣传类的企业官网。

外包开发虽然多属权宜之计,但一个不靠谱的外包带给企业或创业者的一定是噩梦般的经历,那么接下来chiefmore就和大家分析一下,如何挑选一家靠谱的外包服务商。

>> 开发外包流程

外包开发的一般正规流程为:签署保密协议——需求分析并输出项目需求书——评估并制定工作方案和报价——签订合同并支付项目预付款——程序开发——按阶段验收并按阶段付款——项目测试——验收上线——后期维护。

>> 如何挑选

(一)研发能力

人们对外包的偏见和不信任绝大多是是由于外包团队的研发能力和规模不足以实现雇主的开发预期和需求,从而导致项目烂尾或最终的产品体验差。因而,企业在明确开发需求之后一个很重要的任务就是对外包团队的研发能力进行评估。Chiefmore也就此总结了一套较为科学的评估指标供大家参考,具体如下:

1.研发团队:对研发团队的评估主要可从成立时间、团队规模和研发经验三个方面展开评估。毫无疑问,成立时间较长、团队规模较大的研发团队况,能够涵盖不同种类的工程师,满足企业在项目开发中的不同需求,相应的,研发能力也会更强。

2.业务内容:从开发成本的角度分析,当然不是规模越大越合适。对企业而言,针对不同的开发任务,需要选择更有针对性的团队,这就需要从外包团队的业务内容层面进行分析。从业务内容来看,部分服务商具有全网整合开发的能力,也有部分服务商专注于移动端解决方案的实现,企业需要根据实际需求挑选合适的服务商。从共享同一个后台数据库的角度来讲,选择同一个团队完成网站和APP的开发的成本明显低于分别单独开发的成本。因此,企业希望实现PC网站、手机网站以及APP开发同步实现,达到全网整合营销目的的情况下应该选择具有全网整合开发能力的服务商。

3.案例信息:一方面最为直接地展示了外包商的开发水平,另一方面也反映了外包方是否具有相关的同行业项目或功能类似的项目的开发经验。具有相关项目开发经验或行业经验丰富的外包商能够更好地理解企业需求,根据积累的行业经验和项目经验帮助企业更好地定位需求和产品功能,并且开发效率和质量相对有保障。

(二)开发风险

外包最大的风险在于来自服务商的不可控因素, chiefmore对开发外包进行研究之后发现企业可以通过增强对以下几个关键节点的把控来增强开发过程的透明度,从而降低开发风险。

1.开发形式:外包一般包括了驻场开发和离场开发两种形式。驻场开发的好处不言而喻,比如企业能够随时了解开发进展,对项目整体的进度进行评估并及时反馈问题、沟通需求。开发过程更加透明可控,但不是所有的外包服务商都可以提供驻场开发,而且有些服务商需要收取昂贵的驻场开发费用,chiefmore接触的服务商中只有极少量提供了免费的离场开发服务。企业在选择外包时需要多家对比评测。不过Chiefmore需要提醒大家的是,对于基于已有系统开展二次开发的情况,最好不要脱离驻场环境离场开发。

2.阶段性验收支付:按阶段验收付完款应该说是“外包”这个概念下最重要的保障条件。就开发外包而言,最常见的付款模式主要为:签订合同并支付预付款——完成界面及交互设计后付款——支付尾款,不同服务商分配到各阶段的付款比例有所不同,仅就预付款支付比例而言就包括了30%、50%、60%等,企业在与外包团队签订合同时可以进一步协商讨论具体的项目验收阶段和各阶段付费比例。

3.测试报告:是项目验收的重要依据,一般来说外包方在进行项目交付时会提供相应的测试报告,部分平台会为企业提供由第三方众测平台如testin、testbird等提供的测试报告。对于没有测试工程师的企业而言,来自第三方众测平台的测试报告会显得更有说服力。

4.项目烂尾或研发周期被大幅拖延也是外包开发可能面临的一大风险,企业可以通过与外包商明确商议相关的延期赔付条款和延期时限规定来降低开发风险。一般来说,企业在阶段性验收时的反馈时间不包含在项目周期的计算中。但是企业需要特别关注,延期时限的计算是否包括反馈之后的修改时间。

(三)项目维护

开发外包另一个饱受诟病的原因在于项目交付之后服务商对故障响应不及时、应急能力弱,甚至完全没有后续的运维服务。就Chiefmore了解,正规的开发外包服务一般都提供一定时限的免费运维服务。当然,维护时间的长短很大程度上取决于项目本身的大小,就网站和APP开发而言,通常的维护时长为1年左右,超过1年后,企业可选择继续购买其运维服务,收费标准约为项目开发费用的20%左右。

需要注意的是免费维护的范围通常限于bug修复、死链修复、系统补丁升级、网站插件升级等内容,不包括新功能模块的增加和升级迭代。

>>  流程回顾

 

更多企业服务,尽在企业服务汇。

>>  相关阅读

开发众包单品评测:快码

开发众包平台评测:中软解放号

开发众包服务评测:MVP01

开发外包服务挑选指南

开发众包平台综评:码市、快码、中软解放号、开源众包