〔変化をチャンスに 〜 変化を捉える視点と思考 〜〕
第68回:開発と運用の新しいカタチ(2)
コラム
<はじめに>
「クルマはソフトウェア技術者が作る」
と聞いてどう思うだろうか。なんのこっちゃ。車はハード (機械) なのでは? なんでソフトウェア技術者やねん。できるもんならやってみろ (笑)。いろんな声がありそうだ。
ところが、それが当たり前になりつつある。世界最大の車メーカーであるトヨタでさえ、それを大々的に公の場で伝えている。
(*) https://www.youtube.com/watch?v=q1kqaKzhDEQ
現代の車はソフトウェア制御が必須である。自動運転・運転支援、インフォテイメント (カーナビやエンタメ)、テレマティクス (データ取得・管理等)、パワートレイン (モーターやバッテリー制御)、などなど。車1台に搭載されるソフトウエアのコード行数は2020年時点で1億行、2030年には6億行にも達すると予想されている。
(*) https://xtech.nikkei.com/atcl/nxt/column/18/00050/00176/
ソフトウェア化はメリットが多い。高機能化・多機能化がそのひとつだろう。ハードは物理的な機能を提供する。ソフトは物理的な機能を制御することに加えて、コンピューターやネットを使った機能も豊富に創り出すことができる。スマホは電話だけでなく無限ともいえるほどのアプリが動作することを思い出してほしい。ソフトはアイディアの数だけ機能を創り出すことができる。
更新できることも大きなメリットである。ハードは出荷したあとで交換・改修することは極めて難しい。ところが、ソフトは、ネットさえあればいつでも機能追加・改修・改善することができる。例えば、電気自動車+自動運転で有名になったテスラは車載ソフトを (モバイル経由で) 年に200回以上も (2日に1回以上!?) 更新しているのだという。
(*) https://jidounten-lab.com/u_55032
これは車だけの話ではない。スマホも、テレビも、最近は家電なども同様だろう。ソフトウェア化によって機能が拡充した例は多い。同時に、そのアップデートの多さも実感しているのではないだろうか。
今回も前回 (第67回) に続いてDevOps (デブオプス) を切り口に議論する。ソフトウェア化によって更新頻度が爆増した世界ではDevOps的な発想は必須である。今回はソフトウェア化が進む領域で活躍する企業の事例を参照しながら、そこでどのような開発・運用が行われているのかを紹介し、その背景でどんな変化があったのかの視点で考察を加えてみたい。
<Sigma Defenseの事例>
Sigma Defenseという会社がある。米国で海軍イージス指揮統制、無人機自律ソフト、戦闘機通信などの “国家安全保障クリティカル” なソフトウェアを提供する。顧客は米国の陸・海・空軍はじめ多数の軍事機関である。
(*) https://sigmadefense.com/
この領域もソフトウェア化が進んでいる。ドローンの自動操縦や戦闘機の自動制御など、ソフトウェアによる高機能化は今の時代に必須である。同社の強みはソフトウェアによって多彩な機能を提供すること、さらに、迅速なアップデートが可能なこととされる。
Sigma DefenseはDevOpsを実践している。従来はプロジェクトごとに工場 (ソフトウェア・ファクトリ) を構築していたが、重複投資とサイロ化 (分断) が大きな課題だった。同社はGitLabを実践することで、DoD (米国国防総省) 向けの開発・運用の標準的DevOps基盤を実現してみせた。
(*) https://about.gitlab.com/customers/sigma-defense/
数値的な効果は大きい。バグ修正にかかる時間を97%圧縮し、工場の構築コストを90%削減した。さらに、システムや開発手法の標準化を通して、オンボーディング (新しい人が初期の習熟にかかる) 時間を98%減らした。数字を見ると、その凄さに圧倒される。
セキュリティ上のメリットもある。詳細は割愛するが、共通基盤上でセキュリティ機能や監査・規則の対応、その可視化ができたことなどが大きいという。確かに、サイロ化されている環境でセキュリティを確保することの大変さを考えれば、共通基盤があることはガバナンス面でも圧倒的に優位だろう。
タレントプールについても触れておきたい。ネット上の分散型の統合開発基盤を構築したことで、全米から人材を集めることが可能になった (それまでは米国内2箇所のみ)。開発・運用プロセスだけではなく組織、人材、文化まで変えるところに同社の覚悟を感じる。
<変化の視点>
以下では「ソフトウェア化」とDevOpsの関係について考察する。
社会では様々な領域でソフトウェア化が進んでいる。冒頭で述べた通り、ソフトウェア化は製品やサービスの高機能化・多機能化とともに、改修・改善・機能追加のサイクルを短縮させる。ソフトウェアの世界では更新頻度と更新の迅速さが強みになることも多い。
ソフトウェア化の浸透はDevOpsと極めて相性が良い。改修・改善に物理的な交換を必要とせず、ネットを介して (時にはモバイル環境で) 更新できるソフトウェアは、適時・柔軟な開発・運用プロセスが必要になる。DevOpsはその環境として必須である。
<終わりに>
社会ではソフトウェア化が進んでいる。ソフトウェア化という「変化」をどう捉えるか。ただ単にハードをソフトで制御するだけ、ではなく、それがどんな「意味の変化」をもたらすのか、を考えるところにイノベーションのチャンスがあるのだろう。
今回は特に開発・運用プロセスの視点でDevOpsとの関係を考えてみた。それはプロセスを変えるというだけではなく、組織や人、あるいは文化まで影響する。企業としての構造的な変化につながることはSigma Defenseの事例からも伝わったのではないだろうか。
社会は急速に変わりつつある。今、我々が直面しているイノベーションの背景にどんな「変化」があるのか。また、その「変化」がどんなインパクトをもたらすのか。変化を捉える視点と思考がますます重要になりそうだ。
※本内容の引用・転載を禁止します。