The end of December and beginning of January are relatively quiet in terms of development on the code that runs element14 Community, so it's a great opportunity for us to improve some of processes and tools we use behind the scenes.

 

We've been using a Jive-hosted version of the JIRA work/bug tracking tool, but since it's hosted by a 3rd party, we've had limited control over the system and we were finding that we wanted to do more with it than was possible. We've now migrated to our own Cloud instance of JIRA that's hosted Atlassian. Some of the key advantages are;

 

  • It's a lot faster than the Jive-hosted system
  • We've created our own custom workflow to streamline how tickets are dealt with, and to fit it around our internal systems & processes
  • We can now install add-ins into JIRA to give us much better reporting on who in the team has capacity, and will help a lot with release planning

 

 

Jive also gave us a hosted version of Subversion for source control. This has been pretty good over the years, but it's slow, and Git had a lot more to offer. Instead of creating our own Git server, we decided to go for a private project hosted with GitHub. We used an import tool to bring across the entire Subversion commit history, and linked GitHub commits into our new JIRA system (so that you can see source code changes against a ticket).

 

On our Windows development PCs, we're using TortoiseGit, and takes some of the pain away from learning a new source control system.. it's very similar to TortoiseSVN, which we've been using for years. The Unix build server doesn't have to change a great deal.. we can actually carry on using the svn client, since GitHub provides an svn URL to connect to.. so the build scripts have hardly changed.

 

There are different workflows that you can use with git, and we've adopted the GitFlow Workflow, which suited the way we want to work the best.

 

gitflow.png

 

 

One reason we chose to host both these systems in the Cloud so that nobody from the team needs to be on the company network (or VPN) to access the things they need. The cost is also pretty low compared to sourcing a server and maintaining it ourselves.