〔変化をチャンスに 〜 変化を捉える視点と思考 〜〕
第67回:開発と運用の新しいカタチ(1)
コラム
<はじめに>
ソフトウェア開発には時間がかかる。規模や種類によるが、半年や1年、長いものでは数年というものも珍しくない。仕様書に従って設計・開発・テストを行い、検収を経て納品される。一昔前は、納品といえばCD-RやDVDだった (笑)。
悩ましいのはリリース後だ。運用がスタートすると、ソフトウェア改変は難しい。使っているうちに改修・改善や機能追加がしたくなるものだし、新しい技術を使いたくもなる。だが、開発に時間を戻すこともできず、次の (ずっと先の) 大幅バージョンアップまで我慢することになる。「仕様」が唯一の拠り所なことが問題なのだろうか。
DevOps (デブオプス) がそんな悩みに応えてくれる。今は、開発・運用を含めた一連のプロセスを統合する考え方が主流になりつつある。開発・運用を行き来する双方向のパス (道) をつくることで柔軟な改修・改善・機能追加を可能にし、冒頭のような悩みは昔の話になった。(実際は、まだ古いスタイルの開発も多いが、涙)
※IDC Japanによる2022年の調査ではDevOpsを実践している企業は59%に達したと報告された。
※(参考) https://active.nikkeibp.co.jp/atcl/act/19/00006/031000285/
今回は、DevOpsが進んだ背景や、DevOpsによって何がどう変わったのかを具体的な事例を通して紹介する。また、本連載の主題である、DevOpsの背景にある「変化」とその捉え方についても考察する。
<歴史的な背景>
Wikipediaによると、DevOpsの歴史は2008年のアジャイルカンファレンスでの議論に遡るようだ。それまで、開発と運用は組織的・文化的にバラバラであり、多くの人が冒頭のような悩みを抱えていたが、いくつかの要素をきっかけにDevOpsの議論が始まった。
新しい開発スタイルの登場は大きな要素だった。アジャイルという言葉を聞いたことがあるだろうか。アジャイルソフトウェア開発では、設計・実装・導入を短期間に繰り返し、トライアンドエラーのサイクルを回す。適応型の開発手法とも言われる。その先に、運用からのフィードバックが含まれるようになったのは頷ける。
自動化の流れもあった。システム変更時のテストや、本番環境への導入など、システムの開発・運用に関わる手順が自動化されるようになってきた。(技術的には、CI/CD = Continuous Integration/Continuous Delivery という言葉で説明される)
他にも様々な要素が重なって、開発 (Development)・運用 (Operations) のプロセスを統合する DevOps (デブオプス) という考え方が議論されるようになった。
※(参考) https://ja.wikipedia.org/wiki/DevOps
<Thales Groupの事例>
Thales Groupの事例を紹介しよう。同社は機内エンターテイメントのシステムを開発・提供している。80社の航空会社、2,300の飛行機、1日160万人の搭乗者向けのシステムの開発・運用でDevOpsを実践しているという。
※(参考) https://about.gitlab.com/customers/thales/
同社でのDevOpsの効果は注目に値する。DevOpsの実践により、ソフトウェア・アップデートは8倍迅速化され、プロジェクト立ち上げが40倍高速になり、構築するインフラコストが90%削減された。今では、隔週で (しかも、衛星回線を使って就航中でも) ソフトウェア・アップデートが行われているらしい。
組織や人の変化にも触れておきたい。同社では、それまでプロジェクトや拠点ごとに開発環境が構築され、サイロ化 (分断) が課題になっていた。DevOpsの実践はサイロ化を打破し、現在は分散型の統合環境で5,000人が協調・共同開発をしていると報告されている。
マジか… (驚)
変化は急速に進んでいる。その昔、CD-RやDVDでプログラムの受け渡しをしていた時代には考えもしなかった (笑) ことが起こっている。開発・運用プロセスに変革が起きた。加えて、その前提となる考え方も、組織も、文化も変化しているということだろうか。
<変化の視点>
あらためて、DevOpsの背景にある「変化」について考えてみたい。ここで注目したいのはネットの進歩・浸透がもたらした変化である。
ネットの浸透は情報だけではなく、時間や空間の前提をぶち壊した。データ (プログラムのソースコードを含む) の複製・共有を容易にし、時間と空間を超えて分散環境で協調・共同作業ができるようになった。
例えば、分散開発環境の登場に注目してみよう。git (ギット) という言葉を聞いたことがあるだろうか。プログラムのソースコードなどの変更履歴を記録・追跡するための仕組みで、2025年現在、バージョン管理システム市場で87%という圧倒的なシェアを誇る。ネット上で多数の人が開発環境を共有し、時間と場所を超えてコラボレーションができる。
同様に、さまざまなオンラインツールが登場し、開発から運用までを統合することも可能になった。今ではDevOpsと銘打った統合システムもある。詳しくは次回以降に譲るが、前述Thales Groupに統合開発環境を提供しているGitLabもその代表例である。
<終わりに>
ネットの進歩・浸透は世の中を大きく変えた。情報の複製・共有を容易にしただけではなく、時間と空間を超えて多数の人がコラボレーションすることが当たり前になった。必然的に組織のあり方も、仕事の仕方も変わっていくのだろう。
今回はDevOpsに注目し、新しい開発・運用モデルとされるDevOpsの概要とThales Groupでの実践例を紹介した。DevOpsの事例では、開発・運用プロセスに加え、組織や開発環境の統合までを視野にいれるものが多い。考え方、組織、文化まで変わるほどのインパクトがあるのだろう。これも、ネットの浸透が背景にあると言えそうだが、どうだろうか。
変化の時代、変化を捉える視点と思考は極めて重要な意味を持つ。今、我々が直面しているイノベーションの背景に、どんな「変化」があるのか。その「変化」をどう捉えるのか。変化を捉える視点と思考が、これからますます重要になりそうだ。
※本内容の引用・転載を禁止します。