情報と社会
第一回: 標準化とオープンソース
Martin J. Dürst
duerst@it.aoyama.ac.jp
O 棟 529号室
テュールスト マーティン
ヤコブ
http://www.sw.it.aoyama.ac.jp/2016/InfoSociety/lecture1.html
© 2005-16 Martin
J. Dürst 青山学院大学
今日の内容
- 第一部: オープンソース
- 第二部: 標準化
- 第三部: 標準化とオープンソースの関係
大学院進学説明会
- 本日 3限 (13:20~) E-210 教室
- 理工学部 3年生全員が対処:
- 大学院は何なのか分からない学生
- 少しでも大学院への進学も検討している学生
- 進路についてまだ考えていない学生
- 前半:全体向け説明会
- 後半: 教員と修士の学生による個別相談
授業全体の説明
- 「日程とテーマ一覧表」配布
- 全15回,情報テクノロジー学科の教員および外部講師が各回を担当
- 外部講師の多くは,授業の最後にレポートを書いて提出する形式をとる
- 情報テクノロジー学科教員については,それぞれレポートの形式,提出期限が異なる
- 基本的に遅延レポートは受け付けない
個人的背景
第一部: オープンソース
(Open Source Software, Open Source)
簡単な定義:
ソースコードがただで入手、変更も可能なソフトウェア
例:
反例: Microsoft, Apple, Adobe, Google, Facebook
などの多くの製品
オープンソースの歴史
(Unesco
Free Software Portal 参照)
オープンソースの種類
- オープンソースではない:
- シェアウェア等: 低価格
- フリーウェア: 無料、しかしソースは非公開
- ソースが公開されたが、使用、変更が制限されているもの
(スクリプトなど)
- オープンソースの主な流れ:
(その他のライセンス)
オープンソースの背景
なぜオープンソースがあるが、例えばオープン自動車がないのか
?
- ソフトウェアの複写・配布はほぼ無料
- インターネットで物理的な距離と関係なく配信・協力可能
- ツールによって遠隔開発のサポート:
- 電子メール、チャット、Wiki, Blog, Skype, Twitter, Line,
...
- 版管理システム (CVS, SVN; git, Mercurial, Bazaar, darcs)
- 開発用ウェブサイト (例: Github, Sourceforge)
- 配布用ウェブサイト (例: Freecode)
- ソフトウェアの様々な形に対応可能
- ユーザの多様な要求に対応可能
最近は「オープン」が広がる:
オープンソースが無料な開発サイト
会社向けの有料サービスはオープンソースの場合、無料
一部の例:
オープンソースの作成・公開の動機
- 企業:
- ソフトウェアではなく、サービスで勝負
- 企業の共同開発や一般人の協力でコスト削減
- 他の企業と違う作戦
- オープンソースによる市場の拡大
(具体例: Cisco
and H.264)
- 近年、オープンソースが飛躍的増加
- 個人、大学など:
- 就職、転職に有利
- 商品化は大変、オープンソース化は簡単
- 少しのお金より名誉が嬉しい
- 他人からの修正・改善・拡張など期待
- 会社お越しにオープンソースを利用
オープンソースの使用の動機
- コストの低下
- 変更はいつでも可能
- 内容のチェックが可能
- 選択肢の拡大
- プログラミングの勉強
オープンソースに必要な注意点
作成者側も利用者側も注意点が類似
- 利用に合ったライセンスの有無
- 提供されたコードが問題無しか
(第三者のコードを提供されたら困る)
- 特許の侵害の有無
オープンソースの詳細
- 単純な定義では色々な問題が起こりうる
- Open Source Initiative による定義 (日本語):
- ソースがほぼただで見える
- 再配布が自由
- 派生の許可
- 完全性 (著者など) の保証
- 差別の禁止: 個人やグループ、利用分野に対して
- 追加ライセンス契約、特定商品との結びつき、他のソフトウェアの制約の禁止
第二部: 標準化
(標準: standard; 標準化: standardization)
標準は、基本的なもの (秒、メートル等)
をはじめ、生活において大切な役割
例: トイレットペーパに書いてあった文書:
「幅が114ミリのトイレットペーパーで、日本工業規格(JIS規格)に準じた製品サイズ(幅=114ミリ:直径=120ミリ以下)ですので、一般的なホルダーにも使用できます。」
情報テクノロジーでの標準の大切さ
- データの長期保存
- 通信でのやり取り
- 大量化によるコスト削減
一企業が作った商品も標準として宣伝されていることがあるが、標準とは言い難い
標準作成機関: 標準化団体
[標準・使用のリスト: W3C, IETF, IEEE,
ISO,
OMG, The Open
Group, Oasis]
標準化のプロセス
- アイディア、提案、標準化団体への提供 (submission)
- 委員会 (working group) の設置、議論
- 文書化、草案 (draft) 公開、意見募集・投票
- 正式決定、発表
- 実装 (もっと前から行った方が良い場合が多い)
- 普及
- 製品の認証 (certification)
- 正誤表、格上げ、見直し、拡張・第二版など
標準化団体の評価
標準化団体が多く存在する中で、評価が大切
標準の評価
- 必要な機能が揃っているか
- 無駄な機能が少ないか
- 普及度、普及の見込み
- 誤りが少ない
- 正誤表 (errata) の整備
- 拡張性が高い
- 関連規格との整合性
- 分かりやすさ
- オープン標準か
第三部: 標準化とオープンソース
- 標準はオープンなのかどうか
- オープンソースに標準が有利
オープン標準
(Open
Standards と Business
Case for Open Standards 参照)
- だれでも読める、誰でも実装できる
- ユーザの選択肢を最大限に活かす
(特定のメーカ、製品に制限しない)
- 実装は無料で可能
(必要不可欠な特許やライセンス料などがない)
- 実装や利用者の差別がない
- 実装、利用は拡張や部分的で可能
- 乗っ取り防止
標準のオープンソースへの影響
- 面識が殆どない多数のプログラマーによる実装は、標準によって目的がはっきりされる
(標準がオープンソースの仕様書)
- 典型例: Linux の開発
- Unix:
会社によって開発された人気 OS
- Posix: Unix の
API の標準化
- Linux: Posix に準拠の実装
(内部は Unix と違う)
オープンソースの標準化への影響
- 早い段階での実装・検証・テスト
- 普及のきっかけ
- 複数の実装の保証
レポート: 別紙参照
提出: 来週の火曜日 (2016年9月27日) 19:00 時 (必着) O棟
5階の529号室前の箱に投稿
参考文献
- Producing Open Source Software: How to Run a Successful Free
Software Project, Karl Fogel, O'Reilly, 2006.
- Innovation Happens Elsewhere: Open Source as a Business
Strategy, Ron Goldman and Richard P. Gabriel, Morgan Kaufmann,
2005.
- Intellectual Property and Open Source: A Practical Guide to
Protecting Code, Van Lindberg, O'Reilly, 2008.
- Open Source Licencing: Software Freedom and Intellectual Property
Law, Lawrence Rosen, Prentice Hall, 2005.
- Free Software, Free Society: selected essays of Richard M.
Stallman, Joshua Gay, Ed., GNU Press, 2002.