「設計生産性危機はどこへ行った?」 セッション:S1-4-4 コーディネータ: 冨山 宏之(名古屋大学) 参加者25名程度 ----------------------------------------------------------------------- [趣旨] 1960年代、ソフトウェア危機が叫ばれていたが今、何とかなってしまっている。 誰が何とかしたのか?を考えていく。 ----------------------------------------------------------------------- [進め方] イントロ 自己紹介と議題に関する持論を述べる(会場の人全員) みんなで議論 ----------------------------------------------------------------------- [予想される意見] ソフトウェア工学 開発ツール GNU マイクロソフト 人海戦術 大学の教育(冨山先生:これは違うだろ…) ----------------------------------------------------------------------- [自己紹介] Aさん:(聴き取れませんでした) Bさん: 1人2人で開発するプログラムでは解決されているが、 大規模プログラムでは解決できていないのでは? Cさん:開発ツール製作者 ソフトウェア危機というのはあまり聞いたことがないが、いつも キツイキツイという話は聞く。 IT分野ではいわれていたが、組込み分野では今がソフトウェア危機が叫ばれる 時期では? Dさん: 危機はまだ去っていないのでは?危機は過去からずーっとあり続けるものではないか? 今のひとは江戸事態や明治時代の人より、時間的にも空間的にも余裕がない。 研究室間の移動だけでたくさんの時間をとられてしまう。 万歩計を使って測ってみたら研究室の移動だけで一万歩いきました。 (ここで質問が出る) デジタル機器へ変わったときのパラダイム変換は? デジタルになったとたんソフトが増えたわけではない。 (…20数年前の話になる。) 外目には一気に機能が増えたように見えるが内部的には徐々に徐々に進んで いったのでそれほど大きなショックはなかった。 64kを一人で書いていた時代に一度ソフトウェア危機が訪れたが、それは一人の頭 の中でのことだった。これは大勢の人間で取り組む開発法によって解決され たが、現在のクライシスは大勢の人間の間で起こっている。 大企業でソフトウェアの開発に失敗してもいきなり潰れることはないが、中 小ではそうではないはずだ。しかし大量に中小のソフトハウスが潰れたとは 聞かない。あまり潰れないのは誰かがリスクを背負っているのでは? 危機はないんでは?LSIの設計の場合は自然に解決されている。要求の肥大化 に自然とブレーキがかかっているのでは? 要求レベルに対して、成果が納得できなければそれはクライシスだ。 高田先生:私はソフトウェア危機は存在すると思う。次の世代に開発者をや らせたいという人が全体の20%というアンケート結果はクライシスだろう。 システム設計とは?アーキテクチャ設計とは?の言葉の定義をしなければ! 冨山先生:話が議題から脱線してきたので気を取り直して自己紹介に戻りましょう (自己紹介に戻る) Eさん:自動者制御、モデルベース開発 根性で危機を乗り越えたのでは? +ソフトサイズは大きいが新規開発は少ないので解決できてる。 今後開発人数の増加による問題が起こるのでは? 自動車は今まではそれ単体での動作を考えていればよかったが、これからネッ トワークに繋がるのでそこのパラダイムシフトで危機が一度起こるかも。 Fさん:日立、自動車アーキテクチャ 再利用技術の利用によって危機を回避したのだろう。 これはオブジェクト指向とかのソフトウェア工学的なものに限らず、 単なるコピー&ペーストでも効果を発揮している。 Gさん: 何度もお客さんに納期を待ってもらってアプリケーションを買い取ってもらっ ている。 きっと危機を乗り切れたのはお客さんの愛情のおかげだろう。 Hさん(高田先生):大学教授 例えば携帯の会社10社から1社に減れば、技術者があまってその力を一社に集 めることが出来るので、それによって回避されたのだろう。 HWでできてるんだからSWならもっと早くできるだろうという気持ちが危機の 原因ではないか。作れるものしか作れないのだから。 Iさん:OSとミドルウェアの製作 20年後に突然技術者が不足するわけではない、 Jさん:コンサル業 危機とは、品質事故、赤字、開発者の逃走である。 危機がなくなると思っているほうがどうかしている。 複雑度は冷蔵庫の理論(容量が増えればそれにあわせた要求を出してしまう)に よってどんどん上がる。 複雑なものは作れないが、要求は出る。この差がビジネスの失敗に現れる。 クライシスがない企業は開発力が停滞するので駄目。 クライシスが起こっているのに破綻しないという企業が良い状態である。 (質問が出る) 人を死なせないコンサルは無いものか? Jさん:きっとモチベーションの管理をやっているはず。 ミッションクリティカルな部分の開発では何時間以上働いてはいけ ない等の労働安全が必要になるはず。 冨山先生:納期は必ず遅れるという話を聞いたことがある。 なぜなら、優秀な人は楽観的になるので納期ぎりぎりに仕上げるし、そうで ない人はスケジュール通り作れないからである。 簡単に作れるものもでてきたが、それはもともと簡単だったのだろう。 自分達の内輪ではスズキの法則というのがある。これは新製品を作るとき、 過去の製品と似た機能を追加しようが似てない機能を追加しようが、複雑度 は同じくらい増加するというもの。 例えば、SDカードを1つから2つ使うように変更したらSDカード間でのコピー もしたくなるので複雑度は上がる。 工場生産の一品ものの場合はそんなに複雑度は増加しないのでは? クライシスの定義は? (自己紹介に戻る) Kさん:組込み技術者 (聴き取れませんでした) Lさん:CASEツール開発者 お客さんによるとクライシスを叫ぶ人が多い。 しかし、海外ではそんなに危機感がない。彼らは自己主張がうまい(もう無理 だとか、金もっとくれとか)日本人は黙っちゃうから苦しくなる。 Mさん:制御、画像処理、転々 クライシスを一言で定義するのは無理。 顧客が要求してないものまで作ろうとするからいけないのではないか? (気が付いたら残り10分) Nさん: ネットワーク機能が必要になったときのインパクトが大きかった。 例えば、 今までシリアル通信を使っていたのにtelnetを使えと言われるようになった、 HWに対してSW、OSが使いこなせない、ソフトの設計ができない、外注、 などの新しいことに対する拒絶からクライシスが起きた。 Oさん: HW/SWの境界なのでソフトの議論も大事だ。 大学の教授から見ると技術的に作れないものが出てきたというのが クライシスにあたるが、ビジネスでは仕事があるのに生産が間に合わない というのがクライシスである。 Pさん:組込みソフト開発者 20数年前メインフレームを作っていたのはHW部門だった。 よってSWは専門でない人が作っていた(アマチュアが作っているみたいなもの) →バグに追われる→悪循環 クライシスを無くすにはSWのプロフェッショナルが必要。プロの育成が大事。 昔は企業は学生に期待してなかった。 Qさん:学生 自分の研究がソフトウェア危機を乗り越えるのに役立ってくれればと思う。 皆さんの話を聞いていきたい。 Rさん:学生 プログラムのソースやノウハウを企業間で上手くやり取りできるような 流通形態を作ることが大切。 技術者自身が高い目標設定をすることでクライシスになるのでは? Sさん:学生 (私、何もいえませんでした。) Tさん: クライシスはまだ起きていないのではないか? 皆さんの意見を聞いて吸収したい。 Uさん:九大に出向 大学の教育がマズイのでは? 特に組み込みの分野では体系的な教育プログラムがまだまだ出来ていない。 エンタープライズ系は教育システムがしっかりしているので、 組み込みの世界にもエンタープライズ系の知識を持ってくるべきでは? Vさん:九大助手 会社にいる間はクライシスがあると思っていたが経営者に思わされていただけ だったのではないか。本当のクライシスは会社がどんどんつぶれることだ。 クライシスを感じるのは世代交代があるからでは? 違う人間が問題にぶち当たるからまたその問題を解決し直さなくてはいけない Wさん: 大きなソフトウェアクライシスは今後も無いのではないかと思う。 課題はある。しかし、努力すれば解決出来るだろう。 Xさん: (パワポ資料を出してくる) 02年 組込み技術者を10万人増やそうといわれた 04年 組込み元年といわれた 06年はみんなで開き直ってクライシス宣言をしよう!そして予算もらおう! Yさん: ニーズはあるのに事業が成り立たなくなるのがクライシスだ ----------------------------------------------------------------------- [まとめ] 結論はやはり出なかった… 組み込みソフトには時間がないのがクライシス:実験室の移動に1万歩 大企業に余裕があるので企業内ではクライシスを救っている 次世代に組み込みやらせたいと思う人が20%というのはクライシスであろう 規模が大きくなっているというのは発展している証拠でもある。仕事がないと いうのが最悪のクライシスだが幸いそれは訪れていない クライシスと叫んで楽しもう!