2010年2月9日,微软发布Visual Studio 2010 RC版本,这就是说Visual Studio 2010的正式版本将随后放送。本文将为大家讲述的是Visual Studio 2010敏捷之道。
随着软件开发日趋国际化,对软件的质量要求和管理也随之增高。微软看到了使用程序生命周期管理在业界逐渐被接受认可的趋势,并宣称VSTS2010将会是一个革命性的.Net软件开发以及管理工具的产品,估计在2010年3月正式版揭晓。它将提供协同一致的使用程序生命周期管理工具,让参与软件开发的各种角色人员,例如:从架构师到开发人员,从项目经理到测试人员,都能够更加容易地在整个ALM流程中执行 协作。
在本文中,笔者将介绍Microsoft Visual Studio 2010 Beta2版本中的敏捷特征,以及以往版本优劣势等方面的内容。通过这些内容的阐述,让读者了解VSTS2010的敏捷思想体系,以便于.NET人员在自己的项目中,根据实际情况,尽快熟悉和看清VSTS2010流程为导向的软件工程全貌和整体发展趋势。
1.概述
一个软件产品或系统同任何事物一样,也要经历孕育、诞生、成长、成熟、衰亡等阶段,一般称为软件生存周期,也称为SDLC(software development life cycle)软件开发生命周期。它是软件的产生直到报废的生命周期,周期内有疑问定义、可行性分析、总体描述、系统设计、编码、调试和测试、验收与运行、维护升级到废弃等阶段,这种按时间分程的思想要领是软件工程中的一种思想原则。我们也可以将SDLC解释为一组步骤(Step)、阶段(Phase)或者里程标(Milestone),SDLC的一般步骤包括:确定疑问、可行性分析与开发计划、收集需求、分析与设计、编码开发、测试、安装、维护。。
在Visual Studio 2010 Ultimate中,使用程序生命周期(ALM)是其主要特征和SDLC实现方式之一。我们将一个软件的生命周期(SDLC)划分为多个阶段;而运用 各种工具辅助每个关键环节执行 管理,就称为使用程序生命周期管理(ALM,Application Lifecycle Management)。微软Visual Studio 2010将会努力打造 一个功能平等、共同分担,易用便捷的平台,以用于组织内的使用程序生命周期管理流程。
Visual Studio 2010的ALM涵盖了系统设计到测试阶段的工具,其中,在架构方面,Visual Studio 2010包括新的架构检视工具(Architecture Exp lorer),添加对统一建模语言(UML)的支持,例如类图、用例图、活动图和时序图等;以及架构层图(Architecture Layer Diagram),以图形化的方式描述系统架构,从而使得项目中的技能人员或非技能人员都能以模型透过图形化的方式执行 协作,以及定义企业与系统功能联系等。另外微软提供虚拟实验室管理(Microsoft Test and Lab Manager)技能,可供开发人员和测试人员收集更多的测试资料,增强ALM的周期管理控制。
图1 Architecture工具模板
2.Scrum开发思想敏捷特征
Visual Studio 2010中项目流程模板变化很大,微软把Scrum作为基本Agile开发模型(Scrum模型为基础参考导向),TFS2010中集成了MSF for Agile Software Development v5.0,可操作性上融合了敏捷等软件开发流程思想模型。
图2 添加MSF for Agile模板
Scrum最初的意思是英式橄榄球争球队,是敏捷软件开发模型中的一种。Scrum 将软件开发团队比拟成橄榄球队,有明确的最高目标,熟悉开发流程中所需具备的最佳技能,具有高度自主权,紧密地沟通合作,以高度弹性处理各种挑战,确保每天、每个阶段都明确的朝向目标推进。
图3 Scrum for Agile模型
Scrum开发流程通常以30天(或者更短的一段时间)为一个阶段,由客户提供新产品的需求规格开始,开发团队与客户于每一个阶段开始时挑选该完成的规格部分,开发团队必须尽力于30天后交付成果,团队每天用 15 分钟开会检查每个成员的进度与计划,了解所遭遇的困难并设法排除。