Ruby Silver試験対策アプリの本番公開と品質改善の記録

AI関連
スポンサーリンク

はじめに

こんにちは!やまさきです。

本番公開を前にチェックするといろいろ気づくところがあり、時間がかかってしまいました💦

前回のブログでは、Claude Codeを活用し、LaravelでRuby Silver試験対策Webアプリを開発した過程をご紹介しました。

開発そのものは驚くほどスムーズで、AIとの対話を重ねながら短期間でアプリケーションの形を作ることができました。

しかし、実際に利用者へ公開するためには、もう一つ大きな壁がありました。
それは「本番環境で安心して使える品質に仕上げること」です。
AIは短時間でコードを書いてくれます。しかし、そのまま公開できる品質とは限りません。

実際には、

  • サーバ環境への対応
  • UI・操作性の改善
  • 問題データの品質確認
  • 利用者からのフィードバック反映

など、多くの工程が必要でした。

実は、AIが高速に作ったものを本番環境で使うには、人間の時間がもう一度必要だったのです。

今回は、本番公開までに取り組んだ改善内容をご紹介します。

ちなみに、本番公開しているWebアプリは以下のリンクから使うことができます。

LaravelからPHPへ書き換え

今回の試験対策アプリは、最初はLaravelで開発しました。

Laravelは開発効率が高く、AIとの相性も非常に良いため、短期間で多くの機能を実装することができました。

しかし、本番環境として利用しているレンタルサーバでは、Laravelをそのまま運用するにはディレクトリ構成やComposerの管理など、運用面でいくつか課題がありました。

今回はよりシンプルな構成で運用できるよう、アプリ全体をPHPのみで動作する形へ移行しました。

単なるコードの置き換えではなく、

  • セッション管理
  • ルーティング
  • データベース処理
  • ログイン処理
  • 共通テンプレート

などをPHP向けに整理し直しています。

あわせて画面デザインも見直し、

  • ボタン配置
  • 配色
  • スマートフォン表示
  • 学習画面の見やすさ

など、実際に学習しやすいUIへ改善しました。

開発よりも、「公開できる形へ整える作業」の方が多くの時間を費やした印象です。

スポンサーリンク

AIが作った問題は、そのままでは公開できない

今回もっとも時間をかけたのは、試験問題の品質確認でした。
Ruby Silverの問題はAIに生成してもらいましたが、実際に確認すると様々な問題が見つかりました。

例えば、

複数の正解が存在する問題

選択肢を確認すると、

  • Aも正しい
  • Cも正しい

という問題が存在していました。
試験問題として成立しないため、すべて人間が確認し修正しています。

改行や空白による表示崩れ

コード問題では、

def hello
puts "Hello"
end

のように、本来必要なインデントや改行が崩れてしまうケースがありました。

Rubyではインデント以上に改行位置が重要になるため、表示が崩れるだけで問題の意味が変わってしまいます。
HTML表示も含め、一問ずつ確認しました。

同じ答えが重複している

選択肢を見ると、

A. puts
B. print
C. puts
D. p

のように同じ選択肢が並んでいるケースもありました。

人間なら違和感に気付きますが、AIは自然に生成してしまうことがあります。
こうした細かな品質も一つずつ修正しました。

AIは非常に優秀です。
しかし、「動くコードを書く能力」と「試験問題として成立する品質」は別の話です。

皆さんなら、どのレベルまでAIを信頼しますか。

スポンサーリンク

AIと人間、それぞれの役割

今回の開発を振り返ると、作業時間はおおよそ次のようになりました。

AIによる生成      約1時間
別AIによる検証     約1日
人間による確認     約1週間

最初は、「AIが全部作ってくれる」と思っていました。
しかし実際には、人間による確認工程が圧倒的に長くなりました。

今回行った確認内容は、

  • Ruby文法の確認
  • 正解判定
  • 解説内容
  • 表示崩れ
  • HTMLエスケープ
  • UI確認
  • スマホ表示
  • 学習導線
  • 重複問題
  • 難易度
  • 誤字脱字
  • ボタン動作
  • データ整合性

など多岐にわたります。

AI同士で相互チェックも行いましたが、それでも最後は人間が判断する必要がありました。

AIは開発速度を劇的に向上させます。
一方で、「品質を保証する責任」は依然として人間が担っています。

今回あらためて感じたのは、AIは開発者の代わりではなく、開発者を支援するパートナーであるということでした。

利用者のフィードバックから改善

公開前には、実際にRuby Silver受験予定者へ試用していただきました。
そこで多くの改善点が見つかりました。

例えば、

  • 問題文が読みにくい
  • 解説をもっと詳しくしてほしい
  • スマホ操作を改善してほしい
  • 前の問題へ戻りたい
  • 学習履歴を見たい

などです。

こうした意見を一つずつ反映し、実際の利用シーンを意識した改善を進めました。
開発者だけでは気付けない課題は非常に多く、ユーザーの声がアプリを成長させてくれました。

スポンサーリンク

本番公開して見えてきたこと

現在、Ruby Silver試験対策アプリは本番環境で運用を開始しています。

もちろん、まだ完成形ではありません。
実際に利用が始まると、新たな改善点も見えてきています。

特に難しいと感じているのは、「難易度設定」です。
経験者から見ると簡単な問題でも、初学者には難しく感じられることがあります。
逆に、試験直前の受験者には物足りなく感じる問題もあります。

教育現場ではよくある課題ですが、Webアプリでも同じことが起こります。

今後は利用状況を分析しながら、

  • 問題の難易度調整
  • 問題追加
  • 解説強化

などを継続的に行っていく予定です。

今後の展開

今回のアプリは公開して終わりではありません。継続的な改善を前提に運営していきます。

今後はSNSも活用しながら、

Instagram

  • 学習画面
  • 新機能紹介
  • 合格報告

Threads

  • 学習方法
  • 教員・受験者との情報交換
  • AI開発の裏話

X

  • Ruby Silver試験情報
  • アップデート情報
  • 技術的な改善内容

などを発信していく予定です。

また、利用者の声を取り入れながら、

  • 問題数の追加
  • 苦手分野分析
  • 学習履歴の充実
  • 学習効率向上機能

なども実装していきたいと考えています。

最終的には、受験者だけでなく、教育機関や企業研修でも活用できる学習プラットフォームへ発展させることを目標としています。

まとめ

前回の記事では、「AIを活用すれば短時間でWebアプリを開発できる」という可能性をご紹介しました。

そして今回、本番公開まで取り組んだ経験から見えてきたのは、その先にある現実です。

AIは開発スピードを飛躍的に高めてくれます。しかし、品質を保証し、利用者に安心して使っていただけるサービスへ仕上げるためには、人間による確認と改善が欠かせません。

今回の経験を通して、AIは「人間の仕事を奪う存在」ではなく、「人間の力を引き出すパートナー」であることを改めて実感しました。

これからも利用者の声を取り入れながら、Ruby Silver試験対策アプリを継続的に改善し、より多くの方の学習を支援できるサービスへ育てていきたいと考えています。

タイトルとURLをコピーしました