你的浏览器还没开启 Javascript 功能!

ソフトウェア開発の銀の弾丸 - DevOps

エンジニアなら、おそらくどっかでこれと似たような図を見かけたことはあるでしょう。

この図を表現していることを一言で表すと

  • 「顧客はクソだ無理難題しか言わねぇ、ソフトウェア開発を何もわかっちゃいねぇ」

少し開発経験があるエンジニアなら、この早い+安い+良いソフトウェアは存在しないし、所詮夢物語だっと鼻で笑うだろう。私もつい最近まではそう思っていた。

でも、少し冷静になってこの問題を深く考えてみたら、

  • 本当に短納期、高品質、低コストのソフトウェアは存在しないのか?
  • もし、存在するなら、それを実現できた企業は最強ではないか?
  • なぜ存在しないソフトウェアに対して、顧客は求め続けるのでしょうか?

我々自身は意識していませんが、普段の日常で我々だって「短納期、高品質、低コスト」を無意識的に求めいます。

私は食べることが大好きで、ランチに対してお店に対してかなり無理難題を求めます。

※心の中で要求しているだけで、別にクレームつけたわけじゃない

  • お腹を満たしてくれて
  • 味は上手くて当然
  • 栄養バランスも大事
  • できればワンコイン
  • 注文してからすぐに食べたい

エンジニアからしたらそんな要求する人はまさにモンスター顧客ではないか。

しかしながら、こんな無茶振りにもしっかり対応できる店は存在する

そう、ちょまどさんが大好きな松屋!!

松屋のランチはワンコインで済むし、味も量も満足できる、サラダもついてくるので野菜を摂取した気になる。そして、注文して速攻食事を出す。

では、松屋はなぜ存在しないサービスを提供できるのか。

おそらく、技術の産業革命による効果と推測できる。

  • 自販機による注文の簡易化
  • いろんな効率化機器(ご飯盛りつけ、味噌汁ドリンクバー)で最少人数で回せることでコスト削減
  • 炊事の自動化による一定的な味を担保できる

このように技術の進化によって、存在しないものが存在するようになっていることは事実である。

DevOpsによる産業革命

ここ何ヶ月でAzure DevOpsを触る機会があって、DevOpsこそがソフトウェア開発の産業革命をもたらすし、これこそ銀の弾丸であること確信を持てるようになった。

  • 自動デプロイによる高頻度の納品(短納期)
  • コードで自動テストすることで手動のテスターは不要(低コスト)
  • CI/CDのPipelineでコードスキャンしてシステムの弱さを検知(高品質)

まとめ

今後ますます熾烈な争いとなる予想されるIT業界において、各企業は生き残るために変わろうとしていることを肌でわかる。

特にアジャイル開発手法を積極的に取り入れようとしている企業は多い。

しかし、手法だけ変えても不十分だ。新技術、テクニック、ツール、マインドも合わせて変化しなければ、アジャイル開発はただのオママゴトで終わってしまう。

最終的に「やっぱアジャイルはうちの会社に合わなかった」という結論になり、アジャイルをやめることになるだろう。

社内で本気でアジャイルを取り入れたいなら、以下のことをまず実現すべきと私は思う。

社内の優秀(能動的、スキルに伸びしろある)な人を集め(当然フルアサイン、片手間でやれるほど甘くない)、信頼できる外部コンサルを交えて、自社にあったアジャイルとDevOpsを策定する。

明日のランチ松屋しよっと!