オープンソースにひそむ問題 山本 晋一郎 愛知県立大学 議論の流れ • 準備 • 肯定: 下流行程を対象とした研究には追い風 – 上中流には? – オープンソースに関する20の課題は? • 疑問: アカデミック論文にしにくい(権藤) – LALR(1)並みの発明をすれば... – 理屈よりも実践か!? Open-source Software (part 1) アイデア • もし,Internet 上のプログラマたちが,あるソフトウェア のソースを変更,再配布できるならば,そのソフトウェア は伝統的な方法で開発されているソフトウェアよりも早 いペースで進化するだろう. (Apache, Perl, BIND… で学んだ経験より) この経験的な成功事例を商業ソフトウェアの 世界に適用しよう Open-source Software (part 2) 定義 • Free Redistribution • Source Program ソフトウェアは実質的な形としてソースプログラムを含 む必要がある.Obfuscated source program や中間形式 は許されない. • Derived Works 派生物や修正を許すこと.それらを元のソフトウェアと 同じライセンスで配布することを許すこと. Open-source Software (part 3) 定義 (Cont.) • No Discrimination 特定の人やグループを排除してはいけない.特定の分 野を排除してはいけない. • プログラムの部分に対しても同じライセンスが適用され ること. • 他のライセンスを破ってはいけない. • ライセンス例: GNU GPL, BSD, X consortium... Open-source Views (part 1) Hacker’s View (技術編) • Open-source の技術的な側面は理解している • 今までの Internet はこうやって発展してきた Eric S. Raymond: “The Cathedral and the Bazaar” Microsoft: “Halloween Documents” Hacker’s View (経済編) • Why You Won’t Starve ? Open-source Views (part 2) Hacker’s View (マーケティング編) • Free Software と何が違うか ? • CEO や CTO は Free Software を使わないが,Opensource Software なら使う Open-source Views (part 3) Business View (技術編) • 信頼性は確保できるのか ? • ソフトウェアハウスのメリットは ? 開発効率の向上,低いオーバヘッド • ソフトウェア流通業者のメリットは ? 顧客との親密さ,より広い市場 Support Seller, Loss Leader, Widget Frosting, Accessorizing 議論の流れ • 準備 • 肯定: 下流行程を対象とした研究には追い風 – 上中流には? – オープンソースに関する20の課題は? • 疑問: アカデミック論文にしにくい(権藤) – LALR(1)並みの発明をすれば... – 理屈よりも実践か!? ソフトウェア工学との関係 • 不特定多数の SE 研究者が,実世界のソフトウェ アをサンプルとして研究できる • 検証や追試が可能となる • 成果物の履歴にリアルタイムでアクセスすること が可能となる (プロセスに関する研究題材) • 分析・設計ドキュメントは不足している(ソースプ ログラムのみが配布・流通) オープンソースに関する20の課題(1) • 古典的開発プロセスとオープンソースの開 発プロセスの定量的な比較 – 定性的な分析『伽藍とバザール』は行われて いるが,信頼性の高い定量的な比較研究は? • ソフトウェア産業へのオープンソース的開 発形態の適用 – 修正なく適用できるのか? – どのような修正が必要か? – 部分的に適用することは可能か? オープンソースに関する20の課題(2) • 大規模な分散開発支援環境 – 分散した開発者集団のための開発支援環境 • 大規模に分散した開発者集団のためのバージョン 管理,構成管理,バグ追跡,ドキュメント管理,テス ト支援環境など – コミュニケーション環境 • 大規模に分散した開発者集団のための意思決定 を支援する環境. オープンソースに関する20の課題(3) • 利用者からのフィードバックを支援する環境 – 利用者との密接な関係(オープンソースの特徴)を 強化する試み • • • • • • リモートのユーザビリティ・テスト環境 リモートの対話的デバッガ リモートの実行トレース・ダンプ 利用状況のログ採取 利用環境のdetect 自動バグレポート送付機能 オープンソースに関する20の課題(4) • ソフトウェアの検索と再利用 – – – – – – 他のソフトウェアに含まれる機能部品群を検索 適用箇所に合わせて修正 オリジナルの変更を通知 Semantic Diff Clone Code Detection CPAN, RAA オープンソースに関する20の課題(5) • 中上流工程への展開 – 中上流工程の成果物の公開促進 • 要件定義の過程を示すドキュメント • 設計ドキュメント – 中上流工程の成果物の蓄積・検索・再利用 – ソースプログラムと設計ドキュメントの対応づけ オープンソースに関する20の課題(6) • クリアリングハウス – 「手形交換所,(物資・情報などの)中央集配 [保管]機関,情報[集散]センター」 「資料及びデータを収集し,保存し,報知し, 利用できるようにする機関」 • SourceForge : CVSリポジトリ,FTPディレクトリ, ディスクバックアップ,バグ追跡システム,パッチ管 理システム,Webサイト・ホスティング,メーリングリ スト,メッセージ・フォーラム,独自ドメイン • 次世代のSourceForgeは? オープンソースに関する20の課題(7) • 会場の皆さんより募集 – – – – – Light Weight Process スクリプト テスト 国際化 Web 議論の流れ • 準備 • 肯定: 下流行程を対象とした研究には追い風 – 上中流には? – オープンソースに関する20の課題は? • 疑問: アカデミック論文にしにくい(権藤) – LALR(1)並みの発明をすれば... – 理屈よりも実践か!?
© Copyright 2025 ExpyDoc