Lean helps Organizations implement DevOps

With more businesses jumping on the DevOps bandwagon, some still struggle during the adaptation. As with any newer methodology, it helps to analyze the best practices of those early adopters to foster a smooth implementation at your own company. Increasingly firms look to Lean, a system focused on improving efficiency first developed in the manufacturing world, as a pathway to DevOps success.

We previously talked about Lean as a popular Agile framework. Let’s look more closely at how it makes implementing DevOps easier for businesses of all sizes. It just might be what your company needs to succeed.

Lean focuses on Process Efficiency

Lean first grew out of a desire to make car manufacturing more efficient through the reduction of waste. When we covered it as an Agile framework earlier this year, we mentioned its appropriateness for companies with well-defined procedures and policies already in place. IT manager, John Rauser recently wrote an article for SD Times illustrating how Lean can also make a positive difference for businesses adopting DevOps.

Rauser notes how Lean emphasizes process efficiency, focusing on optimizing the interaction between those involved on a project. He explains the differences between this approach and traditional IT’s focus on resource efficiency. Since the prime directive of DevOps usually involves improved software delivery, streamlining the flow of that process makes perfect sense.

The hallmarks of Lean – waste reduction, enhanced collaboration, and ultimately faster delivery – dovetail nicely with the principles of DevOps. Rauser feels these same goals need to foster a transition from an IT department made up of functional silos to one group built around the flow of the software development process. Strong collaboration combined with an “experimentation and feedback loop” then becomes basis for a new organizational culture.

Joining the Efficiency Matrix

The Efficiency Matrix, from This is Lean, serves as an abstraction of the pathway from an old school resource-focused IT shop to one that embraces DevOps. Resource efficiency as it relates to localized silos offers little to a modern shop hoping to achieve continuous delivery. Hauser comments that shops using this outdated structure to deliver software in today’s business world suffer from waste due to poor interaction between these silos.

Realizing the inefficiency of their current organizational structure remains the key for most businesses looking at DevOps as a software development panacea. A Lean approach requires this realization before a transformation to a process-based structure begins. Implementing DevOps as a trial project within a subset of the organization serves as a proof of concept for those unsure about the new direction.

Finding someone passionate and experienced about leading this change offers a greater chance of success. This needs to happen before DevOps gets rolled out on a larger scale. Leveraging Agile techniques along with the integration of automation and other tools plays a key role in improving process efficiency.

Ultimately, growing into a mature Lean DevOps organization involves close monitoring while making subtle changes as necessary. It essentially becomes one living organism focused on delivering value as efficiently as possible. This is worthy goal of any software development business in today’s market.

Stay tuned to the Betica Blog for additional dispatches on the ever-changing world of software development. As always, thanks for reading!

Scrum, Lean, Kanban – An Analysis of Agile Frameworks

As Agile continues to mature as a methodology – forged in the fires of real-world software development projects – a variety of Agile frameworks have emerged. Three of these – Lean, Kanban, and Scrum – are arguably the most popular framework examples in the industry. One of these “flavors” may work best for your team, depending on how it builds applications or the specific needs of a particular project.

So lets take a closer look at the top Agile frameworks to help your development organization make a decision on which one fits best. Good luck!

Is it Time to join the Scrum?

Project management pundit, Moira Alexander compared the three popular Agile frameworks for CIO Magazine. We’ll summarize her take on each of them, starting with Scrum, which is beginning to be used in other industries beyond the software development world. Scrum is highlighted by its predefined roles and processes – one example being that the project manager (or facilitator) is referred to as the Scrum Master.

Scrum’s major focus – essentially like Agile itself – is the faster delivery of high quality software. Since project teams are largely expected to be self-organizing, the Scrum Master serves more as a facilitator compared to a traditional project manager. Sprints tend to be more formal, as is the framework itself, which makes it suitable for organizations used to the Waterfall, but wanting to explore a flavor of Agile.

The timeframes of sprints are also more formally defined; lasting anywhere from two to four weeks. Time spent on daily meetings is limited to 15 minutes. Changes to requirements within a sprint are discouraged.

Go Lean for a Waste-free Process

The Lean Agile framework saw its genesis in the manufacturing industry as an attempt to minimize any wasted efforts on a project, while also offering a learning opportunity to the members of the project team. Lean strives for overall systemic improvements while preserving the integrity of the process.

In most cases, Lean demands an even more formalized process than Scrum, making it another Agile framework worthy of consideration for shops coming from more structured and organized methodologies. One exception is the lack of a specific timespan for each sprint. There is also additional flexibility regarding meetings and change requests – they happen when necessary.

Kanban offers the most Flexibility

A framework relying on visual workflows to explain and define the development process, Kanban also provides more flexibility than either Scrum or Lean. Developed in the supply chain world, many software development shops now make it part of how they write code. It focuses on completing the tasks within a project while always striving to improve the underlying processes.

Since Kanban teams are extremely self-organizing, a managerial role isn’t always necessary. There is also a high level of flexibility when it comes to project timelines, the scheduling of meetings, and change control. In short, whatever keeps the project moving forward and the process continuously improving is fair game.

This high level view of the most popular Agile frameworks offers a measure of insight on which one would work best at your shop. Be sure to consider the history and experience level of your development team in addition to your goals for the future.

Stay tuned to the Betica Blog for additional insights and ideas from the evolving world of software development. Thanks for reading!