「開発」という言葉の使われ方に違和感を感じることがよくある。どうも狭くとらえられている気がしてならない。
例えば次のような場合だ。プロセスを列挙する場合に
- 設計
- 開発
- テスト
などとされていることがある。僕の認識では設計もテストも開発に含まれるので、これは以下のように列挙すべきだと思う。
- 設計
- コーディング (or プログラミング)
- テスト
人や組織を表す場合に “開発 (チーム) とインフラ (チーム)” と表現されることもある。これにも違和感を感じる。開発チームはインフラチームと並立するものではなく、含む含まれるの関係にあると考えるからだ。“アプリ (チーム) とインフラ (チーム)” とするのが正しいと思う。
一時期バズワードのように使われていた DevOps という言葉。Development (開発) と Operations (運用) を組み合わせた造語で、開発チームだけではなく運用チームも開発に協力して良いものを作りましょう、というような開発プラクティスだ。この言葉自体にはなんの違和感もないし、良いプラクティスだと思う。しかしこの言葉の使われ方に違和感を感じることがある。そのときには
開発 ≒ アプリエンジニア or アプリチーム
運用 ≒ インフラエンジニア or インフラチーム
という意味で使われているように思う。開発フェーズでは主にアプリエンジニアの比重が大きく、運用フェーズにおいてはインフラエンジニアの比重が大きくなる傾向があるのでそのようなとらえ方になるのかもしれない。開発にはアプリ開発とインフラ開発があり、運用にはアプリ運用とインフラ運用があると僕は考えている。あるいはアプリ、インフラというような分け方をすることはナンセンスなのかもしれない。
人それぞれ開発していると思っているものが違うことがこのような違和感を感じる一因になっているのだろうか。なるほど世の中には開発とつく言葉がたくさんあるので、そのようなとらえ方の違いが出てくるのも仕方のないことかもしれない。
- モジュール開発
- アプリケーション開発
- システム開発
- サービス開発
- 事業開発
- 顧客開発
- 市場開発
- ……
ピーター・ドラッカーがその著書の中で用いた逸話がある。
古くからの言い伝えに、三人の石切り職人に「何をしているのか」と尋ねたという逸話がある。一人目は、「生活の糧を稼いでいる」と答えた。二人目は、仕事の手を休めずに「この国で最高の石切り職人としての仕事をしている」と言う。三人目は、顔を上げると、希望で瞳を輝かせながら、「大聖堂をつくっているのです」と述べた。
ピータードラッカー, 2008, "マネジメント 務め、責任、実践 3, 日経 BP 社, p. 134
あるエンジニアに「何をしているのですか」と尋ねた。
エンジニアは「開発をしています」と答えた。
重ねてこう尋ねた。
「なるほど、開発ですか。何を開発しているのですか」