市场调查机构IDC此前发表报告称,预计到2020年,全球物联网端点(比如汽车、冰箱,以及存在于物联网内的一切互联设备)将超过2950万个,这一数字在2014年为1030万个。IDC还表示,物联网市场中越来越多的设备通过线上方式发挥作用,而一批平台和服务也将基于线上方式逐步成长。
在此背景下,物联网软件技术发展将遇到的瓶颈有两个:一是如何实现海量设备下的信息快速检索,二是物联网软件开发的BUG调试。
6月30日,“突破物联网软件技术瓶颈研讨会”在北京经济技术开发区国际企业大道Ⅲ北京京开光谷置业有限公司成功举办。
本次研讨会包含两个核心话题:无限增长量(天量)快速检索技术探索和物联网软件的编程方法创新。
在会上记者看到,中国嵌入式系统产业联盟、中国软件行业协会嵌入式系统分会秘书长郭淳学用数学方法一步一步推证出整数树的存在,证明了整数树的节点可无限增长,并且,整数树上的每个节点的位置码与结点上的值是一一对应的。所以,利用新发现的整数树数据结构,以及由此新定义的幂进制数(整数树上的每个节点的位置码),可快速进行无限增长量(天量)检索。其间,郭淳学还讲解了幂进制数与十进制整数间的快速转换算法。
郭淳学表示,整数树的发现将有力促进物联网软件底层核心技术的发展演进,具有可引发其他技术创新的实用价值。进一步深入对整数树的研究,也将对信息技术和数学的发展产生深远影响。
北京乾坤化物数字技术有限公司总经理赵文银认为,物联网软件系统中的BUG,只能通过设定准确的网络空间属性才能解决。
赵文银说,实现逻辑功能的物理设备也可以被看成是一种“软件”,而为了区分传统计算机软件的概念,可把物理设备,以及运行在物理设备内的软件合称为“大软件”。
当前,物联网还只是存在于一个一维网络空间容器里。显然,一维空间很难完整地描述三维空间里的事物,而由于信息的缺失,逻辑过程也会变得不完整。
因此,赵文银认为在物联网中首先要为大软件设定一个可完整描述事物信息的、足够准确的维度。
在讨论会上,赵文银介绍了他创建的FO软件开发方法。FO软件开发方法包含三个部分,即面向事实的分析(Fact-Oriented Analysis)、面向结构的设计(Frame-Oriented Design)、面向形式的编程(Form-Oriented Programming)。
面向事实的分析指把客户需求当成已存在的事实,采用逻辑方法进行分析。面向结构的设计指把上述分析过程中得到的事实和对象的连接形式整理出来,并以三维的方式表述。面向形式的编程是指通过编写程序代码构建功能模块。该模块和配置(用规格化的文字描述参数)结合,就能组成一个对象。
赵文银说,FO软件开发方法将有助于实现软件工厂化生产。
在赵文银看来,物联网软件开发中BUG的存在,是由于当前物联网还处于一个一维网络空间容器里。
有与会嘉宾告诉记者,FO编程方法是在面向对象基础上做的进一步抽象,将事物抽象成一系列微小的结构或成员,然后利用整数树等技术对结构进行设计开发。而该方法所倡导的同一类成员只设计开发一次,然后按照自相似原则应用到同类成员的编程方法,是对软件编程方法的颠覆性创新。
在当前软件危机下,各大软件公司都在饱受着软件编程的复杂度不断提高、编程难度加大、编程周期拉长、维护修改困难、人员成本增加等困扰,FO编程方法有望获得被重视和推广使用的机会。
所谓“软件危机”,是当下IT产业出现的一种现象。
20世纪60年代以前,软件设计只是为了一个特定的应用而在指定的计算机上设计和编制,采用密切依赖于计算机的机器代码或汇编语言。那时,软件规模较小,文档资料通常不存在,很少使用系统化开发方法,设计软件往往等同于编制程序,基本上是个人设计、个人使用、个人操作、自给自足的个人化软件生产方式。
到了20世纪60年代中期,大容量、高速度计算机的出现,促使软件开发数量急剧增长。高级语言开始出现,操作系统引发了计算机应用方式的变化,大数据处理导致数据库管理系统的诞生。
如今,软件系统规模越来越大,复杂程度越来越高,软件可靠性问题也逐渐突出。传统的软件开发方式已远不能满足现有应用,由此引发“软件危机”,并且在物联网时代到来后,危机的影响开始大幅扩大。
与会嘉宾告诉记者,无限增长量(天量)快速检索技术和FO编程方法技术作为两项创新尝试,有利于构建可具备中国自主知识产权的、公平共享的物联网软件产业,将有效缓解软件危机在物联网产业上的影响。如能结合两种新技术进一步组织研制相对应的新型数据库、操作系统、高级语言、计算机结构等计算机软硬件基础体系,将有望改善我国计算机软件发展局面。
■本报记者 于杰
……