In our increasingly globalized world, engineering teams are becoming more and more distributed. In addition to reducing cost, competition for world class talent and expertise drives engineering teams to recruit and operate on a global scale. At the same time, companies want to give their employees flexibility to improve the quality of life by working from home or some vacation paradise. An equally important aspect for us at GroupSwim is to contribute to the health of our beloved earth by reducing pollution through less business travel and commuting by cars. These things all mean that there is a constant, growing need for effective collaboration within distributed engineering teams.
There are a number of tools distributed engineering teams traditionally use. These tools tend to focus on managing the software development process from coding to project management. At GroupSwim, we expand the focus to also encompass requirements gathering, design decisions, and questions and answers. One of the more important aspects that we want to address is building up core know-how in the company and make it accessible to people who join our company for a short period or as part of our permanent staff. We want to track important questions and critical decision and make sure these are all resolved in a timely manner and within the group of people that need to have a say.
Traditionally, software engineering teams are dependent on a few critical tools to function at all. The most important tool for software development is an efficient source control system. In addition, a team can hardly function without bug and issue tracking and project management support. At GroupSwim, we use Subversion, Bugzilla and Scrumworks for these core engineering tasks. Although these tools are necessary for an distributed engineering team to work, they are not sufficient.
These tools do not address the sharing of investigative information; questions and answers; resolution of design and requirements questions; and other types of information that is essential for everybody to feel involved and remove any impediments that they encounter. Neither do these base tools provide any sharing of knowledge or history within the organization.
The key here is to make information easy to find, and also to have the right mechanisms for enabling users to monitor and follow discussions. It must be easy for a manager to identify open questions and make sure they are addressed and resolved. As we work in an iterative and agile way, updating requirements, specifications and designs must be simple and ensure everyone is informed and can change their plans accordingly.
At GroupSwim, we eat our own dog food. We use our application for all collaboration, decision making and information sharing. It has helped us tremendously, and there is no excuse for not being aware or responding in a timely manner. The team gets a sense of urgency by collaborating in our Groupswim site, even if we are distributed over three continents (which we are). We have generated feature requests that I believe will enhance the value of Groupswim even more, and we are looking forward to releasing them. Not only for the benefit of our customers, but also for ourselves.
Since we are a Software company, we do not want to maintain any infrastructure not related to our core business. We therefore purchase Subversion, Bugzilla, etc. as services rather than hosting them ourselves. This also gives me peace of mind as I know there are backup routines and that I get geographic distribution of our various software assets. Groupswim is similarly an SaaS product that can be easily purchased by an engineering team that needs an effective collaboration environment. And for those organizations with multiple separate teams and projects, the Groupswim site concept give an very easy way to create new collaboration spaces.
Finally, I like to point out one interesting aspects of GroupSwim that has been of great value to us. A manager can decide to allow an external Yahoo or Google group to be integrated into a GroupSwim site. This makes the external group searchable and readable. In addition, GroupSwim site member can participate in discussions, post questions, etc. in those groups. For our projects, I have included relevant groups on semantic technologies, Java, Ruby etc. depending on the what the team is working on. This feature helps the GroupSwim site becoming the place to find information, regardless if it is created within our team or in collaboration with people outside our own company.
As a summary, these are the tools we use to for communication and collaboration:
- GroupSwim
- Subversion
- Bugzilla
- Scrumworks
- Skype
- Google docs
And Email obviously.
Tags: collaboration, engineering, development
August 25, 2008 at 9:19 pm |
WWPYCBW: Technology (August 26, 2008)…
DocuLex Archive Studio DocuLex released Archive Studio, a web-based content management product. “The service enables secure document warehousing and sharing for practical knowledge management and collaboration …. Archive Studio is facilitated by Web…