By Oliver Asmus
In an earlier post, I wrote about the five things that any enterprise should do before embarking on a cloud migration project. This post focuses on another aspect of cloud migration: Agile development.
If you’re working on a cloud migration project, you need to be thinking about Agile development practices. Why? Because the cloud is dependent upon Agile development. And there’s a big benefit to adopting Agile processes: they streamline cloud migration, helping your organization get to the cloud more quickly and innovate more easily once you get there.
The Cloud Demands Speed
Are you unfamiliar with Agile development? Here’s a crash course.
Typically, most companies using traditional waterfall development methodologies spend months on design and planning a product release, followed by months of development, followed by months of testing, and then finally releasing software which might or might not turn out to meet the requirements specified all those months ago.
Alternatively, an organization practicing Agile development begins with a minimum viable product (MVP) — the minimum needed to create a “testable” product or service. Once that MVP is built, features and extensions are added after short development “sprints,” which typically each last two weeks. Developers are always working through “burn-down” lists of the most critical features or corrections to code.
In short, Agile brings speed. And speed is king in our cloud-filled digital era. Here are five tips to help you incorporate Agile practices and bring essential speed to your cloud migration efforts.
1. Recognize that cloud services require Agile
Start with helping your organization confront the basic fact: If you’re adopting the cloud (who isn’t?), you need to adopt Agile development and agile operations as well. Why? Because applications, including major software as a service(SaaS) applications (like Salesforce and SaaS application suites like Office 365) are updated continually.
With cloud applications changing so quickly, you and your organization can’t afford to stick with waterfall development processes. In six months, a cloud application that’s updated on a bi-monthly sprint schedule has been updated twelve times. It’s likely that features and interfaces a waterfall project depends on will have changed in that time.
With their biweekly updates, cloud apps and mobile apps are now setting the metronome for your entire IT organization’s release schedule.
2. Adopt Agile as a company-wide initiative
Because Agile methodologies are usually first adopted in engineering departments, many organizations make the mistake of thinking of Agile as something that matters only to engineering teams. But those engineering teams will quickly hit a roadblock if the operations team isn’t ready to deploy software releases at the end of every sprint.
The features and enhancements included in those releases should almost always be vetted and shaped by the product management team, so they should be involved in the process, too. How about customer support? Wouldn’t you want them apprised of the features and exceptions included in the latest sprint?
Once the engineering team adopts Agile practices, the rest of the organization needs to follow suit. There are big advantages to the whole organization becoming Agile. Collaboration and teamwork become more effective — and they must be in order to manage and coordinate changes that are occurring so quickly.
The organization overall becomes much more responsive to customers, introducing features and fixes in a fraction of the time required by waterfall practices. The organization can respond to new market opportunities faster, too. As a result, the organization’s cloud operations become faster and much more efficient.
For more about adopting Agile as a company-wide initiative, see the Slalom white paper, “Build a World-Changing Delivery Team.”
3. Embrace Agile as a journey, not a discrete activity
Does adopting Agile seem daunting? That’s an understandable reaction, but keep in mind that this is not a one-day workshop or a Gantt chart milestone. The evolution to Agile will likely take months or even years. It ends only when your organization is in a state of continuous learning and improvement.
That said, you should absolutely adopt a formal plan for going Agile, and that plan should include regularly scheduled training sessions and set milestones. 🙂 But take a deep breath. It’s a journey, not a pole-vaulting competition. You’ll get there, and you’ll reap rewards along the way.
For Slalom’s point of view on transforming organizations with Agile practices, see “Slalom’s Approach to Agile Transformation.”
4. Train DevOps teams and business leaders as you go
If you bring in consultants, be sure that they involve your internal teams every step of the way. The last thing you want is to be given binders of process descriptions and lots of charts at the end of their engagement as they bid you farewell.
Consultants should work with developers, operations staff and business leaders (at a minimum), and all stakeholders should be involved in training and decision-making during the course of the engagement. Business leaders, in particular, might be unfamiliar with this comparatively rapid-fire style of development and might need help rethinking strategies and tactics to not only adapt to Agile but also to fully take advantage of it.
5. Learn how to “Eat an Airplane”
When it comes to adopting Agile practices and moving to the cloud, look to Michel Lotito (1950-2007), who was also known as Monsieur Mangetout (“Mr. Eat-All”). Lotito was a French entertainer famous for eating unusual objects such as shopping carts and bicycles.
His magnum opus was devouring an entire Cessna 150 aircraft, which he cut into tiny pieces and consumed over the course of several years. That turns out to be the only way you can eat an airplane (not that we recommend trying): cut the plane into tiny pieces and wash down a piece or two daily.
The prospect of consuming an entire airplane is daunting, but by breaking the problem into little pieces, Lotito was able to succeed at something others would not have even dared try.
You can take the same approach to cloud migration and Agile practices that Lotito took to eating his airplane. Break your transformation into little pieces and tackle them one at a time, day after day. In this way, what seems impossible is quite achievable.
It takes commitment, a plan and stead work towards your goal. But little by little, you will get there. And one day, you will look around and have a fully Agile organization…capable of taking on anything the cloud-era demands.
Interested in learning the role of the modern integration and Agile practices in speeding cloud migration? Please contact one of our Boomi integration cloud experts today.