A Summer Proof of Concept
ErikaHorrocks 270004AK9X Visits (5998)
Each year, IBM brings some of the brightest and most promising MBA and software development students from universities around the world into 12-week summer programs at 15 labs around the world. This summer, I had the honor of working with one of those teams, at our lab in RTP, NC. Hannah Stern is an MBA candidate from Columbia Business School in New York. She partnered with three software developers to drive an agile team focused on "what if" development for one of our flagship products. Below, Hannah describes her immersion into the agile process, and how using sprints and scrums became second-nature.
Rational Digital Marketing
A Summer Proof of Concept
by Hannah Stern
This summer I had the unique opportunity to work with a team of technical interns, Kathryne Hawthorne (UNC), Sarah Nelson (Georgia Tech) and Denis Li (Duke), within the Rational software group here at IBM on a project focused on making Rational Team Concert an even better tool, particularly looking at where enhancements can be made to the getting started process for users of the Team Concert web interface. Our goal was to keep in mind how the tool could serve the needs of small, agile teams even better. As interns, we realize that many of these changes may never be shipped, but thinking of this project as a proof of concept we wanted to share some of the ideas we were able to bring closer to reality this summer. During our time working on the tool, we wanted to keep a few things top of mind:
1. Making the getting started process in the Rational Team Concert web tool as easy as possible for a project lead
Because many small, budget-conscious teams do not always have the resources to purchase costly support offerings, we first directed our efforts toward developing a program that quickly walks users through the project setup and creation process. Keeping in mind that every agile team runs a little bit differently, our setup wizard is also meant to familiarize users with some of the terminology in Team Concert and indicate how various elements of the project relate to one another. In our proposed design, after a few quick steps, the user has completed the basic elements need to set up a project and in the process has invited other project members, assigned them roles according to agile development principles, and set up a timeline, team sprints and plans for the project.
2. Creating a project home page where Rational Team Concert web users can more actively manage the day-to-day aspects of running an agile project
Next we tackled the typical project management requirements that come after setting up the core framework of a project and learning about how Team Concert facilitates a team's agile work style. In our design, the user is now guided to the project home page. This intuitive interface allows a user to easily leverage Team Concert's agile tool set to quickly perform important tasks like these:
The Team Concert web interface is a valuable part of its tool set. Here at IBM, we recognize that as teams expand both in size and geography, web-based collaboration tools continue to grow in importance and that users are demanding more and more functionality out of these tools. That's why the team is invested in making the Team Concert web interface an even more valuable resource for small, agile teams. Understanding the specific needs of these teams and ensuring our tool meets their needs is the most important part of the changes we have illustrated for the Team Concert web tool.
But our summer was about more than just thinking of ways to enhance Team Concert. Our team made weekly presentations to some of the top executives within IBM's software group, often answering challenging questions about our work and the changes we were proposing. Meeting with the design and programming teams that work day-in-day-out on the Rational suite helped us grow our understanding of the tool's numerous capabilities as well as improving our understanding of how these teams go about making product improvements with each new release. One particularly interesting aspect of our project was that, as we developed a tool for agile teams, we ourselves were also learning to work as an agile team and dealing very directly with some of the challenges associated with coordinating sprints and meeting the necessary deadlines. What better way to develop a tool for teams learning to use a new tool and getting up to speed on agile development than to live it ourselves?
For me personally, this summer represented a particular challenge as I am not a programmer - or even an especially technical person. I'm a business school student so understanding the obstacles and blockers the technical team was facing involved a rather steep learning curve. Helping the team work through those issues without having a deep knowledge of the particulars of any given issue and ensuring that we all had the same vision in mind at the end of the day was not always easy. However, it offered us all a great opportunity. On one hand, I had to quickly learn a good deal about the technical side of the project. Conversely, my programming peers were challenged to explain their work and the value it was providing to a lay-person like myself – something many computer science majors are not often pushed to do.
Our summer intern team learned a lot from this project and we look forward to seeing some of these ideas come to fruition. Given that IBM is always working on ways to better support agile teams, please feel free to tell us what you think of the concepts discussed here.