基于Visual Studio的软件生命周期管理和持续交付 (一) 前言
本文介绍基于Visual Studio的一整套解决方案,其包括:
- 开发平台.
- 测试架构;
- 软件生命周期管理;
- 持续交付.
- 私有云.
在开始正文之前,先思考一下以下的场景:
- 修改BUG或者增加功能以后,旧的代码/功能出现了新的BUG;但是并没有发现,也没有人去测试.
- 总是在开发大部分完成以后,才开始测试,才能给用户演示,然后也许发现很多的BUG,也许工期延误,也许项目失败.
- 没有完善的软件生命周期管理,PM不知道项目进度,也无法感觉项目质量(太多的未知领域导致高风险)
- 没有报表,也没有足够的数据支持决策.
- 代码的签入没有任何约束, 有些代码根本无法编译通过,于是你只能打电话给同事问问发生了什么事情.
- 单元测试不充分,或者觉得做单元测试的成本太高; 然后部分bug会在很后期才发现,甚至发现不了.
- 大部分测试是手动完成的,测试成本很高,速度又慢; 部分较麻烦的测试经常偷工减料.
- 需求/代码变化的时候,很难分析出哪些测试需要进行,以保证软件质量.
- 有些测试不方便重演,或者开发人员需要走到测试人员面前 看她是如何测试的.
- 不能很方便的将测试在所有平台上进行(例如 windows xp,7,8 IE 7 8 9 Firefox).
来看看整套Visual Studio平台的成熟度模型:
(注意,不是用的越多越好,越高越好,本文只是描述能做到怎样的程度,要选择适合你们的)
大部分情况下,很多Team只是用到了一点点Visual Studio的功能....我也一度以为VS只是一个IDE
环境搭建:
本文需要的全部软件如下: (当然,你可以选择新的版本...不过我不保证他们之间是相互兼容的....毕竟我没有完全测试过所有的软件)
- Visual Studio 2010 Ultimate [开发工具和操作界面]
- TFS 2010 (包括Sharepoint) [源码管理和软件生命周期管理,报表,和其他软件的集成]
- Microsoft Test Manager 2010 (包含在VS2010中) [测试管理和Lab环境管理]
- System Center virtual machine management 2008 R2 [物理机和虚拟机管理]
- SQL Server 2008 R2 (包括 Reporting Service) [数据存储和报表]
- Windows Server 2008 R2 (如果是准备作为虚拟机的宿主,我们建议内存越大越好)
架构图如下:
备注:如果您是第一搭建一整个环境,我们推荐:
- 1-3天的时间
- 至少1台服务器 (达到或者超过16G内存)
本文图片引用自: Testing for Continuous Delivery with Visual Studio 2012 RC