Canonical
on 4 October 2010
Summary
As a leading provider of wireless solutions to global telecommunication carriers and device manufacturers, Wavesat runs a tight schedule of multiple projects. Despite their many years of experience successfully bringing leading edge solutions to market they wanted to improve their productivity and efficiency. In particular, they wanted to improve their code release process and felt that their development team could benefit from a next generation version control system (VCS). After implementing Bazaar and receiving training from Canonical their development teams are seeing higher productivity and fewer code management issues, ultimately leading to more streamlined workflows and lower release costs.
The challenge
Managing software code from multiple project streams, especially when running in parallel, can be tricky at best. As Wavesat often run multiple parallel projects, they face complex merge issues where many features or fixes need to be merged at once during release. The complexity of these merges brought undue pressure to certain development areas, which required additional resources and resulted in additional unforeseen project costs.
“it is important for us to have the right system and tools in place so that we can work effectively and efficiently between geographies”
Using a first generation VCS without comprehensive tags for code management also meant that fixing bugs in released code was a very time consuming task. This also increased the pressure on developers to deliver on time, especially when a quick turn around was required.
Wavesat also has the added complexity of a development team that has grown to spread across the globe. “Now that we have teams in Montreal, India and Japan it is important for us to have the right system and tools in place so that we can work effectively and efficiently between geographies. We can’t afford to have delays simply because the teams are distributed.” said Wavesat Vice President of R&D, Thomas Wilson.
The solution
After comparing and analysing the feature and service differences of a number of proprietary and open source VCS, Wavesat decided to use Bazaar with Canonical services because it offered a superior set of functionality with the necessary support services.
Although Bazaar is very user friendly, the training and support from Canonical was invaluable. It meant that we could convert much more quickly without hassles or uncertainty.
Better tagging improves productivity and reduces costs
Bazaar’s more sophisticated tagging system and intelligent automatic merges has made it a lot easier for Wavesat to perform multiple merges with fewer conflicts and issues. This has removed undue pressure and stress placed on development areas “reducing over-time and additional resource requirements and costs”, said Wilson. These new features have “made it much easier to track changes. We now have fewer merge conflicts and wrong merges, and we can fix problems with any release much faster and more easily. It means that our projects and workflows are much more streamlined, which has definitely helped us reduce project costs.”
Workflow flexibility
Wavesat were also looking for flexibility in their VCS solution. Wilson said, “Although our teams are now distributed, we wanted a flexible system that can support both centralized and distributed workflows, which Bazaar does. At the same time we also needed something that didn’t require too much maintenance or administration. Bazaar fit both these requirements”
Higher performance increases productivity for distributed teams
Performance of the VCS for a distributed team was important to improve overall productivity. “We needed a VCS that would allow all our developers to reliably and quickly check-out and check-in code, especially for some teams that have to work in regions with unreliable internet connections or power outages. Using Bazaar has significantly raised the productivity of those teams.” Wilson said.
Safeguarding code integrity reduces code management issues
Wavesat also wanted a way to ensure the integrity and robustness of their release code, so that it could be protected against accidental code corruption. By setting up authorised gatekeepers and additional measures to test the integrity of the code before it is committed to the release branch “we felt that we had more control over who is allowed to commit code to a release, as well as the quality of the code being committed” said Wilson.
Ensuring a smooth migration was an essential part of deciding which VCS to convert to. “It was very important for us to be able to migrate as easily as possible and with absolute minimal disruption to the research and development teams. Although Bazaar is very user friendly, the training and support from Canonical was invaluable. It meant that we could convert much more quickly without hassles or uncertainty.” said Wilson.
Results
“Using Bazaar with Canonical services has really improved the efficiency of our code management. We now have far fewer rollback and conflict issues, and we can now resolve those issues much faster than we were previously able to”, said Wilson, “It has changed our operating environment, helping us work much more productively at a lower cost.”