2024 ソフトウェア設計及び演習用の班Wiki

24::gr11::TA

担当:三合堂恭平

個人ページ

進捗チェック

第3回

簡易企画書

クイズの企画書の画面遷移は十分にできていると思うので、モジュールで細部の調整をしても良いと思います。 問題の設定としておすすめのデータ構造としては、難易度・問題ID・問題文にした方が良いと思います(ID被りによる問題の重複を防ぐため)。難易度はソートすると効率が良くなります。 時間が余った人は作問するのも良いでしょう。

第4回

ある程度画面の遷移を作成できているので、情報の受け渡しについて議論するのがいいと思います。 問題数を多くしたいのであれば、この時期から作問係を用意するのがベストです。 作問の内容はデータファイルで管理をするのが効率が良いです(csvファイルなど)。

第5回

モジュールについて固まってきたので、基本的な機能が正しく動作するか確認するためにプロトタイプを作成してみてください。 1画面からでいいのでjavascriptから問題を取得して表示するところを次回の目標にするのが良いと思います。 今のうちにアカウントの初期データ(構造体)を決めた方がいいかもしれません。

第6回

そろそろ中間発表が近いので、何をメインにするか、プロトタイプの実装はどのようにするかをグループ内で話し合って決めて下さい。原稿、スライド、発表、プログラムの実行に分けるのがベストです。

第7回

データの受け渡しはhtmlの<form>タグやURLパラメータのvalue=${value}からのurlParams.get('value')で行うなどが最適だと思います。(特に検索機能でページを跨ぐなら) youtubeやXなどで最初のページに戻らずに元の位置から検索し直したり、指定した位置から動画再生できるのもパラメータから情報を取得しているからである。 しかし、クイズでは送るパラメータ数が多いため、sessionStorage関数を用いるか、localStorage関数で値を渡すのが基本になると思います。 フリーのライブラリなら乱数を生成するmt.jsがあるので乱数シードを現在の日付、時刻から参照すれば同じような出題がなくなります。

第8回

中間発表はまだ未完成のプログラムで動かすので、問題点が浮き彫りになったらこれからの作業の参考にしましょう。 また、中間発表の際に他の班のアルゴリズムを考えながら見るのも良いかもしれません。(他の班もデータの受け渡しを行っているので)

中間発表

背景に被さっている文字が見えづらく、縁取りをしないと見えづらいと思うので、配色関係は可能であれば変更した方が良いと思います。何かウィンドウのようなものを配置すれば雰囲気を壊さないようなデザインにできると思います。 クイズは問題なく実行できて、正答率も表示できているので、データの受け渡しは問題ないと思います。

本番に向けて

10問答えるモードは、時間制限の仕組みは余った時間を倍率とするか、時間をすべて一定にして余った時間をスコアボーナスとして加算するのも良いかもしれません。 エンドレスの場合は1⃣,2⃣回ミスしても許される要素だったり、答えるたびに難易度が上昇するする要素も検討してみてください。

最終発表会

ルールについては、表示する余裕があれば図を入れるとより理解しやすくなるので、プレイ画面の画像を貼れば分かりやすい。クイズのスコアがミリ秒単位のタイマーで加算されており、難易度により点数も変わるため、競技性が更に高くなったと感じた。表に難易度が記載されているが、文字が小さいためもう少し大きくすると可読性が高くなるのではないかと思った。失敗したときのペナルティも、適当な回答に対する対策で改善されていた。


最終更新日:2024/07/26 15:15:09