TFS 中工作项的定制-修改工作流
我们都会用到TFS中的工作项。一般来说,最主要的会用到任务、bug这些工作流来进行项目管理里。但我们发现,实际上,有些模板中的工作流并不能完全符合我们的需要,因此我们会进行工作流的定制操作。下面就会通过一个简单的案例,来解释如何进行工作流的修改。
1.软件准备
TFS版本:TFS2010
客户端版本:VSTS 2012 Update2
PowerTool版本:PowerTool for VS2012
实际上这个配置不用纠结,由于TFS还没有升级,所以还是2010版本,但这次客户端我选用的是2012,也是为了看下区别。在实际应用上,这里是没有区别的。
2.关于模板
在TFS创建团队项目的时候,我们会进行模板的选择。实际上这个模板里面就包含了工作项。
图:模板的选择
各种模板中工作量类型有差异,而且虽然有些工作项名称相同,但他们会有着不同的工作流。例如敏捷开发的任务工作流和CMMI模板的工作流就有着很大的区别。如图,可以看出虽然都是任务,在CMMI中的工作流比敏捷模板中的工作流复杂了很多。
图:敏捷模板中"任务"工作流
图:CMMI模板中"任务"工作流
3.更改工作流
这次我们通过修改敏捷模板中的任务工作流,了解如何自定义工作项工作流。
3.1 工作流需求
假设,我们在一个任务被提出后,开发人员有拒绝的权利(这里仅仅是假设),且任务被拒绝后,等于到了工作流的末端,任务无法被重新置为活动或其他状态,那么我们的工作轮流大概是这样的。
可以看到这个流程是单向的。
3.2 打开工作流
我们在安装VSTS的Power Tools的以后,会在工具里找到这一项。如果要直接操作服务器,可以选Open WIT from Server(需要连接TFS)。如果自己在离线状态下,也可以编辑工作项模板文件。修改好再导入即可。
点击打开后,要选择团队项目,从中选择出要修改的工作项类型。这里我们选择test-agile项目中的"任务"工作项模板。
可以看到,一个工作项模板是由三部分组成的
"Fields"、"Layout"、"Workflow" 分别代表着:字段,布局,工作流
这三点主要的功能为
Fields:定义工作项的字段。
Layout:定义工作项操作面板的布局。
Workflow:定义工作项的工作流。
这次以修改工作流为主,未涉及到面板修改。
3.3 添加工作流
我们点击Workflow页签,会看到此模板的工作流。并且点开左边的工具箱,可以看到工作流的编辑工具。
State代表工作流的状态。
Transition Link 代表变化流程。
我们的需求是添加一个拒绝流程,此流程进入后,不可逆。于是拉入一个State到活动的状态的下方。
并且向下拉入一个Transition Link。注意拉动的方向!向下表示从"活动"状态转向"拒绝"状态。由于我们希望是单向不可逆,则只需要此一个方向流程变化即可。(可以看到"活动"状态到"关闭"状态的流程为双向的)
此时,工作流已经建立完毕,接下来要修改其属性。
双击"活动"状态与"拒绝"状态中的Transition。可以看到属性面板
Transition Detail:From to是状态的方向。For Not是操作此属性的权限。
Reasons:是状态跳转的原因。注意:Transition中必须有一个reason属性才可以通过验证
于是我们只要在Reasons的标签中添加原因即可完成。打钩的为默认选择。
关闭后,需要保存此工作项模板!
4.验证工作流
新建一个任务,在保存后,为活动状态。此时我们可以看到其下一个状态为"拒绝"或"已关闭"。
当我选择已关闭后,可以看到我们添加的理由
保存后看其状态,可见此流程无法逆转
TFS 中工作项的定制-修改工作流的更多相关文章
- TFS中工作项的定制-修改面板
上一篇文章我们讲到了<TFS 中工作项的订制-修改工作流>,工作流只要我们设计出来,就可以进行定制修改了.这次通过简单的案例,了解一下,工作项的面板如何定制. 1.软件准备 ...
- TFS中工作项的定制- 字段功能定义
参考,翻译此页面All FIELD XML Elements Reference(http://msdn.microsoft.com/en-us/library/ms194953.aspx) 对于每一 ...
- 如何自定义TFS中工作项的字段20141010
如何自定义TFS中工作项的字段 我们以VS2013为例,TFS也是2013版本的: 1. 安装小插件 需要安装Visual Studio Team Foundation Server 2013 Pow ...
- 如何彻底删除TFS的工作项字段
TFS的工作项字段可以在所有工作项类型之间共享.例如自定义了一个字段"验证迭代"(Mycompany.IterationValidation)那么在需求.Bug中都可以添加这个字段 ...
- 如何修改TFS 2013中工作项附件大小限制
默认情况下,TFS工作项的附件大小限制为4MB.我们可以通过调用TFS提供的Web Service将这个限制调整最高到2GB. 调整这个设置的必备条件是你需要拥有TFS应用层管理员的权限.下面来看看如 ...
- TFS实现需求工作项自动级联保存
目前在一个大型的金融客户软件研发平台项目实施和支持过程中,客户的质量管理团队基于该平台以及结合其它的平台数据,针对需求管理和业务过程需要拟定了一套完整的需求提出.评审.设计以及实现的流程.基于这套流程 ...
- 从TFS 删除工作项
一.进入命令执行窗口的方式 1.若你的TFS服务器上安装了VS开发工作,可以按以下步骤,进入命令行方式,图如下: 2.若你TFS上没有安装VS开发工作,可以从你的开发机器上的VS安装目录下(一般情况下 ...
- TFS工作项数据统计及相关数据库结构分析
今天为客户的质量管理部门人员提供TFS咨询过程中,客户的质量管理专家基于TFS提出了一个比较棘手的数据统计需求.需求是这样,客户的数十个软件项目通过质量管理部按照年度版本计划进行软件产品系统的发布,因 ...
- 在定制工作项时,把“团队项目”作为变量获取生成版本信息
有用户最近提出这个需求: 通过工作项定制,新增一个字段用以保存项目Bug的"影响版本"信息,但是需要从当前团队项目的服务器生成纪录中获取版本的选项,类似默认模板中的"发现 ...
随机推荐
- Timeline简单配置
Timeline是一个Jquery时间轴插件.效果如图 获取地址:https://github.com/ka215/jquery.timeline 配置 (1)html表头加入 <link re ...
- devops流程
学习资源: https://www.youtube.com/watch?v=JBtWxj9l7zM&list=PLoYCgNOIyGAAzevEST2qm2Xbe3aeLFvLc&t= ...
- 2017.7.25 jqGrid在编辑态无法获取数据,得到的是html代码
页面如下: 勾选555之后,点击下方的删除按钮,调用如下代码: 最终调用的是jqGrid的getRowData()方法: 但是运行时发现,无法获取key的值,也就无法正确删除了.获取到的是html代码 ...
- 2. Spring Boot返回json数据【从零开始学Spring Boot】
在做如下操作之前,我们对之前的Hello进行简单的修改,我们新建一个包com.kfit.test.web然后新建一个类HelloControoler,然后修改App.Java类,主要是的这个类就是一个 ...
- Fragment生命周期和Activity生命周期的关系
Fragment生命周期: 重点回调函数: 1. onAttach()当碎片和活动建立关联的时候调用.2. onCreateView()为碎片创建视图(加载布局)时调用.3. onActivityCr ...
- <p>在我们的实际软件项目中,管理团队事实上比写代码或者实现一个客户的需求更为的有挑战性。由于编程实际上是和机器打交道,而和机器打交道,仅仅要你符合机器预定的逻辑,</p>
在我们的实际软件项目中,管理团队事实上比写代码或者实现一个客户的需求更为的有挑战性. 由于编程实际上是和机器打交道.而和机器打交道,仅仅要你符合机器预定的逻辑, 一步步迈向解决这个问题的道路上一点都不 ...
- 安卓---JNI使用
交叉编译 系统平台:Windows.Mac OS.Linux CPU平台:ARM.X86.MIPS 概念:在一个平台下打包编译出还有一个平台能够运行的程序#交叉编译原理 源代码->预编译-> ...
- selenium从入门到应用 - 4,页面对象设计模式的实现
本系列所有代码 https://github.com/zhangting85/simpleWebtest 本文将介绍一个Java+TestNG+Maven+Selenium的web自动化测试脚本环境下 ...
- 02-2设置第一启动项--进入Bios界面设置U盘为第一启动项
进入Bios界面设置U盘为第一启动项: 开机,当电脑处于启动状态,屏幕显示电脑LOGO时,按下F2键.(根据电脑的不同,进入BIOS的功能键也不同,可根据自己电脑的型号百度搜索相关功能键) 按电脑方向 ...
- 正则化--L2正则化
请查看以下泛化曲线,该曲线显示的是训练集和验证集相对于训练迭代次数的损失. 图 1 显示的是某个模型的训练损失逐渐减少,但验证损失最终增加.换言之,该泛化曲线显示该模型与训练集中的数据过拟合.根据奥卡 ...