文|轻流创始人兼CPO 严琦东

工程化水平偏低的“超级工程”

2000年前后,美国政府统计署的数据显示:全球最大的软件消费商(美国军方)每年要花费数十亿美元购买软件,而在其所购软件中,可直接使用的只占2%,另外3%需要做一些修改,其余 95% 都成了垃圾。

这种投入产出比是令人惊讶的,作为最具影响力的甲方所拥有的供给资源一定是行业顶尖,但是其最终交付的效果依然惨不忍睹。而回看建筑工程,1931 年建成的帝国大厦只花了 410 天,还是提前完工。写个软件还能复杂过盖摩天楼?事情还真没那么简单。

难以遏制的系统错误

相比于其他工程,软件代码编写的出错概率更高。往往上万行的代码里面,一个字符的错误就会导致不同程度的软件运行错误;随着编码参与人数的增加,这种排错和质量管理的难度也呈现指数上升。为了解决不同来源代码的冲突,我们甚至要花费远超于编写本身的成本。

人数增长的边际收益逐渐趋于0

需求的量太大,团队很容易盲目追求人数的扩张,然而往往人数的增长边际收益却并不理想,投入产出比是明显下降的。随着团队不断扩大,这种边际收益逐渐趋于零。其原因是团队变大,我们不可避免地投入更多精力在与团队管理和协作沟通上,这些消耗就像“流沙”紧紧拽着陷入的人,越挣扎反而越深陷。

人力堆砌如果没有伴随着结构化的管理提升,将会是一种灾难,不仅没办法提升项目效率,反而极大地降低项目质量

“工程化”的字面意思代表系统化、模块化、规范化,但我们无奈地看到大量的团队处于小作坊阶段。工程化程度低意味着企业更加依赖“个人”的发挥和贡献,而很多时候“人”是不可靠和不稳定的。

优等生:汽车产业的工程化

不同的产业工程化程度是不同的,相对来说汽车行业的工程化程度在多年的发展下更为成熟。

汽车产业链主要由五大部分组成,包括汽车整车制造业,汽车零部件制造业,零部件制造相关工业,汽车服务贸易业和汽车产业支撑体系。

汽车零部件可分为“模块-总成-组件-零部件”几个层次。在汽车产业链的每一个环节都有完善的支撑体系,包括法律法规标准体系、试验研究开发体系、认证检测体系等。

完善的产业链分层是工程化的标志之一,将风险/质量控制在明确的范围内,做好产业链打通和集成,可以大大提升项目最终的交付质量,缩短研发周期。

这几年,IaaS、PaaS、SaaS 、iDaaS、aPaaS、bPaaS、FaaS等厂商层出不穷,国内的软件开发供应链分层已经有了雏形。不过闭塞的产业环境还需要进一步开放,国产软件工程化还需要很长一段时间的发展。

聊胜于无的CMM

软件管理工程引起广泛注意源于20世纪70年代中期。当时美国国防部曾立题专门研究软件项目做不好的原因,发现70%的项目是因为管理不善而引起,而并不是因为技术实力不够。到了20世纪90年代中期,大约只有 10% 的项目能够在预定的费用和进度下交付。

在这样一个大背景下,美国卡内基梅隆大学软件工程研究所1987年提出了一份用于衡量企业开发能力的标准:CMM;

值得一提的是,全球进行CMM认证的企业中,80%来自于中国。

但是这样一份流于形式、止于标准和规范的体系就好像给行业画了一条条分数线,但是没有告诉行业该如何达到这个分数线,真正意义又有多少呢?

VUCA时代的项目时效性问题

从1988年5月到1989年9月,求伯君把自己关在深圳的一个房间里,只要是醒着,就不停地写代码。困了睡一会儿,饿了就吃方便面。在这样的一年四个月中,求伯君的肝炎反复复发,每次住院一个月到两个月。在软件开发最重要的时间,求伯君还把电脑搬到病房里继续写。

开发之苦不是病魔缠身,不是身心憔悴,而是孤独。“有了难题,不知道问谁,解决了难题,也没人分享喜悦。”求伯君在这孤独中,写下了十几万行的WPS代码。

在改革开放前十年当中,除了求伯君之外,还诞生了许多在中国软件史上有筚路蓝缕之功的软件英雄。比如严援朝在1983年推出CCDOS,走出了中文操作系统的关键一步;王永民在1983年发明“五笔字型”,专家称“其意义不亚于活字印刷术”;吴晓军41岁在1988年将CCDOS汉字系统升级到了2.13E版;“杀毒软件之父”王江民于1989年推出杀毒软件KV6;周志农在1988年设计完成《自然码汉字输入系统》;朱崇君在1988年首创中文字表编辑概念,推出CCED2.0版……

中国软件产业在1988年前后迎来最初的繁荣期。许多软件作者成为当时的明星奠基人物,也激励了诸如雷军、马化腾这些正在大学读书的学子们成为后起之秀。而中国软件产业也迎来了百花齐放的历史时期。

VUCA时代,后英雄时代

进入21世纪之后,我们越来越少听到这些关于软件领域的英雄传说了。需求越来越复杂,变化越来越快,工业级的软件生命周期在变短。闷头写一年然后惊艳整个世界的做法已经行不通了。

在如今的乌卡(VUCA) 时代,【易变不稳定(volatile)、不确定(uncertain)、复杂(complex)、模糊(ambiguous)】,企业是否足够柔韧正变得越来越重要:

  • 易变不稳定(volatile)
  • 不确定(uncertain)
  • 复杂(complex)
  • 模糊(ambiguous)

从传统的垂直化供应链、精细化供应链管理到柔性供应链管理、“互联网+供应链”...... 从CRM到SCRM;从BPM到BPA再到RPA;业务管理的模式也在不断适应这个变幻莫测的环境。

据Mendix最新的调查报告显示,59% 的中国IT决策者表示,疫情期间的数字变革速度超过了他们的预期,93% 的中国IT开发者认同其企业的软件开发速度需要加快。

然而越是快速发展/创新的行业,其标准化就越难做,越是没办法通过一次性的IT投入来完成信息化建设。(外包项目中的“一次性”代码,属于纯粹的虚拟垃圾)业务应用级别的企业软件保质期是非常短的,而且在变得越来越短,最怕的是:“还没生产出来,就成了过期产品”

清晰的产业链上下游分层对于缩短相应周期会起到非常重要的作用。在生产领域,我们探讨柔性生产;在建筑领域我们探讨装配式建筑。那么,在IT软件研发领域呢?

Gartner:组装式应用开发

Gartner在最近两次的技术趋势报告中都提到了组装式的概念。“组装式”三个字从字面意义并不难以理解,就是将业务模块或者软件功能模块封装成一个个大小适中的积木,支持灵活搭配和调整,从而提升企业面对环境变化时的韧性。

理想情况下,应用层(直接被终端用户用于业务活动中)的软件开发将逐步迈向无代码组装的时代。面向业务需求时,系统设计人员只需要挑选合适的模组/积木进行装配就行,就好像我们为新房子挑选合适的家具一样简单。你不用担心家具的制造细节,只需要关注款式或者质量等实际表现是否符合预期即可。

图片源于:Gartner

从此往后,我们可能不会再听到力挽狂澜的个人英雄传说了。但是不再依靠“大卫击败哥利亚式”的个人英雄主义,也意味着产业在逐渐走向工程化。

企业管理者一定不能错过的轻流

自从2015年开始,轻流就专注于将面向企业的应用层软件开发进行无代码化。通过7年的产品更新迭代,我们完善了一整套组装式开发工具。我们将原本面向IT的页面表现层和业务逻辑层进行了面向业务人员的重新抽象和设计,提出了6大引擎的开发框架。

可以将整体开发成本降低 90% 以上,并且缩短项目周期 80% 以上。

除此之外,轻流还提供了面向IT的轻代码板块,可以基于无代码的引擎基础提供额外的拓展能力以及集成能力。相对解藕的产品架构设计在满足灵活拓展的前提下,保障可维护性。

独立的数据分析产品:轻析,可供业务人员进行自助式的业务报表分析,是的数据平台和业务平台可以密切配合。

在面向不同角色推出的产品线背后,我们还完善了一整套的管理后台,保障了统一组织架构、统一用户池、统一权限体系的企业及配置能力。

别把“IT信息化”不当“超级工程”相关推荐

  1. 程序员险丧命讲述垂死经历,别把嗓子痛不当回事

    Linux编程点击右侧关注,免费入门到精通! 作者丨Miller 苏胖胖 https://www.zhihu.com/people/su-yong-35/posts 本人在鬼门关走了一圈,尽管过去了很 ...

  2. 身体这些部位不舒服的时候,你知道意味着什么吗?

    黑眼圈.嘴唇干裂未必是睡眠不足或缺乏水分引起的.医学家说,70%的健康问题脸上都有体现.想了解身体状况?看看你的脸就知道! 眼睛告诉你的6个密码     黑眼圈:一早起来,发现眼睛四周黯沉.眼圈发黑? ...

  3. 【身体这些部位不舒服的时候,你知道意味着什么吗?】收藏起来吧,震惊!实在是太...

    黑眼圈.嘴唇干裂未必是睡眠不足或缺乏水分引起的.医学家说,70%的健康问题脸上都有体现.想了解身体状况?看看你的脸就知道! 眼睛告诉你的6个密码 黑眼圈:一早起来,发现眼睛四周黯沉.眼圈发黑?小心了! ...

  4. 【身体这些部位不舒服的时候,你知道意味着什么吗?】

    黑眼圈.嘴唇干裂未必是睡眠不足或缺乏水分引起的.日本医学家说,70%的健康问题脸上都有体现.想了解身体状况?看看你的脸就知道! 眼睛告诉你的6个密码 黑眼圈:一早起来,发现眼睛四周黯沉.眼圈发黑?小心 ...

  5. 身体打来的电话,你一定要接!

    心脏有问题时.左边手臂会酸.麻.痛.肝脏有问题时.小腿晚上睡觉时容易抽筋.肾脏出现问题时.声音就会出不来,就会沙哑.脾胃出现问题时.偏头痛.附:五脏排毒最简单有效的方法 一.心脏有问题时 1.呼吸会不 ...

  6. 祝贺一个逃离科研的博士

    http://blog.sina.com.cn/s/blog_476ffe1a010144j7.html?tj=1 "昨夜无眠,为了一个学生",中国科学院博士生导师程代展日前很痛苦 ...

  7. 工作2年,反省与总结

    前些日子特别烦躁,出差后,没时间烦躁. 恰巧近期对一些事物有所感触,总是自我总结,反省过于"具体化",这次准备分享点技术之外的东西,故出此文. 1. 回家还是外出打工 刚毕业的学生 ...

  8. 喉咙肿痛险些死掉!33岁程序员经历生死5小时,别不把嗓子疼当回事

    近日,一篇题为<急性会厌炎险致死!33岁程序员曝光三甲医院抢救过程值得每个人警惕!>的文章在网络热传.当事人苏先生是北京一家单位的程序员,今年33岁,他在5小时内经历了从咽喉肿痛到呼吸困难 ...

  9. 我了个去,姐写博客还是挺多的。

    我了个去,姐写博客还是挺多的. 装X就要装到底啊,命令模式的优点和缺点都有哪些 "不过上面我总结的第五点在例子当中没有体现,不过这个也好办,其实就相当于是任务可以组合,比如一个线上的问题(P ...

最新文章

  1. Matlab编程与数据类型 -- 循环控制语句之二:while/end
  2. Windows下MongoDB的安装与设置MongoDB服务
  3. ACE入门---很好的文章
  4. 沈阳工程 c语言题库,2017年沈阳航空航天大学航空航天工程学部823C语言程序设计考研仿真模拟题...
  5. 发布与订阅消息--Redis学习笔记八
  6. 诺奖奖金为何119年还没发完?
  7. Oracle Form Builder
  8. mysql统计age大于20的数_数据库命令记录
  9. double类型的精度问题【计算时有误差】。 (0.1 * 0.1 , 1.0 - 0.9)
  10. 下拉框怎么获取label_拼多多-「关键词自然流量快速获取」访客暴涨秘诀
  11. mysql提供的六种约束_MySQL中的六个约束
  12. LINUX获取当前用户及信息的命令
  13. 科研党 篇一:完成一篇SCI论文必备的20+工具
  14. 亿阳信通java开发,北京亿阳信通笔试题java+oracle
  15. 无法找到 :import javax.annotation.Resource-------Resource 这个注解
  16. APS和MES管理系统在印刷行业的应用现状
  17. 机器人 瓷砖墙面清洗_墙壁清洁机器人
  18. iio Engine 1
  19. python爬取百度使用kw关键字爬取时出现,百度安全验证,解决方法
  20. 准备情人节礼物比写代码难?来看看IT直男给女友们的礼物

热门文章

  1. hive 正则表达式-regexp
  2. 【LeetCode】999. 车的可用捕获量
  3. 从零实现简易播放器:4.ffmpeg 解码视频为yuv数据-使用avcodec_send_packet与avcodec_receive_frame
  4. mongodb数据文件格式
  5. 直播技术总结(四)音视频数据压缩及编解码基础
  6. PHPstudy之PHP探针的查找
  7. verify_area
  8. (转)中科院理论物理所考研…
  9. Oracle MySQL Hive sql进行相邻数据相减、相加等运算 lad lead 窗口函数 偏移函数
  10. android 仿QQ登陆界面实现