Atlanta—The OpenStack cloud platform is an open-source project that enjoys the participation of more than 1,200 developers who are contributing code. The job of making sure that OpenStack developers are working together and platform releases occur on time is the job of Thierry Carrez.
In a session at the OpenStack Summit here, Carrez, who has been in charge of OpenStack release management since 2010, detailed the tricks of the trade for OpenStack project management.
"OpenStack is an innovation project where anyone can propose a change," Carrez said. "There are lots of different companies involved, and the project does not have a traditional management structure."
OpenStack uses a number of different techniques and tricks to co-ordinate and manage OpenStack releases. The first trick, Carrez said, is having time-based releases. OpenStack now has a regular six-month cadence for releases. For example, the Icehouse release debuted on April 17 while its predecessor release, Havana, came out in October 2013. The next OpenStack release, code-named Juno, is set to debut next October.
OpenStack as a platform is made up of multiple projects for compute, storage, identity and networking. Without a common six-month cycle, it would be difficult to align all the projects, Carrez said.
Another project management technique Carrez used is having feature freezes for releases, which tend to happen six weeks before a major OpenStack release
"So, by a given date, you can't add anything new," Carrez said.
By having a feature freeze in place, there is review time built into a release schedule. Carrez noted that the feature freeze also encourages developers to focus on things that are relevant for producing a release such as documentation and quality-assurance testing.
"We need the feature flow to slow down so things can be documented and tested," Carrez said.
Having design summits are another core project management technique OpenStack uses for project management. An OpenStack design summit is held every six months, both to celebrate a new release and to get developers together to discuss and brainstorm for the next release.
Design summits also serve to help overcome some project management coordination challenges that can come up. One of those challenges is developer anger that can ferment on a developer mailing list.
"It's really easy to get pissed off by someone to the point where you don't want to talk to them," Carrez said. "The design summits get people get face-to-face and that guy that seems to be [nasty] on the mailing list is actually quite a nice guy in person."
Another challenge for OpenStack is the distributed nature of project development across multiple organizations. In particular, the risk of a water-cooler effect is a concern that Carrez has taken steps to avoid at OpenStack. In the water-cooler effect, developers in the same organizations talk to each other around the water cooler in their own locations and make decisions without involving others.
"To solve that, we make sure all discussions are on a mailing list and we have diversity with teams from multiple companies to prevent the water-cooler effect from happening," Carrez said.
Tracking tasks across individual OpenStack project boundaries is another key challenge. Carrez said that there is a technology being developed now called "Storyboard" to help deal with that issue by having a task-tracking platform for OpenStack.
From a leadership perspective, the OpenStack project has built its governance structure to help foster a community of participation. It's important to make sure that the OpenStack project doesn't lose touch with everyday issues, Carrez said.
Project technical leaders (PTLs) who lead individual OpenStack projects are elected every six months, and the OpenStack Technical Committee is elected every year. The goal is to have project governance that is representative of contributors.
"This helps prevent us from being completely disconnected with the contributor base," Carrez said.
Sean Michael Kerner is a senior editor at eWEEK and InternetNews.com. Follow him on Twitter @TechJournalist.