ソフトウェアエンジニアリング の歩みと展望 · sec講演[email protected]...
TRANSCRIPT
SEC講演[email protected]
ソフトウェアエンジニアリングの歩みと展望
SEC設立記念講演会2004年11月16日
鳥居宏次;[email protected](国立大学法人奈良先端科学技術大学院大学)
www.naist.jpwww.empirical.jp
SEC講演[email protected]
今日の話題
? ソフトウェアを取り巻く環境
? ソフトウェア(工学)の歴史的背景
? エンピリカル・ソフトウェアエンジニアリングに向けて
? EASEプロジェクト• e-Society:文科省リーディングプロジェクト基盤ソフトウェア
の総合開発の1課題
? まとめ
SEC講演[email protected]
ソフトウェアを取り巻く環境
SEC講演[email protected]
ソフトウェア開発で変わらぬ課題? ソフトウェアの信頼性、
• 多数のバグを含んだソフトの流通、• 一度ダウンすると多大な社会的損失(リコール、金
融)
? ソフトウェアの生産性、• 製品のライフサイクルの短期化、• 人海戦術による限界、• 人月単位の工数慣行;低単価組織・地域へ、
? 経験的なノウハウやアドホックな手法・ツールに頼る、
? 個別要素技術研究の他に管理・統合技術研究が必要
SEC講演[email protected]
ソフトウェア独特の課題
? 産業基盤を支える高度情報化社会の担い手であるにもかかわらず脚光をあびない:産業として陽が当たりすぎて緊張感が不足した?
? アジア諸国への外注政策の見直し、
? 要素技術は進み、知識はあるが、一体何が欠けていたのか?• 経験やノウハウがあっても、蓄積データがない(世界共通)、
• 現場にツールを導入するのは困難、• 保守的、• 時間的余裕がない、• 技術者のレベルが低い、
? 論文捏造は起こりえない、• 共有できるデータの公開がない、
SEC講演[email protected]
わが国のソフトウェアの特徴
? 1980年代後半には、わが国のソフトウェアの品質は世界トップとの自認、• 制御系ソフトウェア、OS、
? 伝統ある実装技術力をソフトに何故活かせなかったのか?
? 日本人としての性善説、几帳面、など多文化的な長所が反映、
? 一方、ビジネス・契約社会にそぐわない、あいまい文化の弊害、
? 人材育成:• 若者への不人気分野、• 諸外国との育成人数の違い、
SEC講演[email protected]
ソフトウェア(工学)の歴史的背景
SEC講演[email protected]
ソフウトェア工学の歴史
? 1968年;「ソフトェアエンジニアリング」という用語がNATO科学会議で初めて使用、
? 1960年代;機能の時代:情報化社会の訪れ、? 1970年代;スケジュールの時代:計画通りの納
品、ライフサイクルの概念、? 1980年代;コストの時代:ソフトに価格、生産性、? 1990年代;品質の時代:ソフトへの依存度増大、? 2000年代;真の工学として生産性と信頼性の
見直し、
SEC講演[email protected]
Zelkowitz-Wallaceによる実験的技術評価モデルの分類
? 観測型(Observational)実際に行われているプロジェクトを横から観測して評価、
? 履歴型(Historical)過去に行われたプロジェクトのデータや発表された論文に基づいて評価、
? 制御型(Controlled)目的とするデータを得るために環境を整えてプロジェクトを実行し評価、
V. Zelkowitz, D. R.Wallace, "Experimental Models for Validating Technology", IEEE Computer, pp.23-31, May 1998.
SEC講演[email protected]
ソフトウェア工学の論文が使っている評価法
0% 5% 10% 15% 20% 25% 30% 35% 40% 45%
シミュレーション
動的解析
実験室
繰返し
静的解析
経験
事例調査
文献調査
野外調査
アサーション
事例研究
プロジェクトモニタ
実験なし
評価
法
論文の割合
19851990
1995
-ICSE-TSE-IEEE
Software
SEC講演[email protected]
エンピリカル・ソフトウェアエンジニアリングに向けて
SEC講演[email protected]
ソフトウェアにおける実験的科学の実現方法
? フィールドデータ観察とそのための道具作り;• 現場で負担がかからない観察が必要、
? 分析;勘と度胸と経験からの世界から統計処理へ、? 仮説・モデルの提案、? 現場での検証、
? 従来の代表的なオブジェクト指向、アジャイル、Goal/Question/Metic、などの方法論・パラダイム(考え方)などトップダウンと、
? 現実のデータに基づくボトムアップとをドッキングさせることにより、実験的科学・工学へ、
SEC講演[email protected]
エンピリカル・ソフトウェア工学の動向
? 実証的、(Empirical=Experimental+Experienced)
? 定量的なデータに基づいてソフトウェアの生産性や品質の向上を目指す、
? 実際の開発現場のデータの収集と分析が必須? エンピリカルソフトウェア工学に関して、
• 国際雑誌(International Journal on Empirical Software Engineering)、
• 国際会議(International Symposium on Empirical Software Engineering、奈良で2002年~、),
• 国際研究会(ISERN:(International Software Engineering Research Network:奈良で1993年~、)
SEC講演[email protected]
EASEプロジェクトの目的
1. エンピリカル環境の提案と構築2. エンピリカル環境の配布・実プロジェクトへの
適用
3. エンピリカルデータやその分析による知見の蓄積
4. 適用先の組織の生産性、信頼性の向上
プロジェクトのホームページ:http://www.empirical.jp/
SEC講演[email protected]
文科省EASEと経産省SEC
? EASEは計測・分析・実証サイクルの実現、オールジャパンと海外アドバイザ
• 少数大学の学者だけでは無理、• 産・学+官、
• 定量化:大企業では従来から十分な計測経験はあり、目的に結び付ける方法に期待されてきた、
? SECにはデータに基づく知識の共有化により、業界でのベースラインの構築を期待、
SEC講演[email protected]
EASEプロジェクトの推進方法:「中州」ラボ方式による技術移転と人材養成
産業界 大学中州ラボ
(千里ラボ)
実データ
フィードバック
結果の検証
モデル、知見
SEC講演[email protected]
まとめ;産? 企業意識の改革の必要性;伝統ある日本の実
装技術力をソフトに何故活かせなかった?? 進歩の早い時代では、知識はすぐに古くなるた
め、知識よりも不変で残るものが必要;定量化されたデータと分析結果、
? 銀の弾丸はない、• アジャイルプログラミング(例;XPプログラム)と駆
動型プログラミングとの中庸(Barry Boehm)、
• 方法論と測定との混合、
SEC講演[email protected]
まとめ;官
? 国レベルでの対策が必須、
? ソフトウェアのプロジェクトとして、今のタイミングを逃さない行政支援に大きな拍手と、さらなる期待、
? 1999年、2000年にRISEから、ソフトウェア開発に関する調査依頼を受け、IESE(Dieter Rombach所長)流の産学連携を提案したが、評判が悪かった;報告書のページ数の厚さ?
? 業界の体質の特徴を知るべき、
SEC講演[email protected]
まとめ;学? 国立大学法人化を契機に大学の意識改革
• 研究向け大学 (vs. 教育向け大学)では、基礎研究から基盤研究へ、目的を明確にした基礎研究、
• 少子高齢化時代での高等教育は大学院;英才教育、社会人教育の見直し、
• 社内教育に代わる実証的教育の大学への期待、
? 実務のわかる教員養成の必要性、? 産学連携では、大学とは人材供給と知的財産
供給の「複数」機能を果たす組織、? 論文数やインパクトファクター以外のIT社会向
けの評価基準が不可欠、
SEC講演[email protected]
終終
温故知新→温故創新「データ+α」から「知の創造」へ
(参考)鳥居、「今、日本が必要とするソフトウェア・エンジニアリングの確立」、pp.18-24、Computer &Network LAN
(2004年12月)