本システムはTRPGを行うに必要な、チャット機能を用いたコミュニケーションの場、即ちチャットルームを提供する。
ユーザは部屋の作成と参加、自らが制作した部屋の削除と編集、参加した部屋の参加取り消し機能が行える。
ユーザは部屋の作成者か否かによって、その部屋に対して行えるアクションが変動する。本システムは主に以下の5つの機能からなる。
a.部屋登録機能
b.部屋削除機能
c.部屋編集機能
a.部屋検索機能
b.検索結果一覧表示機能
c.部屋参加機能
a.参加予定部屋の一覧表示機能
b.参加予定部屋のチャットルーム入室機能
c.参加予定取り消し機能
a.メッセージ送信機能
b.ダイスロール代行機能
c.メッセージ表示機能
a.ユーザ登録機能
b.パスワード変更機能
c.ログイン機能
d.ログアウト機能
今回の模擬プロジェクト研修で自分の段取りの悪さを実感できました。
実際に作ってみると、いつの間にか要件定義書や画面定義書と異なっていることが多々ありました。
初期想定の甘さが目立ちます。
以上のことから、プログラミングだけでなく、各種定義やテストにも長い時間が設けられている理由を大事にしたいと思います。
兎にも角にも、要件定義書の作りこみが甘い。
そもそもの機能が不足している。
→部屋に参加者一覧が存在しない。
→チャットの更新がリアルタイムでない。
術の未熟さゆえに実装できない機能がある。
●エラーチェックができるようになった。
●機能別にプログラムを分けるという考え方を得られた。
●javaやSpringの基本的な使い方はマスターできた。不具合に対し、複数の視点を持つことを忘れないように心がけたい。
チャットルームの自動更新を掛ける際、ページのみを更新してもチャットの中身、ログが更新されないことがあった。
最初はページの更新が上手くいっていないのかと考えたが、原因は全く別だった。
ページの更新をしても、DBを再読み込みしていなかったことが原因だった。
自分なりのコミュニケーションツールを作りたいという思いから、自身の興味があるTRPGにてチャット機能を提供するようにしたシステムです。
画面数も多めで、いくつかの機能は使い勝手が良くない部分もありましたが、チャット機能をメインに、必要な機能は実装することができ、デザインも考えて実装できた作品になっています。