云中开发微软开发测试云解决方案白皮书 V1117.docx
- 文档编号:10494371
- 上传时间:2023-02-14
- 格式:DOCX
- 页数:18
- 大小:1.44MB
云中开发微软开发测试云解决方案白皮书 V1117.docx
《云中开发微软开发测试云解决方案白皮书 V1117.docx》由会员分享,可在线阅读,更多相关《云中开发微软开发测试云解决方案白皮书 V1117.docx(18页珍藏版)》请在冰豆网上搜索。
云中开发微软开发测试云解决方案白皮书V1117
云中开发
——微软开发测试云解决方案白皮书
微软(中国)有限公司
2010年11月15日
目录
一、微软的云计算愿景与优势4
1.1微软云计算定义及服务模式4
1.2微软云计算的优势7
1.3微软云计算建设模式8
二、云中开发——微软开发测试云解决方案9
2.1目前开发现状分析10
2.2微软的开发测试云解决方案11
2.3微软开发测试云解决方案应用18
2.4微软开发测试云的价值20
附录:
方案产品简介21
一、微软的云计算愿景与优势
1.1微软云计算定义及建设模式
云计算是一种全新的计算方式,在这种模式下,用户可按照需要动态访问IT服务,IT服务则通过互联网以实时的方式提供,并按照使用情况进行管理和收费。
云计算使得用户能够重新分配运作费用的投资。
云计算的主要特征
·完整的虚拟化:
IT服务提供给用户的具体物理方式对用户是透明的。
·对短期的负载波动具有弹性补偿机制。
·客户端性能更好,因为一个实例可被多位用户使用。
·基于使用情况的收费和伸缩,可满足不同时期的需求。
·通过界面提供自助服务,实现对资源的动态控制。
云服务模式
云计算有多种不同类型,其中使用最广泛的云服务模式有以下三种:
基础结构即服务(IaaS)在这种云计算模式中,虚拟化的IT基础结构的交付是通过互联网进行的,同时IaaS包含了服务器、存储、网络,以及数据中心基础结构中其他资源。
IaaS以抽象的方式,通过互联网将虚拟化的服务提供给用户。
这些服务通常会按照使用情况收费,然而用户依然具备对操作系统和应用程序的控制权。
该模式使得用户可以按照需要扩展基础结构的级别,通常这一工作可在自助门户网站进行。
平台即服务(PaaS)在这种云计算模式中,除了以最基本的基础结构(IaaS)方式提供的硬件服务和操作系统,还需要以云的形式提供具有附加值的服务。
平台即服务(PaaS)可用技术框架(数据库和中间件)的方式交付应用程序基础结构,或以完整开发平台的方式交付。
用户并不需要知道这些服务具体的技术实施细节。
PaaS可为用户的应用程序提供开发、测试、部署,以及持续的维护,但并不需要为所用的基础结构和软件环境付出成本。
例如:
MicrosoftWindowsAzurePlatformServices。
软件即服务(SaaS)在这种云计算模式中,用户可通过IP网络直接获得应用程序,基础结构资源和应用程序则集成在一起打包提供。
应用程序服务可按需使用,并按使用付费,但如果有必要也可随时扩展。
SaaS目前是最常见的云计算模式,例如:
MicrosoftDynamicsCRMOnline、Microsoft在线服务。
1.1微软云计算的愿景
互联网时代,微软的愿景是希望借助互联网和软件的力量,为用户创造跨越不同设备的无缝体验。
云计算时代的到来加速了这个新愿景的实现。
微软认为,未来的互联网世界将会是“云+端”的组合,在这个以“云”为中心的世界里,用户可以便捷地使用各种终端设备访问云中的数据和应用,这些设备可以是电脑和手机,甚至是电视等大家熟悉的各种电子产品,同时用户在使用各种设备访问云中的服务时,得到的是完全相同的无缝体验。
云计算平台是现有IT和互联网技术以及业务模型逐渐演变的结果,而一个成功的云计算平台可以最大限度地发挥现有软件开发经验、能力和各种资源。
长期以来,微软致力于云计算技术和服务的不断创新,在动态数据中心、私有云以及公共云等方面开展了卓有成效的探索和实践。
在云计算基础架构方面,微软已于2008年10月发布了公共云计算平台,即WindowsAzure服务平台。
WindowsAzure作为微软的“云操作系统”,与遍布世界各地的巨型数据中心和网络一起构成全球化的平台基础。
在WindowsAzure上运行着微软面向个人消费者提供的Live服务和面向企业的Online服务。
同时,微软的客户、合作伙伴以及广大开发人员可以按照“随用随付费”的方式,在WindowsAzure上面快速部署自己开发的应用服务。
针对那些需要自己构建云计算平台的企业客户和服务提供商,微软基于成熟的虚拟化技术和服务器产品开发了新一代的动态数据中心构建工具包,可以满足企业和服务提供商快速构建基于服务器平台云计算的私有云需求。
虚拟化提升了企业资源的利用率,同时也提升了IT的价值。
云计算的资源是动态易扩展而且虚拟化的,通过互联网提供。
终端用户不需要了解“云”中基础设施的细节,不必具有相应的专业知识,也无需直接进行控制,只关注自己真正需要什么样的资源以及如何通过网络来得到相应的服务。
微软提供了整套软件和解决方案,虚拟化可以使用Hyper-V,云计算可以使用WindowsAzurePlatform,并且和Windows系统有着内在的联系,这也是微软云计算与应用的一大优势。
上面提到的种种解决方案,是微软当前针对云计算的战略举措。
展望未来,微软还会有更多的云计算解决方案出现。
例如,微软正致力于开发云计算的迁移工具,它能将传统的应用软件平滑迁移到云计算平台。
这样,用户可以充分利用自己现有的系统,将他们迁移到云平台,从而大大丰富云中的应用。
同时,微软还会推出一个整合工具和管理平台,该整合工具能将微软的云和第三方的云或传统的应用进行集成,同时还能通过微软管理平台实现对这些部署在不同地方的应用进行集中管理。
微软基于云计算的解决方案正在得到越来越广泛的应用。
微软相信,云计算将是未来IT、互联网和电信服务的长期发展模式。
它的出现和应用范围将逐步扩大,并必将对产业链的上下游产生深远影响。
1.2微软云计算的优势
微软作为全球领先的软件提供商,其涵盖了服务器平台云计算和服务平台云计算的整体解决方案拥有全面的优势。
在微软的云解决方案中整合了微软自身在软件开发、流程管理、IT运维等多方面的知识与经验的积累,为合作伙伴及客户提供了利用云计算实现其自身价值的最佳实践。
图:
微软云计算平台战略
通过实施微软的云计算解决方案,客户可以实现效率和灵活性的提升。
微软的解决方案提供了更多选择、更加简单以及更大的可管理性。
这些优点可以转化为更好的云部署并帮助微软客户以更少的成本轻松地实现其商业目标。
微软的云计算不仅可以将IT转变为动态的企业战略资产,也为软件开发测试带来了新的体验。
通过微软的开发测试云提供包括虚拟计算、可扩展存储以及自动化服务管理系统等,利用专门的项目模型、开放的应用程序接口,实现与异构平台和其他开发人员的交流互动。
开发人员可以通过这个平台开发、测试、部署运行在公共云和私有云上的应用,大大缩短云计算系统的开发周期。
国内外很多软件企业已经逐步将软件开发与测试环境放在云环境中进行,并取得了显著的效果。
1.3微软云计算建设模式
微软提供了两种云计算建设模式,直接使用服务平台和基于服务器平台搭建。
服务平台:
由微软自己运营,提供标准化的服务,为客户提供部署和应用服务。
在服务器平台中,WindowsAzure和SQLServer是一个高度可扩展的服务平台,提供基于微软数据中心的随用随付费的灵活的服务模式,并由微软提供更新,为用户带来最低的运营成本。
服务器平台:
部署在客户的数据中心内部,基于客户个性化的性能和成本要求、面向服务的内部应用环境。
客户可以自定义该产品,由客户提供更新。
这种云平台基于成熟的WindowsServer和SystemCenter等产品家族,能够完美的支持现有的产品和应用,实现对当前环境的兼容。
WindowsAzureAppliance:
使托管服务提供上或客户可以在自己的数据中心运行WindowsAzure服务,包括WindowsAzure以及SQLAzure。
并提供完全控制和多宿主支持。
其硬件由微软指定的合作伙伴提供,与微软的Azure数据中心硬件采用同样的标准。
服务平台与服务器平台云计算模式采用公共的身份、应用和管理模式,并对诸如PHP、Java、Eclipse等开放平台提供支持。
二、云中开发——微软开发测试云解决方案
云计算为信息技术行业带来了前所未有的机遇,并开始被更多的IT行业所关注和认可,云计算可以帮助我们提高业务敏捷性、降低管理复杂性和控制成本,实现利益与投资回报率(ROI)的最大化。
微软的云计算解决方案可帮助客户满足当前的需求并解决未来的IT挑战。
微软的云计算基础架构通过提供诸如世界级的云计算服务平台选项、全面的端到端的管理以及极具价值的包含开箱即用功能的免费云加速解决方案来提供更多的选择和灵活性。
因此,微软云计算可以帮助企业提升在商业环境中对变化快速作出反应的能力并且他们可以更加有效地管理资源,与此同时,微软云计算可以帮助企业降低管理复杂性和成本。
随着信息化的不断深入,依托云计算的开发测试服务开始悄然兴起,依托开发测试云应用的软件开发和测试将成为不可缺少的云计算应用,随着对软件开发和测试的质量、效率要求越来越高,不少企业投入大量资金构建开发、测试的软硬件环境。
而通过使用开发测试云可以更加简便和快速的构建开发、测试环境,使软件开发和测试模式的商业模型进入新的时代。
2.1目前开发现状分析
对于刚刚进入软件行业的创业型团队和成长型软件企业来讲,要开发一个成功的项目面临着众多挑战。
从成本方面,创业型团队和成长型的软件企业缺乏足够的资金采购专业的商业开发工具和完整的软件生命周期管理平台,为了降低采购成本,这些团队或企业往往选择采用开源或自由软件来搭建自己的解决方案,而这种方式对技术人员提出了较高的要求,需要技术人员掌握针对不同软件平台知识和经验,在搭建的过程中往往需要耗费大量的人力和时间,从另一方面降低了项目开发的效率。
此外,开源或自由软件可能无法满足某些软件项目对于质量控制的要求。
购买开发测试所需的硬件环境也是创业型团队和成长型软件企业的一项高额支出,上一个项目所使用的开发和测试硬件可能无法满足新项目的要求,这就需要企业重新采购新的硬件设备,提升企业成本,降低企业受益,同时带来了设备管理和如何提升使用率的难题。
对于大型软件开发企业来讲,在过去数年的发展过程中已经积累了足够的经验,形成了完善的管理流程。
但面对不断发展的行业趋势,在软件开发过程中依然存在着挑战。
例如拥有多个软件项目部的大型软件开发企业,因为项目的不同,各部门采用相对独立的开发环境,极易形成一个个的“孤岛”,无法有效地利用企业数据中心中现有的计算资源进行开发与测试,独立的提升了企业的成本,影响了开发的效率与企业的效益。
对于单个项目部门来讲,多数软件开发人员会在项目开始时需要根据自己对项目需求的理解来设置软件开发与测试环境。
很多情况下开发测试环境的搭建往往需要采用效率较低的手工配置方式进行,根据调查研究发现,一台软件开发项目所使用的开发与测试机从部署到上线运行需要1-2天,如果考虑到该设备的审批、订购及运输时间,实际上线时间将在一至两周左右。
开发与测试环境迟迟不能上线将对软件开发项目整体的时间进度造成的影响。
通过以上分析我们可以看到,无论是刚刚步入行业的创业型团队,正在发展中的成长型企业还是大型软件开发企业,其面临的问题与挑战多数集中在对于软件开发项目的成本控制,提升效益以及保证质量等几个方面。
既需要降低软件开发测试过程中对于软硬件环境的采购和部署成本,又需要加快软件开发测试效率,缩短软件交付时间,同时要满足项目利益各方对于质量的严格要求。
如今软件业者在不断探索这些问题的解决之道。
2.2微软的开发测试云解决方案
云计算以及相关技术,将现有的软硬件资源构建成为一个资源池,并将其中的资源以服务的方式提供给用户使用,实现自服务、广泛访问和使用、资源动态调整、动态核算等能力,通过“云计算”有效地提高软硬件资源利用率和弹性,从而为更广泛的系统要求提供了技术基础。
对于软件研发产业来说,云计算第一次真正给企业和组织的研发业务和研发管理提供了一个统一的、面向服务的、动态规划的基础平台,能够有效地帮助软件研发企业将整体统一的研发管理体系和管理思想落实到每个项目和人员执行基础上,从而保障不同研发项目在整个企业视角上的成功,进而推动企业的发展。
而这种云计算技术和软件研发企业管理的有力结合,从而为软件研发企业提出持续发展的技术平台,就可以简称为“开发测试云”。
微软的开发测试云解决方案,即在云计算平台中构建开发环境。
开发测试云将承担软件在开发和测试过程中所产生的工作负载,集中管理资源,并针对需求动态的分配资源,使开发与测试环境能够充分的满足软件开发项目的需求。
微软作为全面的云计算解决方案提供商,拥有领先的技术、产品和服务,能以成熟的软件平台、丰富的服务经验及多样化的运营模式提供全面的云计算解决方案。
而在“开发测试云”方面,微软也是业界最早的实践者和服务提供者,同时致力于把微软自身在软件研发管理方面实施“开发测试云”的经验和优秀的产品及解决方案提供给广大的软件研发企业,推动其与整个计算机产业共同发展。
2.2.1微软“开发测试云”系统架构:
微软开发测试云解决方案基于微软服务器平台构建,在底层服务器硬件、存储和网络以及负载均衡设备的基础上,利用微软的Hyper-V虚拟化技术,将底层的计算资源虚拟化。
通过ActiveDirectory进行统一的身份认证管理,以微软企业级的SystemCenter系统运维套件进行动态化、端到端的管理、监控、部署和配置,从而形成动态化的资源池。
在构建好的资源池中提供了VisualStudioTeamFoundation托管服务,并利用LabManagement提供虚拟测试管理。
软件研发团队的项目主管可以将资源池中的资源动态的分配给项目成员,项目成员可以直接使用这些虚机资源进行需求管理、代码开发、软件测试和项目管理等工作。
动态数据模块由微软免费提供的动态数据中心工具包(DynamicDatacenterToolkit)构建,DDTK包括一些相关的代码,框架的指导及文档,使用户可以快速的在Hyper-V虚拟化和SystemCenter的基础上构建云服务。
开发测试云的用户可以用过自助服务门户访问动态数据中心提供的各项功能,并通过ALM完成软件生命周期管理中的各项工作任务。
企业用户可以通过DDTK中提供的API对上层的自服务门户以及ALM功能模块进行自定义,以满足不同的项目需求,使所有功能都通过自服务门户以Web的形式提供给最终用户,在满足用户需要的同时避免了最终用户直接接触数据中心基础架构,实现安全高效快速的软件开发测试。
图:
开发测试云系统架构
2.2.2微软“开发测试云”解决方案具备以下关键特性:
·自助服务
自助服务使消费者和服务提供商可以通过自助化的系统管理和提供云服务。
微软开发测试云通过使用自助服务门户,可以实现资源审批流程的控制。
自助服务中的资源使用仪表盘可以将资源池使用情况、项目资源使用情况以及成员资源使用情况以图形化的形式直观的展示给数据中心管理员以及项目组的相关人员。
数据中心管理员可以结合企业自身需要定义审批流程,实现自动化的资源审批。
开发或测试人员可以根据自己在开发或测试过程中对于计算资源的需求快速的通过自助服务门户申请所需的计算资源,该申请过程具备足够的自主性,项目相关人员可以针对如处理器配额、内存配额以及硬盘配额等进行设置,使生成的虚拟环境可以充分满足其各自的需求。
数据中心管理员、项目负责人、项目经理及项目开发者等不同的角色都可以通过自助服务门户审批、申请使用和调整所需的资源,为IT资源的管理者和使用者带来了极大的便利。
图:
开发测试云自助服务门户及资源申请
·弹性
可以自动化的将资源能力迅速的调配以满足不断增长的需求,同时还可以抵消需求下降对服务的影响。
在实际中,多数软件开发项目根据客户的要求可能会经常出现变更,变更可能会对开发项目带来一系列的问题与挑战,增加开发项目中的不确定因素。
微软开发测试云提供了充分的弹性来帮助项目成员应对这些问题与挑战,当项目变更引发开发环境的资源需求变更时,任何项目参与者可以随时通过自助服务门户提交资源变更申请,数据中心管理员可以快速的通过自助服务门户或电子邮件来审核并批准相应的申请,使开发和测试人员快速的实现资源的动态调整,获取工作所需的计算资源。
如在开发项目的后期需要进行大量的压力测试,之前已申请的资源无法满足压力测试的需求,测试人员在该阶段就可以通过自助服务门户动态的申请更多地资源用于测试。
·多租户
使用多租户模式可以将计算资源池中的资源分配并服务于多个客户。
对于具备多个同时运行的项目场景,微软开发测试云可以基于虚拟机和网络安全隔离的多租户服务,可以为不同项目的开发测试人员提供基于资源池的项目资源租用。
通过虚拟机和网络的安全隔离,资源池中的计算资源可以被不同的项目组同时利用,由于其彼此独立,在隔离环境中使用的资源不会对其他项目产生干扰。
开发人员可以使用共享或专用的VisualStudioTeamFoundationServer托管服务。
并且基于资源池的多租户场景可以实现快速的资源回收,当某个项目组或项目成员不再使用某些计算资源时,资源可以快速的被数据中心的云平台回收,并等待分配给其他需要的用户,实现对硬件资源的充分利用。
·按使用量计费
云系统通过利用计量能力自动化控制和优化资源的使用,使资源使用量可以被监控、控制和报告。
针对需要计费的场景,通过微软具有专利的“按需付费(pay-as-you-go)”方式,用户只需根据实际使用情况支付相关费用。
简单地说,用户可以花费较低的价格购买到某类硬件和软件在一定时间内的使用权。
目前的商业模式是用户需要先购买计算机硬件和软件然后才能使用,如果为了满足很少才使用的一些功能就需要用户购买多核处理器、大量的内存和高端显卡,但在实际使用过程中可能并不需要如此的硬件配置和资源,就会大大浪费企业的资金和计算资源。
微软开发测试云解决方案采用按实际资源使用量计费的方式,可以对资源使用时间进行动态调整并在资源使用结束之后快速的回收并将其提供给下一个需要的用户,实现计算资源的高效、可循环的利用。
此外,微软还提供了开放的API,开发测试云的计费系统可以方便的与组织现有的计费系统相集成。
简化计费流程。
·与开发测试环境的集成与优化
微软开发测试云解决方案为软件研发团队提供了虚拟化的测试与管理。
方案集成了VisualStudio2010LabManagement,VisualStudioLabManagement2010将虚拟化与应用程序生命周期管理相结合,可以更加容易的创建虚拟环境和改善开发人员/测试人员协作。
使用VisualStudioLabManagement2010,开发和测试人员可以快速创建多机器虚拟环境,部署所需的应用程序,运行测试,以及归档各种重要Bug。
VisualStudioLabManagement构建在SystemCenterVirtualMachineManager之上,可以在数分钟内即可创建包含多个虚拟机的虚拟环境。
此外,开发和测试人员也可以为同一环境创建多个网络隔离副本,以便在不会发生IP或机器名冲突的情况下复制虚拟机。
在虚拟环境中构建、部署和测试应用程序时开发测试人员可以设置一个工作流来使用虚拟环境,以及配置如何运行程序的内部版本,然后将应用程序部署到该环境中。
然后开发和测试人员可以在该环境中运行自动测试并检查这些测试的结果。
这使自动化应用程序的部署和测试真正变得简单,进而提高了开发人员和测试人员的生产力。
图:
在云中以虚拟方式运行的VisualStudio
构建成功的应用程序需要为所有团队参与者带来便利顺畅的流程。
因此微软开发测试云提供了对生命周期环境的完整支持,集成了VisualStudioTeamFoundationServer平台,其中的软件生命周期管理(ALM)工具可帮助组织在各个层面上高效协作和通信,洞察实际项目状态,从而确保能够在降低成本的同时提供高质量的解决方案。
ALM提供了自动化的配置项目流程。
在项目启动之前可以根据项目的特点由项目相关责任人选择符合需求的生命周期管理流程。
ALM同时提供了敏捷、CMMI、Scrum等多种项目流程模板,可以满足不同的软件项目和开发人员的需求,同时开发人员还可以根据自己的需求自定义项目流程模板,为开发人员提供的最大的灵活度。
由于微软开发测试云与VisualStudioTeamFoundationServer和VisualStudio的紧密结合,使其可以支持大型研发团队的版本控制环境,对进行中的项目进行实时追踪,并可以为项目相关人员提供多种形式的项目报表。
图:
微软开发测试云提供的开发模型
此外,微软开发测试云解决方案中还为软件开发人员提供了熟悉的开发环境,有多种不同系统和开发工具所组成的开发环境。
如开发和测试人员可以选择在WindowsServer2008R2平台上使用VisualStudio2010开发Windows服务器平台的应用程序,并可以在开发环境中使用微软Office办公套件管理项目或记录项目相关信息。
对于客户端操作系统的软件开发项目,开发和测试人员可以使用Windows7+VisualStudio2010的组合进行开发。
即使软件开发项目需要使用第三方的开发平台,微软开发测试云也可以满足要求。
在微软开发测试云中,专门针对软件开发测试人员在第三方系统平台上进行开发的需求提供了解决方案,软件开发或测试人员可以在微软开发测试云中使用Linux+Eclipse的开发环境,并且在第三方的开发环境中依然可以使用VisualStudioTeamFoundationServer带来的便利。
VisualStudio中的VisualStudioTeamExplorerEverywhere,其中包含的工具始终都是为跨平台而设计的,它们可以运行在多种第三方操作系统上,让使用EclipseIDE或多个操作系统的软件开发商通过VisualStudioTeamFoundationServer开发应用软件。
这些软件开发商将从异构环境整合性的提高以及减少
2.3微软开发测试云解决方案应用
与传统的开发模式不同,云计算时代的开发强调的是任何人,在任何地点都可以进行开发,代码编写、协作、调试、测试、部署、运行都在云端完成。
云计算提供了更多的存储和处理能力。
从根本上说,它消除了开发的局限,开发者再也不用忍受有限物理资源的约束。
微软开发测试云解决方案可以应用于以下常见的软件开发场景中:
2.3.1服务于成长型软件公司和创业团队的软件园
软件园可以通过使用微软开发测试云解决方案构建全面的公共服务平台,由软件园集中采购硬件设备并组成计算资源池,利用软件园服务器平台构建的开发测试云环境可以承载园区内软件创业团队和成长型企业的开发与测试工作负载,这样软件园园区内的创业团队和成长型企业就能实现以最低的成本使用开发和测试过程中所需的软件和硬件,解决中小型企业在发展中面临的资金难题,帮助中小型软件开发企业快速成长。
由于微软开发与测试云采用隔离的多租户方式以及按资源使用量的方式付费,可以充分的保障各软件企业的代码安全,此外还可以免除企业在软件开发过程中的硬件采购以及折旧成本。
另一方面,软件园区也可以利用微软云解决方案的灵活性优势构建高度灵活和扩展的培训中心,使园区内的软件企业不仅可以享受云中开发的优势,还可以在云中学习最新的软件开发技术与流程,提升园区及软件企业的整体竞争力。
2.3.2大型企业自身业务应用开发
针对需要开发符合其自身需求应用的大型企业来讲,开发环境的独立与安全至关重要,需要把开发与测试过程对于生产环境的影响降到最低。
微软开发测试云解决方案利用微软成熟的服务器平台云计算模式构建,大型企业可以利用现有的微软基础架构实现开发测试云环境,在云中进行企业应用的开发与测试,即使将软件项目外包给第三方的合同承包商,利用云环境所提供的完整审
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 云中开发微软开发测试云解决方案白皮书 V1117 开发 微软 测试 解决方案 白皮书