The popular image of a programmer hunched over a keyboard in a windowless cinder block bunker with pizza boxes being shoved under the door is very 1984 in today's service-oriented architecture world.
Erich Gamma, distinguished engineer at IBM Rational, yesterday presented a very different vision of the future of development teamwork at TheServerSide Java Symposium in Las Vegas. His vision is not of a lone coder in a darkened basement, but more of a musician up on a brightly lit stage playing in an orchestra where everyone knows what everyone else is doing. It is the vision behind the development of Jazz, a joint technology project between IBM Research and IBM Rational to build a scalable, extensible, Eclipse-based team collaboration platform for integrating work across the software and systems development lifecycle.
The Jazz platform was inspired by Gamma's work leading the design of the Eclipse platform's Java Development Tools (JDT), he explained in an interview following his keynote at the symposium.
In a sense, Jazz has had two incarnations.
"There was Jazz the research project, which was about integrating things and collaboration in Eclipse," he explained. "And we liked its name and idea so much that we developed the new Jazz vision on it. But the new Jazz vision is much broader. It's not just about integrating in Eclipse. Jazz is intended to be a platform where many other tools can build upon it for supporting SOA."
Transparency is one of the key concepts learned from Eclipse and now being transferred into the Jazz platform, Gamma said. Where coders of past generations sometimes had a mad scientist mentality working programming magic behind closed doors, Jazz will make sure everyone on a development team knows what everyone else is doing.
"The key thing here is transparency," he said. "That means all information is available at anytime to anybody. There is planning support in there for bug tracking and task management. All the information is available to anybody at their fingertips."
This level of transparency and information accessibility is especially helpful when members of the development teams are geographically dispersed. The need for all team members to be in the know came from the original experience working of JDT.
"We never had the luxury of sitting close together," Gamma recalled, adding that it is true of the developers now working on the new Jazz. "The Jazz team is very distributed in Europe, Canada, U.S. West Coast, East Coast and sometimes even in India. That's how we develop today."
In the Jazz concept, teams working on different projects in the same organization will also share information via RSS feeds.
The idea is to have constant feedback loops with information readily available on bug fixes and patches, but going beyond that so programmers are answering questions raised by members of the larger developer community. The continuous flow of information is another key function of Jazz, Gamma said. Borrowing from the development methodology now known as the Eclipse Way, the flow of information helps each team member focus on the "health" of the project, which, as with personal health, requires the person to take responsibility for staying healthy.
"The practice we learned in Eclipse is how we can achieve transparency and continuous health," Gamma said. "The whole practice is really about continuous planning, continuous design, continuous learning, continuous listening and continuous progress."
That is the practice that has allowed Eclipse to deliver it's projects on time every year for the past five years, he said.
Another benefit of transparency is that it is clear which team members might have both the skills and the availability to join in helping other team members with a project. With all the information on the project available right at the new developer's fingertips, the learning curve is short and productivity is almost immediate.
"It enables ad hoc collaboration," Gamma said. "We think it's a new way of doing collaboration."
While Jazz is currently in an internal pilot at IBM, information and access will be increasingly available to interested developers throughout this year, he said, with a series of Jazz products scheduled for release next year.