What is our primary use case?
The primary use for TFS is for event planning, including things like writing the user story and then assigning tasks to the developers. Another task is writing test cases, then recording test results, and sending bugs to the team members. The third thing is that we use TFS as part of our CICD pipeline.
As part of our pipeline, we use it for checking in code and it acts as a repository. This leads to the fourth thing we use it for, which is to move the code from dev to QA to production. Essentially, we establish a complete lifecycle using TFS.
We also use it in conjunction with Azure DevOps.
How has it helped my organization?
This product brings a lot of discipline and consistency in the way that our developers use their tools.
What is most valuable?
The most valuable feature from my point of view is project management, which includes user stories as well as task management. I would say that these features are critical.
What needs improvement?
I would like to see better integration between TFS and third-party tools such as Jira. For example, integration with SharePoint is not very straightforward and we need to do a lot of manual work.
The user interface could be improved to make it simpler and increase usability. Making it more user-friendly would be a good thing. While it is okay in some regards, it does not compare to tools like Jira. There is some complexity because there are a lot of features, but usability can still be much better and it would be more comfortable to use.
For how long have I used the solution?
We have been using Team Foundation Server for almost five years.
What do I think about the stability of the solution?
This product is stable and we have not experienced any issues with it.
The developers are completely dependent on TFS and are using it on a daily basis.
What do I think about the scalability of the solution?
TFS is quite scalable and there are different deployment options that are available. I don't see any problems with scalability. We have between 40 and 45 people in my department who are using TFS.
How are customer service and technical support?
The support that we received during the initial setup was the only time that we needed to contact them. Beyond that, we didn't have to ask for technical support. I wouldn't refer to our initial support as very technical because it was more about knowing how to perform certain tasks within the tool.
Which solution did I use previously and why did I switch?
Prior to using TFS, we used CVS as our code repository solution. All of our requirements and bug tracking were done using manual effort. We were using Word documents and things like that. However, all of that has now been put into TFS.
What led us to switch was the ability to track all of the developers' activities. Before this, getting visibility and deliverables was a real pain point. For example, we didn't know how many stories the developers had completed, how much effort has been spent, or where we were with respect to the tasks that were completed by the teams.
How was the initial setup?
I would say that the initial setup is of medium difficulty. You definitely need help from an expert, as it is not like I can just pick it up and start running it. TFS requires a little bit of expert support in setting up, and we received solid support from Microsoft.
Our deployment took place over the course of a week. It was not a week's worth of effort but we had to schedule calls for support. I would say that TFS can be set up and tested in a single day, although it may take up to a week to finalize things.
What about the implementation team?
During our implementation, we requested help directly from Microsoft.
Our in-house DevOps team is responsible for maintenance.
What's my experience with pricing, setup cost, and licensing?
I wouldn't say that this tool is cheap or expensive but in the middle. TFS is definitely not as expensive as some other tools like Rational Team Concert. Basically, I would say that it is affordable.
Professional Services is a separate cost from the standard licensing fees.
What other advice do I have?
My advice to anybody who is considering TFS is that the suitability depends on what technology you are trying to use. For example, if you're using Microsoft technology then it is better to use TFS. If on the other hand, you are developing something outside of Microsoft, perhaps using an open-source tool, then I wouldn't be able to recommend TFS. Instead, I would choose one of the other many third-party tools that are available.
I would rate this solution a nine out of ten.
Which deployment model are you using for this solution?