PBL(Project Based Learning)
ソフトウェア工学応用演習
科目概要
カリキュラムにおけるPBLの役割は、OJLで 実製品レベルの課題を対象とした開発に入る前 段階として、企業の求めるレベルと学生のレベ ルとの間のギャップを補う手段と位置付けてい る。PBLで習得すべき学習目標を次に示す。
・座学で学んできたシステムの分析・設計やプ ログラミング、テスト等などのソフトウェア 工学と組込みシステムなどの周辺技術に関す る教科書的な知識を実開発に適用する実践力 を養う。
・構造的に管理されたプロジェクトでの開発を 経験し、チームによる問題解決作業における 個人の役割を理解する。
・ソフトウェアプロセスにおける開発作業を実 際に経験し、またCASEツール活用の効果に
ついて理解する。
・ソフトウェアの品質向上における検証技術の 重要性を理解する。
本PBLにおける開発プロセスは、ソフトウェ ア品質保持の難しさと重要性を理解させること を目的に、ソフトウェア開発プロセスのV字モ デルを繰り返すNVモデルと呼ぶ3フェーズか らなる構成として設計した。
・フェーズ1:テストケースの設計とテスト実 行
・フェーズ2:与えられた機能拡張仕様に基づ くシステムの再開発
・フェーズ3:機能拡張仕様の立案、管理され たプロジェクトに基づくシステム再開発 ソフトウェア開発プロセスのV字モデルとの 対応関係に基づいて全体のプロセスを見ると、
V字の右半分にあたる検証のプロセスを1回と V字2回の繰返しから構成される。その形状か ら我々はこれをNVモデルと呼んでいる。
PBLにおける題材として、上記の学習目標を 短時間で効果的に達成すること、また学習意欲 維持の観点から、情報処理学会組込みシステム 研究会主催の組込みシステムシンポジウムの特 別企画MDDロボットチャレンジでも取り上げ られている軟式飛行船の制御ソフトウェアを題
材として選定した。本PBLは、5~6名程度の 学生と、1名の教員または教員相当のアドバイ ザによってチームが構成されることを想定して 設計した。教員の役割は主にプロジェクトの進 捗管理である。
第2章3 名古屋大学拠点
当該科目で利用した教材の概要
本PBLカリキュラムについては、情報処理学 会論文誌50巻11号において「飛行船制御を題材 としたプロジェクト型ソフトウェア開発実習」
として、発表公開している。開発あるいは利用 した教材については、他の拠点等でも広く利用 可能にするために、講師用・受講生用テキスト を作成した。
講師情報
ソフトウェア工学を専門とする教員が担当す る。各大学1名ないし2名の教員で、合計5名 の教員で25名程度の学生を指導する。
時間数
教員の指導の下で90分の授業を週1回、15週 の約4ヵ月間にわたって行う。1週目は概要説 明を行い、2-4週目にフェーズ1、5-7 週目にフェーズ2、8-13週目にフェーズ3、
14・15週目には成果発表会とコンテストを行う。
コンテストでは、各チームがあらかじめ指定さ れたコースを軟式飛行船で航行し精度や時間を 競う。コンテストを実施することで学生の学習 意欲を高く保つことができる。
成績評価
成果発表会で行われるプレゼンテーションか ら、プロジェクト管理におけるコスト見積りの 精度や開発された機能に対してグループごとの 成績を評価する。また個人ごとに提出されるプ ロジェクト実施報告書から、本人の役割や貢献 度合い、成果物に対する自己評価から個人ごと の成績を評価する。これらのグループごとの成 績と個人ごとの成績を総合して成績評価を行 う。
教育的効果
本PBLにおける最も高い教育的効果として主 体性の向上が挙げられる。飛行船の制御ソフト ウェアという題材のもと、実際に開発したソフ トウェアによる操縦支援の効果を感じることが できるので、現状の問題を探し出す問題発見力、
また探し出した問題に対する問題解決のアプロ ーチとして主体的に制御工学の資料を調査する といった問題解決力の向上も合わせて効果とし て挙げられる。またテストを実施するにあたっ てPC上でコンパイル・デバッグするだけでな
く、実際にプログラムの書き込みといった組込 みソフトウェア開発で行われるテストも実施し ており、信頼性の高いソフトウェアを開発する ための実践力も養われている。
今後の課題と改善策
本PBLの課題として、教員ごとにアドバイス の内容や回数が異なり、学生の理解度に差が表 れる点が挙げられる。この問題に対する改善策 として、講師用・受講生用テキストの作成を進 めてきた。評価基準や留意点まで記述した講師 用テキストを利用することによって教員ごとの 指導の差が解消されると期待する。
特長のある科目:
OJL(On the Job Learning)ソフトウェア工 学実践研究
科目概要
メタ技術展開力涵養の鍵となるOJLでは、民 間企業との連携により、現実のソフトウェア開 発プロジェクトを教材とした実践的な学習を行 う。先進的なソフトウェアの開発を通じ創造的 な思考力を身に付けるとともに、単なる例題に とどまらない現実の開発作業を担うことによ り、品質、納期、予算といった実社会の制約を 踏まえたソフトウェア開発の実際について学 ぶ。
学習目標は次の通りである。
・開発するシステムの具体化を行い、ソフト ウェアの役割を明確化することができる。
・企業担当者と協調して開発作業を進め、実 開発における諸制約を理解できる。
・開発成果やソフトウェアの先進性について 発表、討論ができる
各プロジェクトでは半期(0.5年)毎に開発 課題・目標を設定する。1年後期の終わりと2 年前期の終わりには、全OJLプロジェクトの学 生、企業担当者、大学教員が一堂に会し、学生 のOJL中間発表会を行い、開発課題の意義や達 成度、得られた技術・成果などについて学生が 発表し、討論を行う。また、修了年度の終わり には最終発表会を行い、開発課題の本質的な問 題・特徴を理解しているか、製品レベルの実シ ステム開発を実践したか、開発スキルが身に付
いたか、メタ技術とメタ技術展開力が習得でき たか等の観点から、指導教員と企業担当者で学 生の評価を行う。
講師情報
OJLの各プロジェクトでは、企業のプロジェ クト管理者と大学の博士前期課程担当の教員が 学生の指導を行う。企業担当者はプロジェクト マネージャの役割をし、開発対象ソフトウェア
(課題)の選定、実際の企業での開発スキルの 伝授、プロジェクト管理を行う。大学教員は、
研究的視点やメタ技術の観点から、実システム 開発における本質的な問題や特徴、開発アプロ ーチの妥当性、代替手法の得失比較などについ て教育指導をする。
時間数
時間割上では明確に指定していないが、1年 後期は週に11時間以上、2年は週に16時間以上
の活動を行っている。
当該科目で利用した教材の概要
プロジェクトの半期毎に習得すべき技術や、
プロジェクトを円滑に進めるための指針やノウ ハウを整理した実施要項を作成中である。最終 評価を行う際の審査基準についても策定中であ る。
各科目の教材リスト
本コースのために、座学講義12科目(うち9 科目が新設講義)の各14回講義資料スライド作 成し、一部講義はビデオ教材化している.また、
PBLの内容は他拠点で実施できるよう指導要綱 を含めた教材化を行っている。これらは順次、
拠点間教材等連携事業のポータルサイトで公開 する予定である。
科目名 教材名 作成状況
ITネットワーク 講義資料全14回 製本済,公開準備中
ソフトウェア保守 講義資料全14回 製本済,公開準備中
ソフトウェア要求工学 講義資料全12回 製本済,公開準備中
ソフトウェア設計技術 講義資料全13回 製本済,公開準備中
正当性検証と妥当性確認 講義資料全13回 製本済,公開準備中 ソフトウェアプロジェクト管理 講義資料全13回 製本済,公開準備中 ソフトウェアモジュール化技術 講義資料全13回 製本済,公開準備中 ソフトウェアアーキテクチャ 講義資料全14回 製本済,公開準備中
分散システム開発技術 講義資料全14回 製本済,公開準備中
組み込みシステム開発技術I 講義資料全14回 製本済,公開準備中 組み込みシステム開発技術II 講義資料全14回 製本済,公開準備中 分散システム開発技術 ビデオ教材 全14回 公開準備中
組み込みシステム開発技術II ビデオ教材 全14回 公開準備中
ソフトウェア工学応用演習(PBL) PBL課題+指導要領 製本済,公開準備中