1

プロジェクト報告書(最終)Project Final Report
提出日 (Date) 2013/01/16
新ポートフォリオプロジェクト
The New Portfolio System
b1010110 梅本祥平 Shouhei Umemoto
1 背景
近年、大学等の教育機関で e-ポートフォリオの活用が
注目されている。e-ポートフォリオとは、学生が学習の
成果を電子的に蓄積できるものであり、学生が学習の振
り返りや就職活動といった用途に活用することができ
る。また、教員が教育の改善や学習状況の把握に活用す
ることができる。そして、e-ポートフォリオシステムは
教育の質を保証するものとして役立てることができる。
図 2 ポートフォリオを保存するためのストレージへ
のリンク
前年度は、高度 ICT プレコースにて e-ポートフォリ
オシステムの開発が行われた。これはメタ学習センター
からの開発依頼によるものである。
そして、全学生にポートフォリオを保存するためのス
前年度の成果として、2 学年進級時に行われる配属
トレージが付与されているが、学習成果の蓄積やポート
コースの選択を支援する e-ポートフォリオシステムが開
フォリオの作成といった機能はシステム化されていない
発された。
(図 2)。また、学内ネットワークからのみアクセス可能
であり、就職活動での活用といった外部からの利用は不
可能である。
現在、オープンソースソフトウェアとして公開されて
いる e-ポートフォリオシステムがいくつかある。しか
し、オープンソースソフトウェアであるため、本学に最
適化されたシステムではない。また、ユーザビリティな
どにも問題があるため、オープンソースソフトウェアの
e-ポートフォリオシステムを本学に導入することは難し
図1
前年度開発された e-ポートフォリオシステム
い。そこで、本プロジェクトでは本学で使用する e-ポー
トフォリオシステムを新たに開発することにした。
図 1 に示される開発された e-ポートフォリオシステ
また近年のソフトウェア開発では、顧客の要求が流動
ムは、限定的な機能しか持ち合わせていない。そのた
的であるため、迅速で適応的な開発が要求されている。
め、全学的な e-ポートフォリオシステム導入に向けた使
そのため、従来型のソフトウェア開発では、これらの要
用に耐え得るものではない。また、メンタ学習センター
求に対応することが難しくなっている。これらの要求に
の体制が変わったため、本学で使用する e-ポートフォリ
対応するソフトウェア開発の方法として、アジャイルソ
オシステムに対する要求が変化した。さらに e-ポート
フトウェア開発がある。
フォリオシステムの開発プロジェクトに携わっていた顧
客が不在となってしまった。
本学では、ポートフォリオの作成が教育の方法の一つ
として挙げられている。
前年度の高度 ICT プレコースでは、e-ポートフォリ
オシステムの開発にあたり、アジャイルソフトウェア開
発の開発手法である、エクストリーム・プログラミング
が行われた。しかし、エクストリーム・プログラミング
で定義されているプラクティスを十分に実践できたとは
るタスク管理などについて学習した。
言い難い。そのため、低品質なソフトウェアを提供する
ことになってしまっていた。
e-ポートフォリオシステムを開発するにあたり、顧客
の要求が流動的である点、迅速で適応的な開発が要求さ
れる点に留意した。そして、本プロジェクトでは従来型
のソフトウェア開発ではなく、アジャイルソフトウェア
開発に取り組むことにした。
2 課題の設定と到達目標
本プロジェクトにおける課題は、本学で使用する eポートフォリオシステムを新たに開発することである。
新たに開発するにあたり、本学の特色に合わせた e-ポー
トフォリオシステムを目指す。特に、プロジェクト学
図3
タスクかんばん
習に取り組む 3 年生をユーザーとして想定した。そし
て、学習の成果を蓄積する、ポートフォリオを作成する、
アジャイルソフトウェア開発では、明確な役割分担が
ポートフォリオを公開するといった基本的な機能に加え
行われないが、本プロジェクトでは、プロジェクトリー
て、本学のカリキュラムの特色であるプロジェクト学習
ダーとプロジェクトマネージャーを役割として設定し
に合わせた機能を追加し、e-ポートフォリオシステムを
た。プロジェクト学習では、プロジェクトリーダーを設
構築する。それによって、学生の学習活動や就職活動を
定する必要があるためである。また、プロジェクトリー
サポートすることを目的とする。
ダーの補助を行う役割が必要と考えたため、プロジェク
本プロジェクトにおけるもう一つの課題は、アジャイ
トマネージャーという明確な役割を設定した。
ルソフトウェア開発に取り組むことである。本プロジェ
また、プロジェクト学習の活動は断片的で情報共有が
クトでは、アジャイルソフトウェア開発の開発手法であ
難しいため、議事録の作成を行い、アジャイルソフト
る、エクストリーム・プログラミングとスクラムを行う。
ウェア開発における情報共有を補助できるようにした。
そして、近年取り組まれているソフトウェア開発手法を
プロジェクト学習で実践することで、従来の講義や演習
だけでは得ることができない知識・技術を獲得する。特
に、顧客の要求の変化に対して適応的にソフトウェア開
発を行うために、どのようにしていけばよいのかという
ことに重点を置き、e-ポートフォリオシステムの開発に
取り組む。
図4
議事録
3 課題解決のプロセスとその結果
本プロジェクトでは、e-ポートフォリオシステムを開
発するにあたり、アジャイルソフトウェア開発に関する
知識の獲得、必要な技術の習得から行うことにした。
必要な技術については、まず採用する技術の検討を
行った。
プログラミング言語及び Web アプリケーションフ
アジャイルソフトウェア開発については、主にプロ
レームワークは、学習コストや生産性を考慮し、Ruby
ジェクトリーダーの指導により、プロジェクトメンバー
と Ruby で構築された Web アプリケーションフレーム
が知識を獲得した。特に、ユーザーストーリーの作成や
ワークである Ruby on Rails を採用することにした。
ストーリーポイントによる見積り、かんばんの使用によ
Ruby と Ruby on Rails については、参考書を使用して
輪講を行うことで、技術の習得を図った。
バージョン管理システムは、分散型バージョン管理シ
ステムである Git を採用した。これは GitHub という
本プロジェクトでは、イテレーションの長さを 2 週間と
し、全体で 6 回のイテレーションを予定していた。
Git の Web ホスティングサービスを利用することがで
夏季休暇中には、e-ポートフォリオシステムに関する
き、また頻繁なソースコードの変更などにも対応しやす
知識不足を考慮し、e-ポートフォリオシステムに関する
いためである。バージョン管理システムについては、主
調査を行った。
にプロジェクトリーダーが指導を行った。
他の教育機関で e-ポートフォリオシステムが導入され
データベースは、e-ポートフォリオシステムで大量
た事例について調査を行ったり、既存のオープンソース
のデータや複雑なデータが扱われることを想定し、
ソフトウェアである e-ポートフォリオシステムについ
NOSQL データベースである MongoDB を採用する
て調査を行った。既存のオープンソースソフトウェアに
ことにした。データベースについては、書籍等が無いた
ついては、本学で導入するにあたり必要でない機能が多
め、Web 上の情報を参照し、輪講を行った。
くあるという問題や、ユーザーインタフェースが非常に
次に、e-ポートフォリオシステムにおけるユーザース
トーリーの作成を行った。
e-ポートフォリオシステムの主なユーザーを、プロ
不親切であるといった問題があった。そこで、改めて eポートフォリオシステムを新たに開発する必要性を再認
識した。
ジェクト学習を行なっている 3 年生と想定し、ユーザー
夏季休暇中の e-ポートフォリオシステムに関する調査
ストーリーを書き出した。これは、3 年生から就職活動
を受け、e-ポートフォリオシステムに必要な機能を再考
を始める学生が多く、e-ポートフォリオシステムを就職
した。
活動に役立ててもらうことができると考えたからであ
次に、e-ポートフォリオシステムのユーザーインタ
る。就職活動では、外部に対して自己のアピールを行う
フェースを接敵するために、ペーパープロトタイピング
場面が多数あり、そのような場面で、作成した e-ポート
を行った。ペーパープロトタイピングでは、プロジェク
フォリオを活用することができる。
トメンバーがペアで取り組み、必要となるページやその
まず、e-ポートフォリオシステムの機能を 4 つに絞っ
ページの遷移、各ユーザーインタフェースの挙動など
た。特に、学習成果の蓄積、学習成果の共有、学習成果
を、紙を用いて表していった。今まで漠然としていた、
の公開、ポートフォリオの作成に絞り、ユーザーストー
e-ポートフォリオシステムの機能を、ペーパープロトタ
リーを書き出していった。学習成果の蓄積・公開、ポー
イピングによって明らかにすることができた。
トフォリオの作成といった機能は、e-ポートフォリオシ
同時に、ユーザーストーリーを実現していくために、
ステムに必須の機能である。そして、学習成果の共有
データベースの設計を行った。データベースの設計につ
は、プロジェクト学習でプロジェクトでの活動が行われ
いても、プロジェクトメンバーがペアで取り組み、実装
ることを想定し、追加した。
もペアで行うようにした。結果として、アカウントやグ
次に、ユーザーストーリーに優先順位を付け、ユー
ループ、ポートフォリオやそれに対するコメントを管理
ザーストーリーの見積りを行い、プロジェクトの計画を
できるようにした。実装は、これらのデータに対して、
立てることにした。
Web 上から作成、読出、更新、削除ができるよう行った。
ユーザーストーリーの順位付けは、ユーザーストー
次に、プロジェクトコミュニティとミーティングを行
リー同士の依存関係や、e-ポートフォリオシステムの核
い、現段階で完成しているペーパープロトタイプやモッ
となる機能を考えながら行った。
クアップを提示した。しかし、顧客の意見が統一されて
ユーザーストーリーの見積りは、全員で見積りを行う
いなかったため、e-ポートフォリオシステムの機能につ
プランニングポーカーという方法で行い、各ユーザース
いて大きな変更を行う必要が生じた。そのため、開発を
トーリーにストーリーポイントという見積り単位を設定
一時中断し、プロジェクトコミュニティに対してヒアリ
していった。
ングを行うことにした。
ストーリーポイントの合計から、必要なイテレーショ
ンの回数を算出し、プロジェクト全体の計画を立てた。
プロジェクトコミュニティに対するヒアリングでは、
メタ学習センター長、メタ学習センター教員、メタ学習
ラボチューター、高度 ICT コース長に対してヒアリン
得が十分でない場面が多く見られた。今後も輪講や自主
グを行った。ヒアリングの結果、やはりプロジェクトコ
的な学習を行い、不足している技術を行なっていく必要
ミュニティ内の意見が統一されておらず、各自が抱いて
がある。
いる e-ポートフォリオシステムに対するイメージが大き
参考文献
く異なっていた。
ヒアリングの結果を受け、プロジェクトコミュニティ
内で e-ポートフォリオシステムに関する議論を行う必要
があると考えた。しかし、現在、その議論はまだ行われ
ていない。
[1] Jonathan Rasmusson. アジャイルサムライ. オー
ム社, 2011.
[2] Bruce A. Tate. Java から Ruby へ. オライリー・
ジャパン, 2007.
[3] Mike Cohn. アジャイルな見積りと計画づくり. 毎
4 今後の課題
まず、e-ポートフォリオシステムについてであるが、
日コミュニケーションズ, 2009.
[4] 小川賀代 小村道昭. 大学力を高める e ポートフォ
プロジェクト内での e-ポートフォリオシステムに関する
リオ─エビデンスに基づく教育の質保証をめざし
知識が不足している。そのため、今後は e-ポートフォリ
て. 東京電機大学出版局, 2012.
オシステムに関する専門家に開発に参加してもらう必要
[5] Derrin Kent Meg Kent Glenys Bradbury Richard
がある。また、プロジェクトコミュニティ内での意見を
Hand. e ポートフォリオ入門―Mahara でつくる.
統一するために、e-ポートフォリオシステムに関する議
海文堂出版, 2012.
論を行う必要がある。
e-ポートフォリオシステムに関する議論を行ったあと
に、再度、ユーザーストーリーを作成し直し、e-ポート
フォリオシステムの開発を行う予定である。
開発された e-ポートフォリオシステムについては、継
続的な機能の納品を行い、ユーザーから頻繁なフィード
バックを得る必要がある。得られたフィードバックを元
に、より良い e-ポートフォリオシステムにしていく必要
がある。
アジャイルソフトウェア開発に関しては、実際にソフ
トウェアを開発できた期間が短かったため、今後も実践
を行い、スキルを獲得する必要がある。
ストーリーポイントによる見積りでは、全員で見積り
を行ったが、見積りの精度が低く、大幅な計画変更が必
要となってしまった。
タスクの管理では、付箋を用いたもの、Web 上のツー
[6] Sam Ruby. Rails によるアジャイル Web アプリ
ケーション開発 第 4 版. オーム社, 2011.
[7] 高橋征義 後藤裕蔵. たのしい Ruby 第 3 版. ソフ
トバンククリエイティブ, 2010.
[8] Venkat Subramaniam Andy Hunt. アジャイルプ
ラクティス. オーム社, 2007.
[9] 樽本徹也. アジャイル・ユーザビリティ. オーム社,
2012.
[10] 本橋信也 河野達也 鶴見利章. NOSQL の基礎知識.
リックテレコム, 2012.
[11] 株式会社オイアクス 黒田努 佐藤和人. 改訂新版 基
礎 Ruby on Rails. インプレスジャパン, 2012.
[12] 佐藤聖規 和田貴久 河村雅人 米沢弘樹 山岸啓.
Jenkins 実践入門. 技術評論社, 2011.
[13] Dustin Boswell Trevor Foucher. リーダブルコー
ド. オライリージャパン, 2012.
ルを用いたものの両方を試したが、プロジェクト内の規
[14] Travis Swicegood. 入門 git. オーム社, 2009.
律が守られず、適切な管理が行われなかった。今後は、
[15] Carolyn Snyder 黒須正明. ペーパープロトタイピ
プロジェクトリーダーが、タスクの管理について注意を
払う必要がある。
イテレーティブな開発は、開発期間が短く、繰り返す
ことができなかっため、今後の e-ポートフォリオシステ
ムの開発で行なっていく予定である。
技術習得に関しては、プロジェクトメンバーの技術習
ング. オーム社, 2004.
[16] WINGS プロジェクト 片渕彼富. HTML5 基礎. 毎
日コミュニケーションズ, 2011.