Distributed Collocation.. an Oxymoron?

July 12th, 2012 by clucca No comments »

In preparation for Agile 2012 in a few weeks, I’ve decided to talk about collocation. If you watch as many webinars as I do, you’ll notice that many Agilists encourage teams to become collocated – a concept that encourages scrum teams to work together in the same location – because of the many benefits to this concept. Distributed Development 300x233 Distributed Collocation.. an Oxymoron?

Agile teams require high bandwidth communication so they can receive rapid feedback. In addition teams should be cross-functional and self managing. This means that each team should be staffed with developers, testers, doc writers, etc. This enables them to complete a user story without having to go outside the team. The idea is to avoid silos and delays.

But my problem with collocation is not about the benefits, but with this idea that we have to all work in the same location to get the benefits. Think of how many companies work in a distributed nature – lots of startups now work distributed. How are these teams able to deliver software so rapidly? Is it realistic to think that while organizations have been moving to a distributed model for the last 15 years, they would suddenly move back to gain benefits of collocation?

I believe you can have your cake and eat it too. Collocation can be more of a mindset as opposed to physical location. Is it beneficial to have everyone in the same office? Yes, of course. Do we have all of the tools we need to pull this off without actually being the same location? Absolutely.

One method is to apply the concept of virtual co-location. This involves staffing the team with every member they need in a cross functional way, but without being in the same location. This avoids the problem of silo-ing functions to whole teams, and encourages distributed members of the organization to communicate more often. There is no reason not to do this – think of all of the communication channels we have now a-days. From FaceTime, to Skype, development teams can stay in communication with each other in real time. Here at AccuRev, we do virtual scrums via video chat, enabling our teams to be crossfunctional and virtually co-located.

You can still break down the virtual cube walls, without having to bring those teams together. Yes, I believe virtual co-location is possible.

AccuRev Announces New President and CEO Peter Shields

July 10th, 2012 by AccuRev No comments »

AccuRev, Inc. today announced the appointment of Peter Shields as AccuRev’s President and Chief Executive Officer. Mr. Shields, whose position is effective immediately, has spent over 30 years in the software development industry. He replaces Lorne Cooper, who served as AccuRev’s President and CEO for the past seven years.

“AccuRev is a leader in advancing software development, with a strong customer base that spans the globe,” said Mr. Shields. “I am excited to be a part of AccuRev and look forward to building on the success the company has had to date.  The need for process-centric software development tools in the enterprise continues to grow, and AccuRev is well-positioned to benefit from this growth.”

Peter Headshot1 AccuRev Announces New President and CEO Peter Shields

Peter Shields, AccuRev President & CEO

Mr. Shields has an excellent record and extensive experience leading software companies similar to AccuRev. Prior to joining AccuRev, as President and CEO he led SoundBite Communications (SBDT) to an IPO.  Additional assignments included CEO Formation Systems (acquired by Infor), and Vice President of Worldwide Sales at Aspen Technology.

Mr. Shields earned a bachelor’s degree in Engineering from The University of Pennsylvania, and a master’s degree in business administration from The Wharton School of the University of Pennsylvania.

 

 

Ripping out the Plumbing: Why Thinking about Replacing your SCM Tool Could be a Good Idea

June 14th, 2012 by anavickas No comments »

Plumbing1 239x300 Ripping out the Plumbing: Why Thinking about Replacing your SCM Tool Could be a Good Idea
In many ways, software configuration management (SCM) is very similar to a plumbing system. It was probably there when you bought your house, or joined your company. It becomes out-dated and inefficient, and can end up costing a lot more just to maintain than replace. How often do people realistically think about replacing their plumbing, or their SCM tool for that matter? Sure, the transition often requires upfront costs and a temporary lag in progress while a new tool is implemented and teams come up to speed. But what are the potential benefits of reevaluating your toolset, and can those potential benefits outweigh the costs of disturbing the status quo?

Elimination of Merge Hell

Teams often struggle with merges for a release, and end up in “merge hell” . In some cases, the pain is so bad that software doesn’t even get released, or teams have to spend weeks cleaning up a branch. If this was the plumbing system in your house, it could be the equivalent of having a shower that only has ice cold water. This is a problem that we couldn’t tolerate at home, yet because it is accepted part of our day to day “SCM” lives, we tolerate it. Would you take an ice cold shower every day or would you do something about it?

SCM Performance Improvements

Many SCM systems suffer from performance issues. This could be due to the size of the repository or the performance of the network. A huge benefit of changing to a new system is performance improvements – is there a faster tool out there? The productivity gain alone when going from 15 minute check-ins to 30 seconds saves your development team hours. If this was your house, would you tolerate a sink that dribbled water out when you turned the faucet?

SCM tools are highly engrained in day-to-day software development activities. As a result, many processes, regardless of their inefficiency or difficulty, become routine.  When these processes become routine, it is often difficult to realize how impeding they are, or how much these processes can be improved. Many teams are starting to investigate the benefits of “ripping out the plumbing,” by looking for tools that will help them improve software development processes.

Processes such as branching and merging, and even accelerating development as a whole are increasingly important to dev teams, but are proven difficult to establish without the proper tools. So, while replacing your software configuration management tool may seem like an overwhelming task, the potential value that teams can gain from evaluating their tools for can have a dramatic effect on productivity. With the speed and capability of today’s tools, it seems worthwhile to take a step back and see how these new solutions might fit in with your development process and help you optimize the efficiency of your development team.