在线应用软件的构建平台、系统和方法

文档序号:6428694阅读:202来源:国知局
专利名称:在线应用软件的构建平台、系统和方法
技术领域
本发明涉及模型驱动、构件技术和云计算技术领域,尤其涉及在线应用软件的构建平台、系统和方法。
背景技术
模型是对复杂问题的一种简化和抽象,它将复杂系统的特征、行为和规律通过简单明了的形式表达出来。模型驱动构架(Model Driven Architecture,MDA)是由OMG定义的一个软件开发框架。在MDA中,软件开发过程是由对软件系统的建模行为驱动的。模型驱动架构主要为了解决软件的复杂性和变更能力。构件技术是指通过组装一系列可复用的软件构件来构造软件系统的软件技术。通过运用构件技术,开发人员可以有效的进行软件复用,减少重复开发,缩短软件的开发时间,降低软件的开发成本。构件技术在更高的层次对对象和业务逻辑进行抽象和封装,实现比类的粒度更大的复用。云计算概念是由Google提出的一种网络应用模式。狭义云计算是指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的资源;广义云计算是指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需的服务。这种服务可以是 IT和软件、互联网相关的,也可以是任意其他的服务。云计算的表现形式多种多样,云计算的主要服务形式有软件即服务(Software as a Service, SaaS),平台即服务(Platform as a Service, PaaS),基石出设施艮口月艮务(Infrastructure as a Service, IaaS)。企业信息化建设的方式,一是购买软件产品,在企业内部的运行环境中安装部署, 提供给企业员工使用。二是通过软件开发商为企业定制开发应用软件,在企业内部的运行环境中安装部署,提供给员工使用。三是租用在线应用服务。该方式的运行环境由在线应用服务提供者负责搭建和维护,使用者只需按月支付租用费用,即可通过互联网使用应用系统。企业购买软件产品或者通过软件开发商定制开发方式的共同缺点是企业信息化成本高,因为企业不仅要购买应用软件,还需要自己购买服务器、网络设备等,在企业内部搭建运行环境,并且要雇用专业的运维人员来管理和维护运行环境,可能还需要花钱来购买应用软件的升级、维护服务。企业通过软件开发商定制开发方式的缺点是开发周期有可能比较长,应用软件的质量可能需要一段时间才能稳定下来。企业租用在线应用服务方式的缺点,现有的在线应用服务提供商提供的多是客户关系管理类和进销存类管理软件,种类较为集中,无法满足企业更多的信息化需求。企业应用软件的架构从C/S演变为B/S,从两层结构,演变为3层,直至现在的N 层结构,从单机应用方式演变为局域网应用方式,直至互联网应用方式,从单机部署演变为多机部署,从集中计算演变为分布式计算。为了更有效的提高应用软件的质量、缩短项目周期、提高开发效率、满足应需而变的要求,构建应用软件要遵守的规范越来越多,使用到的技术、框架和开源组件也越来越多,大大地增加了应用软件的复杂度,应用软件的运维保障越来越困难。而随着需求的变化、复杂度的增加,应用软件的设计开发成为只有专业的软
5件开发商或集成商才能完成的工作,而企业则需要为使用应用软件购买更多的网络和服务器设备、中间件服务器,需要雇用更多的IT专业人员来维护应用软件及其所依赖的网络环境、服务器环境等。目前,应用软件开发的复杂度以及对应用软件的运维保障制约了企业的信息化速度。

发明内容
本发明要解决的一个技术问题是提供一种在线应用软件平台,能够自动生成应用软件并对应用软件进行维护。一种应用软件构建平台,包括应用软件模板管理单元、软件提供商管理单元、软件使用者管理单元、部署管理单元、系统管理单元;其中,所述应用软件模板管理单元用于存储并管理应用软件模板、部署文件包和升级补丁包;提供应用软件的功能说明、演示文件、在线试用环境的访问地址;所述软件提供商管理单元用于管理软件提供商的信息和上线运营的应用软件列表,处理应用软件上线运营申请;所述软件使用者管理单元用于管理软件使用者的资料和软件使用者已构建的应用软件的列表,并处理应用软件使用申请;所述部署管理单元用于根据软件使用者输入的信息、软件使用者选择的应用软件模板,以及所述应用软件模板所绑定的虚拟机模板,在基于云计算技术搭建的运行环境中,自动构建应用软件,并部署为可独立使用的在线应用系统;当所述在线应用系统有升级补丁时,通知用户,在得到用户确认后,升级所述在线应用系统。所述系统管理单元用于对使用所述在线应用软件平台的用户提供认证管理和访问管理功能,所述用户包括软件运营商、软件提供商和软件使用者。根据本发明平台的一个实施例,每一种应用软件模板对应一套可部署的文件包、 在线试用环境和演示文件;其中,所述在线试用环境和演示文件用于说明应用软件的功能和使用方式,用户可以通过浏览器查看应用软件的功能和使用方式;所述可部署的文件包是实现了业务功能的各类文件的集合,可被部署程序部署到运行环境中。根据本发明平台的一个实施例,所述部署管理单元根据上线运营申请单的内容生成虚拟机模板,将所述虚拟机模板与应用软件模板绑定。根据本发明平台的一个实施例,所述部署管理单元根据上线运营申请单的内容生成虚拟机模板具体为所述部署管理单元根据上线运营申请单,获取虚拟机的创建要求,创建被指定了操作系统和版本的虚拟机,配置虚拟机可使用的资源,在创建的虚拟机上安装所述上线运营申请单中指定的软件,将创建的虚拟机与所述上线运营申请单中指定的软件提供商、指定的应用软件绑定,使用被指定的软件应用模板中的部署程序,在创建的虚拟机上部署应用软件,生成虚拟机模板;所述上线运营申请单中的项目包括软件名称、虚拟机的硬件配置、虚拟机运行的操作系统、虚拟机中运行所需安装的软件;其中所述虚拟机的硬件配置包括处理器、内存、存储空间。根据本发明平台的一个实施例,所述应用软件构建平台部署于云计算环境,所述云计算环境包括=DMZ区的www服务器、服务器区的服务器和磁盘阵列;其中,所述服务器区的服务器可被虚拟为一个或一个以上独立的虚拟机,每个虚拟机能够作为逻辑服务器运行,所述逻辑服务器可被配置不同的网络地址,安装中间件服务器,部署应用软件;DMZ区的www服务器将来自互联网的请求根据配置的规则,跳转到所述虚拟机,由所述虚拟机提供的服务完成所述请求的处理和响应。根据本发明平台的一个实施例,所述云计算环境还包括内网访问区;所述内网访问区的设备可访问所述服务器区的服务器,通过交互界面管理物理设备和虚拟机。一种在线应用软件系统,包括上述的应用软件构建平台和应用软件运行平台,所述应用软件构建平台对软件使用者提供向导式的图形化提示界面,所述应用软件构建平台根据所述软件使用者输入的信息,按照应用软件模板自动地构建应用软件,并将所述应用软件的访问地址发送给所述软件使用者,所述软件使用者通过访问所述访问地址,使用所述应用软件,并可以对所述应用软件进行管理;所述应用软件运行平台为所述应用软件提供运行环境,并监控所述应用软件的服务质量,当所述应用软件的服务质量出现异常时,报警并对故障进行管理。用户可以通过浏览器访问所述应用软件构建平台和应用软件运行平台。本发明平台在构建软件时,使用应用软件模板和与其对应的虚拟机模板,并采用云计算技术,大大降低了开发应用软件的复杂度,并能够降低信息化建设的和维护的成本。本发明要解决的另一个技术问题是提供一种应用软件的构建方法,能够基于在线应用软件平台自动生成应用软件,并对应用软件进行维护。一种应用软件的构建方法,包括在线应用软件平台对软件使用者提供向导式的图形化提示信息界面;根据所述软件使用者输入的信息,按照应用软件模板自动地构建应用软件;将所述应用软件的访问地址发送给软件使用者,创建所述应用软件的运行环境; 通过软件使用者访问所述访问地址实现软件使用者使用所述应用软件、对所述应用软件进
行管理。根据本发明方法的一个实施例,软件提供商在所述在线应用软件平台上进行注册,通过帐号和密码登录到所述在线应用软件平台;所述在线应用软件平台对软件提供商提供软件商店,所述软件提供商进入所述软件商店,填写上线运营申请单并提交;如果所述软件提供商所提供的应用软件通过规范审查、部署测试和功能测试,构建所述应用软件的虚拟机模板;所述在线应用软件平台使用所述虚拟机模板,创建在线软件的试用环境,发布所述应用软件到在线试用区,供软件使用者在线试用,并发布新应用软件的上线运营通知。根据本发明方法的一个实施例,所述构建所述应用软件的虚拟机模板具体为根据上线运营申请单的内容,生成虚拟机模板,完成所述应用软件模板与所述虚拟机模板的绑定;其中,生成虚拟机模板具体为根据上线运营申请单获取虚拟机的创建要求,创建被指定了操作系统、版本的虚拟机,配置虚拟机的可使用资源,在创建的虚拟机上安装所述上线运营申请单中指定的软件,将创建的虚拟机与所述上线运营申请单中指定的软件提供商、指定的应用软件绑定,使用指定的软件应用模板中的部署程序,在创建的虚拟机上部署应用软件,生成虚拟机模板;所述上线运营申请单中的项目包括软件名称、虚拟机的硬件配置、虚拟机运行的操作系统、虚拟机中运行所需安装的软件;其中所述虚拟机的硬件配置包括处理器、内存、存储空间。根据本发明方法的一个实施例,软件使用者登录到所述在线应用软件平台,填写在线应用软件使用申请单并提交;所述在线应用软件平台为所述软件使用者所要使用的应用软件指定服务器,分配网络地址,调用自动部署程序,使用绑定的虚拟机模板,在运行平台上创建虚拟机,更改虚拟机的网络地址、启动虚拟机,为使用者在应用软件中创建特定的管理员用户,向软件使用者发送在线应用软件的访问地址。根据本发明方法的一个实施例,企业用户登录到所述在线应用软件平台,选择行业、应用软件类型,确定应用软件模板;所述企业用户使用选定的应用软件模板,构建企业的应用软件,并配置组织结构、人员、流程、访问控制数据。根据本发明方法的一个实施例,企业用户登录到所述在线应用软件平台,查看本企业应用软件列表,对该企业的应用软件进行管理,包括启用、删除企业应用软件,并管理该企业的组织结构、人员、流程、访问控制数据。根据本发明方法的一个实施例,用户通过浏览器使用所述应用软件;所述应用软件基于云计算部署运行。本发明方法在构建软件时,使用应用软件模板和与其对应的虚拟机模板,并采用云计算技术,大大降低了开发应用软件的复杂度,并能够降低信息化建设的和维护的成本。


为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。图1为本发明一个实施例的在线应用软件平台的结构示意图;图2为本发明一个实施例的在线应用软件平台部署的硬件示意图;图3为根据本发明的应用软件构建方法的一个实施例的流程图;图4为根据本发明的软件运营商发布软件的实施例的流程图;图5为根据本发明的软件使用者生成应用软件的实施例的流程图;图6为根据本发明的生成虚拟机模板的实施例的流程图;图7为根据本发明的企业用户生成应用软件的实施例的流程图;图8为根据本发明的企业用户管理应用软件的实施例的流程图。
具体实施例方式下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。同一行业内不同的中小型企业对信息化的需求同质化程度高于大型企业,差异化更多的是体现在组织结构、业务流程、具体的业务规则及企业形象方面,而在抽象而成的业务模型层面,没有本质上的不同。例如销售型的企业,抽象的业务模式包括客户、订单、商品、库存管理这几个部分,组成业务模型的业务对象及对象之间的关系,以及业务对象的管理功能,对于不同的销售型企业来讲,基本上是一致的,而不同的是,不同的企业有不一样的组织机构,有不同的客户,销售的商品可能不同,相同的商品可能销售价格或策略不同,订单的处理流程有所不同,而对于这些不同,可以在既定的业务模型之上,通过图形化的流程建模、界面化的信息配置管理等方式来满足不同企业的差异化需求。以云计算技术和互联网技术为基础,搭建构建和运行中小企业应用软件的云环境。企业应用软件提供商在云环境上部署可构建中小企业应用软件的构建平台O^aaS的一种应用)。构建平台可以看作成一个软件工厂,可根据中小企业的需要通过不同的生产线, 生产出满足中小企业需要的应用软件,生产出的应用软件,可自动部署到云环境中。应用软件的使用者使用浏览器,通过互联网访问指定的域名即可使用软件的相关功能。而运行在云环境中的企业应用软件,以及构成运行环境的网络、服务器、操作系统、中间件等,则是由专业的运维人员进行统一的运维管理。图1为本发明一个实施例的在线应用软件平台的结构示意图。如图1所示,在线应用软件系统ι包括应用软件构建平台11和应用软件运行平台12,应用软件构建平台12 可以对软件使用者提供向导式的图形化提示界面,应用软件构建平台11根据输入的信息, 按照应用软件模板自动地构建应用软件,并将应用软件的访问地址发送给软件使用者,软件使用者通过访问地址使用应用软件,并可以对应用软件进行管理;应用软件运行平台12
为应用软件提供运行环境,为应用软件A 121、应用软件B 122......应用软件η 12η,提供
运行环境,并监控应用软件的服务质量,当应用软件的服务质量出现异常时,报警并对故障进行管理。如图1所示,应用软件构建平台11包括应用软件模板管理单元110、软件提供商管理单元111、软件使用者管理单元112、部署管理单元113、系统管理单元114 ;应用软件模板管理单元110用于管理应用软件模板,以及部署文件包和升级补丁包;应用软件模板管理单元110管理应用软件的功能说明、演示文件、在线试用环境的访问地址;软件提供商管理单元111用于管理软件提供商的信息和上线运营的应用软件列表,处理应用软件上线运营申请;软件使用者管理单元112用于管理软件使用者的资料和软件使用者已构建的应用软件的列表,并处理应用软件使用申请;部署管理单元113用于根据软件使用者输入信息、软件使用者选择的应用软件模板,以及应用软件模板所绑定的虚拟机模板,在基于云计算技术搭建的运行环境中,自动构建应用软件,并部署为可独立使用的在线应用系统;当在线应用系统有升级补丁时,通知用户,在得到用户确认后,升级在线应用系统。系统管理单元114用于对使用在线应用软件平台的用户提供认证管理和访问管理功能,用户包括软件运营商、软件提供商和软件使用者。虚拟层13中包括虚拟机1 131、虚拟机2 132......虚拟机η 133,应用软件构建
平台11和应用软件运行平台12运行于虚拟层13上。应用软件模板按照行业和应用软件类型分类,抽象成为业务模型;应用软件模板对应一套可部署的文件包、在线试用环境和演示文件;在线试用环境和演示文件用于说明应用软件的功能和使用方式;可部署的文件包是实现了业务功能的各类文件的集合,可被部署程序部署到运行环境中。部署管理单元113根据上线运营申请单,获取虚拟机的创建要求,创建被指定了操作系统和版本的虚拟机,配置虚拟机可使用的资源,在创建的虚拟机上安装上线运营申请单中指定的软件,将创建的虚拟机与所述上线运营申请单中指定的软件提供商、指定的应用软件绑定,使用被指定的软件应用模板中的部署程序,在创建的虚拟机上部署应用软件,生成虚拟机模板;将虚拟机模板与应用软件模板绑定。表1为在线应用软件上线运营申请单的一个例子
权利要求
1.一种应用软件构建平台,其特征在于,包括应用软件模板管理单元、软件提供商管理单元、软件使用者管理单元、部署管理单元、 系统管理单元;其中,所述应用软件模板管理单元用于存储并管理应用软件模板、部署文件包和升级补丁包;提供应用软件的功能说明、演示文件、在线试用环境的访问地址;所述软件提供商管理单元用于管理软件提供商的信息和上线运营的应用软件列表,处理应用软件上线运营申请;所述软件使用者管理单元用于管理软件使用者的资料和软件使用者已构建的应用软件的列表,并处理应用软件使用申请;所述部署管理单元用于根据软件使用者输入的信息、软件使用者选择的应用软件模板,以及所述应用软件模板所绑定的虚拟机模板,在基于云计算技术搭建的运行环境中,自动构建应用软件,并部署为可独立使用的在线应用系统;当所述在线应用系统有升级补丁时,通知用户,在得到用户确认后,升级所述在线应用系统;所述系统管理单元用于对使用所述在线应用软件平台的用户提供认证管理和访问管理功能,所述用户包括软件运营商、软件提供商和软件使用者。
2.如权利要求1所述的平台,其特征在于每一种应用软件模板对应一套可部署的文件包、在线试用环境和演示文件;其中,所述在线试用环境和演示文件用于说明应用软件的功能和使用方式,用户可以通过浏览器查看应用软件的功能和使用方式;所述可部署的文件包是实现了业务功能的各类文件的集合,可被部署程序部署到运行环境中。
3.如权利要求1所述的平台,其特征在于所述部署管理单元根据上线运营申请单的内容生成虚拟机模板,将所述虚拟机模板与应用软件模板绑定。
4.根据权利要求3所述的平台,其特征在于,所述部署管理单元根据上线运营申请单的内容生成虚拟机模板具体为所述部署管理单元根据上线运营申请单,获取虚拟机的创建要求,创建被指定了操作系统和版本的虚拟机,配置虚拟机可使用的资源,在创建的虚拟机上安装所述上线运营申请单中指定的软件,将创建的虚拟机与所述上线运营申请单中指定的软件提供商、指定的应用软件绑定,使用被指定的软件应用模板中的部署程序,在创建的虚拟机上部署应用软件,生成虚拟机模板;所述上线运营申请单中的项目包括软件名称、虚拟机的硬件配置、虚拟机运行的操作系统、虚拟机中运行所需安装的软件;其中所述虚拟机的硬件配置包括处理器、内存、存储空间。
5.如权利要求1至4中任一项所述的平台,其特征在于所述应用软件构建平台部署于云计算环境,所述云计算环境包括DMZ区的www服务器、服务器区的服务器和磁盘阵列;其中,所述服务器区的服务器可被虚拟为一个或一个以上独立的虚拟机,每个虚拟机能够作为逻辑服务器运行,所述逻辑服务器可被配置不同的网络地址,安装中间件服务器, 部署应用软件;DMZ区的www服务器将来自互联网的请求根据配置的规则,跳转到所述虚拟机,由所述虚拟机提供的服务完成所述请求的处理和响应。
6.根据权利要求5所述的平台,其特征在于,所述云计算环境还包括内网访问区;所述内网访问区的设备可访问所述服务器区的服务器,通过交互界面管理物理设备和虚拟机。
7.—种在线应用软件系统,其特征在于包括如权利要求1-6中任意一项所述的应用软件构建平台和应用软件运行平台,所述应用软件构建平台对软件使用者提供向导式的图形化提示界面,所述应用软件构建平台根据所述软件使用者输入的信息,按照应用软件模板自动地构建应用软件,并将所述应用软件的访问地址发送给所述软件使用者,所述软件使用者通过访问所述访问地址, 使用所述应用软件,并可以对所述应用软件进行管理;所述应用软件运行平台为所述应用软件提供运行环境,并监控所述应用软件的服务质量,当所述应用软件的服务质量出现异常时,报警并对故障进行管理。
8.如权利要求7所述的系统,其特征在于用户可以通过浏览器访问所述应用软件构建平台和应用软件运行平台。
9.一种应用软件的构建方法,其特征在于,包括在线应用软件平台对软件使用者提供向导式的图形化提示信息界面; 根据所述软件使用者输入的信息,按照应用软件模板自动地构建应用软件; 将所述应用软件的访问地址发送给软件使用者,创建所述应用软件的运行环境; 通过软件使用者访问所述访问地址实现软件使用者使用所述应用软件、对所述应用软件进行管理。
10.如权利要求9所述的方法,其特征在于,还包括软件提供商在所述在线应用软件平台上进行注册,通过帐号和密码登录到所述在线应用软件平台;所述在线应用软件平台对软件提供商提供软件商店,所述软件提供商进入所述软件商店,填写上线运营申请单并提交;如果所述软件提供商所提供的应用软件通过规范审查、部署测试和功能测试,构建所述应用软件的虚拟机模板;所述在线应用软件平台使用所述虚拟机模板,创建在线软件的试用环境,发布所述应用软件到在线试用区,供软件使用者在线试用,并发布新应用软件的上线运营通知。
11.如权利要求10所述的方法,其特征在于所述构建所述应用软件的虚拟机模板具体为根据上线运营申请单的内容,生成虚拟机模板,完成所述应用软件模板与所述虚拟机模板的绑定;其中,生成虚拟机模板具体为根据上线运营申请单获取虚拟机的创建要求,创建被指定了操作系统、版本的虚拟机,配置虚拟机的可使用资源,在创建的虚拟机上安装所述上线运营申请单中指定的软件,将创建的虚拟机与所述上线运营申请单中指定的软件提供商、 指定的应用软件绑定,使用指定的软件应用模板中的部署程序,在创建的虚拟机上部署应用软件,生成虚拟机模板;所述上线运营申请单中的项目包括软件名称、虚拟机的硬件配置、虚拟机运行的操作系统、虚拟机中运行所需安装的软件;其中所述虚拟机的硬件配置包括处理器、内存、存储空间。
12.如权利要求9所述的方法,其特征在于,还包括软件使用者登录到所述在线应用软件平台,填写在线应用软件使用申请单并提交;所述在线应用软件平台为所述软件使用者所要使用的应用软件指定服务器,分配网络地址,调用自动部署程序,使用绑定的虚拟机模板,在运行平台上创建虚拟机,更改虚拟机的网络地址、启动虚拟机,为使用者在应用软件中创建特定的管理员用户,向软件使用者发送在线应用软件的访问地址。
13.如权利要求9所述的方法,其特征在于企业用户登录到所述在线应用软件平台, 选择行业、应用软件类型,确定应用软件模板;所述企业用户使用选定的应用软件模板,构建企业的应用软件,并配置组织结构、人员、流程、访问控制数据。
14.如权利要求13所述的方法,其特征在于企业用户登录到所述在线应用软件平台, 查看本企业应用软件列表,对该企业的应用软件进行管理,包括启用、删除企业应用软件, 并管理该企业的组织结构、人员、流程、访问控制数据。
15.如权利要求9至14中任一项所述的方法,其特征在于用户通过浏览器使用所述应用软件;所述应用软件基于云计算部署运行。
全文摘要
本发明公开了一种应用软件构建平台以及应用软件的构建方法,涉及模型驱动、构件技术和云计算技术领域,所述应用软件构建平台对软件使用者提供向导式的图形化提示界面,根据输入的信息,按照应用软件模板自动地构建应用软件,并将所述应用软件的访问地址发送给所述软件使用者,所述软件使用者通过所述访问地址使用所述应用软件,并可以对所述应用软件进行管理。本发明公开的平台和方法大大降低了开发应用软件的复杂度,能够降低信息化建设和维护的成本。
文档编号G06F9/445GK102236554SQ201110199600
公开日2011年11月9日 申请日期2011年7月18日 优先权日2011年7月18日
发明者周春, 周翔, 崔传建, 张 浩, 李天杰, 李毅松, 栗宁, 王伟, 王继业, 郝金波 申请人:北京国电通网络技术有限公司, 国家电网公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1