シラバス
科目名 プロジェクト演習
英語科目 ナンバリング Ilab301
開講期 春学期 開講学部等 コンピュータ理工学部 配当年次 3年次 単位数 2単位
教員名 青木 淳,荻原 剛志,中島 伸介,宮森 恒
 ※履修条件,配当年次等の詳細は履修要項をご確認ください。
授業概要/Course outline  
コンピュータ理工学の各種専門分野における基礎的知識の理解を深め応用力を養うために、長期的な課題を与えて演習や実験を行う。本演習は、本学部のコンピュータサイエンス学科とネットワークメディア学科に共通する科目であり、以下の課題に対し、数名のグループで協力して7~8回ずつ取り組み、成果物を完成させる。
授業内容・授業計画/Course description・plan  
ソフトウェア開発手法(7~8回)と画像・Webコンテンツの処理(7~8回)に関する演習を前後半に分かれて行う。
==============================================================
・ソフトウェア開発手法【青木|荻原/7~8回】

<青木担当分>
情報システムにおけるアプリケーション開発をグループワークにて行う。所与されたアプリケーションの要求仕様から、オブジェクト指向技術をベースにしたデザインを起こして、オブジェクト指向プログラムを実装し、単体および結合テストを施す。加えて、アプリケーション開発プロジェクトとして必要なドキュメントを仕上げ、成果物としての体裁を整える。これらはすべてリポジトリ内に格納して版管理を行い、グループメンバの共有とする。かかる開発工程を実践することにより、PMBOK(プロジェクトマネジメント)の技術を会得する。
各回の内容は以下の通りである。ただし、全8回の場合は、項目(5)(6)(7)を適宜延長し、項目(8)として充当させる。
(1) 要求仕様とリポジトリと開発計画
(2) プロジェクトマネジメント(スコープ/タイム/コスト)
(3) オブジェクト指向設計とデザインパターン
(4) オブジェクト指向プログラミング(スタブとスケルトンの作成)
(5) オブジェクト指向プログラミング(実装)
(6) オブジェクト指向テスティングとメトリクス
(7) オブジェクト指向ドキュメンテーション
  ■前もってどのような科目の履修が望ましいか:
   ・応用プログラミング(Java/Python/C)
   ・ソフトウェア工学I・II
   ・アルゴリズムとデータ構造
   ・グラフィックスI
   ・ヒューマンインタフェースI・II
  ■今後どのような科目を履修するのに役立つか:
   ・プログラミング言語
   ・言語オートマトン
   ・分散処理システム
   ・グラフィックスII
   ・特別研究におけるプログラミングやデザインなど

<荻原担当分>
C言語またはJava言語を用いて、比較的規模の大きなソフトウェアの開発/機能拡張に取り組む。本演習では課題の設定から、役割分担、スケジュール管理、成果物の管理までをチームで行う。毎回、進捗に応じたレポート(作業計画、作業報告、テスト計画、プログラムコードなど)の提出を課す。具体的な開発内容は適宜指示するが、GUIを利用したパズルゲームの開発、簡易プログラミング言語処理系、各種ユーティリティプログラムといったテーマを設定する。
各回の内容は以下の通りである。ただし、全8回の場合は、項目(5)(6)(7)を適宜延長し、項目(8)として充当させる。
(1) 計画の立案と要求分析、外部設計
(2) 実装方法(内部設計)の検討と問題点の洗い出し
(3) 内部設計書の作成
(4) プログラミングとテスト計画の作成
(5) コードレビュー
(6) テストとデバッグ
(7) 成果物のまとめと評価
  ■前もってどのような科目の履修が望ましいか:
   ・応用プログラミング(Java/Python/C)
   ・ソフトウェア工学I・II
   ・アルゴリズムとデータ構造
   ・グラフィックスI
   ・ヒューマンインタフェースI・II
  ■今後どのような科目を履修するのに役立つか:
   ・プログラミング言語
   ・言語オートマトン
   ・分散処理システム
   ・グラフィックスII
   ・特別研究におけるプログラミングやデザインなど

==============================================================
・画像・Webコンテンツの処理【宮森&中島/7~8回】
インターネットにおいて画像とWebコンテンツは重要な情報源である。本演習では、Webコンテンツからの情報取得、自然言語処理/画像処理を用いた情報抽出/特徴抽出、それらに基づく検索・分類・表示に関わる基本手法を取り入れたアプリケーション開発を課題として設定する。具体的な開発内容は適宜指示するが、例えば、さまざまな場面の人物写真を検索するシステムの開発といった親しみやすいテーマを設定する。各チームで開発した成果をプレゼンし、互いのシステムを相互に評価することで、自分たちのアプローチの利点・欠点を把握する。レポートとして、システムの目的、各処理手順の説明、プログラムの構成、処理結果、考察、プログラムコードなどを課す。
各回の内容は以下の通りである。ただし、全8回の場合は、項目(5)(6)(7)を適宜延長し、項目(8)として充当させる。
(1) 概要説明、HTML文書の解析
(2) テキストの分析処理
(3) 画像の分析処理
(4) 検索のためのデータ生成
(5) 検索のためのインタフェース作成
(6) 改良およびプレゼン準備
(7) 発表会(プレゼンテーション)
  ■前もってどのような科目の履修が望ましいか:
   ・応用プログラミング(Java/Web/C)
   ・グラフィックスI
   ・ヒューマンインタフェースI・II
   ・アルゴリズムとデータ構造
  ■今後どのような科目を履修するのに役立つか:
   ・実践Webアプリケーション
   ・画像処理
   ・特別研究におけるプログラミングやメディア処理、システムデザインなど
準備学習等(事前・事後学習)/Preparation and assignments  
第1回〜第15回の予習・復習を次のように行うこと。
[事前学習]
・C言語、Java言語によるプログラミングは一通りこなせるように準備しておくこと。
・各回の内容をキーワードとして事前に下調べしておくこと。
・プレゼンテーションを課された回は、チームのメンバと協力し、十分に準備と練習をしておくこと。
[事後学習]
・サンプルプログラムや自身で改良したプログラムを動作させ、処理手順やプログラムの内容を自分の言葉で他人に説明できるか練習し、自身の理解度を確認してみること。
・チームでの開発にあたっては、メンバと積極的に議論し、的確な役割分担と、期日に余裕をもたせたスケジュールを組み、各自の作業をしっかりとこなすこと。また、わからない点の相談や改良点のアドバイスなど、チーム内のメンバで相互に助け合いながら、目標達成に向けた作業を進めること。
・レポートを課された場合は、期日までに必ず提出すること。
授業の到達目標/Expected outcome  
実用的なソフトウェア開発手法の理解と習得、画像やWebコンテンツの基本処理の理解と習得を目指す。プロジェクトの特徴である「有期性」と「独自性」を、このプロジェクト演習を通して学ぶと共に、高度情報化社会における実際のプロジェクトの状況を想定しながら、果たすべき役割を自覚し、積極的に行動できる資質を養う。
身に付く力/Special abilities to be attained  
基礎技術の理解力、設計・開発能力、実践力(働きかけ力、実行力、主体性)、コミュニケーションスキル(傾聴力)
履修上の注意/Special notes, cautions  
グループに分かれて演習を行うので、各自、自分の演習スケジュール(特に場所など)をよく確認しておくこと。詳細は履修ガイダンスの時に説明する。また、C言語、Java言語によるプログラミングは一通りこなせるように準備しておくこと。
評価方法/Evaluation  
・ソフトウェア開発手法(全体の半分)
<青木担当分>
毎回のように設計図やプログラムなどをリポジトリにコミットすることを課す。それらを鑑みながら、グループ(プロジェクト)への参画の度合い50%、グループの最終成果物の出来具合50%で評価する。
<荻原担当分>
ソフトウェア開発の各段階ごとに提出すべき成果物と最終成果物(ドキュメントとコード)をあらかじめ指定する。また、グループにおける各自の作業分担とその内容についても報告を求める。成果物がきちんと提出されているかどうか(50%)と、作業への取り組みを平常点(50%)として評価の対象とする。

・画像・Webコンテンツの処理(全体の半分)
<宮森・中島担当分>
授業への参加、作業への取り組み度合を平常点(50%)とし、システム実装、プレゼンテーション、提出レポート(50%)を加味して、総合的に評価する。
教 材/Text and materials  
適宜指示する。
<青木担当分>参考書:広兼修/著,さぬきやん/作画,トレンド・プロ/制作『マンガでわかるプロジェクトマネジメント』(オーム社,2011)
その他/Others  
オフィスアワー
青木:毎週木曜日 3時限目 13:15-14:45 第2実験室棟 3階 65実験室
荻原:毎週金曜日 3時限目 13:15-14:45 第2実験室棟 2階 60研究室
宮森:毎週月曜日 昼休み  12:15-13:15 14号館 2階 14224研究室
中島:毎週木曜日 3時限目 13:15-14:45 14号館 3階 14325研究室
Copyright (C) 2017 Kyoto Sangyo University. All rights reserved.