社会全体におけるIT利用の拡大,また産業が提供する製品やサービスの中核をなすソフトウェアの巨大化,複雑化にともない,信頼性のあるソフトウェアを開発し,新しい価値を創造する高度ITスペシャリストの必要性が増大している。
このため本研究科では,将来の価値を創造する手段としてのソフトウェア構築に必要な基礎概念や,それを基にした実用的問題に適用可能な理論,そしてソフトウェア開発の実践的な側面までの高度な専門性を持ち,近未来ソフトウェアの発想力を持つスペシャリストの育成を目的として大学院教育プログラムを実施する。
本プログラムは,東京大学,国立情報学研究所と共同で,「先導的ITスペシャリスト育成推進プログラム」として実施されるものである。
学生の特別選抜
出願資格 原則として,本学大学院修士課程に在学する大学院学生,もしくは本学大学院修士課程に入学を予定する者を対象とする。
選抜方法 面接による。
出願・選抜時期 3月および9月に実施する。
履修条件
学生の身分 所属する専攻のままとする。
修了要件 本プログラムの授業科目から20単位を習得すること。そのうち8単位以上は,ソフトウェア開発科目群から習得すること。
(注意)所属する専攻の修了については,各専攻の修了要件に従う。
修了証の授与
本プログラムを修了した学生には,所属する専攻の学位記とは別に,本学学長より修了証を授与する。修了証の授与は,原則として学期末に行う。
授業科目の分類
基礎科目群
先導的ITスペシャリストとして必要となるコンピュータサイエンスにおける基礎理論を学習する科目から構成され,先導的ITスペシャリストが備えるべき基本的素養となる。
基盤ソフトウェア科目群
先導的ITスペシャリストとして習得しておくべきオペレーティングシステムを初めとする基盤ソフトウェアに関する専門的知識を学習する科目である。
ソフトウェア工学科目群
先導的ITスペシャリストとして習得しておくべきソフトウェア工学分野の専門的知識を習得する科目である。ソフトウェア開発を専門とする者の基本的素養となる。
ソフトウェア開発科目群
先導的ITスペシャリストとして必要とされるソフトウェア開発に関する実践的な知識や経験を習得する科目である。本科目は実習・実験を実施することにより,より効果的に習得することを目標とする。
授業科目の構成
基礎科目群
科目名 |
単位数 |
担当 |
学期 |
プログラム理論 |
2−0−0 |
湯 浅 |
前 |
並行システム論 |
2−0−0 |
米 崎 |
前 |
ソフトウェア論理学 |
2−0−0 |
西 崎 |
前 |
分散アルゴリズム論 |
2−0−0 |
徳 田 |
後 |
計算機アーキテクチャ特論 |
2−0−0 |
吉 瀬 |
後 |
基盤ソフトウェア科目群
科目名 |
単位数 |
担当 |
学期 |
オペレーティングシステム特論 |
2−0−0 |
渡部(卓) |
後 |
基盤ソフトウェア |
2−0−0 |
千 葉 |
前 |
グリッドコンピューティング |
2−0−0 |
松 岡 |
後 |
ネットワークプログラミング特論 |
2−0−0 |
望 月 |
後 |
ソフトウェア工学科目群
科目名 |
単位数 |
担当 |
学期 |
備考 |
ソフトウェア設計論 |
2−0−0 |
佐 伯 |
後 |
|
情報セキュリティ特論 |
2−0−0 |
工藤・羽田・渡邊 |
後 |
|
ソフトウェア工学特論 |
2−0−0 |
権 藤 |
前 |
|
ソフトウェア構成論 |
2−0−0 |
脇田・佐々 |
後 |
|
ソフトウェアプロジェクトマネージメントと品質管理 |
2−0−0 |
端山・南澤・山本 |
後 |
○ |
ソフトウェア開発科目群
科目名 |
単位数 |
担当 |
学期 |
備考 |
ソフトウェア開発演習 |
0−2−0 |
渡部(卓)・権藤 |
前 |
修士課程 1年次推奨 ○ |
システム検証基礎演習 |
0−2−0 |
湯浅・西崎 |
後 |
修士課程 1年次推奨 ○ |
システム開発プロジェクト総合実験基礎 |
0−0−2 |
田中(康) |
前 |
○ |
システム開発プロジェクト総合実験応用 |
0−0−2 |
田中(康) |
後 |
○ |
ソフトウェアテスト演習 |
0−2−0 |
服 部 |
後 |
修士課程 1年次推奨 ○ |
IT実践特別実験第一 |
0−0−2 |
各教員 |
前 |
修士課程 2年次推奨 ○ |
IT実践特別実験第二 |
0−0−2 |
各教員 |
後 |
修士課程 2年次推奨 ○ |
情報理工学インターンシップ1A |
0−0−1 |
計算工学専攻長 |
前 |
|
情報理工学インターンシップ2A |
0−0−2 |
計算工学専攻長 |
前 |
|
情報理工学インターンシップ1B |
0−0−1 |
計算工学専攻長 |
後 |
|
情報理工学インターンシップ2B |
0−0−2 |
計算工学専攻長 |
後 |
|
先端スキル開発特別講義T |
2−0−0 |
本位田真一 |
前 |
☆ ○ |
先端スキル開発特別講義U |
2−0−0 |
本位田真一 |
前 |
☆ ○ |
先端スキル開発特別講義V |
2−0−0 |
本位田真一 |
後 |
☆ ○ |
先端スキル開発特別講義W |
2−0−0 |
本位田真一 |
前 |
☆ ○ |
先端スキル開発特別講義X |
2−0−0 |
本位田真一 |
前 |
☆ ○ |
先端スキル開発特別講義Y |
2−0−0 |
本位田真一 |
後 |
☆ ○ |
☆の印が付いている科目は,東京大学にて開講される科目である。
○の印が付いている科目は,原則として先導的ITスペシャリスト育成推進プログラムの学生のみが履修する科目である。
〔教 授 要 目〕
計算工学専攻の教授要目を参照のこと。
76006
並行システム論 (Concurrent System Theory) 英語講義
前学期 2−0−0 米崎 直樹 教授
計算工学専攻の教授要目を参照のこと。
76016
ソフトウェア論理学(Logic and Software)
前学期 2−0−0 西崎 真也 准教授
計算工学専攻の教授要目を参照のこと。
76015
分散アルゴリズム論(Distributed Algorithms)英語講義
後学期 2−0−0 徳田 雄洋 教授
計算工学専攻の教授要目を参照のこと。
76001
計算機アーキテクチャ特論(Advanced Computer Architectures)
後学期 2−0−0 吉瀬 謙二 講師
計算工学専攻の教授要目を参照のこと。
76010
オペレーティングシステム特論(Advanced Operating Systems)
後学期 2−0−0 渡部 卓雄 准教授
計算工学専攻の教授要目を参照のこと。
75028
基盤ソフトウェア(Software Substrate)
前学期 2−0−0 千葉 滋 准教授
数理・計算科学専攻の教授要目を参照のこと。
75003
グリッドコンピューティング (Grid Computing)
後学期 2−0−0 松岡 聡 教授
数理・計算科学専攻の教授要目を参照のこと。
76032
ネットワークプログラミング特論 (Advanced Network Programming)
後学期 2−0−0 望月 祐洋 准教授
計算工学専攻の教授要目を参照のこと。
76007
ソフトウェア設計論 (Software Design Methodology)
後学期 2−0−0 佐伯 元司 教授
計算工学専攻の教授要目を参照のこと。
76031
情報セキュリティ特論 (Advanced Information Security)
後学期 2−0−0 工藤 道治 講師(非常勤)・羽田 知史 講師(非常勤)・
渡邊 裕治 講師(非常勤)
計算工学専攻の教授要目を参照のこと。
76024
ソフトウェア工学特論 (Advanced Software Engineering)
前学期 2−0−0 権藤 克彦 准教授
計算工学専攻の教授要目を参照のこと。
75017
ソフトウェア構成論 (Software Organization)
後学期 2−0−0 ○脇田 建 准教授・佐々 政孝 教授
数理・計算科学専攻の教授要目を参照のこと。
76038
ソフトウェアプロジェクトマネージメントと品質管理
(Software Project Management and Quality Control)
後学期 2−0−0 端山 毅 講師(非常勤)・南澤 吉昭 講師(非常勤)
山本 修一郎 講師(非常勤)
ITプロジェクトマネージメントの手法について,企業の現場における実際的経験に基づいた知識を教授する。
76044
ソフトウェア開発演習 (Software Development Laboratory)
前学期 0−2−0 渡部 卓雄 准教授,権藤 克彦 准教授
組み込み開発やシステム開発の実践で必須となるソフトウェア開発力の向上を目的とする。そのために演習を通して,開発テクニック,グッドプラクティス,開発環境と開発ライブラリ,低レベルインタフェースなどの習得を目指す。
76037
システム検証基礎演習 (System Verification Practices)
後学期 0−2−0 湯浅 能史 特任准教授・西崎 真也 准教授
システム検証における基礎である,数理論理学,プログラム理論,並行システム論などに関する基礎技術に関する演習を行う。
76035
システム開発プロジェクト総合実験基礎 (System Development Studio Projects; Basic)
前学期 0−2−0 田中 康 特任准教授
システム開発に必要なソフトウェア工学の基礎に関してプロジェクト開発を通して習得することを目的とする。学生はチームを組み,要求分析,プロジェクトの計画,設計,実装,テスト,ドキュメント作成など,総合的な指導をうけつつ,系統的なソフトウェア開発の実践面への適用を習得する。
76036
システム開発プロジェクト総合実験応用 (System Development Studio Projects; Advance)
後学期 0−0−2 田中 康 特任准教授
「システム開発プロジェクト総合実験基礎」における習得内容を受け,本授業では,システム開発に必要なソフトウェア工学の応用に関してプロジェクト開発を通して習得することを目的とする。「システム開発プロジェクト総合実験基礎」と同様に,学生はチームを組み,要求分析,プロジェクトの計画,設計,実装,テスト,ドキュメント作成など,総合的な指導をうけつつ,系統的なソフトウェア開発の実践面への適用を習得する。
76050
ソフトウェアテスト演習 (Software Testing)
後学期 0−2−0 服部 哲 特任講師
ソフトウェアテストに関する理論と実践の両面を学ぶことを目的とする。理論面については,主にテストケースの作成に関する講義と演習を行う。また,今日のソフトウェア開発でよく用いられるJUnitなどのテストツールの利用についても演習を行い,テストに関する実践面についても学ぶ。さらに,ソフトウェアテストに関連する発展的事項として,テストと形式手法の関係などについても講義を行う。
76601
IT実践特別実験第一 (Special Experiments I on Information Technology)
前学期 0−0−2 各教員
情報理工学,特に,情報技術の実践的側面に焦点を当てた高度な実験を行うものである。
76602
IT実践特別実験第二 (Special Experiments II on Information Technology)
後学期 0−0−2 各教員
IT実践特別実験第一の授業を引き継ぎ,情報理工学,特に,情報技術の実践的側面に焦点を当てた高度な実験を行うものである。
76039
情報理工学インターンシップ1A (Internship 1A on Information Science and Engineering)
前学期 0−0−1 計算工学専攻長
計算工学専攻の教授要目を参照のこと。
76040
情報理工学インターンシップ2A (Internship 2A on Information Science and Engineering)
前学期 0−0−2 計算工学専攻長
計算工学専攻の教授要目を参照のこと。
76041
情報理工学インターンシップ1B (Internship 1B on Information Science and Engineering)
後学期 0−0−1 計算工学専攻長
計算工学専攻の教授要目を参照のこと。
76042
情報理工学インターンシップ2B (Internship 2B on Information Science and Engineering)
後学期 0−0−2 計算工学専攻長
計算工学専攻の教授要目を参照のこと。
先端スキル開発特別講義I (Advanced Software Development Skill I)
前学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,ゴール指向要求分析手法,具体的にはi*/Troposと呼ばれる手法を利用した,ソフトウェア要求の分析工程について,ツールST-Toolの使用を通じて,ソフトウェアに対するニーズを抜け・漏れなく把握し整理する方法を習得させる。現実のシステム開発における要求分析プロセスとノウハウを習得した上で,実際にソフトウェア要求の分析作業を行い,設計工程に結びつける能力を習得できる。
先端スキル開発特別講義II (Advanced Software Development Skill II)
前学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,オブジェクト指向設計/実装法を加味したプロダクトライン・コンポーネントベース分析/設計手法であるKobrA法を用いて,一貫したコンポーネントモデリングとオブジェクト指向分析/設計プロセスの遂行による可変性/不変性を備えたソフトウェアアーキテクチャの構築方法を学ぶ。現実に近いソフトウェア開発の分析/設計を実習する過程で,コンポーネントモデリングのノウハウと効果を会得することができる。
先端スキル開発特別講義III (Advanced Software Development Skill III)
後学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,高信頼性ソフトウェアの開発のための,形式仕様言語Bメソッドを用いたソフトウェアの仕様記述と検証方法について学習する。高信頼性ソフトウェアの開発には,システムをモデル化する際の適切なレベルでの抽象化,厳密な (検証可能) なモデルの作成,検証のためのシステムの特性を同定する技術が重要である。本講義では,B メソッドによるシステムのモデル化から検証までの技術を修得することを目的とする。
先端スキル開発特別講義IV (Advanced Software Development Skill IV)
前学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,分散システムのモデリング・設計手法とその正当性の検証方法を,モデル検査ツールSPIN を使用して習得する。本講義は,複数のコンポーネントが非同期に通信しあいながら動作することによる,分散システムの複雑さの問題を解決し,実際の分散システム開発に検証手法を適用する能力を習得できる,という点が大きな特徴である。そのために,ツールの使用法だけでなく,分散システムのモデル化にも焦点を当てている。
先端スキル開発特別講義V (Advanced Software Development Skill V)
前学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,実装したプログラムが,要求仕様を満足しているかどうかの妥当性を検証する技術を習得する。ソフトウェア開発において,膨大な工数と費用が妥当性の検証に費やされている。そこで本講義では,体系的な手法やプロセスに基づいたテスティング技術の習得と実践により,テスト工程を効率的に実施し,より高信頼なソフトウェアの開発を可能にすることを目的とする。
先端スキル開発特別講義VI (Advanced Software Development Skill VI)
後学期(集中講義) 2−0−0 本位田 真一 教授(国立情報学研究所,東京大学)
本講義では,オブジェクト指向開発におけるドメイン分析から実装まで通して展開ツールを含むソフトウェアパターン技術を活用することで,一貫した高品質ソフトウェアを効率よく得るためのパターン指向開発プロセスの適用方法を学ぶ。現実に近いソフトウェア開発に対する種々の代表的パターンの適用および展開ツールの利用を実習する過程で,パターン指向開発のノウハウと効果を会得することができる。