论文部分内容阅读
摘要:软件工具及其生产环境是软件技术及其产业的重要组成部分。提高软件生产效率和质量一直是软件生产领域的重大课题。运行环境和应用模式的变化总是带动软件工具和生产环境的发展。当前,软件工具与生产环境呈现若干新特点:基于Internet 的工具资源开放共享与协同开发成为提高软件开发效率、降低软件开发成本的重要途径;基于复用思想的大规模的软件资源库构建与共享成为提高软件生产率和产品质量的有效手段;软件的可信性成为软件质量的焦点,强化对软件可信性的分析、度量和应用支撑成为热点问题。综合而言,新一代的软件工具与生产环境的关键要素体现为软件开发协同化、软件资源共享化和软件质量可信化三个方面。
关键词:电子政务;开发工具;图形化
中图分类号:TP399 文献标识码:A 文章编号:1007-9599 (2012) 23-0000-03
1 引言
有人说,.NET的成功是因为有Visual Studio,而J2EE的复杂是因为缺乏一个J2EE的Visual Studio。作为一种成熟的语言和技术,确实需要一个良好的工具支持,并通过工具支持来降低学习曲线、提升开发效率。
2 市场规模与趋势分析
软件生产工具与协同开发环境是软件产业的重要组成部分,其应用与市场同软件产业的发展存在密切的关系。我国软件产业对软件生产开发等支撑工具有着巨大的市场容量,且市场增长率超过40%,而目前我国软件企业的业务范围主要分布在各个应用领域,虽然它们对软件开发生产工具有着迫切的需求,但从事国产软件开发工具生产的专业厂商严重缺乏,制约了我国软件产业的持续发展。国外厂商产品费用高,后期培训、支持成本巨大,使得我国软件企业缺乏必要的软件生产配套装备,大量企业或使用盗版或依赖开源工具,而缺少必要的技术支持,使得先进软件技术在企业中推广难度大,制约了软件生产效率的提升。
3 国内厂商分析
目前,国内各大业务基础平台产品提供商在其产品线构成上,基本都包含了开发工具这个部分。下面针对国内目前知名厂商所提供的开发工具做一简单的分析:
3.1 东软UniEAP
UniEAP? Workshop就是UniEAP?为基于之上的企业应用系统量身定做的全生命周期开发环境,通过对UniEAP?方法学的贯彻和对可复用构件的可视化使用。只有基于这种面向业务的集成开发环境,才能从根本上提升应用系统的开发效率。
能够快速生成并部署基于UniEAP? Platform框架的企业级J2EE应用程序;提供了一个直观的程序设计模型,使您可以集中精力生成应用程序展现界面和业务逻辑,而不用考虑复杂的底层实现技术细节。主要功能有:
支持对共享平台资源的多个应用的管理和部署;
支持对可复用构件的按需选取和可视化利用;
支持对页面流程、业务流程、数据资源、电子表单、报表的定义和管理;
支持对页面元素、业务逻辑构件的可视化配臵与管理;
支持基于模板的向导机制;
支持基于大量扩展点的功能扩充。
3.2 普元EOS
在EOS Studio中,以项目的形式组织了EOS应用开发的资源,提供相应的向导、视图和编辑器等工具供开发人员在开发过程中可视化地开发各种构件,并提供了强大的调试及团队开发功能。对于一个应用项目而言,所有的开发内容都可以方便快捷的通过EOS Studio完成,而不需要使用其他开发工具。
EOS Studio是集面向构件应用的设计、开发、组装、调试、维护、部署、管理和发布于一体的集成开发环境,提供对SOA应用和服务全生命周期的开发、维护和管理;
产品特点:
图形化设置界面控件的属性,比如列表,树等结构数据;
与后台的实体、Action等服务的交互结合的较好;
能够针对典型场景生成复杂的代码(场景的各类参数可通过可视化设置)
高性能的开发工具:对开发机器配置要求不高
图形化的SOA服务设计与服务装配;图形化的数据模型设计;
图形化的构件组装;图形化的构件调试
图形化的页面流开发:支持变量的不同范围内的共享;
丰富的Ajax控件与普通页面控件; 丰富页面控件属性向导;
3.3 金蝶OperaMasks
金蝶Opera Masks Studio开发平台是建立在eclipse基础上的一个轻量级开发平台,集成了多个优秀框架以及他自己的应用服务器,还提供了可视化Web开发环境,通过拖拽的方式生成页面。
金蝶Opera Masks Studio通过对开发工具应用服务器的集成提升开发效率,通过对优秀框架的支持,解决了软件开发中质量,成本,风险等问题,快速开发页面,对J2EE开发提供了开发,配置,部署,监控等生命周期管理。同样他具备以下的特点:
提供流程引导视图,引导用户一步步建立工程;
提供了全新的J2EE工程视图;
该环境提供了实体对象设计,数据源生成的可视化环境,在可视化页面拖拽生成实体bean;
提供了数据源和控件的绑定,例如tree或者grid;
支持数据库反向导入数据模型,支持数据库脚本导出;
提供了一系列的控件库,用来支持可视化开发,支持控件对后台业务的绑定;
页面控件提示工程强大;页面控件异常提示功能;
4 研究内容
电子政务领域软件生产环境功能上由三个部分集成而成:软件开发协同平台、业务基础平台和软件生产管理平台。其中软件开发协同平台提供对电子政务领域软件生产中各类活动的协同支撑;业务基础平台包括应用开发工具集、应用运行支撑框架、应用监管工具集、领域构件库四部分,是生产环境的核心支撑;软件生产管理平台提供对整个软件生产环境中的核心资产、主要过程和产品质量进行监控和统计分析,如下图: 5 技术路线
5.1 统一应用运行支撑框架技术
通过综合使用构件化开发技术、SOA技术、业务流程管理技术、异构信息集成技术,服务总线技术、门户技术,可以抽取电子政务应用系统的共性,形成统一的应用运行支撑框架,对上提供统一的应用开发接口,屏蔽中间件、数据库、操作系统等系统平台之间的差异性,方便用户开发和整合各类应用系统,对下统一接入操作系统、数据库、中间件等,这样能够在不影响或者尽量少影响应用开发的前提下,实现应用系统在不同系统软件环境下的迁移,从而可以有效地促进领域构件在不同系统软件环境、不同项目中的复用。
5.2 统一应用监管技术
从保障业务持续可用的角度出发,从业务流程、业务操作、业务数据等各个业务层面进行监控,对监测数据进行综合的分析研判,对系统的隐患进行提前预警;提供标准的应用监控接口,同时提供开发包,支持针对特定业务场景的二次开发,从而能够更深入地监控业务系统,提高系统的可信度。
5.3 软件开发协同平台
软件开发协同平台在持续集成、论坛、即时通讯、缺陷管理、邮件列表工具基础上,为了适应软件企业内部的使用需要,一方面需要根据需求进行功能调整,另一方面需要通过开放的API接口公开部分服务,和其他办公系统进行整合。
5.4 软件生产线过程监控技术
在软件生产线的过程监控技术方面,采用实时数据采集为主要手段、以指标考核为保证手段的综合过程监控方法。在生产线模型的基础上,分析需求建模、资产开发、应用组装、资产管理和质量保障等主要过程控制点,充分利用监控工具进行整合和适应性改进,实现不同开发环境下软件生产线的过程监控,并可结合开发过程的需求,对过程监控模型进行改进和扩展。
6 总体结构
在我看来,面向电子政务领域的一体化平台应该由如下几个方面组成:
6.1 应用运行支持环境
应用运行支撑环境建立在J2EE应用服务器之上,提供了对各类业务构件的运行支持,必须作为最终应用软件的一部分。
为了满足应用软件的稳定、高性能、可维护、可扩展的要求,应用运行支撑环境本身也需要满足上述特性。从软件架构上来看,应用运行支撑环境的设计需要保持架构的简单性,提供给开发人员的接口要尽量简单。应用运行支撑环境需要采用微内核的架构,所有业务构件和通用构件均是可插拔的方式,通过微内核进行管理。
6.2 应用开发环境
应用开发环境支持应用系统的构件化开发和部署,提供一个集成的项目开发工作环境。应用开发环境基于开放源代码的IDE工具Eclipse,提供了增强的开发插件,为用户提供了数据模型、业务规则模型、界面模型、业务流程模型等的描述能力,可以基于这些模型直接生成应用程序的框架代码,开发人员只需要关注核心的业务逻辑,添加相应的代码就可以完成开发,不需要纠缠于实现的细节。另外,所依赖的代码模板可以调整,以采用新的技术模式,或者是根据实施的经验进行优化。当然,不可能在模型中描述应用系统的所有细节,也就不可能生成直接可以运行的所有代码,需要由开发人员补充这些关键的业务逻辑代码,应用开发环境保证代码的同步。最终所有的代码经过编译后,由应用开发环境部署到应用服务器上。
综上所述,我总结了如下几个方面来概括
6.3 应用管理环境
应用管理环境提供了对应用系统执行的各个方面的监管和控制功能,可以是集中式管理的方式,监管多个运行环境,也可以作为构件整合在应用系统之内。它可以监管所有实现了应用管理接口的业务功能,以及对上层业务构件的运行监控等功能。包括对业务流程、数据访问、业务规则等基础服务的监管功能,有助于在系统运行时察看运行状况,发现并解决问题。
电子政务领域通用业务构件
电子政务领域的通用业务构件,是可以用于多数政府部门的信息化建设中。主要包括以下几类:
1)办公类业务构件:公文处理、会务管理、行政督察、活动安排、资料库管理等;
2)办事类业务构件:在线申报、政务公开、集成办事、咨询交流、办事通知、服务导航、网上审批、监察管理等;
3)网站建设类业务构件:信息发布、网页防篡改、网上调查、论坛、全文检索等;
4)信息交换类业务构件:信息抽取、信息转换、信息加载、信息传输等;
5)信息安全类业务构件:统一用户管理、单点登录、认证授权、访问审计等。
[作者简介]
李可俊(1983-),男,东华大学计算机科学与技术学院,主要研究方向为计算机网络、数据库、软件工程等。
关键词:电子政务;开发工具;图形化
中图分类号:TP399 文献标识码:A 文章编号:1007-9599 (2012) 23-0000-03
1 引言
有人说,.NET的成功是因为有Visual Studio,而J2EE的复杂是因为缺乏一个J2EE的Visual Studio。作为一种成熟的语言和技术,确实需要一个良好的工具支持,并通过工具支持来降低学习曲线、提升开发效率。
2 市场规模与趋势分析
软件生产工具与协同开发环境是软件产业的重要组成部分,其应用与市场同软件产业的发展存在密切的关系。我国软件产业对软件生产开发等支撑工具有着巨大的市场容量,且市场增长率超过40%,而目前我国软件企业的业务范围主要分布在各个应用领域,虽然它们对软件开发生产工具有着迫切的需求,但从事国产软件开发工具生产的专业厂商严重缺乏,制约了我国软件产业的持续发展。国外厂商产品费用高,后期培训、支持成本巨大,使得我国软件企业缺乏必要的软件生产配套装备,大量企业或使用盗版或依赖开源工具,而缺少必要的技术支持,使得先进软件技术在企业中推广难度大,制约了软件生产效率的提升。
3 国内厂商分析
目前,国内各大业务基础平台产品提供商在其产品线构成上,基本都包含了开发工具这个部分。下面针对国内目前知名厂商所提供的开发工具做一简单的分析:
3.1 东软UniEAP
UniEAP? Workshop就是UniEAP?为基于之上的企业应用系统量身定做的全生命周期开发环境,通过对UniEAP?方法学的贯彻和对可复用构件的可视化使用。只有基于这种面向业务的集成开发环境,才能从根本上提升应用系统的开发效率。
能够快速生成并部署基于UniEAP? Platform框架的企业级J2EE应用程序;提供了一个直观的程序设计模型,使您可以集中精力生成应用程序展现界面和业务逻辑,而不用考虑复杂的底层实现技术细节。主要功能有:
支持对共享平台资源的多个应用的管理和部署;
支持对可复用构件的按需选取和可视化利用;
支持对页面流程、业务流程、数据资源、电子表单、报表的定义和管理;
支持对页面元素、业务逻辑构件的可视化配臵与管理;
支持基于模板的向导机制;
支持基于大量扩展点的功能扩充。
3.2 普元EOS
在EOS Studio中,以项目的形式组织了EOS应用开发的资源,提供相应的向导、视图和编辑器等工具供开发人员在开发过程中可视化地开发各种构件,并提供了强大的调试及团队开发功能。对于一个应用项目而言,所有的开发内容都可以方便快捷的通过EOS Studio完成,而不需要使用其他开发工具。
EOS Studio是集面向构件应用的设计、开发、组装、调试、维护、部署、管理和发布于一体的集成开发环境,提供对SOA应用和服务全生命周期的开发、维护和管理;
产品特点:
图形化设置界面控件的属性,比如列表,树等结构数据;
与后台的实体、Action等服务的交互结合的较好;
能够针对典型场景生成复杂的代码(场景的各类参数可通过可视化设置)
高性能的开发工具:对开发机器配置要求不高
图形化的SOA服务设计与服务装配;图形化的数据模型设计;
图形化的构件组装;图形化的构件调试
图形化的页面流开发:支持变量的不同范围内的共享;
丰富的Ajax控件与普通页面控件; 丰富页面控件属性向导;
3.3 金蝶OperaMasks
金蝶Opera Masks Studio开发平台是建立在eclipse基础上的一个轻量级开发平台,集成了多个优秀框架以及他自己的应用服务器,还提供了可视化Web开发环境,通过拖拽的方式生成页面。
金蝶Opera Masks Studio通过对开发工具应用服务器的集成提升开发效率,通过对优秀框架的支持,解决了软件开发中质量,成本,风险等问题,快速开发页面,对J2EE开发提供了开发,配置,部署,监控等生命周期管理。同样他具备以下的特点:
提供流程引导视图,引导用户一步步建立工程;
提供了全新的J2EE工程视图;
该环境提供了实体对象设计,数据源生成的可视化环境,在可视化页面拖拽生成实体bean;
提供了数据源和控件的绑定,例如tree或者grid;
支持数据库反向导入数据模型,支持数据库脚本导出;
提供了一系列的控件库,用来支持可视化开发,支持控件对后台业务的绑定;
页面控件提示工程强大;页面控件异常提示功能;
4 研究内容
电子政务领域软件生产环境功能上由三个部分集成而成:软件开发协同平台、业务基础平台和软件生产管理平台。其中软件开发协同平台提供对电子政务领域软件生产中各类活动的协同支撑;业务基础平台包括应用开发工具集、应用运行支撑框架、应用监管工具集、领域构件库四部分,是生产环境的核心支撑;软件生产管理平台提供对整个软件生产环境中的核心资产、主要过程和产品质量进行监控和统计分析,如下图: 5 技术路线
5.1 统一应用运行支撑框架技术
通过综合使用构件化开发技术、SOA技术、业务流程管理技术、异构信息集成技术,服务总线技术、门户技术,可以抽取电子政务应用系统的共性,形成统一的应用运行支撑框架,对上提供统一的应用开发接口,屏蔽中间件、数据库、操作系统等系统平台之间的差异性,方便用户开发和整合各类应用系统,对下统一接入操作系统、数据库、中间件等,这样能够在不影响或者尽量少影响应用开发的前提下,实现应用系统在不同系统软件环境下的迁移,从而可以有效地促进领域构件在不同系统软件环境、不同项目中的复用。
5.2 统一应用监管技术
从保障业务持续可用的角度出发,从业务流程、业务操作、业务数据等各个业务层面进行监控,对监测数据进行综合的分析研判,对系统的隐患进行提前预警;提供标准的应用监控接口,同时提供开发包,支持针对特定业务场景的二次开发,从而能够更深入地监控业务系统,提高系统的可信度。
5.3 软件开发协同平台
软件开发协同平台在持续集成、论坛、即时通讯、缺陷管理、邮件列表工具基础上,为了适应软件企业内部的使用需要,一方面需要根据需求进行功能调整,另一方面需要通过开放的API接口公开部分服务,和其他办公系统进行整合。
5.4 软件生产线过程监控技术
在软件生产线的过程监控技术方面,采用实时数据采集为主要手段、以指标考核为保证手段的综合过程监控方法。在生产线模型的基础上,分析需求建模、资产开发、应用组装、资产管理和质量保障等主要过程控制点,充分利用监控工具进行整合和适应性改进,实现不同开发环境下软件生产线的过程监控,并可结合开发过程的需求,对过程监控模型进行改进和扩展。
6 总体结构
在我看来,面向电子政务领域的一体化平台应该由如下几个方面组成:
6.1 应用运行支持环境
应用运行支撑环境建立在J2EE应用服务器之上,提供了对各类业务构件的运行支持,必须作为最终应用软件的一部分。
为了满足应用软件的稳定、高性能、可维护、可扩展的要求,应用运行支撑环境本身也需要满足上述特性。从软件架构上来看,应用运行支撑环境的设计需要保持架构的简单性,提供给开发人员的接口要尽量简单。应用运行支撑环境需要采用微内核的架构,所有业务构件和通用构件均是可插拔的方式,通过微内核进行管理。
6.2 应用开发环境
应用开发环境支持应用系统的构件化开发和部署,提供一个集成的项目开发工作环境。应用开发环境基于开放源代码的IDE工具Eclipse,提供了增强的开发插件,为用户提供了数据模型、业务规则模型、界面模型、业务流程模型等的描述能力,可以基于这些模型直接生成应用程序的框架代码,开发人员只需要关注核心的业务逻辑,添加相应的代码就可以完成开发,不需要纠缠于实现的细节。另外,所依赖的代码模板可以调整,以采用新的技术模式,或者是根据实施的经验进行优化。当然,不可能在模型中描述应用系统的所有细节,也就不可能生成直接可以运行的所有代码,需要由开发人员补充这些关键的业务逻辑代码,应用开发环境保证代码的同步。最终所有的代码经过编译后,由应用开发环境部署到应用服务器上。
综上所述,我总结了如下几个方面来概括
6.3 应用管理环境
应用管理环境提供了对应用系统执行的各个方面的监管和控制功能,可以是集中式管理的方式,监管多个运行环境,也可以作为构件整合在应用系统之内。它可以监管所有实现了应用管理接口的业务功能,以及对上层业务构件的运行监控等功能。包括对业务流程、数据访问、业务规则等基础服务的监管功能,有助于在系统运行时察看运行状况,发现并解决问题。
电子政务领域通用业务构件
电子政务领域的通用业务构件,是可以用于多数政府部门的信息化建设中。主要包括以下几类:
1)办公类业务构件:公文处理、会务管理、行政督察、活动安排、资料库管理等;
2)办事类业务构件:在线申报、政务公开、集成办事、咨询交流、办事通知、服务导航、网上审批、监察管理等;
3)网站建设类业务构件:信息发布、网页防篡改、网上调查、论坛、全文检索等;
4)信息交换类业务构件:信息抽取、信息转换、信息加载、信息传输等;
5)信息安全类业务构件:统一用户管理、单点登录、认证授权、访问审计等。
[作者简介]
李可俊(1983-),男,东华大学计算机科学与技术学院,主要研究方向为计算机网络、数据库、软件工程等。