【小学校向け学習コンテンツ開発】GIGAスクール構想をエンジニアリングでサポート。月間2億リクエストをさばくモンスターコンテンツ開発秘話
2023.10.11 (更新日 2023.10.13)
こんにちは!PIVOTのPR 大場です。
政府が推進する「GIGAスクール構想」を背景に、教育現場でのICT活用が進んでいます。端末やネットワーク環境の整備と並行して、ソフト面、すなわち「デジタル学習コンテンツ」も盛んに開発されるようになりました。
本プロジェクトのクライアントである光文書院様は、早くからデジタル学習教材の開発に取り組んでこられた、教科書出版の老舗企業。「小学生向けドリル教材のデジタル化」の開発パートナーとしてPIVOTにお声がけいただきました。
子どもたちの学習意欲を引き出し、継続的に使ってもらうために、エンジニアリングの力でできることはなにか?本プロジェクトの主要メンバーである前俊輔さん、ヴーン チュン キェンさん、種茂誠至さんに、開発の裏側をお聞きしました。
もくじ
小学校向け(全学年)のデジタルドリル「ドリルプラネット」開発の概要
-
「ドリルプラネット」の概要を教えてください。
-
前
ドリルプラネットは、小学校向け(全学年)のデジタルドリルです。ブラウザアプリで、対象端末はWindowsPC、ChromeBook、iPadの3種。
GIGAスクール構想によって配布された端末で、 児童が自主学習をしたり、宿題を解いたりすることができます。 また、先生側の画面では宿題を配信したり、学習の取り組み状況をチェックしたりする機能を実装しています。
-
種茂
解いた問題を自動で〇付けしたり、必要な学習をメニューから自分で選択できたりと、児童が自分のペースで学習に取り組めるところが特長です。また、漢字の書き順がアニメーションで確認できたり、学習に取り組むとキャラクターのスタンプがもらえたりと、デジタルならではの「やる気アップ」の仕掛けも搭載しています。
-
前
GIGAスクール構想は、端末の配布やネットワーク環境の整備などハード面が先行しており、それに対応できる学習コンテンツなどのソフト面は、当時まだ揃いきっていない段階でした。
また、光文書院様からは、先生の校務負担を軽減できるような機能、先生側にアプローチする教材を制作していきたい、というご要望もいただいていました。
-
種茂
PIVOTの関連会社である株式会社コンセントが、前身アプリの制作を担当していたので、今回はコンセントが画面設計・デザインを、PIVOTがサーバーサイドのシステムとインフラを担当する形になりました。
1日当たり1500万リクエスト・設計・言語・テスト・現在の状況
-
プロジェクトのスタート当初から、アクセス負荷対策が大きな課題だったとお聞きしました。
-
前
光文書院様が想定されているユーザー数からリクエスト数を割り出すと、月間2億を超えるリクエストを処理する必要があるとわかりました。
授業中に先生が宿題を配信して、児童が解く 、というようなケースも想定されていて、限られた時間内に大量のリクエストが一斉に飛ぶ可能性にも注意が必要でした。膨大なリクエストをいかに効率的にさばいていくかというのは、このプロジェクトの重要ポイントのひとつです。 -
種茂
さらに、光文書院様の要求仕様として、「画面描画は1秒以内」という指標がありました。一般的なサイトに比べると厳しい基準ですが、「子どもの集中力を削がない」ためには必須の条件ですよね。
-
具体的には、どのような対策を取られたのですか?
-
前
サーバー構成とプログラミング言語の選定については、PIVOTから提案させてもらいました。言語は、大量データの高速処理を特性とするElixirを採用しています。
PIVOTの社内業務システム(SHAFT)もElixirで構築していて、データ処理の速さや、大量のデータを適切に処理できるという言語特性をよく知っていましたから…。 -
PIVOTでは、Elixirを使った開発が多いのですか?
-
キェン
いいえ。普段はPHPの方が多いかな。でも、ドリルプラネットのシステムでは、Elixirが適切だろうと、社内で検討して決めました。PIVOTのエンジニアの多くは複数言語を書けるので、案件の性質に合わせて言語を提案できますね。
また、実現したいコンテンツを、できるだけリクエスト数を抑えてつくれるよう、フロント側を担当するパートナー会社と意見を出し合いながら取り組みました。
-
実装段階でのくふうは何かありますか?
-
キェン
今回は性能・パフォーマンスを強く求められているということを、エンジニアも全員意識していました。正しい結果を返すのはもちろんですが、なるべくCPUやメモリの負荷にならないように、ロジックやアルゴリズムを適切に処理に組み込んで、コーディングのくふうをしました。
CPUやメモリを使わずに、処理の速度を上げるにはどうコーディングしたらよいか? レスポンスタイムも、1秒、0.5秒、0.3秒とより上のレベルを目指してつくっていましたね。 -
今年(2023年)4月から、実際の学校での利用が始まっていますが、状況はいかがですか?
-
前
現在1日あたり1500万のリクエストがありますが、いまのところ問題なく処理できています。
-
思わぬトラブル等はありましたか?学校によっては、通信環境があまり整っていない場合もありそうですが…。
-
前
サーバー側の処理時間の平均は1秒を切っているので順調と言えますが、通信環境は学校や自治体によってもバラつきがあるようで、できるだけ画像や音声ファイルを圧縮して、ダウンロード時間を短くするような調整も行いました。
-
キェン
端末側のセキュリティ設定が影響して画面が見られない、というケースはありましたね。
-
実際に利用している方の声がPIVOTにも届くのですか?
-
前
クライアント様の方で一次受けしてくださっているのですが、システムの細かい点でのお問合せは、こちらに繋いでもらっています。3~4件ですが、学校にオンラインで繋いでもらって、対処方法をお伝えさせてもらったこともありましたね。
アジャイル開発の提案
-
開発時の話に戻りますが、今回のプロジェクトではアジャイル開発を導入されていたのですね。
-
前
はい。当初ウォーターフォール型で進めていたのですが、この方法だと要件を決めてから動く画面を見られるまでに、1年弱かかってしまうんです。
そうすると、クライアント様も不安ですし、画面を見て「やっぱり違う」となったときの手戻りも大きいですよね。それならアジャイルで、2~3ヵ月スパンで開発をまわす方が、双方メリットがあるのではないか、ということでこちらから提案しました。
-
種茂
短いスプリント単位で開発をすることによって、スプリント1でクライアント様から出た要望をスプリント2で実装する…というように細かな要望も都度優先度をつけてスピーディに対応できるようになりました。この流れはリリース後の今も続いていて、要望の多い機能から、優先的に実装をすすめています。
-
アジャイル開発は、一般的にスケジュールコントロールが難しいとお聞きしますが、スケジュール上の問題はありませんでしたか?
-
前
スケジュールに関してはとてもスムーズに進められました。細かい遅れはあっても、リリース日に間に合わない…というような事態は一度もなかったですね。
-
種茂
ドリルプラネットに限らず、教育系のコンテンツは、絶対に動かせないリリース日があるため、スムーズにプロジェクトを進行させるためには、どう要件を調整していけばよいか、常に意識していました。
学習系コンテンツのノウハウ
-
PIVOTは学習系コンテンツの制作実績が豊富ですが、そのノウハウが生きた部分はありましたか?
-
前
学習系で言うと、いくつか気を付けるべきポイントがあって、それが事前に把握できていたのはよかったかなと思います。
-
種茂
例えば、年度替わりは学年が上がるタイミングですが、その時に割と大きめのメンテナンスやデータ追加の作業が発生する可能性があります。
学年が上がったときに、どういうふるまいをするのか、データは引き継ぐのか。また、教科書の内容が更新される年度には、 入れ替えのためのメンテナンスも発生します。初期開発のときから考慮しておくことはもちろん、運用フェーズでのサポートも視野に入れておかなければなりません。
-
キェン
あと、低学年と高学年で、使える漢字が違うとかね。コンテンツ部分以外で表示されるメッセージも多いから、その辺にも気を配りますね。
-
種茂
教育コンテンツならではのご要望や仕様を、社内にノウハウとして持っていたのは良かったかなと思います。
-
ありがとうございました。今後の展望があればお聞かせください。
-
前
一旦リリースを迎えましたが、プロジェクトとしてはまだまだやりたいことが山積みです。開発上の制約を踏まえつつ、「やりたいこと」をいかに実現していくか、光文書院様と議論しながら進めているところです。
特に、継続的に使いたくなるような魅力ある仕掛けは、ぜひ実装したいですね。光文書院様の熱意や理想を、プロダクトに落とし込んでいけたらと思います。ドリルプラネットは今年が初年度で、来年以降はさらにユーザー数、すなわちアクセスも増えていくと思いますが、使っている子どもたちや先生方が、ストレスなく学習や指導に集中できるよう、よりよいプロダクトに育てていきたいです。
-
ありがとうございました。
アプリ開発にシステム開発、そしてDX!デジタルプロダクトのことならどんなことでもお気軽に!
アプリ開発はもちろん、DXに関するご相談、デジタルプロダクトに関すること、ふわっとした状態でも構いません。
お気軽にご相談くださいませ!
「真ん中に『人』がいる
デジタルサービス」をつくりませんか。
お仕事のご相談やお見積もりのご依頼、具体的なご相談は、こちらからお問い合わせください。