2013年11月25日月曜日
モノレール駅からのご案内
ゆるい坂道(「白門プロムナード」というそうです)をだらだらと上っていくと,ロータリーに突きあたります.
看板に従って,「3号館1F教室」方向に進んでください.
奥に見える道を進みます.
3号館1F入口に辿り着きました.
奥に進みます.
3号館(高層階棟)に入ります.
入りました.
右手奥にエレベータがあります.4Fに上がってください.
4Fの廊下です.左側,8つめの扉が飯尾の部屋です.ようこそ!
なお,キャンパスマップもご参照ください.
2013年11月1日金曜日
「オープンソースソフトウェア実践特論」(東京農工大学大学院,2013年後期)
講義の目的と到達目標
OSSによる開発の基本技術から最新動向まで,演習を交えて学習する.OSS開発の概要を理解し,実際にシステムを構築できるようになることを目標とする.講義の内容
現代の情報技術開発において基盤的位置付けを占めるまでに成長したオープンソースソフトウェア(OSS)に関する基礎的な要素技術とその開発の仕組みを,具体的な演習を交えて学習する.本講義においてはOSS開発に欠かせない関連技術動向を学習し,最新技術をキャッチアップできるようになるためのスキルを身につける.講義計画・資料
- オープンソース,開発の流れとツール(11/2)
- 本講義の概要について説明し,オープンソースソフトウェアの開発がどのように行われているかを説明する.
- 担当: 清水浩行
- ソフトウェア開発環境の概要(11/2)
- ソフトウェアを開発するための環境について,その概要を説明する.
- 担当: 清水浩行
- バージョン管理ツール(11/2)
- ソフトウェア開発に必須のツールであるバージョン管理ツールを説明し,実際に,バージョン管理の原理を確認する.
- 担当: 清水浩行
- プログラムのデバッグ(11/16)
- 様々なソフトウェア開発におけるプログラムのデバッグ手法を説明する.
- 講義資料 PDF
- オープンソースの開発ツール(11/16)
- オープンソースソフトウェア開発でよく活用される開発ツールを説明する.
- 講義資料 PDF
- オープンソース研究の動向(11/16)
- オープンソース関連の研究分野について,最新の動向を交えてその概要を説明する.
- 講義資料 PDF
- ドキュメンテーションツール(11/23)
- オープンソース開発におけるドキュメンテーションの重要性を解説し,そのために利用されるツールを説明する.
- 担当: 清水浩行
- 統合開発環境(11/23)
- 統合開発環境とは何かを説明し,その使い方,オープンソースソフトウェアによる実装例を紹介する.
- 担当: 清水浩行
- 開発フレームワーク(11/23)
- 開発フレームワークとは何か,その概要を解説し,オープンソースソフトウェアとして利用できるフレームワークを紹介する.
- 担当: 清水浩行
- Linux開発環境におけるソフトウェア開発(11/30)
- Linux開発環境においてしばしば利用されるソフトウェア開発ツールについて説明する.
- 講義資料 PDF
- ソフトウェア開発ツールの評価(11/30)
- ソフトウェア開発ツールの導入と利用に関して,どのような観点から評価して選択すべきなのか,その基準について説明する.
- 講義資料 PDF
- ソースコード・リーディング(演習の説明)(11/30)
- 次回からの演習について実施方法を説明する.また,演習に備えて実際に簡単なソースコードを読む作業を体験する.
- 講義資料(1) PDF
- 講義資料(2) PDF
- プログラム開発演習(1)(12/14)
- 各種のライブラリを利用したオープンソースソフトウェア開発を実際に実施してみる.
- 講義資料 PDF
- プログラム開発演習(2)(12/14)
- 演習(1)の続き.
- プログラム開発演習(3)(12/14)
- 演習(1)(2)の続きとレポーティングを行う.
講義の進め方
11月から12月にかけて,土曜日の集中講義で実施する.座学および演習を行う.演習では実際にソフトウェア開発を行う.成績評価
出席50%,レポート50%で評価する.2013年10月22日火曜日
「情報システム開発」受講生による作品
火曜日1限「情報システム開発」で実施したソフトウェア開発演習では,アンケートフォームを例題として提示したテンプレートを改良してJavaScript/HTML/CSSによる簡単なシステムの開発演習を行いました.9つのグループで実施したなかで,優秀な作品が提出されましたので(本人の許可を得て)ここで紹介します.
2013年10月10日木曜日
「知の回廊」第92回「オープンソースソフトウェアを使おう」絶賛放映中
中央大学では,教養番組「知の回廊」を提供しています.今回,飯尾が監修した第92回「オープンソースソフトウェアを使おう」が,10月中,ケーブルTVネットワークで放映されています.同番組は,YouTubeでも視聴可能です.ぜひ,ご覧ください.
現在,ITの現場でオープンソースソフトウェア(OSS)に様々な立場から関わっている方々の,生の意見を聞くことができます.以下,番組紹介から引用します.
現在,国内で使用されているコンピュータの,およそ3分の1に搭載されているといわれる,マイクロソフト社のOS『Windows XP』が,2014年4月9日をもって,製品サポートを終了すると発表され,大きな波紋を呼びました.
コンピュータの買い替えや,OSの更新には,多額の費用がかかるため,特に情報処理にそれほどコストを掛けることができない,中小企業や地方自治体にとっては,たいへん深刻な問題とされています.
一般的に市販のソフトウェアは,無断でコピーしたり,中身を改変して再配布するといった行為は,固く禁止されています.しかしその一方で,最近はそのような制約に縛られない,『オープンソース』と呼ばれるソフトウェアが注目されるようになりました.
今回は,オープンソースソフトウェアの普及を目指した活動や,そのメリット,企業による導入事例などを紹介しながら,オープンソースソフトウェアの可能性を探ります.
視聴は,↓ こちらからどうぞ
2013年10月5日土曜日
2013年9月1日日曜日
「社会情報学基礎演習(2)B」(中央大学,2013年後期)
講義の目的と到達目標
社会情報学基礎演習(1)に続き記録情報学の専門的基礎を学ぶ.講義の内容
記録情報学では,「理論形成」とそれを実践できる「情報技術」が重要である.ただし,理系的な技術ではなく,哲学,論理学,歴史,文学,言語学,意味論,数学,心理学,社会学など人文社会科学やリベラルアーツに基づくもので,なによりも,人間の情報・知識の表現と獲得,情報分類学(オントロジ)を対象にする.特に意味論からのアプローチについて研究する.
講義計画・資料
- 情報の構造化と取扱い
- 情報を構造化して扱うことの重要性と,具体例について学ぶ.
- 構造化文書の作成,文書構造の記述とページ記述言語
- テーマを掘り下げて細分化することによって構造を持つ文書を作成する方法,および,文書構造を記述するための言語とページ記述言語の違いについて学ぶ.
- 構造化文書の表現方法(1)
- ワープロソフトを用いて構造化された文書を作成する方法について学ぶ.
- 構造化文書の表現方法(2)(10/23実施)
- ワープロソフトを用いて構造化された文書を作成する方法について学ぶ(続き).[10/16は台風のため休講です]
- 構造化文書の記述方法(3)
- HTMLを用いて構造化された文書を作成する方法について学ぶ.
- 構造化された情報の取扱い
- インターネットにおいて,情報がどのように構造化されて扱われているかについて学ぶ.
- セマンティック・ウェブ(1)
- インターネット上に溢れている膨大な文書を,意味を考慮して扱うしくみについて学ぶ.
- セマンティック・ウェブ(2)
- インターネット上に溢れている膨大な文書を,意味を考慮して扱うしくみについて学ぶ(続き).
- データの表現
- インターネットにおいて,情報としての「データ」がどのように扱われているかについて学ぶ.
- 演習に関する作業方法の提示
- 演習テーマの提示と資料の作成,発表方法について説明する.
- 演習発表(1)
- 演習の成果を発表,各発表について受講者でディスカッションを行う.
- 演習発表(2)
- 演習発表の続き.
- 演習発表(3)
- 演習発表の続き.
- 演習発表(4)
- 演習発表の続き.
- まとめと振り返り
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
小テスト,最終レポートなどの状況を勘案して評価する.「図書館情報技術論/図書館情報学概論(後期)」(中央大学,2013年後期)
講義の目的と到達目標
紙の資料からデジタルコンテンツまで,図書館資料の分析技術を通じて,分類技術,索引技術,シソーラスの利用,Webによるメタデータの理解を深める. 図書館を情報システムとしてモデル化して,その仕組みについて具体的に図書館情報技術を論じる.講義の内容
図書館業務に必要な基礎的な情報技術を修得するために,コンピュータの基礎,図書館業務システム,データベース,検索エンジン,電子資料,コンピュータシステム等について,および,図書館業務とサービスにおける情報技術やインターネットの活用について解説する.
講義計画・資料
- 図書館情報技術の全体像
- 技術の全体像.図書館情報とは何か,その全体像を概観する.
- コンピュータとネットワークの基礎
- コンピュータとネットワークの基礎について説明する.
- 高度情報化社会
- 社会における情報技術の位置付けについて説明する.(おまけ:ビッグデータについて)
- 図書館における情報技術の活用
- 図書館における情報技術活用の現状について説明する.
- 主題と記録
- 主題と記録,概念.図書などの記録とその主題について説明する.
- 分類法,検索法
- 分類法・検索法.タクソノミー,クラス,シソーラスなどについて説明する.
- データベースとメタデータ
- データベース.情報のメタデータとその蓄積について説明する.
- データベースの仕組み
- データベースの仕組み.データベースの設計と開発について説明する.
- インターネットとWeb
- インターネットとWeb.データベースとインターネットについて説明する.
- 検索エンジン,デジタルライブラリ
- Webと検索エンジン.デジタルライブラリの仕組みについて説明する.
- Webとメタデータ
- メタデータ言語の仕組みと標準化について説明する.
- デジタルメディア
- 図書館で今後重要となる,電子書籍とデジタルアーカイブについて説明する.
- 情報セキュリティ
- インターネット上のデータの取扱いで重要なセキュリティについて説明する.
- まとめと課題,将来展望
- まとめや様々な課題,および,図書館情報技術の未来について考察する.
- 期末レポート作成
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
出席状況,最終回に実施するレポートなどの状況を勘案して評価する.「人工知能・自然言語処理」(中央大学,2013年後期)
講義の目的と到達目標
人工知能とユビキタス社会,それを支える自然言語処理について学ぶ.講義の内容
オントロジと呼ぶ分類知識モデルを使い,人工知能とは何かについて学ぶ.また,人工知能の基礎となる言語処理の基礎について学習する.
講義計画・資料
- 人工知能とは何か
- 人工知能とは何か,人工知能システム,知的情報処理とは何かについて,その概要を説明する.
- 宣言型プログラムと述語論理
- 宣言型プログラムとは何か,一般的なプログラミングとの違いを学ぶとともに,述語論理(記号論理)の基礎について学習する.
- 述語論理の研究(推論)
- 述語論理を利用した推論について,その基本的な考え方を学習する.
- 述語論理の研究(アルゴリズム)(10/23実施)
- 述語論理に基づくシステム(機械的な証明)のアルゴリズムについて学ぶ.[10/16は台風のため休講です]
- 述語論理の研究(アルゴリズム)[続き](11/6実施)
- 述語論理に基づくシステム(機械的な証明)のアルゴリズムについて学ぶ.講義資料は前回の後半を使います.
- 述語論理の研究(その取扱い)
- 述語論理とプログラミング上の表現について学ぶ.[PC教室で実施]
- 述語論理の研究(その取扱い)[続き]
- 述語論理とプログラミング上の表現について学ぶ.講義資料は前回の後半と,下記資料の前半を使います.[PC教室で実施]
- 人工知能言語(Prologとその応用)
- 人工知能システムで利用されるプログラム言語としてPrologについて学び,またその考え方が応用されている例について学習する.講義資料は前回の後半を使います.[PC教室で実施]
- 人工知能言語(Lispおよび派生プログラム)
- 人工知能システムで利用されるプログラム言語として,LispおよびLispから派生した各種のプログラム言語について学ぶ.
- 自然言語処理とは何か
- 自然言語を扱う情報処理として,自然言語処理とは何か,どのようなことに留意する必要があるかについて学ぶ.
- 自動翻訳システムと日本語処理システム
- 自然言語処理の応用例としての自動翻訳システム,日本語処理システムについて学ぶ.
- コーパスとオントロジー
- 言語処理で重要な役割を果たすコーパスとは何かについて学ぶ.また,オントロジーとは何か,オントロジーがどのように利用されているかについて学ぶ.
- 機械学習
- 人工知能に対する現実的なアプローチである機械学習の基礎について学ぶ.
- 人工知能・自然言語処理システムの将来
- 人工知能システムおよび自然言語処理システムの未来像について学ぶ.
- 期末試験
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
期末に行う試験による.ただし,出席状況や授業中に行う課題の達成状況などの結果を加味することがある.「ネットワーク技術(2)」(中央大学,2013年後期)
講義の目的と到達目標
主にインターネット技術の応用技術について学び実習を行う.講義の内容
インターネットの基礎から応用まで.ネットワーク技術を習得するために最初にUNIXを理解する.そして,その基本言語であるC, Shell, Perlなど学び,次にプロトコルの実際について実習する.
講義計画・資料
- ネットワークとWebプログラミング
- 「ネットワーク技術(1)」の復習と,後期で学ぶ内容についてのオリエンテーションを行う.
- HTMLとXML
- Webプログラミングの基礎となるHTMLおよびXMLの考え方について学ぶ.
- JavaScriptプログラミング入門
- Webアプリケーションに動的なロジックを与えるJavaScriptとは何かについて学ぶ.
- JavaScriptプログラミング初歩
- JavaScriptプログラミングの基礎について学ぶ.[PC教室(3451)で実施]
- JavaScriptプログラミング応用
- JavaScriptプログラミングを応用した実際のプログラミング事例について学ぶ.[PC教室で実施]
- Rubyプログラミング入門
- Webアプリケーションでよく利用されるスクリプト言語であるRubyのプログラミングについて学ぶ.
- Rubyプログラミング初歩
- 簡単なRubyプログラミングを体験する.[PC教室で実施]
- Rubyプログラミング初歩(続き)
- 簡単なRubyプログラミングを体験する.[PC教室で実施]
- 講義資料は第7回の後半を使います.
- Rubyプログラミングの応用
- Rubyプログラミングの応用例について学ぶ.[PC教室で実施]
- Webアプリケーションの基礎とWebサーバの構築・運用
- CGIによるWebプログラミングの事例や,実際に動作するサーバの事例について学び,サーバの構築に関する技術,Webサーバの運用に必要な技術について学ぶ.
- Webアプリケーションを作る(1)
- 簡単なWebアプリケーションの作成演習を行う.[PC教室で実施]
- Webアプリケーションを作る(2)
- 簡単なWebアプリケーションの作成演習を行う(続き).[3号館高層棟4Fモノレール駅側階段横の「社会情報学実習室」で実施]
- Webアプリケーションを作る(3)
- 簡単なWebアプリケーションの作成演習を行う(続き).[3号館高層棟4Fモノレール駅側階段横の「社会情報学実習室」で実施]
- AJAXと最新技術
- Webプログラミングに関する最新技術,最新動向について学ぶ.
- 期末試験
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
出席状況,試験,小テストなどの状況を勘案して評価する.「情報システム開発」(中央大学,2013年後期)
講義の目的と到達目標
情報システムの開発に関する意味論とソフトウェア工学の理論と技術を学ぶ.講義の内容
情報システムの設計で学んだ意味論とソフトウェア工学の理論と技術を活用して,具体的なシステムの開発を行なう.また,実際に事例とした情報システムをプログラミングすることによってシステム開発を体得してもらう.
講義計画・資料
- 情報システム開発 その要点
- 前期「情報システム設計」の復習と,本講義のアウトラインについてのオリエンテーションを行う.
- 代表的な情報システムの構造
- 現在の代表的な情報システムとして,Webアプリケーション,DBアプリケーション,組込みシステム,デスクトップアプリ等の様々な種類について学ぶ.
- Webアプリケーションの基礎
- Webアプリケーションの基礎として,HTMLやJavaScriptの基本について学ぶ.
- Webアプリケーション演習(1)
- HTMLとJavaScriptを用いた簡単なアプリケーションの制作演習を行う.[PC教室(3451)で実施します ※ 3452で実施とアナウンスしていましたが,急遽,3451に変更になりました]
- Webアプリケーション演習(2)
- HTMLとJavaScriptを用いた簡単なアプリケーション制作演習の続き.グループ演習の発表を行う.[PC教室(3452)で実施します ※ 今回以降,演習は3452で実施します.ご注意ください]
- プログラム言語と部品・モジュール化と部品展開
- システムを部品化して開発の効率化を行う方法について学ぶ.[3252教室で実施です.注意]
- C言語による情報システム開発の基礎(1)
- 後半はCによる情報システムの開発を扱う.Cによるプログラミングの復習と確認を行う.(基礎からデバッグまで)[PC教室(3452)で実施します]
- C言語による情報システム開発の基礎(2)
- 後半はCによる情報システムの開発を扱う.Cによるプログラミングの復習と確認を行う.(デバッグとプロファイリングによる性能向上)[PC教室(3452)で実施します]
- プログラム言語と部品・ライブラリとヘッダファイル
- プログラム部品を利用したシステム開発の具体例として,ライブラリの考え方と利用方法について学ぶ.[PC教室(3452)で実施します]
- 情報システムのプログラミング・その構造化設計と開発
- 実際の情報システムを具体例として,構造化設計の実際と開発の進め方を確認する.[PC教室(3452)で実施します]
- 情報システム開発プロジェクトの管理
- プロジェクトを管理するという考え方と,なぜプロジェクト管理が必要なのか,代表的な手法のPMBOKについて理解する.
- システム開発プロジェクトの管理法(1),WBSとスケジュール
- プロジェクトで実施する作業を細分化するWBSと,スケジュールの立て方について理解する.
- システム開発プロジェクトの管理法(2),コストとリスク
- プロジェクトにかかるコストや,リスクについての基本的な考え方を理解する.
- システム開発プロジェクトの管理法(3),品質管理,チームマネジメントとコミュニケーション管理
- 成果物の品質管理や,プロジェクトを実施する人的資源の管理方法について理解する.
- 期末試験
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
出席状況,試験,小テストなどの状況を勘案して評価する.2013年6月10日月曜日
Chuo Onlineに寄稿しました
Chuo Onlineに「公共財としてのオープンソースソフトウェア」という記事を寄稿しました.「オープンソースソフトウェアって誰のお金で作られているの?」という疑問を耳にするので,その疑問への回答を示しています.軽く読めるのでお時間のあるときにでもどうぞ.
(記事へのリンクはコチラ)
2013年4月17日水曜日
Dropboxに上げた資料の文字化け
また「Dropboxが表示する資料が文字化けして困る」という指摘も頂いています.これには,私も困っています.これは,Dropboxの不具合のようです(2013年4月時点).ダウンロードして,日本語を適切に処理できるPDFリーダを使ってください.ファイル自体は壊れていないので,きちんと表示されるはずです.
2013年4月1日月曜日
「社会情報学演習VI」(中央大学大学院,2013年通期)
講義の目的と到達目標
記録情報学に必要な理論と技術を修得する.講義の内容
記録情報学を支える情報システムを道具として捉え,その道具をいかに効果的に使うか,その道具が扱う情報をいかに効率的に扱い整理していくかに焦点を当てて演習を進める. 記録のラベルとしてどのようなキーワードを付加すべきか,どのように検索されるべきか,利用者のインタフェースをどのように設計するかといった観点で研究する.講義計画・資料
適宜提示する参考文献やテキストの輪読,大学院実習室にある機材を利用した演習を中心として授業を進める.成績評価
出席,演習作業へ参加,レポート等を総合的に評価する.「社会情報学特講VI」(中央大学大学院,2013年通期)
講義の目的と到達目標
情報社会の基礎を成す情報システムについての理解を深め,とくに人間との関わりや生活における情報システムの意義,人間とシステムに関するインタフェースのあり方について研究する.講義の内容
情報システムで取り扱われる情報の構成とその取り扱い方について学ぶ. 現在の情報社会における大量の情報がシステムにおいてどのように取り扱われるか, またシステムを操作する人間が情報システムにどのように関わるべきか,情報システムの内面と外面,両側面からのアプローチとその応用について考える.講義資料
- 第1回(4/17)イントロダクション
- 第2回(4/24)UNIXの基礎(1)
- 第3回(5/1)UNIXの基礎(2)
- 第4回(5/8)sedと正規表現
- 第5回(5/15)テキストマイニングの具体例
- 第6回(5/22)テキストマイニングの具体例(演習)+多国語処理を考える
- 第7回(5/29)クラウドコンピューティングとは
- 第8回(6/5)Webアプリケーション(1)
- 第9回(6/12)Webアプリケーション(2)
- 第10回(6/19)(ディスカッション等)
- 第11回(6/26)オープンソースソフトウェア
- 第12回(7/3)OSSの活用例(アシストフォーラム聴講)
- 第13回(7/10)社会学講演会参加
- 第14回(7/17)SFに学ぶユーザインタフェース
- 第15回(7/24)テキストデータの扱い方
- 第16回(9/25)ユーザビリティ向上に関する作業事例
- 第17回(10/2)OSSのエンドユーザ利用(「知の回廊」パブリックレビュー)
- 第18回(10/9)人工知能論ダイジェスト(1)
- 第19回 … 10/16は台風のため休講
- 第20回(10/23)システムとユーザの関係を考える
- 第21回(11/6)(ディスカッション等2)
- 第22回(11/13)Processingを利用した画像認識・画像処理プログラム
- 第23回(11/20)コミュニティによるソフトウェア開発のマネジメント事例
- 第24回(11/27)(ディスカッション等3 … 実習室のネットワーク環境について)
- 第25回(12/4)NUI … Natural User Interfaceとは
- 第26回(12/11)プロジェクトマネジメント論
- 第27回(12/18)人工知能論ダイジェスト(2)
- 第28回(1/8)人間中心の情報提供とは
- 第29回(1/15)機械学習概論
- 第30回(1/22)XMLの活用
講義計画
講義では,以下のテーマを取り上げるが,以下に限らず様々なテーマで講義と演習を行う.
- 大量データ分析
- ビッグデータ
- 情報の活用
- 様々な分析手法
- 検索とインデクシング
- テキストマイニング
- 情報システムのあり方
- HCDとユーザビリティ
- UML
- Semantic Web
- オープンソースソフトウェア
- オープンデータ
- オープン標準のあり方
成績評価
出席,議論へ参加,レポート等を総合的に評価する.「社会情報学演習(4)(9)」(中央大学,2013年通期)
講義の目的と到達目標
社会情報学・図書館情報学の文脈で各自がテーマを設定し,教員の指導を仰ぎつつ研究を進める.講義の内容
本ゼミでは,情報社会を形作る消費者・一般市民・エンドユーザに焦点をあてた研究を推奨する. 旧来のマスメディアでは,情報は一方的に与えられるものであった. 現在は,ブログやソーシャルメディアを介して様々な情報が爆発的に生み出されては消費されている. そのような社会において,情報を生み出し,かつ消費する主役である消費者や市民による情報行動には,大企業も注目している. 具体的には,情報を消費者にどう見せることが望ましいか,情報に対するインタフェースはどうあるべきか,消費者・市民が生み出す情報をどう解釈するか,膨大な情報を処理するソフトウェアをどう使いこなすか,といったテーマを掘り下げていきたい. キーワードとしては,CGM,SNS,ビッグデータ,オープンデータ,オープンソースソフトウェア,ヒューマンインタフェース,ユーザビリティなどがある. ただし,掘り下げるテーマはこれに限るものではない. 積極的な学生の参加を期待する.講義計画・資料
- オリエンテーション,ゼミの進め方など.
- 関連研究紹介(1).
- 関連研究紹介(2).
- 関連研究紹介(3).
- 関連研究紹介(4).
- 研究テーマの選択に必要な準備.
- 研究テーマの選択に必要な準備(2).
- 研究テーマの選択に必要な準備(3).
- 特別講演(1)
- 研究の進め方.
- 研究計画を立てる.
- 研究計画を立てる(2).
- 関連文献の調査.
- 関連文献の調査(2).
- 関連文献の調査(3)/ 前期のまとめ.
- 研究の中間発表(夏合宿)
- 話題提供.
- 関連資料紹介.
- 情報システムの操作事例(OSMを題材として).
- データ処理事例(テキストマイニング): 前半
- 研究の進捗状況報告(1).
- 研究の進捗状況報告(2)・先行研究の探し方.
- 論文の書き方,まとめ方(1).
- 論文の書き方,まとめ方(2).
- 研究の公表,対外発表とは.
- 特別講演(2)[公開ゼミ]
- 研究の進捗に対する議論 [公開ゼミ].
- 研究の進捗状況報告(3).
- 研究の進捗状況報告(4).
- 学年末報告
- 最終報告に対する議論
- 全体のまとめ
成績評価
出席,議論へ参加,レポート,最終プレゼンテーションを総合的に評価する.「情報システム設計」(中央大学,2013年前期)
講義の目的と到達目標
情報システムの設計基礎を学ぶ.情報システムとは何か,その基礎的な概念を学び,情報システムの設計方法を習得することを目的とする.講義の内容
様々な情報システムの特徴と応用について学び,その仕組みと構造を理解して,いかにして設計するのかを研究する.具体的には,意味論とソフトウェア工学における要求定義,設計,開発,運用,評価に関する理論と技術について習得する.講義計画・資料
- 情報システムとは何か
- そもそも情報システムとは何かについての定義から始める.情報を処理するシステムなのか,情報を管理するシステムなのか,情報を扱うシステムについての様々な特徴を議論し,情報システムに対する大まかなイメージを理解する.
- 情報システムのモデル・扱い方
- 情報システムを取り扱う際のモデルについて解説する.設計,開発,運用,保守,評価といった様々なフェーズでどのような人々が情報システムに関わるかについて解説する.
- 開発モデルと設計技法
- 情報システムを開発するやり方について解説する.ウォーターフォールモデルやスパイラルモデルといった開発の方法と,アジャイル開発と呼ばれる開発の方法など様々な設計開発技法を理解する.
- 情報システムとアルゴリズム
- 情報システムを設計する上で必須の概念であるアルゴリズムについて理解する.アルゴリズムの代表例としてソートのアルゴリズムを例に挙げ,アルゴリズムの良し悪しでシステムの性能が左右されることについて解説する.
- アルゴリズムとデータ構造(1)
- 処理を効率的に実現するには,よいアルゴリズムを選ぶだけでなく,よいデータ構造を活用することも重要である.よいアルゴリズムを実装するためのデータ構造について,理解する. (配列,スタック,キューなど)
- アルゴリズムとデータ構造(2)
- データ構造についての理解を深める(リスト,ツリー,ハッシュテーブルなど)
- 要求定義
- システム設計の起点となる要求定義について理解し,適切かつニーズにマッチしたシステムを設計するためのポイントを習得する.
- 要求定義(演習)
- 要求定義に関する作業を体験し,要求定義の難しさ,効果的な要求定義の行い方などについてのポイントを習得する.
- 演習の発表/構造化設計
- 前半はグループ演習の成果を各グループごとに発表する.後半は,大規模なシステム設計・開発で必須となる構造化の考え方について学び,構造化設計の重要性とその効果について理解する.
- 構造化プログラミングとオブジェクト指向
- 現代的プログラミングの基盤である構造化プログラミングの考え方と,そこからさらに発展したオブジェクト指向に関する基本的な考え方について理解する.
- オブジェクト指向の基礎
- 構造化プログラミングからオブジェクト指向に至る経緯を踏まえて,オブジェクト指向の全体像について理解する.
- フローチャートと図解・データフローダイアグラム
- 情報システムの処理手順やアルゴリズムを図解して示す方法として最も基礎的な手法であるフローチャートについて理解する.また,データを中心にシステムを図解する手法であるデータフローダイアグラム(DFD: Data Flow Diagram)について理解する.
- UMLによる設計仕様
- システム設計で各種の関係や処理の流れ,ユーザの関わり方や機能項目の列挙など,近年のシステム設計・開発では必須の手法であるUMLによる記述の概要を理解する.
- 情報システムのドキュメンテーション
- 情報システム設計・開発におけるドキュメンテーションの意味を解説し,ドキュメント保守の重要性を理解する.また,ドキュメントの自動設計など様々な工夫が成されている状況を紹介する.
- 期末試験
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
出席状況,試験,小テストなどの状況を勘案して評価する.「ネットワーク技術(1)」(中央大学,2013年前期)
講義の目的と到達目標
主にインターネット技術の基本技術について学び実習を行う.講義の内容
インターネットの基礎から応用まで.ネットワーク技術を習得するために,最初にUNIXを理解する.そして,その基本言語であるC, Shell Script, Perlなど学び,次にプロトコルの実際について実習する.講義計画・資料
- ネットワークとは
- コンピュータネットワークとは何か,ネットワークでできることを考える.コンピュータネットワークの構成要素,OSIの7層モデルなど,ネットワークの基本的な事項について解説する.
- LANとインターネット
- ネットワーク通信におけるデータリンク層のプロトコルとしてのLAN通信の仕組みと特徴について理解する.またインターネットに関して,通信の形態と通信プロトコルの種類,その位置づけと特徴,ネットワークシステムにおける意義について解説する.
- プロトコルとアドレス(1)
- ネットワーク上で行われる様々な通信の仕組み,プロトコルの概要を解説する.さらに,ネットワーク上のノードを特定するアドレスの概要について解説する.
- プロトコルとアドレス(2)
- ネットワーク上で行われる様々な通信の仕組み,とくにその基盤をなすTCP/IP通信について紹介する.
- ネットワークのソフトウェア(1)
- コンピュータネットワーク上で様々なサービスを提供するためのインフラ,ミドルウェア,アプリケーション等,コンピュータネットワークに関連した様々なソフトウェアを紹介する(低レベルプロトコルの補足とDNSなど)
- ネットワークのソフトウェア(2)
- コンピュータネットワーク上で様々なサービスを提供するためのインフラ,ミドルウェア,アプリケーション等,コンピュータネットワークに関連した様々なソフトウェアを紹介する(WWW,メール,ファイル転送など)
- UNIXの基礎
- ネットワークサービスを提供するコンピュータとして現在標準的な位置を占めているUNIXについて,その歴史を振り返りつつ,使い方や,UNIXの考え方について解説する.
- シェル操作
- UNIXを操作するシェルの仕組みと,Unixを操作するために必要な最低限の知識,および,対話的操作による効率的なシェル操作などについて解説する.
- 並列・並行処理
- UNIXにおけるマルチユーザー,マルチタスクの仕組みと,その原理,シングルユーザ・シングルタスクに対する優位性などについて解説する.また,サーバの動作を理解するために必要な概念として,マルチプロセッシング,並列処理の基礎について紹介する.また,最近のコンピュータでは当たり前の技術となったマルチコア構成についても触れる.
- クライアント・サーバ
- 多現在のコンピュータネットワーク利用の標準的な形態であるクライアント・サーバの考え方について紹介する.またWebアプリケーションのような汎用クライアントに移ってきたこれまでの経緯や歴史についても紹介する.さらに,クラウドコンピューティングといった最新の情報についても紹介する.
- ネットワークプログラミング
- コンピュータネットワークを構成するネットワークプログラミングの基本構造を理解する.クライアントとサーバがどのように動作するか,通信がどのように行われるのかといった簡単な概念を習得する.
- ネットワークプログラミング(続き)
- コンピュータネットワークを構成するネットワークプログラミングの基本構造を理解する.クライアントとサーバがどのように動作するか,通信がどのように行われるのかといった簡単な概念を習得する.
- 講義資料は第11回の続きを使います
- 仮想端末とプログラミング
- サーバ上でプログラミングを実施するために仮想端末からログインしてプログラムを開発する方法について解説する.
- ネットワーク基礎のまとめ
- 本講義の全体をラップアップし,コンピュータネットワークの概要に関するポイントの確認と最新情報の提供等を行う.
- 期末試験
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.なお今年度は特別に教科書は指定しないが,ネットワークに関する各種の解説書を参考書として参照すること.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
出席状況,試験,小テストなどの状況を勘案して評価する.「社会情報学基礎演習(1)A」(中央大学,2013年前期)
講義の目的と到達目標
記録情報学の専門的基礎を学ぶ.講義の内容
記録情報学では,「理論形成」とそれを実践できる「情報技術」が重要である.ただし,無味乾燥な技術ではなく,哲学,論理学,歴史,文学,言語学,意味論,数学,心理学,社会学など人文社会科学やリベラルアーツに基づくものであり,なによりも,人間の情報・知識の表現と獲得,情報の分類学を対象とする.講義計画・資料
- オリエンテーション - 記録・情報・知識の世界
- 講義の進め方を説明するとともに,本講義が対象とする範囲,全体の流れについて説明する.
- 主題と記録,その形式
- 記録情報学とコンピュータシステムの関わりについて概観し,主題分析など必要な分析手法の概要について解説する.
- 情報の構造
- 構造を持つ情報とは何か,情報の構造はどのように表されるか,またソフトウェアでどのように扱うかについて解説する.
- 構造を持つ情報の作成
- 文書を構造化して効率的に作成する手法と,マインドマップによる構造化情報の作成について解説する.
- タクソノミーとメタデータ
- 情報を分類する概念であるタクソノミーと,データの整理に利用されるデータとしての「メタデータ」について理解する.
- インデックスと検索
- 分類した情報にアクセスするためのインデックスの仕組み,および,インデックスを利用して効率的に情報にアクセスするための検索の仕組みについて理解する.
- 分類学とオントロジ
- オントロジの概念について説明し,分類学との関係,情報技術との関連性などについて解説する.
- コンピュータの基礎
- 現代的な記録情報学を支える情報システムの基礎となるコンピュータの基本的構造とプログラム言語について理解する.
- 情報システム
- コンピュータの動作原理を踏まえたうえで,情報システム(コンピュータ)と記録情報学との関わりについて整理する.
- オープンソースソフトウェア
- 現代の情報システムで主要なパーツを構成するオープンソースソフトウェアとは何か,その概要を解説する.
- オープンソースソフトウェア(続き)
- 必要なソフトウェアの探し方,ソフトウェアの入手方法などについて理解する.
- レポート課題の提示と作成手順の説明
- これまでの講義を踏まえて,レポートの課題およびレポートで報告すべき作業の手順について説明する.
- 発表と討議(1)
- 各自がまとめた内容を発表し,講義受講者でその内容について議論する.
- 発表と討議(2)
- 各自がまとめた内容を発表し,講義受講者でその内容について議論する.
- ラップアップ
- 全体のまとめを行う.
講義資料アーカイブ
各回の講義資料PDFをZIPで固めたファイルを下記から取得可能.講義の進め方
座学を中心に講義を進めるが,要所要所で実際に手を動かして確認する演習の時間を用意する.また,教科書の代わりに本ページに用意した講義資料を用いて講義を実施する.成績評価
期末に作成されたレポートで評価する.ただし,出席状況や授業中に行う課題の達成状況などの結果を加味する.「Webコンピューティング実践特論」(東京農工大学大学院,2013年前期)
講義の目的と到達目標
WWWの基本技術から最新動向まで、演習を交えて学習する。Webコンピューティングの概要を理解し、実際にシステムを構築できるようになることを目標とする。講義の内容
現代のネットビジネスを支えるWebコンピューティングに関する基礎的な要素技術と、Webアプリケーションに関する動作の仕組みを、具体的な演習を交えて学習する。またAjax技術やWeb2.0といった新しい概念や、オープンソースソフトウェア、XMLといった最新Webコンピューティングに欠かせない関連技術動向を学習し、最新技術をキャッチアップできるようになるためのスキルを身につける。講義計画・資料
- WWWの基本と仕組み(4/12)
- WWWの歴史とWWWに必要な要素技術について学ぶ。
- 講義資料 PDF
- 担当: 清水浩行
- Webの表現技術(1)(4/12)
- 内容の構成とデザインを表現するHTMLとCSSを学ぶ。
- 講義資料(1,2共通) PDF
- 担当: 清水浩行
- Webの表現技術(2)(4/12)
- 動きを実現するJavaScriptとWeb標準を学ぶ。
- 担当: 清水浩行
- アプリケーションの記述言語(4/19)
- Webアプリを記述する各種のプログラム言語(スクリプト言語)の概要を学ぶ。
- 講義資料 PPT
- Webコンピューティング演習(1)(4/19)
- 簡単なWebコンテンツの作成を行う。HTMLによる静的なコンテンツの作成とDHTMLによる動的なコンテンツの作成と評価を行う。
- Webアプリケーションの仕組み(4/26)
- Webアプリを構成する仕組みや、関連する概念、開発の概要について学ぶ。
- 講義資料 PPT
- クラウドコンピューティング(4/26)
- サービス化するコンピューティング環境とその上で動作するWebアプリの関係ついて学ぶ。
- 講義資料 PDF
- Webコンピューティング演習(2)(5/10)
- Webコンピューティングの一例としてCMSを題材に演習する(システムのインストールと設定)
- 講義資料 PPT
- Webコンピューティング演習(3)(5/10)
- Webコンピューティングの一例としてCMSを題材に演習する(コンテンツの作成と運用)
- オープンソースソフトウェア(1)(5/17)
- Webコンピューティングに不可欠な要素であるOSSについて学ぶ。
- 講義資料 PPT -- 11回と共通
- オープンソースソフトウェア(2)(5/17)
- Webコンピューティングに不可欠な要素であるOSSについて学ぶ。
- Webとリッチクライアント(5/24)
- マルチメディアの取扱いからAjaxアプリケーションまで、最新の技術について学ぶ。
- 講義資料 PPT -- 13回と共通
- Webアプリケーションの使いやすさ(5/24)
- ユーザ・エクスペリエンスの向上と、ユーザビリティの重要性について学ぶ。
- XML概論(5/31)
- XMLの理念と応用、そしてIT技術者の関わり方について学ぶ。
- 講義資料「XML, Java, そしてWebの将来」 DOC
- 講義資料「XML概論」 PPT
- 担当: 今給黎道明
- オープン性と集合知(5/31)
- XML/OSS/Web2.0 - ICTと未来 - について学ぶ。
- 講義資料「Web2.0と先進技術-2013−技術潮流とWeb」 PPT
- 担当: 今給黎道明
講義の進め方
4/12から5/31まで、金曜日午前中の集中講義で実施する。座学および演習を行う。演習では実際にシステムの構築を行う。成績評価
出席50%、レポート50%で評価する。「オープンソースソフトウェア」(拓殖大学,2013年前期)
講義の目的と到達目標
オープンソースソフトウェア(Open Source Software)とは何か、その基礎的な知識と体系の習得に加え、具体的なOSS活用の実体を理解することで、実際のIT利活用場面におけるOSS活用力を身につける。OSSを活用する際の着眼点や発想力を養うきっかけを生み出すことが本講義の主たる目的である。講義の内容
まず、OSSの経緯および文化的な側面について触れる。さらにOSSの開発手法とビジネスモデル、オープンソース・コミュニティといった内容を扱う。後半ではOSSの活用事例について触れ、日本国内やアジアのオープンソース関連活動といった社会的内容についても紹介する。講義計画・資料
- オープンソース・ソフトウェアとは (4/13)
- 講義のイントロダクションに加え、オープンソース・ソフトウェアが必要な存在となっていることの概略的背景と講義の目的に関する事項について解説する。
- オープンソース・ソフトウェアの経緯および文化的な側面(1) (4/13)
- 商業活動の思想とオープンソース・ソフトウェアの思想の比較やその背景と経緯について解説し、現在までの商業活動の思想、フリーソフトウェアの背景と経緯等について解説する。
- オープンソース・ソフトウェアの経緯および文化的な側面(2) (4/13)
- (1)に続き、フリーソフトウェアからオープンソース・ソフトウェアへのムーブメント、ハッカーの思想等について解説する。
- オープンソース・ソフトウェアの経緯および文化的な側面(3) (4/20)
- ライセンスとは何か、その考え方について説明し、オープンソース・ソフトウェアのライセンスや具体的なライセンス事例について解説する。
- オープンソース・ソフトウェアの特徴(1) (4/20)
- オープンソース・ソフトウェアでコスト削減は実現できるのか、ベンダロックインとは何か、オープンソース・ソフトウェアでロックインを回避できるのか等、オープンソース・ソフトウェアの特徴について解説する。
- オープンソース・ソフトウェアの特徴(2) (4/20)
- (1)に続き、オープンソース・ソフトウェアの性能は十分なのか、国際化、教育的利用等、オープンソース・ソフトウェアの特徴について解説する。
- オープンソース・ソフトウェアの種類 (4/27)
- オープンソース・ソフトウェアの適用領域、デスクトップ用途のソフトウェア、フロントエンドシステム用途、バックエンド・システム用途のソフトウェア、組み込み用途のソフトウェアに関する事項について解説する。
- オープンソース・ソフトウェアの利用例 (4/27)
- オープンソース・ソフトウェアをツールとして利用し、データ分析作業を実施する事例について、具体的な使い方を提示しながら解説する。
- オープンソース・ソフトウェアの開発手法とビジネスモデル (4/27)
- オープンソース・ソフトウェアの原動力であるコミュニティやその開発手法、ビジネスモデルについて解説し、コミュニティやオープンソース・ソフトウェアを取り巻くビジネスモデルに関する事項について解説する。
- オープンソース・ソフトウェアと商業ビジネス(1) (5/11)
- オープンソース・ソフトウェアと商業ビジネスの関係、オープンソース・ソフトウェアによる Web サービスに関する事項について解説する。
- オープンソース・ソフトウェアと商業ビジネス(2) (5/11)
- オープンソース・ソフトウェアと商業ビジネスの関係とその主なビジネス形態について解説し、商用ソフトウェアや組み込み機器との関係に関する事項について解説する。
- オープンソース・ソフトウェアの課題 (5/11)
- オープンソース・ソフトウェアが抱える課題、人材や保証の不足、法的リスクといった問題点について、および問題をややこしくしている多様性といった概念について解説する。
- オープンソース・ソフトウェアの活用シーン (5/18)
- オープンソース・ソフトウェアの主な活用シーンを取り上げ、クラウドサービス、大学業務システム、組み込み機器、Webシステム等における活用例に関する事項について解説する。
- オープンソース・ソフトウェアへの関わり方 (5/18)
- オープンソース・ソフトウェアに影響を与えている各推進団体等の役割や具体的な関与の方法論を解説し、各推進団体/グループの役割、オープンソース・コミュニティとの関わり方に関する事項について解説する。
- 総まとめ(期末レポート作成) (5/18)
- 講義全体のまとめとともにオープンソース・ソフトウェアの今後の発展に関する展望に関する事項について解説する。