软件类产品外包市场已经发展有20多年了,客户与开发团队之间存在的诸多矛盾:资金与服务的矛盾、团队信任的矛盾、团队能力的矛盾、契约与人性的矛盾、沟通协作的矛盾等等,这些矛盾在现有的模式下,很难有突破性的解决方案,都是头疼医头,脚痛医脚;但是随着技术的发展,革命性的解决方案已经出现了。
在分析解决方案之前,我们先具体的剖析一下目前存在的主要问题:
软件是个非标准化的服务,产品需求即使做得再细,也存在价格估计太高或太低的情况,所以往往会在服务和资金这块产生纠纷。
- 甲方不专业,把软件开发看得太简单,拼命压价,寻找价格低得不合理的团队合作
谁都想要物美价廉的商品,这当然可以理解,但万事都得讲个“度”。
产品在研发过程中,需求变化在所难免,但有些甲方不仅功能贪多求全,而且在签完合同之后,完全不考虑乙方的感受,想方设法的追加需求索要服务,美其名曰自己的实际业务流程就是这样,是乙方的需求理解有误等等。
- 稍微专业的甲方,经常按自建团队的要求去严格要求外包团队
老板对自建开发团队是有很好的容忍度的,即时出现点小BUG,或者有延期等都可以很好的容忍,因为他知道开除一个人,要再补充一个合适的人成本是多么巨大;但是在要求外面的服务公司的时候呢,一般很难有容忍度,出现一点问题,有一点不满意就无故拖延付款;甚至要求不合理的长期免费维护。严重不对等的服务要求,造成双方之间矛盾加深。
- 钱给够了,外包团队的能力和服务质量跟不上
外包团队公司规模小,很难招到合适的人才,或者人才经常流失,导致项目的服务质量和工期跟不上;另外外包团队为了生存,会同时接好多项目,项目之间来回切换,导致服务和质量打折扣。
问题一直都存在,从来没彻底解决过,所以很多大的公司都选择包人驻场,让项目在自己人的掌控之中。但是新技术的出现,给这些软件外包问题的解决带来了新的机会:
一、区块链技术的出现,让信任和专属甲方的按用付费技术部成为可能
区块链是一个分布式账本,一种通过去中心化、去信任的方式集体维护一个可靠数据库的技术方案。区块链创造了数字世界的一种新型信任机制。在区块链的世界里,信任的机制从信任机构改成了信任机器。在区块链的逻辑中,认为不可信的根源是人,要去除的也是人的因素,所以,区块链的可信机制来源于“机构 —— 人 —— 机器”。
在每个开发人员的机器上装了一个监听的程序,实时监听每个员工的工作状况,并把工作时长,质量等数据实时同步到区块链账本上;甲方按照开发人员的工作时长及评估的工资,实现真实的工作多少,给多少费用;那么再也不用计较甲方更改需求的问题了,在敏捷迭代开发的基础上,甲方可以无限修改他的产品方案,按链上的统计工时给钱就可以了。这个方式是最符合事实和人性的一种解决方案;
因为可以实时知道开发人员的工作状态和产品进度;一旦发现外包团队的人没有按要求的时间在做,可以要求立即更换工程师,甚至更换团队;因为链上有无数的团队可以使用,慢慢劣币就被淘汰出局,类似淘宝一样的生态系统就建立起来了;
二、人工智能技术解决效率和自动化的问题
区块链技术解决了按用付费和信任机制的问题,但是没法解决外包团队专业性和开发效率、开发能力的问题;也就是说钱给够了,产品的工期和质量问题依然会解决不了。这个时候人工智能的技术就派上用场了。
运用人工智能技术,可以赋能技术开发团队最先进的架构,灵活的插件,以保证产品有较好的稳定性、扩展性、兼容性和使用体验;而且能根据不同团队的特点,适配出适合他们团队的先进框架技术;
运用人工智能技术,智慧编程,让60%的代码用最先进的框架自动生成,而且会融入公司最牛逼技术的思想和规范,大大减轻开发人员的工作量,同时也降低对开发人员的水平要求;
运用人工智能技术,可以把自动化测试,自动化学习结合起来,大大提高产品的质量;在辅助学习一些人工的体验和测试进去,更进一步提高产品的质量和体验;
总之,人工智能技术运用到软件外包领域,将大大提高软件服务的水平,解决当前外包市场存在的一系列问题;
三、5G可以打造瘦前端,胖中台,降低开发成本
小前端,大中台将成为5G时代的标准;5G的速度可以让更多的程序运行在中台服务器上;而开发人员的机器上不需要装什么软件,最多有一个编辑器就足够了,什么WEB运行环境,数据库等一系列东西都在中台运行,甚至大部分用到的插件和服务,都在中台开发好了,开发人员只需要几行代码就能完成一个大模块的开发;
总之,人类和技术在不断进步,原地不动20年的软件开发模式也将迎来翻天覆地的变革,目前有一些公司已经在行动,初步的产品也做出来了,一场新的技术革命将慢慢拉开序幕。