このところ、開発や運用の現場では、「ITIL」と「DevOps(デブオプス)」という2つの考え方が注目を集めています。
ITILとは、ITサービスマネジメントのベストプラクティス(最も効率のよい技法)を集めたフレームワークのこと。一方のDevOpsとは、開発者と運用者が、ツールを使って密接に連携し、柔軟かつスピーディーにシステムを開発することを指します。
いずれも、効率よく開発・運用を進めるための考え方ですが、この両者にはどのような違いがあるのでしょうか? たとえば、両方の“良いとこ取り”といったこともできるのでしょうか?
今回の記事では、過去の連載でも取り上げたITILの振り返りも含めて、DevOpsとITILの関係について説明したいと思います。
※文中ではこれまでのバージョンのITILとITIL4を区別するため、これまでのバージョンをITIL(V3)と記述しております、ITILとだけ書かれているものは、バージョンの区別なくITIL全般のことを指しています。
そもそもDevOps・ITILにはどんな違いがあるのか?
DevOpsは、開発と運用の境目をあいまいにして、両者が連携して協力する開発手法です。そのため、ITサービス全般の管理のベストプラクティスであるITIL(V3)とは相反するものであり、対立する、という意見を持っている人も見られます。
そうした“DevOpsとITILは相容れない派”の意見を総合してみると、だいたい以下のような感じになります。
“ITIL(V3)は、ITサービスの開発運用全般を網羅しているが、プロセス品質向上を目的としたウォータフォール型のアプローチである。それに対して、DevOpsはアジャイルから発展したスピード重視の手法である。”
つまり、ウォータフォール型のシステムの開発・運用はITIL(V3)、アジャイル型のシステムの開発・運用はDevOpsが向いている。よって、両者は両立することはできない、相反する概念だ、ということかと思います。
しかし一方で、ITIL4の登場によって、両者の違いがなくなってきた、という声も聞かれます。具体的には「ITILがDevOpsに追従してきた」という話を聞くことも多々あります。
一体、どれが正解なのでしょうか?