演讲 / Danniel Sabbah  整理 / 常政 [caption id="attachment_4320" align="alignright" width="200" caption="Danniel Sabbah指出,软件计量经济学将是软件工程的转折点"]

[/caption] 智慧地球,意味着未来的世界越来越感知化、互联化和智能化,这给软件开发人员带来了新的课题:如何迎接复合系统的挑战?IBM Rational软件集团总经理Danniel Sabbah先生在2010 IBM Rational软件创新论坛上提出了一个全新的思路:软件计量经济学。这意味着世界软件工程有望迎来一个新的转折点。 “智慧地球”的概念,相信已众所周知;但是对于这样一个物联网形式的、更加智能化的体系,如何利用好由此带来的设备自由互联的普及趋势,如何处理好其蕴涵的复杂性,还是一个亟待解决的问题。 以医疗保健行业中的“紧急救护服务”场景为例,设想一下,如果患者得了某类心脏病,拥有植入式的设备、传感器,可以通知当地医院心脏病的救急中心,会有什么潜在的好处呢?研究表明,这些植入式的心脏病终端能够减少30%的死亡率。这好比有一个“24×7”的医疗救护人员,在医院里监护你心脏的状况,却没有给医院带来更多的成本。而这样一种医疗设备,里面可能有近20万行的代码,因为它需要和心脏病监护中心交互,同时还必须保证信息是安全的。当心脏科的医生根据患者的反映数据,对患者诊断评估、通知调遣救护车时,可以设想一下这过程中需要的技术: GPS定位、交通路线优化、本地交通管理系统集成、与本地交通状况及时结合等。而急救车通常也比一般的车辆更加复杂,它像一个轮载的数据中心,需要嵌入式的5000万行代码,还有很多软件组件,每个都有10多个不同的接口,去跟踪、追索、升级、测试,此外还要对它维护15~20年。 软件工程的挑战 以上涉及的只是预期的最基本结果,是很多行业应用中的一个简单案例。实际上这种“系统的系统”所带来的难题,将会在许多行业中出现,作为软件开发人员是否已经做好迎接这个挑战的准备了呢?毋庸置疑,我们需要一个转折点——一种更好的途径去构建这些软件和集成的系统,提供预期的经济和社会效益。我们需要一些新的思维、新的技能、新的战略,去应对这些系统复杂性。这里我想推荐一种可以对系统质量进行全新度量的办法,来推动创新——“软件计量经济学”。为什么提出这一个概念?因为是基于经济上的理论、通过经济的原则去衡量企业的价值、衡量给社会带来的价值,能准确地反映出我们创建软件的过程,会帮助我们真正解决未来系统与系统互联的问题,并将效率和质量紧密结合起来,实现一种可度量的创新。 软件计量经济学的原则 软件计量经济学的原则,就是围绕我们社会和经济影响的方方面面的结果,进行货币化,并把这些价值变成一种可用货币衡量的办法和机会。所以,需要开始启动这样一个历程——在传统软件工程不足的地方做起。由于软件系统采用的是传统的工程开发方式,包括计算机辅助的优先处理,还有一些建议系统,比如怎样帮助中心集成商在急救中心使用呼叫工具,还有交通灯抢占的远程控制等。这些在很多情况下会在多个系统之间造成混乱,所以如果不能对结果进行衡量的话,就不能够给它进行优先排序,避免不必要的灾害。比如对于实时的医疗急救例子,如果急救车的调配发生了延误,或者没有找到合适的急救车到达合适的地方去救治合适的患者,我们就损失了时间,也损失了生命。我们不应该只是简单地看每一个单独的系统,而应从一个完全不同的角度看待质量问题。所以创新应该成为整个交付系统的一部分,而不仅仅是开发系统的一部分,比如救护车需要进行优化、减少堵塞,需要和智能交通系统结合在一起。 [caption id="attachment_4321" align="aligncenter" width="400" caption="传统软件工程模式已无法适应新型复合系统的需求"]

[/caption] 软件计量经济学的关键要素 为了达到这个目标,我们必须考虑一些关键的因素或问题,使整个交付过程可以实现经济的度量。因此,我们需要从生命周期的角度,进一步改变这一流程的质量和价值,这些都需要在整个供应链中进行衡量,在不同学科和不同系统中进行衡量。结果的风险、成本都必须不断地进行计算,因为没有一个系统会使我们需要有一个静态的要求或在固定的时间里进行静态的交付,这是一个不断循环的系统,而且在不断的发展。我们总是在寻求不断地改善它的行为,而不是一次性的。瀑布式开发方式是不适用的,我们需要规模的灵活性而不是简单的灵活性,是真正的敏捷性、业务方面的灵活性、社会的灵敏性。就像我们最初所说的,我们正从传统的工程模式向新的软件经济过渡,我们必须重新确定它的效率和质量,我们必须重新实现我们经济和社会的效益。为了解决风险、应对风险和降低成本,我们需要动态地不断评估它的不确定性和客户的满意度。系统会不断地实施动态评估,以新的思维不断监督检测这种价值。我们还需要把它与整个开发和交付程序联系在一起,使其成为一个扩展的系统,即复合系统。 为了能够成功地度量这种动态的过程,我们需要一个动态的端对端的生命周期的管理平台,这也是IBM过去30年来一直在研究的工作。目前我们已经开发了一系列开放标准,称之为“开放服务生命周期合作”。这听起来很诱人,叫做OSLC,但是在很多情况下,如果我们忘记了这个诱惑的名称,再考虑一下,像OSLC一样可以完全地了解整个生命周期过程,使得整个平台有了这样动态集成行为和端对端生命周期,并且更重要的是还能够让我们反映和采取行动来获得相应的信息。因为有了信息将会让我们能更好地完成这个过程,把这种演进与变化不断结合起来。这一类平台需要有网络特点,因此我们所做的任何工作,在整个开发平台中做的工作都是依据Web2.0的标准,通过网络合成标准的集成,是整个平台定义的组合部分、不可或缺的部分。我们不仅仅将它叫做基础平台,所有端对端生命周期内的、在协作方面所开发的产品,都可以衡量,有自动化,还有报告等等,这样可以让我们评估、指导和采取行动。比如说Jazz,我们为什么把它叫做Jazz?它这种合作与协调把所有工具结合在一起,来创造美妙的音乐—我们希望能创造出更好的结果。 结束语 总之,我们正在开启一个全新的角度,来探索这样一个以创新和质量为目标的新世界。同时,这也是一个日积月累的、全新的反馈系统,可以让我们持续地关注这一套系统带来的结果,并且进行如实的报告。所以无论是客户,还是我们,都可以共同探索这样一个创新的全新世界。这和IBM的愿景是一致的,即通过更加智慧、动态的业务分析来实现更智慧的系统。也就是说,把Rational软件开发直接与IBM的智慧地球连接在一起。(本文根据Daniel Sabbah 在2010年IBM Rational软件创新论坛上的主题演讲整理。) (本文来自《程序员》杂志10年11期) 《程序员》11期最新上市:互联网架构集结号 《程序员》订阅

Daniel Sabbah:软件工程的转折点相关推荐

  1. 《程序员》11期最新上市:互联网架构集结号

    本期封面报道:互联网架构集结号 互联网从诞生到现在,网站的规模不断扩大,存储和处理的数据量也远远超出了人们的想象,近年来又出现了对信息实时性.多媒体需求大幅增长的现象,互联网架构面临越来越大的挑战.本 ...

  2. 媲美微信的二维码识别库

    查看全文 http://www.taodudu.cc/news/show-2807478.html 相关文章: 无线视频监控系统设计 OpenMAX编程-音视频等组件介绍 通信教程 | 概述并行与串行 ...

  3. 改造我们学习:先僵化、再优化、后固化

    最近项目还不算太紧,刚好和同事挤出时间参加了周五的:2010年IBM的Rational大会,主题是"开发有道,创新智造":如果把举行一次大型会议看作一个项目,我感觉IBM是一个非常 ...

  4. 小米语音首席科学家Daniel Povey:下一代Kaldi将走向何方?

    如果你曾为<十面埋伏>中章子怡"听音辨鼓"的神技所惊艳,那么你也许就会被语音识别工具Kaldi的神通广大所倾倒.作为当前最流行的开源语音识别开发框架,Kaldi集成了多 ...

  5. 阅读笔记——软件工程的瀑布、教堂和集市

    (个人阅读作业2:http://www.cnblogs.com/jiel/p/4030382.html ) 一.教堂与集市 1.1 定义 "两种不同的自由软件开发模式: 大教堂模式(The ...

  6. 《软件工程(第4版?修订版)》目录—导读

    版 权 声 明 软件工程(第4版•修订版) Authorized translation from the English language edition, entitled Software En ...

  7. 中科大非全日制软件工程硕士和调剂相关问题

    中科大非全日制软件工程硕士和调剂相关问题 个人意见,仅供参考 20201027补充 总体说下 原因 声明 概况 逐条说下 上课问题 课程问题 教学质量问题 奖助学金问题,学费问题 导师问题 毕业问题 ...

  8. 软件学院软件工程学费_为什么我不去软件工程学院

    软件学院软件工程学费 The sounds of the keys clicked and clacked as I rushed my fingers across the laptop keybo ...

  9. 从人类的发展史看软件及软件工程的未来

    从人类的发展史看软件及软件工程的未来 摘 要: 透过人类数千万年的发展史,可以看到一条清晰的.刻在时间轴上的演变脉络.该脉络不仅诉说着人类过去的发展,而且也指出了人类命运的走向.软件和软件工程作为人类 ...

最新文章

  1. android double比较大小吗,java – Android – 比较方法违反了它的一般...
  2. js全局变量和局部变量
  3. Self-reflection for career
  4. LeetCode 1059. 从始点到终点的所有路径(回溯)
  5. HDOJ 2018 母牛的故事
  6. (一)源码下载,编译,安装
  7. stm32正交编码器 原理图_ROS机器人平台STM32底层控制部分
  8. ZOJ3826 Hierarchical Notation(14牡丹江 H) 树套树
  9. 软件唯有开源才是出路?
  10. 验证码识别库 python_python 验证码识别库pytesseract的使用
  11. struts的体系结构
  12. 计算机等级考试四级--软件工程
  13. vs2012安装VA插件
  14. MITK通用插件(四)The Dicom Browser Plugin
  15. VBA玩转系统剪贴板
  16. LM75AD温度传感器读写
  17. 学习笔记:计算机字符编码标准之GB2312-1980中文字符编码
  18. PA 调试心得(一个电容引发的问题)
  19. WhatsApp电脑版和WhatsApp网页版区别?
  20. 用计算机弹歌曲fade,抖音短视频踢脚舞是什么歌 Faded歌曲分享

热门文章

  1. 8月22日到26日工作收获
  2. 【论文导读】- Subgraph Federated Learning with Missing Neighbor Generation(FedSage、FedSage+)
  3. 黑客的成长(学会使用武器)
  4. 2.1 分布式文件系统HDFS-使用
  5. Java / Tensorflow - API 调用 pb 模型使用 GPU 推理
  6. 网友评价 iPhone 8:大爱玻璃后壳、True Tone 屏幕
  7. 图解:为什么总有人能“躺着”挣钱?
  8. 1.3-15:苹果和虫子
  9. 原生js的JSONP跨域请求
  10. Flutter 热更新功能实现