Is there a way to remove dev days from Story Points? - tfs

In the cards under Planning there is a Story Points section. It also has "(dev days)" next to it. There is a concern that this might cause confusion so I was wondering if there is a way to edit it and remove the (dev days) part.
Story Points (dev days):

Yes this is possible. You can use witadmin exportwitd to download the workitem definition, change the field/form and the push the work item type definition back in using witadmin importwitd.
See also: https://learn.microsoft.com/en-us/vsts/work/customize/reference/design-work-item-form?toc=/vsts/work/customize/toc.json&bc=/vsts/work/customize/breadcrumb/toc.json&view=vsts

Related

How to Include Tasks as Backlog Items?

Using Visual Studio Team Services (Online version), I would like to have a simple display for my "Backlog" and "Board" :
Features
Tasks
Bugs
That's pretty much it. I don't want to do anything with, iterations, sprints, user stories, etc.
This is just a one man project and I'm just wanting to see all thing on the backlog/board so I can better manage the project.
EDIT:
Biggest issue I had with this...
My project was setup to use the "Agile" process. I decided to try Scrum process instead and found this to be the deciding factor.
Once a project is set as Agile/Scrum, it cannot be cahnged... So, I Made a copy of "Scrum" process, named it "Scrum_custom", created a new project using this method, then just git pushed my existing project code to the new one.
I marked Daniel Mann's answer as correct seeing as it's what I ended up doing after changing to Scrum and it seems to be working just as I'd hoped!
Just in case anyone else reads this and is looking to do something similar, I would recommend this route...
Under your team configuration, you can change the backlog levels you use. In your case, you want to turn off PBI/User Story.
https://www.visualstudio.com/en-us/docs/work/customize/select-backlog-navigation-levels
Alternately, you could just use PBI/user story instead of Feature. They're the same basic thing except with different names; it's purely a hierarchy thing:
Epic -1 to many-> Features -1 to many-> PBIs -1 to many-> Tasks
Bug behavior is configurable; they can either be treated as requirements (at the same level as a PBI) or as tasks.
If you link Task and Bug to Feature as child, you can manage them in Feature Backlog, but not Kanban board.
To link them as child, you can open a work item > Links> Add link>New Item>Select Child link type.

TFS: Why do Issues appear on the Backlog?

We are using TFS 2015 together with the CMMI process template and I have just found out that Issues do appear on the backlog if they are a child of a Feature or a Requirement work item type. If the Issue is standalone (has not link to one of the two mentioned work item types) it is not visible on the backlog.
I guess that someone has made some hacks here in order to make this possible. Originally, only Epics, Features, Requirements, Tasks, and Bugs should appear on the backlog.
I have checked the Issue work item type definition as well as the processconfiguration.xml and the categories.xml which look quite ok from my point of view.
Are there any another places where one could define which work item types should be visible on the backlog?
Thanks a lot for giving support.
To add a WIT on backlog, the three files below need to updated:
WIT Definition
Categories Definition
ProcessConfiguration Definition
You can check the required changes on this link: Add work item types to backlogs and boards to see if these changes had been applied on your project. If yes, revert these changes, then the Issue should disappear from the backlog.
You should not use the "child" link to associate with Issues.
The Parent/Child link is used for the backlog and I would think that the Issues are appearing because of this.
Try changing the Parent/Child link to Related.

No way to group work items into releases in TFS 2015?

My team is just now starting to use TFS 2015 Update 1 on premise to manage their development process. I have set up the server and defined some custom states and transitions for work items to better map to our process. To start with, we will only be taking advantage of the Kanban board and are not attempting to use iterations for a variety of reasons I won't get into here.
My problem currently is using TFS to plan releases. Specifically, I don't see any way to group Features and User Stories into a specific release. All of my googling has turned up many articles involving Microsoft Release Management, so I installed and configured it, but it is absolutely overkill for what my team is trying to do right now. I'm not trying to automate deployments to different environments at the moment, I just need a way to group work items into a something that encapsulates the concept of a release in TFS. Is there no way to do this? The best I can come up with right now is to further modify the work item templates to either provide a simple "Release" field with a pick list, or define another type of work item that I can group the others into. This seems like a glaring oversight by MS from my perspective, so I'm hoping I'm just missing something.
Grouping work into releases can be done in a couple of ways, just remember that the concept of a "Release Plan" doesn't explicitly exist in TFS. Release management covers the "Release to Production", but doesn't cover any planning.
Ways to plan releases:
One way is to create a Release Iteration, this works when you're not working on multiple releases in parallel and truly finish one release before working on the next. The Release iteration used to be default, but has been removed from the product in favor of teams delivering sprints and teams doing continuous delivery.
Project Root
+ Release 1.2
+ Sprint 1
+ Sprint 2
Another option is to use Tags. You could tag work items with a tag that signifies it's targeted for a specific sprint.
Use a Marker workitem, on the backlog place one work item which clearly stands out ### END OF RELEASE 1 ### Any workitem below it is not part of that release. This technique fits a more agile way of working and more clearly shows that the contents of a release are a floating thing.
Create a custom Release Workitem, link your other workitems to this work item to target it for that release.
And your option to create a picklist on a *Custom workitem field** is another option.
Alternatively you could also use the Area Path in much the same way as Iteration Path. By using the Area Path you have the benefit of not having a sprint tied to one specific release.
It is not the best solution but could be the solution in some cases.
Answering solely based on your question around planning releases, then:
Create a custom work item template, called 'Deployment'.
When planning of a release begins, create a new 'Deployment', let's say, called 'MyProduct v1.1'.
In your planning meeting, create Features and User Stories appropriately, and create a relation to the 'MyProduct v1.1' Deployment, by opening the User Story and adding a Link (using the Deployment Work Item number) as 'Related'.
To monitor Deployments, create a custom Work Item query targeting the new 'Deployment' Work Item template. You can configure this to display on your dashboard.
Follow whatever release procedure you like based on the 'Deployment' and its' relations.
You should follow a naming convention when creating 'Deployments' for consistency.
p.s. I recommend using the extension 'Work Item Visualization' in this instance. It'll nicely map out the 'Deployment' related Work Items.
If you want to use TFS to actually build an and create a Release, then Release Manager is worth considering.
TFS 2015 Update 2.1 now includes a built-in version of Release Manager. It's much more user-friendly and simple to configure when compared to Release Manager standalone installations.
To group work items into a 'release', you can do the following:
Create a build definition for the repository you're working with - see Build Def creation docs
Create a Release definition - see Release Def creation docs
Once you have these definitions created, the working process would be:
Developers work against work items
Commits are made against the WI number (or tasks)
When it's time to create a release, start a build on the definition you created. In doing so, WIs will then be associated with a Build Number.
When the build succeeds, start a new Release from the definition you created.
You have have a set of work items associated with a release, see screenshot:
Note: You can enable CI builds and releases, although the above is based on manual triggers.
You can also directly call the Release API to locate WIs associated with Releases, however you'll need to obtain the actual Id of the release first.
You are currently limited however to viewing these relationships based on knowing the Release. In a real world scenario, it's more realistic to look at a Work Item to see when it was release. To do that, there's no built-in functionality at present, however my own-answered question will guide you - see here.
Additional to the methods explained by jessehouwing there exists also several 3rd party tools which can integrate with TFS/VSTS and provide advanced planning features. See VSTS Marketplace for an overview.

JIRA: how to "archive" ancient backlog

We have over a thousand old tickets in our Jira, most of which we'll never get to. What are the best ways to hide those from the backlog in a way that we can most easily get them back if we want to?
Ideas:
give them a label and then complete them as won't fix
create a special "archive" project and move them in there
Pros & cons to those? Other ideas?
Is this with GreenHopper, and probably using a Scrum board? In that case issues appear based on your board's JQL filter. You could change the filter to add a constraint by date such as "updated < -200d" to excluded issues that haven't been updated in 200 days.
I wouldn't bother moving them to an archive project. Labels can be useful for other things.
I suggest archive it somewhere if you never intend to reuse it.
You can use this project to do so: https://gitlab.com/kaszaq/jiratomkdocs/

Is there a way to link work items across projects in TFS

In Team Foundation Server is there a way to have work items in one project linked to other projects so they show up in the reports in both. We are thinking about keeping release engineering items in their own project and want them linked to the project they are actaully for as well. Is this possible? So for instance I would create the item under release engineering assign it to an engineer and then link it to Product X so it showed up as a work item for Project X as well.
This is possible in TFS 2010 at least: link tfs work item to different project
Not sure on the effects on reporting though.
Not out of the box as projects are discrete. However there is nothing to stop you from writing against the API to fulfill this need, although this would take some considerable work.
Now for the good news. If you keep your eyes here, you may find the answer in time. As I see cross project reports are planned in Rosario

Resources