International DevOps Certification Academy™
What Is DevOps?


DevOps is a process to develop, deliver and operate Software. As simple as that you shouldn’t really underestimate understanding what DevOps really is. There are many DevOps definitions out there all over bookstore shelves and in the Internet which are either self-serving or at best missing and confusing.

Some commercially-driven definitions of DevOps tightly couple DevOps to some certain build and delivery tools or cloud infrastructure platforms. Although these tools and platforms could be really helpful to accomplish your IT and organizational goals with DevOps, you can’t really plug-in yet another tool (which you usually don’t have much control over it because you haven’t written it) or you can’t migrate your software applications to cloud computing platforms and then announce that you and your organization now deliver with DevOps. As some old but little known saying goes ravens would laugh at this.

Another misleading, but still better variant to define DevOps is to see DevOps as an intersection of work and people in an IT organization which brings software developers, software testers and software production operations engineers together. Having said that, once you reach to the end of this book, you can’t help but see how dry this definition is.

The best approach to define DevOps is to resemble DevOps in iterative agile software development and process improvement frameworks such as Scrum, Lean, ITIL, IDEAL (Initiate, Define, Establish, Act and Learn) and Six Sigma DMAIC (Define, Measure, Analyze, Improve and Control).

Although Agile Scrum, Lean, ITIL, IDEAL and Six Sigma DMAIC can serve as efficient enablers for DevOps, DevOps isn’t meant to be seen as an improved and combined superset of these methodologies and techniques. The very simple reasoning behind this fact is that none of these methodologies and frameworks except Agile Scrum have been introduced to specifically solve the problems and serve for software industry.

Many DevOps practices and principles have been derived from Lean Movement after they have been adapted, experimented, validated and fine-tuned for software development, delivery and operations. Moreover, DevOps borrowed and adapted many techniques and philosophies from Continuous Delivery Movement, Toyota Improvement Kata, Theory of Constraints, Agile Manifesto and Agile Infrastructure.


Lean Movement:

Lean movement can be summarized by seven principles:

  1. You see the whole and you create customer value with systems thinking.
  2. You build the quality in, you create flow and pull (instead of push).
  3. You deliver as fast as possible (short lead times to convert raw materials into finished products, or in software terms to convert ideas into running benefits and features in production systems).
  4. You amplify learning and you embrace scientific thinking.
  5. You empower your team, you lead with humility and you respect every individual.
  6. You eliminate waste (tools, systems, most importantly your time you may spend for unproductive activities).
  7. You decide as late as possible (You give just in time decisions).

Continuous Delivery Movement:

You enable continuous delivery through the deployment pipeline. Deployment pipeline has three important missions: visibility, feedback, and continuous deployment.

  • Visibility - You make all aspects of the delivery system including building, deploying, testing, and releasing visible to every member of your team and other teams, so you promote collaboration in your team, and you offer transparency to your clients and stakeholders.
  • Feedback - You and your team members learn about problems as soon as they occur so that you’re able to quickly fix them before you put another brick onto an already collapsed block.
  • Continuous Deployment - You deploy and release any version of the software to any environment including test and production environments through a fully automated process.

Toyota Improvement Kata:

You use Toyota improvement kata as a routine to move from the current situation to a new situation in a creative, directed, meaningful way. It’s based on a four-part model:

  1. In your consideration of a greater vision or improved direction...
  2. You grasp the current conditions.
  3. Then you define the next target conditions.
  4. Ultimately, you continuously and iteratively attempt to move toward that target condition. Along this route you uncover obstacles that need to be worked on and you sort them out.

In contrast to other improvement approaches that you attempted to predict the path and focus on implementation, with Toyota improvement kata you learn and build on discovery that occurs along the way. You and your teams use the Toyota improvement kata to learn as you strive to reach a target condition, and you adapt based on what you’re learning.


Theory of Constraints:

In an organization including yours which delivers any kind of software, there is always an ongoing conflict between your IT and your business. Quickly responding business needs whereas still ensuring stable and predictable production environments is a continuous tradeoff faced by your IT. Assuming that you’re already fully aware that there isn’t no risk production release, in a complex system like yours you can’t be quick enough if you want to ensure a low risk production release. And you can’t ensure a low risk release if you want to quickly release your code to your production systems.

You cope with this conflict when:

  • You divide your IT organization into many small, autonomous, independent, self-sufficient and highly collaborative teams (You should start to see your teams as “intelligent units” with mission).
  • You reduce your batch size (the size of your work in progress) given to each team.
  • You reduce your lead time (time required to convert ideas and requirements into running benefits and features in production systems).
  • You build faster, reliable and continuous feedback loops to ensure readiness for deployment.

Agile Manifesto:

With DevOps you adhere to the cornerstones defined by the agile manifesto:

  • You respect individuals and interactions over processes and tools.
  • You respect working software over comprehensive documentation.
  • You respect customer collaboration over contract terms and negotiation.
  • You respect responding to change over following a plan.

Agile Infrastructure:

Our organizations large and small including probably yours are relying on hybrid cloud infrastructures, combining public and private cloud with dedicated servers. Therefore, you collect the rewards of colocation security in combination with the flexibility and scalability of public cloud.

Here’s some of major drivers why an agile infrastructure is beneficial for DevOps:

  • You pay for what you use with transparent and simple pricing.
  • You can quickly provision and de-provision your test and production environments from your code base (IaC - Infrastructure as Code).
  • You have architectural flexibility.
  • You can easily expand other geographies.
  • You probably have better security.
  • You stay compliant without audits and additional costs.

CONCLUSION

In this section we explained you what DevOps is and what it isn’t. For you we have also covered the major movements and principles which DevOps was derived from.

A small caveat: Like many agile practitioners have been unfortunately doing in their agile practices since years, you shouldn’t stick to any stone-grained definition of DevOps to dictate how your particular organization, your product, your service and most importantly your team should use DevOps. There is no one-size-fits-all solution. Neither in agile nor in DevOps.

Never forget that it is all about learning, experimentation and adaptation. As DevOps will do a lot of good work for us, it is our role biggest duty as human minds to identify our correct version and tone of DevOps. This is what each and every successful DevOps organization including Google, Amazon, Facebook, Netflix and Apple have been doing.



Your DevOps Training
Table of Contents


We guarantee that Your Free Online Training will make you pass Your DevOps Certification Exam!



YOUR DEVOPS REVEALED 3RD EDITION IS NOW READY.
VIDEOS & BOOK. YOU CAN SIMPLY LEARN DEVOPS...


Your DevOps Training Program prepared by our consortium of renowned Business and People Leaders, DevOps Coaches, Mentors, Experts and Authorities from all major Industries are available to all visitors of International DevOps Certification Academy™'s web site. Your Online DevOps Training Materials are accessible under Your Free DevOps Book and Your Free Premium DevOps Training items from the top menu.

Although this Online DevOps Training Program is the copyrighted intellectual property of International DevOps Certification Academy™, we wanted to make these materials freely accessible for everybody. We believe that only by sharing our expertise we can best serve for DevOps Professionals and for the further development of DevOps Domain.

Your DevOps Certification examination comprises multiple-choice Test Questions. Reading your Online DevOps Training Program will be very helpful for DevOps Professionals like you to acquire the knowhow to pass your DevOps Certification Examination and to get your DevOps Certification.

We guarantee that Your Free of Charge Premium Online Training will make you pass Your DevOps Certification Exam!


Send Me My Free Videos & Book!