180 likes | 336 Views
オープンソースにひそむ問題. 山本 晋一郎 愛知県立大学. 議論の流れ. 準備 肯定 : 下流行程を対象とした研究には追い風 上中流には ? オープンソースに関する 20 の課題は ? 疑問 : アカデミック論文にしにくい ( 権藤 ) LALR(1) 並みの発明をすれば ... 理屈よりも実践か !?. Open-source Software (part 1). アイデア
E N D
オープンソースにひそむ問題 山本 晋一郎 愛知県立大学
議論の流れ • 準備 • 肯定: 下流行程を対象とした研究には追い風 • 上中流には? • オープンソースに関する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 を使わないが,Open-source 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)並みの発明をすれば... • 理屈よりも実践か!?