What is our primary use case?
We use Microsoft Team Foundation Server as part of our development framework. Most of our development technology is from Microsoft and our primary language is C#, although we do have a number of Java programmers as well.
We primarily use TFS for managing our resources and scheduling. We can also use it to check to see whether tasks have been completed by the team, or not.
What is most valuable?
The most valuable features are the dashboard and task-selection capability.
The option to save favorites is helpful for managing pages.
What needs improvement?
I would like to see TFS integrated with a project management solution, such as Microsoft EPM. Right now, it is isolated from EPM but if we could somehow connect it, then that would help a lot. As it is now, the results are not easy to report to project managers, which makes it difficult to estimate both cost and the time to completion.
The interface can be improved and made more user-friendly.
For how long have I used the solution?
We have been using TFS for about five years.
What do I think about the stability of the solution?
This solution is stable and we have not had any crashes to this point. We use it on a daily basis. All of our new projects start on TFS.
What do I think about the scalability of the solution?
This is a scalable solution. Our company has 1,300 employees, although there are only between 50 and 100 who use TFS.
How are customer service and technical support?
Because we are in Iran and there are sanctions, we do not have a Microsoft agent and we have never been in contact with them. We instead rely on various forums and searching for solutions using Google. Using Google is the fastest way to get results.
Which solution did I use previously and why did I switch?
We did not use a similar solution prior to implementing TFS. However, we did use Microsoft Project for scheduling. It was not specifically for the purpose of software development, but we used it for putting together the steps of a project. For example, first, the UI would be developed, and then the backend. These steps were listed in the project management software.
How was the initial setup?
I did not personally perform the installation, although my colleagues had no problem and I got the impression that it was easy.
What about the implementation team?
Our in-house technical people installed and deployed this solution. There were two of them involved in the process where one took care of the servers, VMs, and infrastructure, whereas the second person installed the solution and gave us the link to use it.
We have lots of servers and virtual machines, with two people in charge of maintaining our infrastructure. One person is generally in charge of installing and maintaining software as was with TFS, and this person is also responsible for the maintenance.
What other advice do I have?
There is a gap between project management, agile methodology, and TFS resource management. If they can fill this gap then it would be a great improvement for us and many other companies.
My advice for anybody who is implementing this solution is to keep in mind that using the tool, alone, will not change the way they develop their software. First, they should become familiar with agile methodology, and then they will be able to properly use TFS.
I would rate this solution an eight out of ten.
Which deployment model are you using for this solution?