| | April 20159CIOReviewview of the entire manufacturing process was necessary, and thus, the supply chain concept was born. Similarly, the idea of DevOps came about as a way to improve communication, integration and collaboration between development and operations teams that had been working in their own silos.Three Ways to Improve Speed, Quality, and CostOnce the concept of the supply chain took off, it wasn't long before organizations began investigating ways to optimize it. Thankfully for those of us interested in DevOps, the lessons they learned can be applied directly to the SDLC in support of the ultimate goal--which is getting innovative, high-quality software to market faster and at lower cost.Lesson #1: Don't Optimize in a VacuumIn the example above, it was clear that while manufacturing 1,000 products at a time was technically efficient, it actually tied up production resources that could've been used more effectively and created costly inventory overstock. An analog in the SDLC would be Agile development, which seeks to optimize the early-stage coding process. However, when Agile methodologies are incorporated with no consideration for how they will affect downstream processes, they can create bottlenecks in the testing stages that actually push production dates further out. So the lesson here is to optimize at a macro level, even if it means being less efficient in an individual stage.Lesson #2: Find Your Constraints, and Weed Them OutOnce organizations began examining the supply chain as a unified process, it was easy for them to see where the constraints were--often in manufacturing--and take action to reduce or eliminate them. In the SDLC, development and operations teams are often constrained by limited access to the systems and resources they need to do their jobs. Service virtualization is a tool IT teams can use to not only find these constraints, but weed them out by modeling and simulating the behavior and performance characteristics of dependent systems and services.Lesson #3: Leverage Model-based AutomationSupply chain optimization took a leap forward when organizations began creating models of the entire process and leveraging them to test different scenarios and make data-based decisions about how to meet customer demands. The right release automation tool will enable manifest-driven deployment across the SDLC, which provides reusable and repeatable processes to simplify and streamline application releases. This kind of automation makes it easy for IT teams to address the inevitable changes that occur during development, without having to sacrifice software quality or time-to-market.With the evolution of DevOps so firmly grounded in the principles of manufacturing, from such seminal sources as Goldratt, Deming and the `Toyota Way,' it is apparent that we can learn a lot about software development in general, and DevOps in particular, from the history of supply chain optimization. We ignore these lessons at our peril; but conversely, understanding the impact of holistic improvement, constraint reduction, and automation will pay back in spades as we look to optimize the software supply chain.Understanding the impact of holistic improvement, constraint reduction, and automation will pay back in spades as we look to optimize the software supply chain"
<
Page 8 |
Page 10 >