2004年04月13日

行ってきた。UMLフォーラム

場所が外苑で、開始が9時40分からだったから、いつもよりちょっと寝坊して。

ついたら即効、OMGの日本の会長の話が始まった。

悲観的な話が延々続く。

今や、ソフトウエアの役割は非常にクリティカルなものになった。 金やモノだけじゃない。 信号が狂えば交通事故になるし、医療システムがコケれば人が死ぬ。 実はソフトウエアの業界ってDOG YEARなんかじゃ全然ない。 20年前に構築したメインフレームのシステムをまだ使ってるなんてよくある話。 ビル建てるときにはちゃんと青写真があるはず。 システムは大規模になっても、青写真がちゃんとないくせに、 残業残業でヘロヘロになりながら、なんとかそれっぽいものを構築してきた。 ここまでソフトウエアが社会的に大事なものになったのに。そろそろやばいだろう、と。 実際技術の分野で一番のボトルネックは他ならぬソフトウエアであって。 じゃぁどうしたら、いいのか? →きっちり青写真描けることが大事だろう、と。 それが、全世界共通のUMLでしょう、と。 ちゃんとしたモデルを作って、それを元に開発してきましょう っていうMDA(モデル駆動型アーキテクチャ)。 そんな話で。 んで、こんだけ何の資格も知識もないやつがクリティカルなシステム作ってんのは、 日本くらいだそうだ。 (実際、一年目の時の俺なんてほんとなんも知らなかったけど、 基幹システム再構築の設計&製造者として・・・) まぁこれからソフトウエア業界のスキルの底上げのためにも、 UMLを広めましょうよ。そんな話だった。

しかし、このおっさん相当な話下手で。ちょー寝てる人多かったし。。

次にOMGの会長兼CEOの話。外人。イヤホンで同時通訳を聞きながら。

いきなり、電気のコンセントの話がはじまって。 電気のコンセントは日本とアメリカとヨーロッパと、それぞれ違う規格だけど、 別にそれをどっか行ってそれ使おうとするのはそんな難しいことじゃない。 大して金もかからないし。

んじゃソフトウエアってどうなのよ、と。 OSなんてWINDOWSやらLINUXやらUNIXやら。 UNIXだけひとつとってみたってめちゃめちゃいろんなのあるし。 ネットワークだって、イーサネットだ、USBだ、BLUETOOTHだ、FIREWIREだ、、、でしょ。 しかもプログラミング言語だって腐るほどあんじゃん。 ちょーたるくね?みたいな。 んじゃ相互運用性と移植性が備わってるのって何よ?と。 それはUMLであり、モデルである、と。

んでMDAの話がはじまって。事例の紹介とか。 一番びびったのが、F-16っていう戦闘機の制御システムで。 全部UMLで図描いて、それでソースコード自動生成しただけで、 ひとつもゴリゴリソースコード書いてないんだって。

なかなかユーモアもあって、楽しい話だった。

んでロボットコンテストを見に行った。 …あんま面白くねぇ。。ただ、ロボットの車が線の上を走ってるだけ。 途中で線が点線になってる部分があって、そっち走るとショートカットになったりする。 無事完走できたチームはあんまなくて。。

昼は焼肉屋のランチメニュー。昼真っからジュージューたまらんね。

午後いちで、NECのRationalRoseっていうツールを使って開発した事例を聞きにいった。 フツウに話もつまらんし、内容もまったくもってありきたりで。。 まぁJavaUMLマッピングに苦労した、と。まぁそりゃそうだよねぇ、と。

ロボットコンテストを見に行くと、ちょうどうちの会社のチームのレースだった。 途中で、プシューンって止まっちゃって、あえなくリタイヤ・・。 まぁ軌道から外れると、それを制御して元に戻そうっていう動きは他にはあんまなくて、 タイムはダメだったけど、モデリング的には評価されてて、特別賞をもらってた。

次にIBMeclipseMDAの話を聞きに行った。 どこのギャル男だよ?みたいな人が講師だったけど、 まぁそういう人に限って、えてして話慣れしてて、いい話したりするもんだよね。 その人は元々Rationalの人で。IBMに買収されたと同時にIBMの人になった、と。 MDDの話が興味深かった。ディベロップメント。モデル駆動型の開発っていう。 まぁ、俺自身開発側の人間だから。興味あんのは開発になっちゃう。テストツールとか。 んで、VOLVOのシステム構築の事例の紹介があって。 600人くらいのコボラーがいるんだけど、その人たちを使って、 15人くらいのアーキテクトで、.NETで開発した。なんていう。

こういう話聞くと、"やっぱIBMって最強じゃん。IBMにまかせときゃなんでもOKじゃね?" なんて思うんだけど。実際はNOTESの開発なんかでも、 全然身近にNOTESのすごい人がいるわけでもなく。 問い合わせとか、うちの会社からIBMに問い合わせるの一緒だったりするらしい。 まぁバカでかい組織だから。携われる部分も小さくなっちゃうのかも。

次に、基幹システム再構築の講義があった。 オージス総研って会社の大手塗料メーカー基幹システム再構築の話。 今回、これが一番面白かった。ってかぶっちゃけ、 講演した人の下で働きてぇなぁって思ったわ。 今やってるのも含めて、俺、何気に3つの基幹システムに携わってきた。 あんまそんな経験あるやつもいないんじゃないかと思うんだけど。 まぁ、どこの場合も一緒で、20年も前にできたシステムにツギハギしまくって、今に至る。 業務仕様もクソ複雑で。残ってるドキュメントはどれもこれもジャンク。 しかもそんな昔のことだから。全部知ってる人なんて誰もいない。 まぁレガシー問題なんつって、どこでも苦戦する話。 それをUML使って、オブジェクト指向でガツンとやってやったぜ!エッヘッヘ。てな話。 まぁぶっちゃけ相当大変だったけどね、っていう。でも俺が経験してきたのと全然ちげぇぞ、と。

まず何が違うか。 お客さんの巻き込み方が違う。 とりあえずお客さん(システム部)に、こういうやり方でモノ作るんだよっていう研修をやる。 んでその研修ってのが実際にプロトタイプでモノを作らせてみるっていう。 相当大変だったけど、それによって、お客さんは要求とか仕様変更をする場合の 規模感っていうのをわかってくれた、と。 んで、毎日毎日、開発側のリーダとお客さんのリーダとで、サシでミーティングをした、と。 長い日は午前中いっぱいそのミーティングをした、と。 そうしたことで、RUPっていう反復型の開発ってもんを理解してくれて、 システムのオーナーであるっていう意識を持ってくれた。

たいがい、ユーザーってのは、俺らベンダーに丸投げすりゃいいと思ってて。 俺らからすると、"誰のシステムだよ?"なんて思うことがよくあるんだけど。 思ってるだけじゃなくて、お客さんの考え方そのものを変えなきゃいけないわけだ。 そーじゃないと、"たぶんお客さんはこう作ってほしいんだろうな〜"なんていう想像でモノ作っちゃって、 言ってたのと違う、とかなって、言った言わないのくだらない議論になったりして。 結局こんなはずじゃなかった、、みたいなね。

結局、お客も自分たちもめっちゃしんどかったけど、お客の満足度はすごい高くて。 しかも、メンテナンス性が相当向上して。 「単なる業者ではなく、パートナーとなることができた」っていう言葉が物凄くステキに思えた。

いいもの作れて、お客さんが喜んでくれたら、しんどくたって構わない。みんなそうだよね。 そうじゃないから、どんどん辞めてくんだよ。みんな。だって達成感ねぇもんな。。 やっぱいかにしてお客さんにUMLだ、オブジェクト指向だ、XPだ、RUPだってわかってもらうかっていう。 それだけじゃなくて、システム開発ってのはどういうもんかってのをわかってもらわなきゃいけない。

最後にUML技術者を育てるには、みたいなパネルディスカッションを聞いて。 ぶっちゃけまだまだこれからだ、と。 ITSSモデリングの要素をどう取り組もうかぁ、みたいな話もあった。 どうやったら優秀なモデラーを育成できるか。結局結論らしい結論はでなくて終了。

あーでもいい刺激になった。今年度はUMLモデリング。目標それでいこう。