How Researchers Track Developer Productivity in Bitbucket

April 5, 2016
#How To#Bitbucket#Case Study
9 min
bitbucket code review

I am in charge of several people in a development project and Awesome Graphs helps me to see the best tasks assignation, the team performance, and the critical points along the year. In this way, I can make the best decisions to reduce costs and shorten the turnaround time for the solutions. Moreover, it is a way to help boost the competitiveness of my team, track developer productivity, and not be intrusive in their personal work.

Javier López Ruiz, Planificando

Planificando, our customer, is a consolidated group of interdisciplinary researchers from the University of Alcalá, specialists from other universities and partner companies. It specializes in the research and development of software solutions for the optimization of logistics planning and transportation using advanced Artificial Intelligence techniques.

Chronos is one of Planificando’s teams. It uses Bitbucket Server to collaborate and manage its Git repositories. While Bitbucket meets Planificando’s major needs when it comes to code management, there are no inbuilt features that they could use to analyze the contribution statistics and efficiently monitor the activity in repositories.

That is why Planificando decided to extend the Bitbucket functionality by installing the Awesome Graphs for Bitbucket app that brings in multiples graphs and charts and allows the team to achieve their goals

Commit log

Chronos uses the activity stream provided by Awesome Graphs as a commit log. The activity stream is available as a complement for several graphs: Contributions and Activity.

The Contributions graph is located in the profile of each Bitbucket user. It shows all commits and pull requests that a user made over the last year.

The Activity graph can be found in each repository and project. In other words, it is displayed below the charts and shows all recent commits and pull requests of a repository or project with:

  • related files
  • links to the associated Jira issues
  • commit hashes
  • change type lozenges

To sum up, the team mostly uses the activity stream of the Activity graph. When it is needed to see the commit log on the project level across all repositories, they open the Activity page in the project and browse the activity stream there.

To take a look at the list of recent commits across all branches in one particular repository, a user goes to the Activity page of that repository.

Commit activity to track developer productivity

When it comes to evaluating the team performance, the team lead finds the Contributors graph especially useful. It has the summary graph built based on the number of total contributions (commits, additions, or deletions) made in a repository or project over a certain time span and personal graphs of each contributor.

commit activity in Bitbucet

The Chronos team lead usually overviews the tendency about the number of commits of each member of the team in Contributors on the project level. He uses the Repository selection drop-down to drill down and sees the graphs rendered based on the statistics of one of the project repositories.

track developer productivity in Bitbucket

With the help of individual graphs the team lead learns:

  • during which periods a contributor was most active
  • what contributors have the biggest number of contributions (it’s easy to find that out as contributors with the biggest number of contributions are on the top of the Contributor list)
  • how many commits certain contributors made, how many lines of code they added and deleted over the selected time span

Weekly commit frequency

Moreover, the Chronos team monitors the development flow using the Commits graph that shows:

  • bar chart with the number of commits made over the last year grouped by week
  • scatter chart with detailed daily commit statistics of the selected week

weekly commit frequency in Bitbucket

Every week the team views the commit frequency on the Commits graph. In short, if the number of commits is off, they look into it to see what happened and how can be normalized.

Contributor calendar

From time to time the team lead needs to get a resume of the contribution activity of each member of the team. For that reason, he goes to the Contributions page in the user profile of every team member. After that, he selects the needed time span and takes a look at the Contributor calendar.

The calendar visualizes the number of contributions (commits and pull requests) a user made each day during the past year in all repositories. Here the team lead can see:

  • on what days a user was most active and made more commits and pull requests
  • how many contributions a user made on a particular day
  • details about the user’s commits and pull requests in the activity stream below the calendar

contributor activity in Bitbucket

The stats showing the total number of contributions for the last year, on what day the maximum number of contributions were made, dates, and duration of the current and longest strikes also comes in handy when analyzing the results of the past year.

Conclusion

Thanks to the Awesome Graphs for Bitbucket app, Planificando is getting the contribution statistics data in a summarized and visual form easy to analyze and use for decision making.

Moreover, this solution helps the team to stay on track, discover bottlenecks as soon as they arise, and improve work processes based on the insights that come when studying graphs at retrospectives.

Read more case studies to see how our customers benefit from using Awesome Graphs for Bitbucket in their work:

Related posts