« 形ではない、型としての標準を目指して | メイン | ITで変化する社会とITアーキテクトの意義 »

"いい感じに"モデリングする

 相変わらずTwitterに文字泥棒されていますが、たまにはまとめてみます。とりとめもない感じですが。


 ソフトウェア開発ではモデリング(モデルを作る)が重要な作業となります。モデリングというと3Dソフトで描かれる構造物の内部図像が一般的ですが、ソフトウェアのソレはもう少し抽象的な意味になります。

 ソフトウェア、特に一般人に馴染みのある企業システムやWebサイトのソフトウェアは、現実の世界でナニカの作業を実現するために使われます。伝票を登録するためだったり、メッセージを伝えるためだったり(ゲームも面白い例なのですが、ちょっと脇に置いた方が良いかな)。

 そういったソフトウェアは"ユーザーに使ってもらう"ことで初めて動きを獲得します。ですから、使ってもらえるように作る必要性があります。人間は良くできているので抽象化した概念を自分の行動とリンクすることが可能です。わかりやすい例で言えば地図を見ることで目的地にたどり着けます。ただし、分かりにくい地図では迷子になる。その分かりにくさは抽象化の理解性に問題があると言うことです。

 つまり、ソフトウェアが"よりよく使われる"ためには、ユーザーが達成したいモノゴトをうまく抽象化し、その表現を的確にすることが重要になります。

 僕はモデリングという作業を、その「モノゴトの抽象化」、あるいは「モノゴトの概念化」であると考えています。


 となると、モデリングがうまいかどうかというのは「モノゴトの抽象化」ができるかどうか、しかも、それが他者に理解可能な状態、つまり、シンプルで、矛盾がなく、そして"いい感じ"であることが求められます。

 モデリングの"正しさ"は難しい問題です。正確な地図が読みやすいとは限りません。僕らが一般的に"正しい地図"と思っている地図帳も、縮尺に応じてデータのレイヤーを追加したり削ったり、色を分けたり地図職人のたゆまぬ努力の成果であって"絶対的に正しい"わけではありません。歩行者用と車用、あるいは観光用と道案内用の地図は違いますよね。


 モデリングには、元となる情報が必要です。僕は"外圧"と呼んでいます。企業システムを作る場合は、企業そのもの(組織などの静的な構造)や業務(フローなどの動的な構造)をヒヤリングしてモデリングを行います。

 道案内の地図でいえば道のりが外圧になります。それは俯瞰的に捉えた"正しい"道の構造と、移動するにあたって重要なランドマーク(角のタバコ屋)です。ここで重要なのは必要でない情報は取り出さない=省くということです。人は抽象化された空間を認識する能力を持ちますが、一方で断片的で部分的な理解力しか持ちません。大量のデータは事前にフィルタリングしないといけません。だから、道ばたに生えている花がいかにキレイでも地図には書きません(ま、あえて書いてある地図も場合によってはイイですけどね)。


 先ほど"外圧"と書いたからには"内圧"もあります。内圧は作り手側の都合のことで、作りやすさといえるでしょうか。モデリングが完成しても、それを現実的にソフトウェア化できるとは限りません。コストや期間、そして純粋に技術的な問題によって「作れないモデリング」というのもあります。

 地図で喩えれば、チラシの裏側にぶっといマジックで書かなきゃいけない場合と、机に座ってパソコンを使って一日がかりで書く場合では、作られる地図が違うことが容易に想像されるため、抽象化も度合いも異なるはずです。


 余談ですが、ここまで書いてきたことは「オブジェクト指向だから」ということではないと思っています。その昔からソフトウェア開発は抽象化が重要だし、より抽象化の具現が簡単な技術を考えた結果として生まれたのがオブジェクト指向です。技術はニーズから生まれるものので、その逆ではありません。


 さて、このように「外圧を取り入れつつ、内圧も考えつつ、いい感じにモデリングする」のがITアーキテクトの仕事です。もうすこし順序で書くと「現実世界を注意深く観測しつつ、作る側の都合も考えながら、自らの認識によって抽象化を行い、段階的にモデルを詳細化していく。いい感じに」というところ。

 "いい感じに"というのが、まだまだ体系化されていない部分です。ていうか、体系化は無理なんでしょうね。パターンとか、それを目指しているわけですが成果としては限定的であるのはご存じの通りです。

 しかも、ソフトウェア開発は歴史が浅いため、作る側の制約(内圧)が非常に大きくなります。(ただし、内圧の革命が起こることで抽象化の実現レベルが一気に変わることがあります。Google MapsからAjaxが生まれた以降のWebアプリケーションの進化は記憶の新しいところです)

 建築の場合は、近代史の中で「外圧を取り入れる」と「内圧を考える」という作業が少しだけ分離されていて、前者の専門家を建築家(アーキテクト)と呼びます。意匠設計と構造設計と言っても良いです。とはいえ、"いい感じに"の部分の体系化が出来ているわけではありません。そうじゃなければ建築家なんて必要ないですしね。ここら辺の話は拙著『拡張する空間』で藤本壮介さんが話をしているので興味があればどうぞ。


 モデリングするとはなにか、もう少し深く考えていくと微妙な問題も出てきますが、それは次のエントリにします。

トラックバック

このエントリーのトラックバックURL:
http://www.arclamp.jp/mt33/mt-tracback.cgi/2756

コメントを投稿

(いままで、ここでコメントしたことがないときは、コメントを表示する前にこのブログのオーナーの承認が必要になることがあります。承認されるまではコメントは表示されません。そのときはしばらく待ってください。)

About

2010年05月05日 12:16に投稿されたエントリーのページです。

ひとつ前の投稿は「形ではない、型としての標準を目指して 」です。

次の投稿は「ITで変化する社会とITアーキテクトの意義」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。

Creative Commons License
このブログは、次のライセンスで保護されています。 クリエイティブ・コモンズ・ライセンス.
Powered by
Movable Type