Skip to main content

Research around JIRA vs TFS

[PLACEHOLDER]

By: Carlos G. 
 
An opportunity came from a colleague to discuss the case of company “X” for improving the ALM by introducing tools to this company. The challenge was to decide between Microsoft and Attlasian.

He came to me because I’m a Microsoft kind of guy and he wanted the opinion from my perspective, not as a consultant, but as a friend of what he was trying to accomplish. He said that even though I was inclined to a technology I was able to explore other things and be “fair”. I agreed to be a part of his research because of 3 things:
  • because of my curiosity I'm always willing to learn new techy stuff.
  • Sometimes is good to be the dumbest one of the group. You learn so much!
  • This was a story that I could blog about. (Of course no names are used in this post).
My first impression was thinking “cool”; let’s compare Visual Studio TFS vs JIRA. Immediately I got a comment back with: “Sure but JIRA by itself is more like an issue tracker in simple terms”. That said I noticed that I knew too little about it and before doing a “battle” between products I should find out more about them.

My second take was: “I want to implement a solution that benefits the team and therefor the company”. It was not about what tool was better but rather about helping the team on having a better collaboration with an efficient way to deliver better products.

His technical team if formed by: Microsoft, Java, objective C, Ruby and front-end developers; mostly seniors, with a couple of Solution Architects and technical leads. The development team (including QA manager and QA analysts) was a total of 30.

Before We Start
This article is not about going deep into each product. It is more about what was explored, consider it an introduction for those that are getting a little curious about this subject and are considering on using some of these tools.

INSIGHT NOTE: Doing research, POV, LABS within a group and not by yourself (as I normally have to) it is so exciting. That is when the right set of people with the right attitude and similar goals come together. The ideas and knowledge transfer (collaboration in general) flows naturally. It has been a long time since I’ve done that and I had to say it felt really nice.
This research took 4 weekends (I joined in the last 2) of conference calls, video chatting and the cloud (a true collaborative experience I have to say). The team of now 4 (with me) was divided in 2 groups:
  • The 2 with Visual Studio and TFS knowledge (not necessary experts) went through JIRA.
  • The other 2 were assigned to Visual Studio TFS.
In this article I’m trying to be as impartial and fair as possible and also very general. I’m not saying in any way that one product is better than other, it depends on the scenario. If you have any comments or anything to contribute please send me your comments and let’s start a constructive conversation/discussion about it.

The story
As the production team always busy working on designing, developing and QA’ing applications for their clients the decision was to find the proper set of tools (ALM, CI, Source Control and others) that could help them. There are a bunch of tools out there but selecting the correct one, where one of the keywords is integration, for your organization is where it gets interesting.

As I said before, consider this more as an introduction article, so in that same note let’s read some definitions:
Application Lifecycle Management (ALM): it refers to the management of a product in all the different phases involved in its creation. With that we are talking about project management, requirement management, software architecture, software development, QA, maintenance, change management and releases/builds.

There are systems (either unified under one product or an integration of a group) that attempt to provide the tools to make our life easier when we are going through the process of creating a software solution.

Continuous Integration (CI):The practice, in software engineering, of merging all developer working copies with a shared mainline several times a day” – quote from Wikipedia.  It is intended to prevent integration problems when going through deployments.

Here are just a few of them:
  •  Microsoft Visual Studio TFS
  • Teamcity
  • Jenkins
  • Bamboo (from Atlassian)
Version Control System (VCS):  a system that allows us to manage the file changes around the development. The files can be documents, programs (or files related to an application, website, library), images and others.
Here is a list with the popular ones:
  • TFS
  • SVN
  •  Git
  • Mercurial

The case
In this case we had:
  • 10 C# developers incline to Microsoft technology.
  • 10 on the other side of the fence.
  • The front-end developers.
  • The QA team.
  • An already CI system implemented (Teamcity).
  • A division in terms of source control: SVN and Git.
  • Bugs and issue tracking flying in emails.
Parenthesis: one thing to keep in mind that we are talking about best practices and tools to support them but the main thing is that all this is for people to use, therefor the company and their members should be willing to implement and use it properly to increase the productivity, otherwise the complete opposite happens along with throwing away money.

While we were going through the research, and our possible solutions to bring together communication, documentation, automation builds; we also started to think about scalability. The first part was to improve the efficiency within the development team. The future was to see if we could also add the project managers into the mix making all these groups working together as one: project managers, QA team, development team, and build/implementation admins.

ALM in Microsoft world:
The Visual Studio TFS has it all for the ALM.
  Picture from MSDN
   Cool features to know about:
  • You can use it with Git for your source control.
  • There is an existing plugin for integrating TFS with JIRA.
  • CI/builds
  • Collaboration
  • Modeling and Design
  • Report progress
  •  Test and track progress for each milestone.

JIRA:
This is an issue tracking system by Atlassian , which defines it as a tracker for teams for planning and building products, used for capturing and organizes issues, assigning work and follow team activities.
As an issue tracker it has heavy competition out there:
  • TFS (as we have talked in this article)
  • YourTrack
JIRA by itself is just a subset of what Microsoft ALM complete suite offers. But that is not the complete story. Atlassian has other products that combining them gives you a complete ALM system:
  • JIRA for issue tracking
  • Bamboo for CI
  • Confluence for team collaboration

To continue the comparison both (Microsoft and Atlassian) offers cloud-based or server installation:

What was our conclusion?
At the end, even though I had to say Visual Studio TFS was my preference and it is a great option, we had to be objective and consider the right option for the complete team and the conditions around us. We studied:
  • The budget approved considering 25-30 users.
  • POC and the need to present the case in a way that this approach could be implemented in a short-period of time.
  • Using existing technology. For source control they have SVN and Git. The intention for them is to continue migrating to Git (they were using BitBucket  by Atlassian). Instead of a thought we made that a statement and put it in the plan for the next month to accomplish.
  • For CI they have teamcity. There is already a plugin for integrating JIRA and teamcity. Note: We did not go through the implementation and assumed this will work as expected. 
We ended up selecting the JIRA issue tracking service. Bitbucket is already an Attlasian tool that they will integrate with JIRA. The developers felt comfortable (90% of them) with the solution as they already knew Git and they were moving the Source Control from SVN to Git anyway.

This solution right out the bat is solving having the issue tracking flying via emails and it is using the same provider that will provide their new source repository. Part of the team was already familiar with the Atlassian products and it would not be hard for the others to adjust.

In terms of budget and based on their team this seems as the better option for them. What was finally added to the case was a request for a revision 6 months post implementation for evaluating the feature JIRA agile project management.

Summary
It is not fair to compare TFS and JIRA as they are built for 2 different things. Jira is an issue tracker while TFS, if using the full suite, is a complete ALM.

For those who think that TFS is a “close solution”, we know that can be integrated with other 3rs party source control and issue tracking systems.

Choosing a solution is about evaluating the current state, scalability, integration and the team that will be using the tools.

It is the providers (Microsoft , Atlassian or others) job to sale you their tools as the best ones not yours.
In this particular case they are both really close depending on your needs. So it is your job (VPs, Architects and/or Seniors) to select the one that better suits the company and it is going to help bringing you work to the next level.  Budget is important, but also listening to the main resource (your team), that is the one using the tools on the daily basis and building your apps, is important.  

When considering a tool and checking the budget for the implementation make sure to consider what you are going to spent and what are you going to save (or gain) in an X period of time for determine the real value and cost of the initiative. Something that is really cheap might cost you a lot in the long run and vice-versa.

Trending posts

AGILE For DIGITAL AGENCIES

Introduction Some Digital agencies have a project process where waterfalls still plays a big part of it, and as far as I can tell, the tech team is usually the one suffering as they are at the last part of the chain left with limited budget and time for execution. I do believe that adopting an Agile approach could make a Digital Agency better and faster. In this article I’m presenting you just another point of view of why it make sense looking at Agile Methodology.  Why Agile for a Digital Agency? The Agile movement started in the software development industry, but it has being proven to be useful in others as well. It becomes handy for the type of business that has changing priorities, changing requirements and flexible deliverables. In the Digital Agency of today you need a different mindset. Creative will always play a huge role (“the bread and butter”). But the “big guys” need to understand that without technology there is no Digital Agency. Technical resources are

AI with great power comes responsibility

Generative AI continues to be front and centre of all topics. Companies continue to make an effort for making sense of the technology, investing in their teams, as well as vendors/providers in order to “crack” those use cases that will give them the advantage in this competitive market, and while we are still in this phase of the “AI revolution” where things are still getting sorted.   Photo by Google DeepMind on Unsplash I bet that Uncle Ben’s advise could go beyond Peter Parker, as many of us can make use of that wisdom due to the many things that are currently happening. AI would not be the exception when using this iconic phrase from one of the best comics out there. Uncle Ben and Peter Parker - Spiderman A short list of products out there in the space of generated AI: Text to image Dall.E-2 Fotor Midjourney NightCafe Adobe Firefly

Designing Habit Forming Mobile Application

Mobile Applications have become an integral part of our daily lives - we use mobile apps as alarm clocks to wake us up in the morning, to create to do lists when we start our day, to communicate with our colleagues at work via apps like Skype. We even check reviews of restaurants to visit on apps like Yelp and we seek entertainment on apps like Netflix and spotify. So what drives us to use these apps so seamlessly in our daily lives? Why we prefer some apps over others? Is there a science behind designing successful mobile apps like Facebook?  Photo by Peter C from Pexels A study in US revealed that a user between the age of 18 and 44 visits the Facebook app on average 14 times a day [1]. This shows that using the Facebook app is a daily routine for many of its users. This makes Facebook a great example of a habit forming mobile app which is designed with human psychology in mind that encourages habit forming behavior in its users .   I recently attended a seminar on the de

This blog uses cookies to improve your browsing experience. Simple analytics might be in place for pageviews purposes. They are harmless and never personally identify you.

Agreed