日経SYSTEMSで「ITアーキテクトの視点」という連載コラムをはじめました。
ITアーキテクトというと膨大な知識を持ち、ビジネス戦略分析からシステムアーキテクチャを考える仕事で、企業のなんやかんやという認識が強いと思います。
ですが、僕は単に「ある視点」をもってソフトウェアを作っている/使っている立場の人ではないかという印象を持っています。すぐれたプログラマはすぐれたアーキテクトなのです。
エンジニアは課題解決や作るためにソフトウェアを作りますが、アーキテクトは問題を発見し新しい世界を創るためにソフトウェアを創っているのではないか。では、そんな人たちの目には、何が映っているのか。
そんなことを僕なりの視点で書かせていただきます。コラムなので、あくまでも読み物として楽しんでいただければと思います。
なぜ,バグは作られるのか。皆さんはどのように考えるだろうか?<中略>
プログラミングというのは,ITエンジニアに仕様書を渡してソースコードを書いてもらう作業である。それを情報処理(入力-処理-出力)のようにとらえると,入力に当たるのは仕様書,処理に当たるのはプログラミングを行うITエンジニア,出力はソースコードになる。もし正しい仕様書であるにもかかわらずソースコードにバグがあるなら,処理が間違っている,つまり,“ITエンジニアが間違っている”ことになる。
<中略>
視点を変えることが必要ではないか。バグが起きたという問題構造を,より広い視野でとらえる。つまり,「間違えたのはITエンジニアだから悪いのはITエンジニアである」ということから一歩進んで,「なぜITエンジニアが間違えなくてはならなかったのか」と考えるわけである。
続きは雑誌で。
