荷兰CLEBA Group负责人李海宽:大数据时代的软件开发模式

2017-04-14 11:29:45  来源:CIO时代网

摘要:2017年4月13日,“第55期CIO时代信息化大讲堂 "活动在北京大学燕园大厦顺利举行。本次活动由CIO时代APP总编朱启明主持,荷兰CLEBA Group负责人李海宽博士作为本期活动的嘉宾,作了题为《大数据时代的软件开发模式》的主题分享。
关键词: 大数据 软件开发
  2017年4月13日,由中国新一代IT产业推进联盟主办,CIO时代APP承办的"第55期CIO时代信息化大讲堂"活动在北京大学燕园大厦顺利举行。本次活动由CIO时代APP总编朱启明主持,荷兰CLEBA Group负责人李海宽博士作为本期活动的嘉宾,作了题为《大数据时代的软件开发模式》的主题分享。

\
  荷兰CLEBA  Group负责人李海宽

  他在活动上主要对大数据时代软件开发模式的变化、特征及其发展趋势进行了讨论,除一系列新的概念外,还对一些具体的实现方法,技术及工业实践经验进行了介绍。

  随着信息时代、互联网时代、人工智能时代、大数据时代的到来,传统的软件工程面临新的机遇与挑战,未来即将会迎来软件时代。在大数据时代,软件资源非常巨大,且软件需求比过去任何时候都多,加之很好的技术开发软件。在这个时代,软件质量和效率的提升有很大的发展空间。

  一、什么是数据

  1.数据一般被认为是信息的载体

  世界上的一切事物都是信息的载体。大量的数据是很难处理的,包括大数据也是很难处理的。一般而言,只能处理数字化的数据,只有数字化的数据才能被计算处理。

  2.软件即数据

  另一个说法是,软件即数据。一方面,软件是信息载体;另一方面,软件是数字化。过去认为软件是处理数据的,事实上,这里的软件是作为数据来处理的。

  3.软件资源即数据

  软件资源是指用于开发软件的资源。例如开发软件过程中积累的内容。长期以来我们所使用的软件资源是静态的。大数据时代,还包括动态的软件资源。即可以运行的软件资源,典型的如网上的服务。原来的软件是指以软件为主的组件,如今还包括硬件、数字化资源等等。任何东西一旦被软件定义都可以被看作软件资源。如出租车、手机端、PC等。构造软件的能力也随之越来越强,数据库等都可以作为软件的子系统。总之,我们所谈到的软件资源与过去的不同在于,过去的软件资源是指静态软件,现在的软件资源是静态软件加动态软件。

  和其他数据相比,软件作为数据有以下两大特点:知识密集型和资本密集型。一个软件系统往往是由大量的智力与复杂的方法和程序。同时,软件开发可能是非常耗时的,存在高成本和大的业务风险。

  就软件的开发与重用而言,在过去的几十年中,从无到有的软件开发越来越少,对现有资源的重用越来越多,大量的软件资源已经产生。软件重用在提高软件开发的质量和效率方面明显提高,支持软件复用,也是逆向工程,软件维护的传统技术在目前软件开发中扮演着重要的角色,而目前的软件开发模式是逆正向工程。因此,软件开发的流程发生了变化,概念也发生了变化。软件数据挖掘的概念原先是不存在的,为此提出了面向关系的软件架构、静态或动态的软件资源等新概念,过去的系统是代码开发、高级语言开发,如今是架构开发系统,效率得以提高。

  二、软件开发的趋势

  大规模软件重用。从大规模软件复用走向更大规模的复用,以前包括静态软件,如今既包括静态也包括动态。

  以服务为基础的软件开发。很多情况下是利用运行的软件来构造,而不是过去的静态软件库。

  软件的计划生产。也就是批量生产,在同一领域,软件挖掘支持计划生产,典型的案例是软件生产线。

  以生命周期为基础的软件开发。有望解决软件维护的危机。

  总之,新的软件开发模式首先需要软件数据挖掘,第二是数据资源管理,最后是软件开发与维护。

  三、数据挖掘的实践经验

  这方面仅限于静态数据挖掘,将软件程序作为输入,架构作为输出,其中架构与开发是最核心的内容,将组件管理起来,为此提出了管理模型和操作模型,最后进行逐步开发。在大数据时代,有巨大的软件资源可用,包括处理资源的技术,这使得软件开发具有很大的重用性,软件开发的质量得以改进。

  四、面向关系的软件架构

  一个软件系统如果被使用,则需要被不断改变。将混乱的软件变为容易理解的软件,系统的混乱主要是指结构的混乱,为结构带来了很大的麻烦。为此,我们提出三步方法:架构从代码中提取出来,从别的程序输出架构,并将其转换成整齐语序,最后再放入架构中。

  这里有三个最基本的概念需要明确:什么是架构;什么是系统;什么是重构。

  1.什么是架构

  架构就是蓝图。蓝图即设计,架构便是一个软件高层的总体设计。具体用各种视图来描述。如功能、性能等视角。

  站在历史角度来看,一个软件的架构包括面向功能的架构、面向对象的架构、面向服务的架构与面向对象的架构四个方面。

  2.什么是系统

  系统被定义为架构加组件,系统是一组组件,需要组织起来去实现外传功能。在架构基础上重装系统。

  3.什么是重构

  重构是一个过程,整理软件的组织结构以找到最合适的。

  我们正处于一个软件工业大变革的前夜。随着软件资源的大量积累与有效利用,软件生产的集约化、智能化与自动化程度都将迅速提高,软件生产质量与效率的大幅度改进将成为可能。

\
  活动现场

  在活动最后的交流讨论环节中,他对到场嘉宾所提的问题作了一一解答,大家纷纷表示收获满满。

\
  合影留念

  “CIO时代信息化大讲堂”活动每隔周三下午19:00-20:30定期举办公开讲座,更多干货分享以及活动动态,请关注CIO时代APP。扫描下方二维码即可下载。

第三十五届CIO班招生
国际CIO认证培训
首席数据官(CDO)认证培训
责编:houlimin

免责声明:本网站(http://www.ciotimes.com/)内容主要来自原创、合作媒体供稿和第三方投稿,凡在本网站出现的信息,均仅供参考。本网站将尽力确保所提供信息的准确性及可靠性,但不保证有关资料的准确性及可靠性,读者在使用前请进一步核实,并对任何自主决定的行为负责。本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。