Today I managed to carve out some quality hands-on time to play with Wind River Workbench integrated with Rational Team Concert – also known as Jazz. While playing with this development environment, I found myself wishing that "I had these types of development tools back when I was doing embedded development environment".
If you are not familiar with Rational Team Concert (RTC), think of it as a collaborative development platform that unifies planning, tracking, automation of software development processes, team collaboration, work item management, and reporting (think dashboards) with traceability across all artifacts that participate in software delivery processes. By artifacts, I mean things like source code, builds, defects, requirements, log files, change sets, etc… In short, RTC is all about connecting team members.
When integrated with Workbench the integrated development environment provides developers with the ability to connect-with and optimize an embedded device while connecting team members that are participating in the software delivery activities. I strongly believe that to be successful, organizations need to effectively manage both device technology and people collaboration concerns.
There is much that can be said about the environment and the integration opportunities. More of this will come out over time. For now, there are 3 simple things that have got me jazzed up about Workbench and RTC:
1. Clean Integration with Eclipse…
Folks close to me will acknowledge that over the last 8 years, I have had a sinusoidal love-struggle-love-struggle-love-struggle feeling about Eclipse. Hopefully, that is behind me now. Building Workbench on the Eclipse platform is the only way we could have enabled this type of integration for embedded device development. The benefit to a Workbench / RTC user is a cleanly integrated usage experience and traceability of artifacts – like Workbench's Memory Analysis log files – with Rational Team Concert's work-item automation engine. A need that I hear from customers is about how they can improve the collaboration between the platform integration teams and the distributed teams developing the device's application logic. The RTC collaboration infrastructure can help here by sharing much of the system build, test case, and environmental information that must be conveyed the developers to help shorten the "time-to-fix" when defects are found.
Another impressive discovery was that RTC is not just for Java. Many of change management related process templates simply just work with the Eclipse CDT. That was a really nice discovery…
2. It is a Very Pleasant Development Environment…
The Jazz platform brings in a number of widgets that simply make it a delightful environment for software development. Things like snapshots, thumbnail views of images, RSS, and chat all add a little sparkle to the Workbench IDE.
3. RTC/Jazz Doesn't Get in the Way!
As we were thinking about the integration of Workbench with RTC, I have to admit that I was a little nervous about the process automation and reporting aspects of the solution. Not the case. The process automation framework is highly customizable; you can enable as much or as little as you want and get value out of the solution without it getting in the way.RTC puts a lot of emphasis on agile workflows. I really like having out-of-box samples and templates to enact the processes of an agile team, but in using it I discovered that teams that are simply doing milestone or time-boxed based planning would benefit from the solution.
I will be demoing the integration of Workbench and RTC for VxWorks 6.8 at the IBM Innovate Conference in Orlando, Florida. The demo will preview some integration work done by Doug Schaefer and enabled by the IBM Ready for Rational Software team – the group responsible for validating that commercial offerings meet IBM's integration criteria and will be well behaved when inserted in our customer's environments. A special "thank you" to IBM Rational software's Pat McCarthy for his patience in running me through RTC bootcamp.
My goal is to use the demo to provoke some conversation on other integration points. If you can't make the demo and are interested in trying out this integration on your own, drop me comment and I'll post the set-up instructions.