报名「音视频前端技术创新实践专场」,听腾讯云技术专家揭秘音视频相关技术>> 了解详情
写点什么

华为专家:回顾软件工程历史,如何站在后天看明天

  • 2019 年 9 月 17 日
  • 本文字数:1395 字

    阅读完需:约 5 分钟

华为专家:回顾软件工程历史,如何站在后天看明天

大家好,我依然是很不低调,自我标榜“Andy Liu 出品,必定来自双手沾满泥的精品实践”的 DevCloud 某产品经理。


业界对于战略规划,有一句通俗的说法,叫做“站在后天看明天”。软件工程从诞生之初就是研究并克服软件危机而应运而生的。


软件工程 50 多年的历史,主要经历了三个阶段,并努力解决这三个阶段的主要问题。


阶段 1(借鉴制造,管理偏差)

最早的软件开发都是像手工坊一样,整个过程经常会出现混乱,无序甚至失控,软件产品的质量也参差不齐。当时克服危机的主要方法论是借鉴硬件制造,管理软件开发过程中的偏差,重点解决的是软件开发的质量、可控、有序的问题,包括 CMM,面向对象,瀑布开发等。


阶段 2(认清本质,提升效率)

第一个阶段因为强化了偏差管理,虽然偏差得到了一定的控制,但是也抑制了一定的自由,影响了软件产品的交付效率,软件开发变得趋于机械和过度流程化。而且当时适逢互联网产业的兴起,尤其是面向消费者的互联网产品肆意生长。这个时候速度、效率和创意越来越重要,甚至对于很多企业生死攸关。


因此很多业界从业人员开始呼吁回归到软件的本质:软件的生命周期是个智力和脑力活动,不同于制造业。随之敏捷宣言公布,至今,敏捷的理念和实践依然方兴未艾。总体而言这个阶段是为了尝试解决软件开发的效率和速度问题。


阶段 2.5 (理念延伸,全生命周期)

敏捷早期主要是解决软件开发的问题,其实并没有覆盖到软件的全生命周期,而随着互联网渗透率越来越高,很多的软件是通过互联网来提供服务,不再是通过软件包下载由用户来安装,提供软件服务意味着软件的生命周期延伸到运维、运营,DevOps 是这个阶段的一个代表,DevOps 也是顺应软件即服务这个趋势的,也是敏捷理念向运维、运营的延伸。


虽然软件工程历经了几个阶段,但是并不能因此认为新一代的软件工程方法就可以鄙视上一代的。笔者一直秉承的观点:任何的软件工程方法论,都一定是要解决产业问题的,不同的业务场景,不同的商业和开发模式面临的问题和挑战不尽相同,因此也需要与之相匹配的软件工程方法。不能解决产业问题的软件工程方法论,最后都被抛弃了。


在华为,其实并不存在所谓的软件工程鄙视链,华为的市场覆盖很广,从消费者业务(手机等),到企业业务,到运营商业务,都是不同的场景,不同的商业和开发模式,因此华为内部是多种软件工程方法和流程并行。只是在这个过程中,每一种工程方法都在互相借鉴,迭代改进,所以华为的 CMM 不完全是业界的 CMM,华为的敏捷也不完全是业界的敏捷,都融合了华为自己的实践和理解。


正如笔者经常说的:瀑布依然为手机终端高质量品控、全球海量发货保驾护航,敏捷依然让我们在运营商市场做到质量和效率的最佳平衡,DevOps 也在为华为云提供 Build-In 的使能


从去年开始,从很多公共的渠道,大家也都知道华为在对华为内部的软件工程进行新的战略投入,站在外人的角度,通常会觉得华为的软件工程已经相当不错了,但是为什么华为还要进行如此大规模的战略投入呢?华为从来就不是个激进派,这背后华为的出发点来自于什么呢?


  • 如果您希望更多的了解华为为什么没有软件工程鄙视链?

  • 如果您希望了解在已经相当不错的基础上,华为为什么又如此大手笔的进行软件工程的战略投入?

  • 如果您希望了解软件工程的下一步何去何从,借以了解软件工程要解决的新的产业问题是什么?


那么欢迎您来 HC 大会现场听笔者“瞎扯”一番:)


点击链接进入HC2019售票通道,注册大会账号即可购买。


2019 年 9 月 17 日 10:541058

评论

发布
暂无评论
发现更多内容

独家!精挑细选三个月的臻品Java面试题,无糟粕!高质量

白亦杨

Java 编程 程序员 架构师 计算机

柏益美康系统开发案例详解,柏益美康开发源码

系统开发咨询1357O98O718

声网 Agora 音频互动 MoS 分方法:为音频互动体验进行实时打分

声网Agora

算法 网络

泪目!跳槽太不容易,蚂蚁金服三轮面试,四个小时灵魂拷问

java小李

面试 Leader

阿里大牛耗时三年整理出来的4588页Java面试诛仙手册,已全面开源

java小李

Linux 面试

大专的我狂刷29天“阿里内部面试笔记”最终直接斩获十七个Offer

java小李

大数据 面试

短视频平台获客软件系统开发

拿来吧你!从阿里P8手里抢来的的JDK源码解析手册,Alibaba真的强

java小李

jdk

阿里云技术三面Java岗,只需半个月,就可以成功拿25k offer ,轻松任职阿里云

愚者

Java 阿里云

北鲲云超算在生命科学领域的使用场景中有什么作用?

北鲲云

秀出新天际的SpringBoot笔记,让开发像搭积木一样简单

java小李

Spring Boot java架构

技术分析| 即时通讯和实时通讯的区别

anyRTC开发者

音视频 WebRTC 即时通讯 实时通讯 实时消息

贝丽美牙系统开发(开发案例),贝丽美牙源码设计

系统开发咨询1357O98O718

系统性能优化-数据结构

香到爆!SpringBoot/SpringCloud全套学习脑图+面试笔记免费分享

java小李

SpringCloud Alibaba

我看 JAVA 之 并发编程【二】java.util.concurrent.locks

awen

Java AQS lock Condition LockSupport

Fil还有希望吗?目前Fil发展如何了?

区块链 IPFS Filecoin fil filecoin生态

阿里这份15w字Java核心面试笔记!GitHub凭借百万下载量位居榜首

java小李

面试 Java核心笔记

阿里内网流传的9w字图解网络(全彩版)GitHub现已下载量过百万

java小李

HTTP

LeetCode题解:61. 旋转链表,闭合为环,JavaScript,详细注释

Lee Chen

算法 LeetCode 前端进阶训练营

模块四作业

燕燕 yen yen

架构实战营

短视频营销系统开发内容

阿里内网疯传的P8“顶级”分布式架构手册,GitHub上线直接霸榜了

java小李

微信业务架构 P8

渣本展示Spring Cloud 架构绝活!最后成功入职阿里

java小李

Spring Cloud

阿里资深架构师倾情力荐:Java全线成长宝典,P5到P8一应俱全

愚者

Java 面试

史上最全面Java面试指南手册宝典!轻松拿腾讯等大厂offer

愚者

Java 面试

纷多多拼团系统开发案例详解,纷多多拼团现成源码

系统开发咨询1357O98O718

HarmonyOS学习路之开发篇——线程管理

爱吃土豆丝的打工人

多线程 HarmonyOS 线程管理

对话交互:封闭域任务型与开放域闲聊算法技术

OPPO小布助手

人工智能 深度学习 对话 智能助手 语义理解

阿里云飞天论文获国际架构顶会 ATC 2021最佳论文:全球仅三篇

阿里云大数据AI技术

我们向华为公司学什么?

石云升

学习 华为 7月日更

聊聊IO夯的那些事

聊聊IO夯的那些事

华为专家:回顾软件工程历史,如何站在后天看明天-InfoQ