Continuous process and infrastructure development

This is a product development process where product development and product operation teams are in a cohesive relationship that aims at efficient product development. It can be thought of as a development strategy in which developers and operation teams break down their barriers and perform as a single unit.

Before the development of DevOps, there was next to no communication among developers and the business. The traditional life cycles were slow, and software requirement specifications (SRS) were hard to collect and expensive. Operators would make technically unfeasible promises, which caused damage to companies' reputations. Then, Agile came into the picture and provided product owners with a dynamic mode of collaboration within teams. What was started by Agile was later picked up by DevOps.

In the traditional development style, a product used to run in enhancement mode until it was finalized by a customer. There was a continuous to and fro of code, resulting in a higher cost and time delays in delivery. Large transaction processing domains such as banks were significantly affected by the lack of integration, as large and complex applications often had a fragile supporting hardware, causing unplanned system crashes and a loss of production hours. The loss was never monitored internally. Issues were first reported by end users, and, by the time they were picked up by the technical team, significant damage had already been done.

To avoid this damage, a new strategy was needed. This required the early identification and gathering of development resources, end-to-end product delivery support by developers, and the creation of a reusable deployment procedure.

This gave us the following advantages:

  • Faster delivery
  • Enhanced product quality
  • Better scalability
  • Stable environment
  • Better collaboration among teams
  • Less defects

Nowadays, there is a chain of events between IT teams and customers, where they build and enhance applications continuously. A continuous process, otherwise known as continuous production, is a method that's used to develop a product without any interruptions. In this strategy, resources are provided in a constant flow to meet the product delivery deadline. Here, an operation runs on a 24/7 basis, with only minor maintenance interruptions.

Work flows through a series of interconnected operations where the output of the previous stage becomes the input for the next stage. This helps in reducing storage requirements, and only a minimum inventory is required to maintain workbaskets. This also means that a pending activity is at a minimum and resources are used efficiently. The cost of projects is reduced drastically, and the overall build time is also improved. However, while making a process continuous, we need to be aware of the rigidity of that process. A failure or break in any stage collapses the entire system. We must ensure that the product we are developing is standardized and the work basket is shared equally by every department. Any imbalance in the process will lead to a loss of productivity, ultimately causing a huge cost when working over a large volume of data. Infrastructure is the basic structure or facility required to implement an operations work plan.

In the IT context, infrastructure is a collection of hardware, networks, software, and other tools that are used to develop, deploy, and operate a product or service. The infrastructure must be continuously developed to meet up with the pace in which the product complexity, quality, and cost has been challenged. A product's code is considered as its infrastructure, and it is continuously altered depending on the product enhancements required.

We will further discuss this in the following section, CI and CD.

..................Content has been hidden....................

You can't read the all page of ebook, please click here login for view all page.
Reset
3.144.252.140