1. OSSの概要に関する知識

Ⅰ.概要

ソフトウェアの新たな開発手法となりソフトウェア業界で大きな影響力を持つようになったオープンソースについて解説する。本講義では、オープンソースの登場から現在に至る発展の経緯や代表的なソフトウェアの特徴を解説する。講義の後半では実際にソフトウェアをPCにインストールしながら演習を行う。

Ⅱ.対象専門分野

職種共通

Ⅲ.受講対象者、受講前提

入門カリキュラムのため、特に規定しない。

Ⅳ.学習目標

· オープンソースの基本的な概念を理解すること

· オープンソースで開発される代表的なソフトウェアの特徴を理解すること

Ⅴ.使用教科書、教材等

選定方針として、未経験レベルの技術系学生からITSS各職種の若手社員の利用を想定。第11回以降はワークショップ主体のため教科書、教材等は使用しない。

『オープンソースソフトウェアの本当の使い方』

濱野賢一朗/鈴木友峰共著、技術評論社刊

Ⅵ.習得スキルの評価方法

講義終了後の受講レポート、定量アンケート、知識確認ミニテスト、演習問題の取り組み状況を総合的に判断して評価を行う。

Ⅶ.カリキュラムの構成

レベル1(基本) 第1回~第8回

レベル2(応用) 第9回~第15回

学習ガイダンス: 
1. OSSの概要に関する知識 I
学習ガイダンス: 
1. OSSの概要に関する知識 II

第1回 オープンソースの理念(講義 90分)

オープンソースという言葉の定義と概念を理解する。あわせてオープンソースの基本的なライセンスを理解する。

(1)オープンソースの登場と理念

1. オープンソースの定義

2. ネットスケープ社製品のソースコード公開

3. Open Source Initiativeの設立

(2)"伽藍とバザール"モデル

1. インターネットが果たす役割

2. オープンソースコミュニティによる開発

3. 世界中からの貢献

(3)オープンソースのライセンス

1. ライセンスの種類と形態と普及

2. デュアルライセンスとは

3. 商用ライセンスとの比較

第2回 オープンソースOSの歴史(講義 90分)

オープンソースのOSの発展の歴史をUNIX BSDとLinuxを軸に理解する。

(1)UNIXの誕生と発展

1. MulticsとUNIXの登場(1960年代後半)

2. UNIXの発展(1970年代前半)

3. BSDの登場(1970年代後半)

(2)GNU・コピーレフト

1. GNU Projectの開始

2. Free Software Foundationの設立

3. GNU General Public Licenseの登場

(3)Linux

1. Linuxカーネルの登場とGNU Projectとの連携

2. Linuxディストリビューション

第3回 代表的なオープンソース(講義 90分)

代表的なオープンソース製品の特徴を理解する。OS(オペレーティングシステム)とサーバ製品を中心に解説する。

(1)OS(オペレーティングシステム)

1. BSD

2. Linux

(2)インターネットサーバ

1. メールサーバ

2. Web(HTTP)サーバ

3. DNSサーバ

(3)各種サーバ

1. ファイルサーバ

2. syslogサーバ

3. 認証サーバ

(4)ミドルウェア

1. データベースサーバ

2. アプリケーションサーバ

(5)仮想化ツール

第4回 代表的なオープンソース開発言語(講義 90分)

代表的なオープンソースの開発言語の特徴を理解する。開発言語とフレームワーク、統合開発環境を中心に解説する。

(1)開発言語

1. C/C++

2. PHP

3. Perl

4. Python

5. Ruby

6. Java

(2)開発フレームワーク

1. PHP系

2. Ruby系

3. Java系

(3)統合開発ツール

1. Eclipse

2. Net Beans

3. WideStudio

第5回 代表的なオープンソースアプリケーション(講義 90分)

代表的なオープンソースアプリケーションをデスクトップ用、サーバサイド用のカテゴリごとに特徴を理解する。

(1)デスクトップアプリケーション

1. ウィンドウシステム

2. オフィス

3. ブラウザ

4. メーラー

5. グラフィックツール

(2)サーバアプリケーション

1. CRM

2. BI

3. ERP

4. CMS/Webサイト作成支援

5. 特定業務向けアプリケーション

第6回 オープンソースの市場動向(講義 90分)

オープンソースの標準化動向とビジネスでの利用状況を理解する。

(1)標準化動向

1. Linux標準規格"LSB"

2. 東アジアの取り組み

3. Javaの標準仕様とオープンソース

(2)利用分野/導入事例

1. 利用動向調査結果解説

2. オープンソース利用事例紹介

第7回 オープンソースソフトウェアを用いたシステム事例(講義 90分)

Webシステムのインフラ構築を例に、実際のシステム構築におけるオープンソースの採用時のメリットや注意点を理解する。

(1)Webシステムのアーキテクチャ適用事例

1. Webアーキテクチャとは

2. オープンソースソフトウェアの適用箇所

(2)構築上のポイント

1. 製品選定

2. 処理方式

3. 性能と耐障害性

4. 運用管理とセキュリティ

(3)システムの効果と問題点

第8回 オープンソースソフトウェアコミュニティ(講義 90分)

オープンソースコミュニティの成り立ちと運営方法を理解する。オープンソースコミュニティへの貢献や参加方法を理解する。

(1)プロジェクトの発達と運営

1. オープンソースソフトウェアコミュニティの意義

2. ソフトウェア開発の場としてのコミュニティ

3. ソフトウェアの普及拡大の場としてのコミュニティ

(2)オープンソースソフトウェアコミュニティへの参加

1. メーリングリスト/フォーラム

2. ソースコード提供

3. 翻訳活動

4. 宣伝活動

(3)代表的なコミュニティ

1. 開発コミュニティ

2. ユーザコミュニティ/翻訳コミュニティ

3. 企業コンソーシアム

第9回 オープンソースソフトウェアビジネス(講義 90分)

オープンソースソフトウェアに関連したサポートサービスやコンサルティングなどのビジネスモデルとそのトレンドを理解する。

(1)Linuxディストリビューション

1. ビジネスモデル

2. 代表企業紹介(RedHat Linux)

(2)サポートサービス/技術コンサルティング

1. ビジネスモデル

2. 代表企業紹介(MySQL)

(3)教育/資格試験

1. ビジネスモデル

2. 開発企業による教育/資格試験(RedHat、MySQL)

3. 教育機関による教育/資格試験(LPI、大学、専門学校)

(4)プロフェッショナルオープンソース

1. ビジネスモデル

2. 代表企業紹介(RedHat社JBoss部門)

(5)コマーシャルオープンソース

1. ビジネスモデル

2. 代表企業紹介(SugarCRM)

第10回 オープンソースの技術情報獲得方法(講義+ワークショップ 90分)

オープンソースの技術情報の調査方法を理解する。代表的なオープンソースコミュニティや企業が提供するオープンソース情報、および各種の技術情報Webサイトを紹介し、実際に技術情報の調査の演習を行う。

(1)主なオープンソースコミュニティのポータルサイト

1. SourceForge.net/SourceForge.jp

2. ObjectWeb

3. codehaus

4. Apache Software Foundation

(2)企業が提供するオープンソース情報Webサイト

1. IBM/developerWorks

2. HP

(3)各種オープンソース情報Webサイト

1. IPA OSS iPedia

2. オープンソース系ニュースサイト

(4)技術情報の調査

1. 小演習を交えて調査の方法、狙いを学習する

第11回 オープンソースのOSの導入と動作確認(ワークショップ 90分)

複数のオープンソースOSを演習用PCに導入して、導入の手順やOSによる基本的な違いなどを理解する。

(1)OSの導入

1. ビジネス用途で大きなシェアを持つRedHat Enterprise Linux

2. 教育用途などで普及しているKnoppix

3. 利用者の増加が著しいUbuntu

4. BSDの中でも活動が活発なFreeBSD

第12回 オープンソースのサーバ製品の導入と動作確認(ワークショップ 90分)

代表的なオープンソースのサーバ製品を演習用PCに導入して、導入の手順や製品による基本的な違いなどを理解する。

(1)サーバ製品の導入

1. メールサーバの基本的な実装sendmail

2. デファクトスタンダードとなったWebサーバApache HTTP Server

3. 商用製品と同等のシェアを持つデータベースMySQL

4. 運用管理ツールHinemos

第13回 オープンソースのデスクトップ用アプリケーションの導入と動作確認(ワークショップ 90分)

代表的なオープンソースのデスクトップ用アプリケーションを演習用PCに導入して、導入の手順や製品による基本的な違いなどを理解する。

(1)デスクトップ用アプリケーションの導入

1. ブラウザMozilla Firefox

2. メーラーMozilla Thunderbird

3. オフィススイートOpen Office

4. グラフィックツール GIMP

第14回 オープンソースのサーバサイドアプリケーションの導入と動作確認(ワークショップ 90分)

代表的なオープンソースのサーバサイドアプリケーションを演習用PCに導入して、導入の手順や製品による基本的な違いなどを理解する。

(1)サーバサイドアプリケーションの導入

1. Webサイト作成ツールXOOPS Cube

2. ブログ作成ツールWordPress

3. ソーシャルネットワークサイト作成ツールOpenPNE

第15回 オープンソースの仮想化ツールの導入と動作確認(ワークショップ 90分)

代表的なオープンソースの仮想化ツールと、その上で動作するOSを演習用PCに導入して、導入の手順や製品による基本的な違いなどを理解する。

(1)仮想化ツールの導入

1. Xen

(2)仮想化ツールで構築した仮想PCへのOSの導入

以上