XX软件园中小企业服务云平台设计建设可行性方案.docx
《XX软件园中小企业服务云平台设计建设可行性方案.docx》由会员分享,可在线阅读,更多相关《XX软件园中小企业服务云平台设计建设可行性方案.docx(44页珍藏版)》请在冰豆网上搜索。
![XX软件园中小企业服务云平台设计建设可行性方案.docx](https://file1.bdocx.com/fileroot1/2023-7/20/04006437-6edc-4e89-b104-3a6c801c236c/04006437-6edc-4e89-b104-3a6c801c236c1.gif)
XX软件园中小企业服务云平台设计建设可行性方案
XX软件园中小企业服务云平台设计建设可行性方案
第1章项目概述
1.1云平台建设的目的
目前,XX软件园从事软件与信息服务外包的企业大部分为中小型企业,对共性技术公共服务的需求十分强烈。
在现有公共服务体系的6库12平台上,建设可持续的,满足中小软件企业在软件开发,软件测试、软件验证、系统演示、及其人才培训服务等公共服务需求的云平台是服务外包基地公共服务平台建设的方向,对促进XX和湖南软件产业的发展有积极的推动作用。
1.2云平台建设的意义
建设面向园区中小企业共性需求的公共服务平台,切实帮助广大中小企业加强自主创新、降低经营成本、缩短研发周期、控制技术风险、提升员工素质、拓宽推广渠道,是贯彻落实国务院、省、市政府关于扶持中小企业特别是小微型企业发展的部署,加大对中小企业扶持力度的重要举措。
该平台建设的成果直接有益于广大中小企业,能全方位整合软件园现有公共服务资源,形成覆盖全区的中小企业服务体系,为软件园建设国家级孵化器和中小企业创新孵化平台提供重要技术支撑;促进中小企业共性资源的整合、共享与应用,帮助企业做大做强,优化和完善产业结构,提升区域核心竞争力。
云平台是一种按需提供计算资源的平台模式,通过共享资源池来实现。
云平台使用的云计算技术通过按需分配IT资源和对IT资源使用情况的精确监控和计费,这对于企业的资金节约和计划的有效性都具有重要的意义。
云平台中心建设使得大量IT硬件设备,机房资源及电力资源实现最大化的共享和再利用,既保护了已有的IT投资,同时根据信息化需求动态调整整个系统需要的电力及冷却系统,是落实节能减排方针的典型。
1.2.1云计算技术实现信息化投资的精确量化
因为信息化建设的特殊性,传统的信息化建设由于无法给出精确IT资源使用细节报告,因而使企业对于IT系统建设的精确的投资回报率始终无法得到准确的结果,因此常常在建设规划和预算方面与实际情况产生较大的偏差。
云计算技术通过按需分配IT资源和对IT资源使用情况的精确监控和计费,使得IT规划和IT资金预算得以产生精确的详细使用情况报表。
这对于企业的资金节约和计划的有效性都具有重要的意义。
通过云计算技术使得企业的内部和外部IT系统都采用按需分配和按需申请的方式工作,不但避免了大量的因投资预算偏差产生的浪费,而且由于按需申请和分配方式的采用,使得IT系统的最终用户服务得以专注,因而提高了服务质量。
1.2.2云计算系统实现资源的最大化利用
云计算系统的建设和传统IT系统的建设有所不同,云计算系统可以避免在系统建设之初为了保证业务的持续增长而产生巨大投资,云计算系统的规模可以根据业务增长的需求而动态增加。
另一方面,如果运行在云计算平台上的业务发生调整或变化,云计算系统中的IT资源也可以动态的实现减少和挪作他用,而不是象传统方式一样造成资源的控制和浪费。
1.2.3云计算平台更方便快捷地满足客户的需求
传统的IT模式下,系统都是由用户出资建设并且自行维护和管理并使用的。
在这种模式下,客户需要掌握大量与业务无关的IT技术细节,以便能够有效的使用耗费相当资金建成的IT系统。
在云计算模式下,客户往往只需要一方面提交业务需求给云计算运营中心,另一方面从云计算运营中心得到相应的计算资源或者计算结果,而不用关注云计算系统本身的技术细节,实现按需服务。
另外,在用户愿意的情况下,用户可以自主定制计算环境和计算资源,实现自动化。
1.3云平台技术支撑体系
XX软件园中小企业服务云平台的支撑体系包括桌面虚拟化层、应用虚拟化层、云架构管理平台、云运营管理平台、服务器虚拟化层、基于SAN/NAS的云存储模块、网络模块等。
应用层的各类公共服务功能均基于支撑体系实现。
第2章整体架构
2.1云平台系统架构
围绕软件园中小企业核心需求,包括提供开发环境、评测环境、验证环境、人才服务、园区应用商店等等,跟随中小企业的成长的脚步,逐步建设云服务平台。
如下图所示:
2.2云平台服务架构
系统提供用户申请注册后,通过云平台营运管理系统申请分配各类资源,包括开发环境、开发资源、开发工具集等,如OS、CPU、存储、Database,集成开发环境IDE,第三方构件等。
系统服整体服务流程如下图所示:
第3章平台功能
3.1软件开发云平台介绍
3.1.1开发云平台概述
3.1.1.1云开发的模块构成
3.1.1.2云开发的整体架构
3.1.1.3用户登录申请开发环境服务流程
3.1.1.4用户开发环境提供选择模板
3.1.2云开发平台建设内容
3.1.2.1提供软件开发环境
软件开发环境是指在基本硬件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件。
它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持,存储各种软件工具加工所产生的软件产品或半成品(如源代码、测试数据和各种文档资料等)的软件环境数据库,较完善的软件开发环境主要包括嵌入式操作系统,应用服务器操作系统,客户端操作系统,移动终端操作系统,如比较主流的Linux系统版本、windows系统、Android等等,并可以提供多语言包支持。
多系统的开发环境的实时切换可以通过桌面虚拟化的形式进行实现。
3.1.2.2提供软件开发资源
软件开发资源是开发环境上运行的各种开发类库,工具包等等如GCC、JDK、AndroidSDK,软件开发资源是对工具的集成及用户软件的开发、维护及管理提供统一的支持,按功能可划分为环境信息库、过程控制及消息服务器、环境用户界面三个部分。
环境信息库:
软件开发环境的核心,用以储存与系统开发有关的信息并支持信息的交流与共享。
库中储存两类信息:
一类是开发过程中产生的有关被开发系统的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。
过程控制和消息服务器:
实现过程集成及控制集成的基础。
过程集成是按照具体软件开发过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。
环境用户界面:
包括环境总界面和由它实行统一控制的各环境部件及工具的界面。
统一的、具有一致视感的用户界面是软件开发环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。
由于开发过程的编译需要使用大量的计算资源,同时使用量非常频繁,建议使用客户端直接提供运算资源提供支持,编译器安装在客户端。
开发所需要的其他资源调用、配置管理、代码管理以及开发用SDK统一通过云存贮实现。
3.1.2.3提供软件开发工具集
支持特定过程模型和开发方法的工具,如分析工具、设计工具、编码工具、测试工具、维护工具,支持面向对象方法的OOA工具、OOD工具和OOP工具等;独立于模型和方法的工具,如界面辅助生成工具和文档出版工具;亦可包括管理类工具和针对特定领域的应用类工具。
较常用的软件开发工具包括IDE,如Eclipse、VisualStudio、Jbuilde等,和辅助工具如性能测试工具,如性能测试工具LoadRunner等,和配置管理及版本控制,如SVN、CVS等。
以上各种非编译类软件,使用率高,运算量不大,可设置为标准化软件,使用应用虚拟化的形式统一管理。
3.1.3云开发平台的建设要求
3.1.3.1硬件环境要求
1、足够的带宽;
2、CPU、内存、硬盘空间,要求硬件平台支持,需包括所有64/32/16位CPU和MCU;
3、物理防火墙。
3.1.3.2软件环境要求
1、支持多种主流的操作系统:
WindowsXP、Windows7、liunx等;嵌入式系统DOS、Vxworks、Linux和WindowsCE等;手持设备andorid等;
2、支持多种主流的浏览器:
IE、firefox、oprea、chrome等;
3、支持多种Web应用服务器:
tomcat、apache等;
4、提供并支持多种数据库:
SQLserver、Mysql、Oracle等;
5、提供AndroidSDK开发包。
6、支持和提供JavaJDK、JDBC、XML。
7、提供配置管理如SVN、UML。
8、Android、Eclipse+ADT开发环境。
9、支持企业级商用系统应用部署。
3.2软件测试云平台介绍
云测试平台与云开发平台的虚拟化建议一致,测试环境和开发环境无本质区别,可共用。
测试平台所需的常用工具与开发平台一样,通常使用应用虚拟化实现。
Loaderrunner等占用大量运算资源的常用测试软件,与开发平台编译类软件一样,安装在客户端,使用客户端资源,不建议虚拟化实现。
3.2.1云测试平台概述
3.2.1.1云测试的模块构成
3.2.1.2云测试的业务流程
3.2.1.3云测试平台部署实现架构
3.2.1.4云测试的业务运营流程
3.2.2云测试平台建设内容
3.2.2.1提供软件测试环境
软件测试环境是指在基本硬件的基础上,为支持系统软件和应用软件的工程化测试而使用的一组软件。
它由软件工具和环境集成机制构成,前者用以支持软件测试的相关过程、活动和任务,后者为工具集成和软件的测试、维护及管理提供统一的支持,存储各种软件工具加工所产生的软件产品或半成品(如测试源代码、测试数据和各种文档资料等)的软件环境数据库,较完善的软件测试环境主要包括嵌入式操作系统,应用服务器操作系统,客户端操作系统,移动终端操作系统,如比较主流LINUX系统版本(Redhat、CentOS、Suse、Debian、ubuntu),windows系统、Android等等,并可以是多语言包支持。
多系统的测试环境的实时切换可以通过桌面虚拟化的形式进行实现。
3.2.2.2提供软件测试资源
软件测试资源是测试环境上运行的各种测试类库,工具包等等如GCC、JDK、AndroidSDK,软件测试资源是对工具的集成及用户软件的测试管理提供统一的支持,按功能可划分为环境信息库、过程控制及消息服务器。
环境信息库:
是软件测试环境的核心,用以储存与系统测试有关的信息并支持信息的交流与共享。
库中储存两类信息:
一类是测试过程中产生的有关被测试系统的信息,如测试分析文档、测试设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。
过程控制和消息服务器:
是实现过程集成及控制集成的基础。
过程集成是按照具体软件测试过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。
3.2.2.3提供软件测试工具集
支持特定过程模型和测试方法的工具,如分析工具、设计工具、编码工具、测试工具、维护工具。
较常用的软件测试工具包括LoadRunner、QTP等,和配置管理及版本控制,如SVN、CVS等。
以上各种非编译类软件,使用率高,运算量不大,可设置为标准化软件,使用应用虚拟化的形式统一管理。
3.2.3云测试平台的建设要求
3.2.3.1硬件环境要求
1、足够的带宽;
2、CPU、内存、硬盘空间,要求硬件平台支持,需包括所有64/32/16位CPU和MCU;
3、物理防火墙。
3.2.3.2软件环境要求
1、支持多种主流的操作系统:
WindowsXP、Windows7、liunx等;嵌入式系统DOS、Vxworks、Linux和WindowsCE等;手持设备andorid等;
2、支持多种主流的浏览器:
IE、firefox、oprea、chrome等;
3、支持多种Web应用服务器:
tomcat、apache等;
4、提供并支持多种数据库:
SQLserver、Mysql、Oracle等;
5、提供并支持多种测试工具:
loaderrunner、QTP等;
6、提供并支持多种测试用例管理工具:
TestManager、wiki、Testlink等;
7、提供并支持多种测试过程管理工具:
T-PlanProfessional、QESuite等。
3.2.4云测试平台服务项目
3.2.4.1功能自动化测试
使用云测试平台提供的自动化测试用具,自行配置测试脚本和测试环境,使用测试用例管理工具对用例进行管理,并通过测试过程管理工具管理执行过程,以达到功能自动化测试的目的。
3.2.4.2性能测试
使用使用云测试平台提供的loaderrunner等性能测试工具,通过配置测试脚本和测试环境,并完成性能测试。
3.2.4.3可靠性测试
充分利用云测试平台提供的带宽和运算环境,通过配置测试脚本和测试环境,对被测软件进行破坏性的压力和长时间测试,考验软件逻辑的可靠性。
3.2.4.4兼容性测试
使用云测试平台提供的各类操作系统、web服务器、数据库、浏览器等,通过不同配置,检验被测软件的各类兼容性。
3.3软件验证云平台介绍
3.3.1验证云平台概述
验证服务云平台提供各类开发平台、操作系统和运行环境给软件开发者,验证软件在各类平台、操作系统和运行环境中软件的兼容性和稳定性。
验证服务云平台的虚拟化与开发云平台的开发环境虚拟化建议、开发资源虚拟化建议以及开发工具虚拟化建议一致。
3.3.2云验证平台建设内容
3.3.2.1提供软件验证环境
软件验证环境是指在基本硬件的基础上,为支持系统软件和应用软件的工程化验证和维护而使用的一组软件。
它由软件工具和环境集成机制构成,前者用以支持软件验证的相关过程、活动和任务,后者为工具集成和软件的验证、维护及管理提供统一的支持,存储各种软件工具加工所产生的软件产品或半成品(如源代码、测试数据和各种文档资料等)的软件环境数据库,较完善的软件验证环境主要包括嵌入式操作系统,应用服务器操作系统,客户端操作系统,移动终端操作系统,如比较主流的Linux系统版本(Redhat、CentOS、Suse、Debian、ubuntu),windows系统、Android等等,并可以是多语言包支持。
多系统的验证环境的实时切换可以通过桌面虚拟化的形式进行实现。
3.3.2.2提供软件验证资源
软件验证资源是验证环境上运行的各种验证类库,工具包等等如GCC、JDK、AndroidSDK,软件验证资源是对工具的集成及用户软件的验证、维护及管理提供统一的支持,按功能可划分为环境信息库、过程控制及消息服务器、环境用户界面三个部分。
环境信息库:
软件验证环境的核心,用以储存与系统验证有关的信息并支持信息的交流与共享。
库中储存两类信息:
一类是验证过程中产生的有关被验证系统的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。
过程控制和消息服务器:
实现过程集成及控制集成的基础。
过程集成是按照具体软件验证过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。
环境用户界面:
包括环境总界面和由它实行统一控制的各环境部件及工具的界面。
统一的、具有一致视感的用户界面是软件验证环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。
由于验证过程的编译需要使用大量的计算资源,同时使用量非常频繁,建议使用客户端直接提供运算资源提供支持,编译器安装在客户端。
验证所需要的其他资源调用、配置管理、代码管理以及验证用SDK统一通过云存贮实现。
3.3.3云验证平台的建设要求
3.3.3.1硬件环境要求
1、足够的带宽;
2、CPU、内存、硬盘空间,要求硬件平台支持,需包括所有64/32/16位CPU和MCU;
3、物理防火墙。
3.3.3.2软件环境要求
1、支持多种主流的操作系统:
WindowsXP、Windows7、Liunx等;嵌入式系统DOS、Vxworks、Linux和WindowsCE等;手持设备andorid等;
2、支持多种主流的浏览器:
IE、firefox、oprea、chrome等;
3、支持多种Web应用服务器:
tomcat、apache等;
4、提供并支持多种数据库:
SQLserver、Mysql、Oracle等;
5、提供AndroidSDK开发包。
6、支持和提供JavaJDK、JDBC、XML。
7、提供配置管理如SVN、UML。
8、Android、Eclipse+ADT验证环境。
9、支持企业级商用系统应用部署。
3.4人才服务云平台
3.4.1人才服务云平台概述
建立一套完整的面向中小企业人才需要的实训平台,通过在线的人才服务平台,可以根据学员培训内容的需要开通实训环境,通过提供相应的环境、工具和资源以最大化的满足学员的实际需要,提高学员实际动手能力和适应能力。
学员、企业和培训机构可以很方便的査看和了解到学员的实际学习进度和培训效果,通过完整的人才测评服务平台可以为企业更加准确的提供和筛选符合企业实际需要的对口人才。
云计算平台可以迅速定制出企业所需的各种培训实验环境,包括培训用服务器、在线Lab环境、多媒体视频、课件等等。
这些环境只在企业需要的时候按需创建。
在项目结束时,环境会被自动撤除。
每个企业可以随时使用虚拟软件园提供的培训服务。
这样大大节省了软件企业的培训费用,并且降低了他们管理IT基础设施上面的人力成本。
每个企业可以随时使用虚拟软件园提供的培训服务。
这样大大节省了软件企业的培训费用,并且降低了他们管理IT基础设施上面的人力成本。
3.4.1.1人才服务流程
3.4.1.2人才服务环境服务申请
3.4.1.3人才培训运营拓扑
3.4.1.4人才培训用户使用流程
3.4.1.5人才培训流媒体教学架构
3.4.1.6人才培训流媒体教学网络拓扑
3.4.1.7人才培训开发实训
3.4.2人才服务云平台建设内容
3.4.2.1提供人才培训网络流媒体学习环境
流媒体(StreamingMedia),指的是在网络中使用流式传输技术的连续时基媒体,即在因特网上以数据流的方式实时发布音、视频多媒体内容的媒体,音频、视频、动画或者其他形式的多媒体文件都属于流媒体之列。
流媒体是在流媒体技术支持下,把连续的影像和声音信息经过压缩处理后放到网络服务器上,让浏览者一边下载一边观看、收听,而不需要等到整个多媒体文件下载完成就可以即时观看的多媒体文件。
我们建议网络流媒体学习环境整体框架分为四层:
终端、前置服务层、应用管理层、后台数据库。
终端应能提供实现信息采集、信息服务与系统管理的一项或多项功能的组合,应尽量减少客户端开发的工作量,且尽量方便客户的使用。
我们的系统设计将采用浏览器作为统一的客户端,以确保终端的零维护。
前置服务层包含一台或多台前置流媒体服务器,主要起到对流媒体数据的缓存作用,这样既可以加快本地用户的访问速度,又可以减少对网络带宽的占用。
前置服务器在平台管理服务器的管理下,自动同步流媒体内容,保持实时更新。
应用管理层包含了本系统的应用逻辑以及各种业务服务逻辑。
所有外界对本系统的访问与操作都应通过应用管理层。
即应提供:
接收由不同数据来源提供的信息,完成异构数据转换与自动信息加载;统一的服务平台,接收不同业务请求,并可通过应用功能选择模块提供个性化的服务;其他业务逻辑机制与功能。
后台数据库是培训平台的核心资源,在设计时应合理组织数据,优化存储结构,并确保其安全与可靠性。
3.4.2.2提供软件开发实训环境
软件开发实训环境是指在基本硬件的基础上,为支持系统软件和应用软件的工程化开发和维护而使用的一组软件。
它由软件工具和环境集成机制构成,前者用以支持软件开发的相关过程、活动和任务,后者为工具集成和软件的开发、维护及管理提供统一的支持,存储各种软件工具加工所产生的软件产品或半成品(如源代码、测试数据和各种文档资料等)的软件环境数据库,较完善的软件开发实训环境主要包括嵌入式操作系统,应用服务器操作系统,客户端操作系统,移动终端操作系统,如比较主流Linux系统版本(Redhat、CentOS、Suse、Debian、ubuntu),windows系统、Android等等,并可以是多语言包支持。
多系统的开发实训环境的实时切换可以通过桌面虚拟化的形式进行实现。
3.4.2.3提供软件测试实训环境
软件测试实训环境是指在基本硬件的基础上,为支持系统软件和应用软件的工程化测试而使用的一组软件。
它由软件工具和环境集成机制构成,前者用以支持软件测试的相关过程、活动和任务,后者为工具集成和软件的测试、维护及管理提供统一的支持,存储各种软件工具加工所产生的软件产品或半成品(如测试源代码、测试数据和各种文档资料等)的软件环境数据库,较完善的软件测试实训环境主要包括嵌入式操作系统,应用服务器操作系统,客户端操作系统,移动终端操作系统,如比较主流Linux系统版本(Redhat、CentOS、Suse、Debian、ubuntu),windows系统、Android等等,并可以是多语言包支持。
多系统的测试实训环境的实时切换可以通过桌面虚拟化的形式进行实现。
3.4.2.4提供软件开发资源
软件开发资源是开发实训环境上运行的各种开发类库,工具包等等如GCC、JDK、AndroidSDK,软件开发资源是对工具的集成及用户软件的开发、维护及管理提供统一的支持,按功能可划分为环境信息库、过程控制及消息服务器、环境用户界面三个部分。
环境信息库:
是软件开发实训环境的核心,用以储存与系统开发有关的信息并支持信息的交流与共享。
库中储存两类信息:
一类是开发过程中产生的有关被开发系统的信息,如分析文档、设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、过程模型、可复用构件等。
过程控制和消息服务器:
是实现过程集成及控制集成的基础。
过程集成是按照具体软件开发过程的要求进行工具的选择与组合,控制集成并行工具之间的通信和协同工作。
环境用户界面:
包括环境总界面和由它实行统一控制的各环境部件及工具的界面。
统一的、具有一致视感的用户界面是软件开发实训环境的重要特征,是充分发挥环境的优越性、高效地使用工具并减轻用户的学习负担的保证。
由于开发过程的编译需要使用大量的计算资源,同时使用量非常频繁,建议使用客户端直接提供运算资源提供支持,编译器安装在客户端。
开发所需要的其他资源调用、配置管理、代码管理以及开发用SDK统一通过云存贮实现。
3.4.2.5提供软件开发工具集
支持特定过程模型和开发方法的工具,如分析工具、设计工具、编码工具、测试工具、维护工具,支持面向对象方法的OOA工具、OOD工具和OOP工具等;独立于模型和方法的工具,如界面辅助生成工具和文档出版工具;亦可包括管理类工具和针对特定领域的应用类工具。
较常用的软件开发工具包括IDE,如Eclipse、VisualStudio、Jbuilde等,和辅助工具如性能测试工具,如性能测试工具LoadRunner等,和配置管理及版本控制,如SVN、CVS等。
以上各种非编译类软件,使用率高,运算量不大,可设置为标准化软件,使用应用虚拟化的形式统一管理。
3.4.2.6提供软件测试资源
软件测试资源是测试环境上运行的各种测试类库,工具包等等如GCC、JDK、AndroidSDK,软件测试资源是对工具的集成及用户软件的测试管理提供统一的支持,按功能可划分为环境信息库、过程控制及消息服务器。
环境信息库:
是软件测试实训环境的核心,用以储存与系统测试有关的信息并支持信息的交流与共享。
库中储存两类信息:
一类是测试过程中产生的有关被测试系统的信息,如测试分析文档、测试设计文档、测试报告等;另一类是环境提供的支持信息,如文档模板、系统配置、