我有一个挂钩到拉力赛API Web服务的报告。它列出了用于向外部客户呈现的用户故事和缺陷。 开发人员正在填写他们在时间表中花费在他们的任务上的时间,但是当我尝试获取使用'TaskActualTotal'值的实际时间时,它始终回到0.在拉力赛Rest中花在HierarchicalRequirement上的时间API
这些值肯定会记录在时间表上的我的内部报告产生这些值。
我是否需要花时间使用不同的方法?
谢谢
我有一个挂钩到拉力赛API Web服务的报告。它列出了用于向外部客户呈现的用户故事和缺陷。 开发人员正在填写他们在时间表中花费在他们的任务上的时间,但是当我尝试获取使用'TaskActualTotal'值的实际时间时,它始终回到0.在拉力赛Rest中花在HierarchicalRequirement上的时间API
这些值肯定会记录在时间表上的我的内部报告产生这些值。
我是否需要花时间使用不同的方法?
谢谢
您的开发人员是否在Time Tracker模块中输入时间? Actuals和Time Tracker模块之间没有连接。实际情况也早于Time Tracker。
Actuals字段旨在用于回顾过程中,以提供有关错过承诺的根本原因的洞察,而Time Tracker模块旨在帮助报告开发成本。
我们通常只推荐使用Scrum或Agile的新团队使用Actuals值,他们仍在致力于提供良好的估算。在回顾中比较估计与实际值可能有价值,以帮助确定估计可能发生的较大差距的位置。
对于更成熟的团队,我们建议Actuals字段保持隐藏状态,因为这些值似乎将重点放在花费在特定功能上的时间量或资源上,而不是强调整个团队是否作出承诺。
当然,所有的团队在他们使用的流程和开发周期都非常不同。
时间表值的目的更多的是用于记帐和资本化的开发成本的捕获和报告,而不是帮助完成或估计制图。然而,实际数据旨在协助这方面的工作,并按照“估计”和“待办事宜”值在“任务”上生活,并在故事级别进行汇总以便于比较。
您仍可以查询WS API中的Actuals。例如,我有一个包含两个任务的故事,每个的估计值设置为2,实际值设置为3.如果我通过特定迭代查询用户故事,我将得到TaskEstimateTotal和TaskAcutalTotal,只要我取他们。这里是我的查询:
https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement?workspace=https://rally1.rallydev.com/slm/webservice/v2.0/workspace/1111&query=(Iteration.Name = i5)&start=1&pagesize=20&fetch=TaskEstimateTotal,TaskActualTotal
,这里是回归的相关部分:
{
"_rallyAPIMajor": "2",
"_rallyAPIMinor": "0",
"_ref": "https://rally1.rallydev.com/slm/webservice/v2.0/hierarchicalrequirement/22222",
"_objectVersion": "9",
"_refObjectName": "my story",
"TaskActualTotal": 6,
"TaskEstimateTotal": 4,
"_type": "HierarchicalRequirement"
}
但是这个查询只能返回的结果,如果估算和实际值的任务的详细信息页面上输入,而不是在时间追踪器中。
我们的WS API中有两个与Time Tracker相关的对象: TimeEntryItem和TimeEntryValue。
以下是基于Worproduct的TimeEntryItem查询的示例。名称:
https://rally1.rallydev.com/slm/webservice/v2.0/timeentryitem?workspace=https://rally1.rallydev.com/slm/webservice/v2.0/workspace/11111&query=(WorkProduct.Name = us1)&start=1&pagesize=20&fetch=WorkProductDisplayString,TaskDisplayString,Values
和结果的相关部分:
{
"_rallyAPIMajor": "2",
"_rallyAPIMinor": "0",
"_ref": "https://rally1.rallydev.com/slm/webservice/v2.0/timeentryitem/77777",
"_objectVersion": "3",
"TaskDisplayString": "TA1: ta1",
"Values": {
"_rallyAPIMajor": "2",
"_rallyAPIMinor": "0",
"_ref": "https://rally1.rallydev.com/slm/webservice/v2.0/TimeEntryItem/77777/Values",
"_type": "TimeEntryValue",
"Count": 2
},
"WorkProductDisplayString": "US1: us1",
"_type": "TimeEntryItem"
},