Rocket R&D Implements Agile Development and Delivery
Rocket Software R&D has embraced the Agile Manifesto and philosophy across the board. I could espouse and list the many benefits of Agile but will filter it down to this: Agile ensures we expedite delivery of quality products that address our customers’ ever-changing business challenges and product requirements.
While waterfall had its place, at Rocket MultiValue we’ve adopted the Scaled Agile Framework (SAFe) for implementing Agile across the enterprise. If you have not heard of SAFe, in short it unifies the best principles from many accepted development methodologies and design practices which enables large organizations to create alignment across teams. SAFe also empowers us to learn as we go via Agile ceremonies called Retrospectives and through customer involvement and feedback. SAFe ultimately contributes to a culture of learning here at Rocket R&D.
Rocket Connection Manager is the first MultiValue product to embrace Agile ceremonies and philosophy into its development process. With Connection Manager, we specifically implemented a three-week sprint cycle process. The first two weeks of the sprint are focused on feature development and testing. The last week of the sprint is dedicated to hardening, automation, and information development so that we can have an actual releasable product at the end of the sprint.
Cross functional groups including Support, Customer Solutioning Engineers (CSEs), Information Development (ID), and User Interface (UX) actively participate in our backlog grooming sessions, aka planning sessions. During these sessions, a feature — or in Agile terms, a user story — is now built to be much more inclusive of all those different perspectives.
The CSE and Support teams bring in their real-world experience and further refine the story from their perspective. For example, we know that HTTP Status Error Codes can be quite nebulous and frustrating at times. This issue, including a lack of contextually relevant information, has plagued our customers and our support teams alike. MV Customers have had to rely on support staff and the escalation process to get guidance on interpretation and resolution. One of our objectives for Connection Manager, related to support, is to reduce time to resolution for our customers. With this in mind, the team was able to take a simple feature request and enhance it to meet that goal. Connection Manager’s HTTP Status Error Codes will now provide the reason for the error, a possible resolution, and additional information like a timestamp for customers, to increase their self-sufficiency and reduce time to resolution. In addition, this solution was vetted and further enhanced from customer feedback gained through the Connection Manager beta program that just wrapped up at the end of October. Beta participants had an opportunity to provide feedback and then were able to see their feedback incorporated into the product within a sprint cycle or two.
The pace at which we were revising the product and addressing changes to Connection Manager, delivering releases to customers at the end of every three-week sprint, impressed our beta program participants. Agile processes were also implemented in our Information Development organization (aka documentation group). With every iteration of the software, associated documentation (release notes, installation guide, user guides) were also updated with new features and bugs that were addressed since the last release. Not only was our ID department keeping pace with our sprints, but our support team was also kept informed about all the changes in every release through the end of the sprint demos.
While that release frequency made sense for a beta program it probably doesn’t for a GA product. We will evaluate the level of frequency that makes sense for our customers and release Connection Manager accordingly, ensuring we continue to include features that address problems gathered through feedback from internal and external customers. In short, we will deliver software according to our customers’ agendas and not ours.
In addition to adopting Agile Software Development, MV Product Management is practicing Pragmatic Marketing’s Product Management principles. Pragmatic Marketing dictates that we look to the data, particularly the market data, when choosing which problems to prioritize and address. By focusing on the right market problems, we can clearly define a path for the products’ success.
Through the marriage of Pragmatic Marketing / Product Management and Agile Software Development, customers are starting to see the benefits in the form of better code, better documentation, and most importantly the right and inclusive features that address their needs.