【第七届中国云计算应用论坛】舒红平:基于云PAAS平台的软件开发

时间:2019-07-11  点击次数:   

  2017年2月19日,成都信息工程大学校长助理兼软件学院院长、第22届CIO班学员舒红平在论坛上发表了题为《基于云PAAS平台的软件开发环境与工具》的主题演讲,

  云计算相对来说仍然还不成熟,新服务和功能会一直出现。云开发平台和PaaS也会在新的功能登场时不断演变。底层弹性可扩展的云基础设施,加之上层支持高并发和快速迭代的微服务应用,已成为未来企业IT的必然选择。2017年2月19日,由CIO时代网承办,北达软、中国通信工业协会两化融合委员会、小云优选协办的“第七届中国云计算应用论坛”在北大中关新园成功举行。本次论坛的主题是:云基础设施与原生云应用,吸引了众多业界专家、企业领导、行业优秀代表、CIO班学员等200多人的关注和参与。

  成都信息工程大学校长助理兼软件学院院长、第22届CIO班学员舒红平发表了题为《基于云PAAS平台的软件开发环境与工具》的主题演讲,以下为演讲实录:

  在我开讲之前的两个报告,水平和档次都很高。面对沉浸在欣赏中的各位与会听众,我有点诚惶诚恐,原因是我来自成都,从西部欠发达地区阐述产业前沿,与刚才两个报告的档次差距很大。

  我认为我今天所讲的主题,应该是杨学山部长演讲内容的一个延伸。云PaaS平台云环境下,软件开发可以不受地域限制。从开发软件角度,我想借用杨部长刚才提到的三点说明软件工程领域开发的趋势。第一,让专注技术转到专注业务上,不要在代码停留;第二,让软件工程、软件生产自动化,不要进行组装,而是专注中间的接口、规范标准需重新定义;第三,要让软件工程智能化。那么,面对这种变化,在IaaS、PaaS和SaaS上,我们应该为用户提供些什么呢?

  “基于云PAAS平台的软件开发环境与工具”主要从云PAAS平台开发需求、云PAAS开发软件开发环境与工具、云PAAS软件开发实践三个方面来阐述。

  我们已进入微时代,微形态包括微生产、微内容和微平台。这也是IT从集成时代进入分享、分众时代,合久必分的表现。随着IT体系的演化和成熟,底层资源越来越集成,前端应用变化更富有活力。IT的变革能力,已深入到更微小级别的场所。这些微小的变化,其背后那个共性的、共享的、资源厚重的基础支撑,为这些微小的变化提供持续的数据流、计算能力、服务能力。我们常常把这个微小单元,后面的支撑资源和环境,称为平台。

  平台在后端提供全局的服务,而前端的微是局部。微组合到一起,威力巨大,是因为基于微小个体的规范标准,行为一致、协同一致的聚积效应,所产生的威力。当今软件应用碎片日趋明显,微小的应用要产生这种聚积效应、群体行为,软件开发要遵从结构相似、构建类同、计算自主、标准一致的规范,同时,也要基于标准提高开发和定制的柔性。这种强调服务个性化,就来源于面向微观层面的精准、集约、高效的集成威力,时间关系,在此不展开详细讲了。

  我所在的成都信息工程大学前身是成都气象学院,上世纪80、90年代全国三所气象院校之一,专注于气象装备和电子信息。近年来,与中国气象局成立了气象软件工程联合研究中心,我担任校方执行主任。我们对气象软件开发进行了研究,发现气象服务应用碎片化,需要微产品支持,如同中央电视台的天气预报,作为一个单独产品,是能针对普遍性,不能应对多样性。对大量天基、地基的观测数据的加工,需要应对决策和专业服务精准要求,那么数据加工的差异性、适用性就很关键,微加工成为适应窄领域复杂计算的重要数据处理模式。气象数据在全社会信息资源服务充当盐的作用,每个行业中都有与气象数据融合的需求,从应用角度看,微服务短平快,要求对应的微响应要敏捷,所以对微生产的微,要求其有强大的组合能力,能够支撑微服务、微应用局部、精准和快速的生成。

  底层资源要集约,上层应用要敏捷,这也是云PaaS平台的总体特征。如何在集约的情况下按照规范标准体系,将微开发构建起来,让微服务精准、快速、有效。制造业的云化、离散化给我们以启示。在自动化、智能化的支持下,如何面向个性化,组织软件的生产制造过程,也是基于云PaaS的软件开发需要解决的需求。

  分开是为了更好的相聚。如同我作为第22期CIO班的学员,今天我们即将的分别也是为了今后我们更好的合作和相聚。云PaaS平台中的分离也是为底层更好地配置资源,面向应用效果,提供有效的负载均衡,支持应用上的微服务、局部化服务。然而这些分离的解耦,也是为了推动软件应用,从数据生产向数据创新、再向数据思维的应用转化。其中,相关的软件标准、数据治理、数据计算能力、数据分析工具等,是支撑软件智能化需求的基础,尤其是在在领域开发方面,基于领域知识、领域知识图谱、领域标准化构件等资源的支撑,是行业应用云PaaS平台的产业化需求。

  从底层向上的软件开发和应用,表现得越来越难。近几年从原来的开发模式到现在按云的层次分类中,从PPT图上,我们看到云PaaS更聚焦于中间层,云开发环境与工具,与底层数据库、上层应用相关联。中间件、开发平台在云环境下,为各类应用提供灵活适用的开发资源。

  云的底层的技术平台支撑能力要强。云集成开发运营管理要通过应用支撑能力,探索后面的服务需在目前所谓的一种智能化、移动化、安全上的转型化如何发展。在云环境下,云PaaS平台的开发人员都是开发者,业务人员也是开发者,应考虑如何规范这套体系,将每个人的工作牵成一条线,作为共性特征体现出来。底层需要封装很多,支持业务人员、开发人员、应用人员,避免专注于技术实现,而应主要支持他们专注于业务如何实现。

  未来各种人员开发需求面临的是业务的领域、领域知识、模型、算法等等,进入微开发阶段,需要将这些资料积累和收集起来,形成领域及软件工程本身的知识,面向领域特点建立知识图谱。在微开发时,基于这些软件工程领域知识资源,可做基于问答式的软件开发。当开发者表达了软件需求后,云PaaS平台可以通过语音、语义识别,并将其描述出来,确定之后实现界面部署施行。这也未来基于智能化的云开发环境远景,是软件工程智能化的表现。

  关于基于云环境的软件知识推理及软件知识问题的理解,需要有程序语言和人类语言转化处理,对语言化表达进行基于语义的处理。同时构建软件工程领域数据源,以形成软件工程领域大数据,并支持面向某个行业的软件工程知识的收集,以及基于行业领域知识的开发模式在云PaaS平台上的工具支撑,这些领域软件大数据采集工具,能够对各行业中的模型、算法、工具、技术、代码、系统、软件文档、互联网上的相关文档,进行统一采集、编目和管理,形成至少到PB级得软件工程大数据,从而为形成基于云PaaS平台的软件开发环境与工具,提供云模式、业务化软件资产等。核心是要有组件,组建能够集约、个性化定制,并通过遵循标准,实现共享、集成和协同。

  后面我会分享一个众创的专题应用开发。其中积分制、知识产权、构建交易、构建跟踪、成果确认、业务分析,都是在云PaaS平台上如何打造。

  我们团队搭建和开发的云PaaS软件环境,遵循SOA标准,在资源层、组件层、服务层、流程层、协同层、页面层六个层面,实现业务逻辑可视化,使开发所见即所得,应用服务可配置,支持通用开发与定制开发相分离,实现程序、代码、文档的自动生成,通过这些自动化使能工具,提高了软件智能化自动化的开发过程。

  业务建模方面在需求出来后通过问答式的交互,回答建模如何在工具上构建。原来的建模很多都是孤立的。现在从需求到设计再到开发全过程是一体化的。其中的流程建模已实现,包括如何画流程图、画完后如何为流程所用、页面标签如何通过UI做,页面设计、功能构件标签化,所见即所得等。流程可视化及流程的每个环节都是可配置的,其中的构件右侧是构建库,拖出来后,中间有个连线,类似于机械中的型号规格,能连到一起会提示正确、能输出结果,不能连到一起会提示中间报错、修改或调整。

  代码质量和分析过程描述统一,支持代码自动生成,性能优化可控。同时,在每个行业中都有领域应用实践,需求是基于领域本体重构描述的。业务不同的地方要具体到推理机制,基于规则的知识表达来实现,包括几何推理、谓词逻辑等,其中既要实现语义知识表达,同时也有数据分析、结果可追溯、模型算法的可配置等。针对相关行业(气象、制造)等,构造数据层面、算法层面、构建层面、分析层面的业务构件、行业构件,构件化和服务装配是这个平台的特点,构件库管理,实现了构件上传、打包、拖拽、配置、购买、审核等,包括算法构件是实现了大多数数据挖掘分析算法的软件资产库。

  在云模式下,软件构建如何将资产作为知识库利用起来,行业如何构建,同时支持构建交易、构建运行、构建审核,基于智慧城市、智慧民生打造一个面向众创的行业构建开发平台。例如,在今年CIBS气象年会上,我们与广东省气象局、阿里公司共同开发了一个众创平台,核心技术包括三方面:集成的G2E架构,微服务的模式,构建化、图形化的编辑器。在会上作为重要的支持大众创业的技术来展示的。我们实现了非可视化程序打包,支持动态在线运行,也支持可视化的开发,前台开发完成后,部署即可看到结果。另外,我们在成都市云计算中心建立了一个云SaaS平台。中小企业进销存+财务也是在这个平台上开发的。这是我们在云PaaS平台方面的一些应用实践。香港财神网站开奖结果