当前位置: 首页 > 编程日记 > 正文

关于软件产业的两个契机

软件产业是一个产业 , 和其它的产业一样 , 有各种角色分工 。

 

未来的软件是跨行业的 。 未来 , 软件会将各个行业联系在一起 。

 

云计算是第一代互联网发展到成熟的标志 。

网格计算是第二代互联网的开始 。

 

软件产业 在 未来 会 分为  平台(基础设施) 和  应用软件   2  个 阵营,  应用软件 是 跨行业的, 也可以说, 各行业 之间 由 应用软件 连接 起来,

应用软件 贯穿 了 各行业 。

举个例子, 我们可以看看 汽车 行业 的 发展方向, 就能 看到 这一点 。

汽车产业, 在 未来 本身 也是 融合 了 各个行业 的 , 因为 汽车 上 会扩展出 许多 功能 。

所有这些功能, 都 需要 应用软件 的 支持 。

 

应用软件 的 工业化 不久的 将来 就会 到来 。

所谓 工业化, 就是 像 工厂 一样 生产软件 。

工厂 是 什么样?

有 流水线, 分工, 每个 工种 负责 自己的 工序 和 专业, 

软件工厂 也是 这样 。

 

但, 软件 说 “工业” 不太合适,  说 “产业” 比较 合适,

软件业 是 技术性 知识性 很强 的 智力密集型 行业,   再加上   软件 “软” 的 特性,  说 “生产” 不合适, 说 “研发” 比较合适  。

软件 的 “软”, 比如   软件 是 无法 或者 很难 像 硬件一样 交付 的  。

 

好吧, 我觉得 “软件生产力” 还是 叫做  “软件研发能力”  比较好,

不过    战斗力 , 爆发力   这是 不变 的 。

 

软件研发能力 是 软件产业理论 的 一个核心 。

 

而 软件研发能力 的 一个 表现 是 产能 。

 

所谓   战斗力  爆发力,  是指 可以 快速 的 转到 不同的 技术平台 和 业务领域 ,

乃至于 可以 同时 应对 不同的 技术平台 和 业务领域 。

这是 由 团队 不同 角色 的 分工合作 而  达到的 。

 

技能 应该 贯通,  角色 应该 分开 。

这就是 DevOps , 

不止是 DevOps , 还超越了 DevOps,  简称 SDevOps ,

即   Super DevOps 。

 

团队角色 可以分为:

开发/运维, 测试, 设计/架构(指挥官), 项目经理(总指挥官), 技术支持(可选) ,

所有的 角色 均从 开发 进化 而来 。

 

根据 Netflix 的  “谁开发, 谁运维”, 开发 本身就包含了 运维 。

技术支持 提供建议 帮助 解决一些 技术难点 、 架构难点 等 , 参与项目 但 不直接对项目负责, 是 可选 的 角色 。

 

测试 是  SDevOps 的   关键  核心  枢纽 。

需求分析师 这一类的 角色 是 不需要的,  整个团队 就是 需求分析师 。

 

协作 是 团队 的 本质,

团队 的 力量 来自于 协作 。

协作 就是  1 + 1 > 2  ,    我可以把牛吹的 大一点,   1 * 5 > 10   。   ^^

 

项目的规模 不仅仅 包含 工作量, 还包含 复杂性,

当 项目 达到一定 规模 时, 复杂性 成 级数 增加, 需要 用 协作 的 方式 拆解 。

 

复杂性 需要 将 大 的 需求 分解 为 小的 模块  来   解决,  这是 纵向 的 分解 。

还有 横向 的 分解,  就是 不同的 角色 参与,  首先,  在 开发 的 基础 上,  加入  测试  角色,  这是一种  分解 复杂性 。

不同 的 角色 从 不同的 视角 来 审视 系统,  这样 来 分解 复杂性 。

 

测试人员 应该 高频 的 配合 开发人员 完成 一个 模块 。

在 部署 运维 的 时候 也 应该 高频 密切 的 配合 开发人员 。

这是 以 协作 来 取到 高效率 和 分解复杂性 的 一个 例子 。

 

刚开始 的时候, 可能 这样 做的 成本 会 有点高,  

但是 当  团队 规模 达到 一定 规模 时,  成本  会 降低 ,  且 产生的 力量 是   排山倒海,   势不可当   的 。

这样的 团队 可以 应对 任何规模 的 项目 。

这就是    SDevOps,  

Super  DevOps   。

 

转载于:https://www.cnblogs.com/KSongKing/p/9531950.html

相关文章:

java继承中的一些该注意的问题

关于继承,我想大多数人都知道,它是面向对象语言中的三大特性之一,所以在这里,关于继承的概念等我就不做详细介绍了,我主要就讲一下大家对他的认识中一些比较容易犯的错误吧。 错误认识1、继承,是将父类中所…

【C】printf warning: unknown conversion type character ‘l‘ in format [-Wformat=]

1、问题描述 在使用printf、fprintf打印long long类型时报错 printf warning: unknown conversion type character l in format [-Wformat=]2、原因分析 “%lld” 和 “%llu” 是 linux 下 gcc/g++ 用于 long long int 类型 (64 bits) 输入输出的格式符。 而 “%I64d” 和 “…

史上最强最贵Mac Pro诞生,iPadOS和iOS分家!WWDC19全面总结

作者 | 俞佳兴、胡巍巍转载自CSDN(ID:CSDNnews)图片&视频 | 余佳兴摄自美国圣何塞WWDC现场一年一度的WWDC终于来了!43岁的苹果,产品经验位居世界前列。一个迈入中年的公司,该如何持续做出让人惊艳的产品…

Java 抽象类与接口的区别

接口和抽象类有什么区别 你选择使用接口和抽象类的依据是什么? 接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象 抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人&…

XMOVE3.0手持终端——软件介绍(五):在2KB内存的单片机上实现的T9中文输入法

编者注: X-MOVE是作者在业余时间于2010年6月份启动的以运动传感开发,算法和应用的平台,目前已经发展了三个版本,第四版的开发接近尾声。发布在博客园仅为交流技术,不存在商业目的,作者保留一切权利。 一. 综…

推荐系统遇上深度学习,9篇阿里推荐论文汇总!

作者 | 石晓文转载自小小挖掘机(ID: wAIsjwj)业界常用的推荐系统主要分为两个阶段,召回阶段和精排阶段,当然有时候在最后还会接一些打散或者探索的规则,这点咱们就不考虑了。前面九篇文章中,有三篇是召回阶…

ReSharper修改命名风格

默认情况下,ReSharper会建议你全局变量命名使用下划线开头,且第一个字母小写。否则,会给你标记出来,如下: 但我个人不喜欢这种风格,一般使用首字母大写且不带下划线,可以通过配置来调整&#xf…

【Qt】Log4Qt(一)下载、编译

Log4Qt(一)下载、编译 1、下载2、编译2.1 单独编译成库2.2 将源码添加到项目中2.2.1 log4qt.pri分析2.2.2 pro示例如下1、下载 github上星最多的是这个:https://github.com/MEONMedical/Log4Qt 下载log4qt最新(截止2021-12-04)的稳定版本v1.5.1(Qt版本需要Qt5.7.0以上)…

android:退出程序

http://kofi1122.blog.51cto.com/2815761/703751 使用的是定义全局变量的方法

ubuntu中使用apt命令安装ipython失败解决方案

在最近使用ubuntu安装ipython时,出现如下报错: 出现这个问题,主要是因为apt还在运行,故解决方案为: 1、找到并且杀掉所有的apt-get 和apt进程 运行下面的命令来生成所有含有 apt 的进程列表,使用ps和grep命…

【Qt】Log4Qt(二)使用

Log4Qt(二)使用 1、使用TTCCLayout 格式化输出1.1 添加头文件1.2 配置根记录器的输出格式1.3 注册记录器,并输出日志2、最简代码3、将日志写入文件4、使用配置文件:log4qt.properties5、使用配置文件:QSettings6、周期性生成日志文件7、滚动生成日志文件(可以指定日志文件…

B站超全分享!2万人收藏的免费计算机科学速成课

整理 | 一一出品 | AI科技大本营(ID:rgznai100)作为一枚程序员,很多人可能都不太能清晰地说出计算机发展脉络,要想成为优秀的程序员,只会编程是不够的。“读史使人明智”,我们还要了解计算机理论知识&#…

图说:Windows 8使用搜索,快速开启应用

在Windows 8中,“开始菜单”变成的“开始屏幕”,想快速找到需要的应用不是件容易的事,毕竟桌面可以安装太多的应用。 怎么快速找到需要的应用的,其实方法也非常简单,只需在“开始屏幕”下使用键盘,键入需要…

一个可以卷起来的蓝牙键盘,简直是办公码字神器!

作为一个办公室码字党,熊大大一直觉得ipad最大的bug就是码字不方便。以前,我每次码字都会把平板先平放,打字才能顺手╮(╯﹏╰)╭后来买了蓝牙键盘,码字方便了,但键盘又大又厚重,日常携带巨不方…

比较v-bind和v-model

简单来说,区别如下:1.v-bind用来绑定数据和属性以及表达式,缩写为:2.v-model使用在表单中,实现双向数据绑定的,在表单元素外使用不起作用 一、v-model v-model多在表单中使用,在表单元素上创建双…

【Qt】Log4Qt(四):周期性输出日志,并且限制日志文件数量

在Log4Qt中存在一个比较大的问题,当使用 DailyRollingFileAppender对日志进行输出时,会无限输出文件,也就是说,当系统运行很久时,日志文件有可能很大,大到无法想象。因此,很多开发者希望在DailyRollingFileAppender中加一个属性,用于配置日志文件的个数。 1、dailyrol…

g13 root

1.官方解锁: 官方已经给出了wildfire S的解锁bootloader教程。需要注意的是,这个解锁之后虽然仍是s-on状态(但下边一行显示了unlock),不影响我们将来随意刷机,说白了就相当于s-off了。 准备工作&#xff0c…

【Qt】Log4Qt(三)源码分析

Log4Qt(三)源码分析 1、分层架构1.1 核心对象1.2 支持对象2、源码分析2.1 宏2.1.1 LOG4QT_DECLARE_QCLASS_LOGGER2.1.2 LOG4QT_DECLARE_STATIC_LOGGER2.2类2.2.1 Log4Qt::ClassLogger2.2.2 LogManager2.2.3 PropertyConfigurator2.3 深入理解 rootLogger、logLogger、qtLogge…

GitHub五万星登顶,程序员命令行最全技巧宝典!

作者 | 唐小引封图 | CSDN出品 | CSDN(ID:CSDNnews)一个项目 Get 所有命令行技巧!最近两天,「The Art of Command Line(命令行的艺术)」这个开源项目雄踞了 GitHub TOP 榜,直接以 51…

开源硬件:极客们的伟大理想

自 Dennis Allison 在 1975 年发布它的 Tiny BASIC 以来,他倡导的开放、共享的思想得到了多数开发者的认同,这些年,软件开源取得了令人瞩目的成绩。同时,他那句 “让我们站在彼此的肩膀,而不是彼此的脚趾上。”也变成了…

五年12篇顶会论文综述!一文读懂深度学习文本分类方法

作者 | 何从庆来源 | AI算法之心(ID:AIHeartForYou)最近有很多小伙伴想了解深度学习在文本分类的发展,因此,笔者整理最近几年比较经典的深度文本分类方法,希望帮助小伙伴们了解深度学习在文本分类中的应用。…

Failed to fetch http://mirrors.cloud.aliyuncs.com/

服务器版本:阿里云 ubuntu 16.04 问题:阿里云安装软件时,提示 W: Failed to fetch http://mirrors.cloud.aliyuncs.com/ubuntu/dists/xenial/InRelea se Could not resolve mirrors.cloud.…

【FFmpeg】使用sws_scale将AVFrame转换后的图像数据放入cv::Mat中

1、方法一,伪代码如下 cv::Mat mat; AVFrame avFrame; const int stride[] = {static_cast<int>(mat.step[0])}; ret =

Android之Adapter用法总结

本文转自http://kb.cnblogs.com/a/2328334/&#xff0c;转载请注明原出处。 Android之Adapter用法总结 作者&#xff1a;Devin Zhang 来源&#xff1a;博客园 发布时间&#xff1a;2012-01-20 22:33 阅读&#xff1a;1193 次 原文链接 [收藏] 1.概念 Adapter是连接后端数…

【FFmpeg】ffmpeg命令详解(一)

ffmpeg命令详解(一) 1、命令格式2、简述3、详细说明3.1 过滤器3.1.1 简单的过滤器图3.1.2 复杂的过滤器图3.2 流拷贝1、命令格式 ffmpeg [global_options] {[input_file_options] -i input_url} ... {[output_file_options] output_url} ...global_options:全局选项 input_…

从流感预测到智能决策,深度学习能帮企业做哪些事?

未来将只有两种公司&#xff0c;一种是有人工智能的&#xff0c;一种是不赚钱的。这句话大概可以总结两层意思&#xff0c;一方面人工智能让更多的企业面对更广阔的商业前景&#xff0c;另一方面是如果要运用人工智能创造价值&#xff0c;就必须拥抱技术&#xff0c;实现真正的…

寻找隐形冠军 支付宝、微信用得那么溜,可谁知道背后有一名“上海功臣

下午三点半&#xff0c;离晚饭时间还有一段时间&#xff0c;可新沪路上的熟食店“尚老居”门口已经人头攒动。 “阿姨你来啦&#xff0c;今天要点什么&#xff1f;” “老样子&#xff0c;称点烧鹅和蹄髈&#xff0c;阿拉孙子老欢喜吃的&#xff0c;买好正好去接伊放学。” “阿…

Lnmp安装与配置笔记

——————————————安装与配置——————————————1.相关软件&#xff1a;yum -y install gcc gcc-c autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-…

【FFmpeg】ffmpeg命令详解(二)

ffmpeg命令详解(二) 4、流选择4.1 自动选择流4.2 手动选择流5、命令行选择详解5.1 命令行选项的值说明:5.2 流说明符5.3 通用选项5.4 主选项5.5 视频相关选项5.6 高级视频选项5.7 音频选项5.8 高级音频选项5.9 字幕选项5.10 高级字幕选项4、流选择 FFmpeg提供了“-map”选项…

谷歌开源张量网络库TensorNetwork,GPU处理提升100倍!

编译 | 琥珀出品 | AI科技大本营&#xff08;ID:rgznai100&#xff09;世界上许多最严峻的科学挑战&#xff0c;如开发高温超导体和理解时空的本质&#xff0c;都涉及处理量子系统的复杂性。然而&#xff0c;这些系统中量子态的数量程指数级增长&#xff0c;使得暴力计算并不可…