要求定義書.md - 2023-graduation-work/graduation-work-team2-1 GitHub Wiki
チャットアプリ
概要
- 本アプリは、ユーザー間でテキストベースのコミュニケーションを可能にするチャットプラットフォームです。
- アプリはウェブブラウザからアクセス可能で、ユーザーフレンドリーなインターフェースを提供します。
アプリの機能の概要
1. ログイン機能
- ユーザーはユーザー名とパスワードを使用してアカウントにログインできる。
- ログインが成功した場合、ユーザーセッションが開始される。
2. ログアウト機能
- ユーザーはアプリからログアウトできる。
- ログアウト後、ユーザーセッションは終了し、アプリへのアクセスが制限される。
3. 投稿検索機能
- ユーザーはキーワードを使用して他のユーザーの投稿を検索できる。
- 検索結果は関連性に基づいて表示され、ユーザーは投稿を閲覧できる。
4. 投稿機能
- ユーザーはテキストを使用して新しい投稿を作成できる。
- 投稿はユーザーのプロフィールページに表示され、他のユーザーが閲覧できる。
5. 自分の投稿を一覧で表示する機能
- ユーザーは自分のプロフィールページで、自分が作成したすべての投稿を一覧表示できる。
6. タイムライン機能
- ユーザーは自分とフォローしている他のユーザーの最新の投稿をタイムラインで表示できる。
- タイムラインは最新の投稿から順に表示され、ユーザーは投稿にリアクションできる。
7. リプライ機能
- ユーザーは他のユーザーの投稿に対してコメントを投稿できる。
- コメントは元の投稿に関連付けられ、会話が形成される。
8. 「いいね」機能
- ユーザーは他のユーザーの投稿に「いいね」を付けることができる。
- 投稿に「いいね」がついた回数は表示され、ユーザーが自分の投稿に対する反応を確認できる。
9. 投稿削除機能
- ユーザーは自分の投稿を削除できる。
- 削除された投稿は他のユーザーから非表示にされ、リプライや「いいね」も削除される。
10. ユーザー検索機能
- ユーザーは他のユーザーをユーザー名やプロフィール情報から検索できる。
- 検索結果に基づいて他のユーザーのプロフィールを閲覧できる。
11. 新規アカウント作成機能
- 新しいユーザーはアカウントを作成できる。
- アカウント作成時には必要な情報を提供し、ユーザー名とパスワードを設定する。
12. アカウント削除機能
- ユーザーはアカウントを削除できる。
- アカウント削除後、ユーザーの情報とデータは永久的に削除され、アカウントへのアクセスが制限される。
13. セキュリティ
- パスワードの保存にはハッシュ化が使用され、セキュリティを強化する。
- セッション管理を通じて、セッション固有のトークンを使用してセキュリティを確保する。
14. フォロー機能
- 他のユーザーをフォローすることで、フォロー一覧からアカウントを閲覧できるようになる。
ユーザーストーリー
ユーザーが体験したことを他人と共有したり、リプライ機能などによって気軽にコミュニケーションをとることができる。
基本シナリオ:
- __ログイン機能:
- ユーザーは正しいユーザー名とパスワードを入力し、アプリにログインできる。
- ログアウト機能:
- ユーザーはアプリからログアウトでき、セッションが終了し、アクセスが制限される。
- 投稿検索機能:
- ユーザーはキーワードを入力し、関連性に基づいて他のユーザーの投稿を検索できる。
- 投稿機能:
- ユーザーはテキストを使用して新しい投稿を作成し、他のユーザーが閲覧できる。
- 自分の投稿を一覧で表示する機能:
- ユーザーは自分のプロフィールページで、自分が作成したすべての投稿を一覧表示できる。
- タイムライン機能:
- ユーザーは自分とフォローしている他のユーザーの最新の投稿をタイムラインで表示できる。最新の投稿が順に表示され、ユーザーは投稿にリアクションできる。
- リプライ機能:
- ユーザーは他のユーザーの投稿に対してコメントを投稿できる。コメントは元の投稿に関連付けられ、会話が形成される。
- 「いいね」機能:
- ユーザーは他のユーザーの投稿に「いいね」を付けることができる。投稿に「いいね」がついた回数が表示され、ユーザーは自分の投稿に対する反応を確認できる。
- 投稿削除機能:
- ユーザーは自分の投稿を削除できる。削除された投稿は他のユーザーから非表示にされ、リプライや「いいね」も削除される。
- ユーザー検索機能:
- ユーザーは他のユーザーをユーザー名やプロフィール情報から検索でき、検索結果に基づいて他のユーザーのプロフィールを閲覧できる。
- 新規アカウント作成機能:
- 新しいユーザーは必要な情報を提供し、アカウントを作成できる。アカウント作成時にユーザー名とパスワードを設定する。
- アカウント削除機能:
- ユーザーはアカウントを削除でき、アカウントの情報とデータは永久的に削除され、アクセスが制限される。
- セキュリティ:
- パスワードはハッシュ化され、セキュリティを強化し、セッション管理を通じてセキュリティを確保する。
- フォロー機能:
- ユーザーは他のユーザーをフォローすることで、フォロー一覧からアカウントを閲覧できる。
例外シナリオ:
- ログイン機能:
- ユーザーが誤ったユーザー名またはパスワードを入力した場合、ログインに失敗し、エラーメッセージが表示される。
- ログアウト機能:
- ユーザーがログアウト時に問題が発生した場合、セッションが正しく終了しない可能性があり、サポートが必要となる。
- 投稿検索機能:
- 検索エンジンのエラーやサーバーエラーにより、検索結果が正しく表示されない可能性があり、サポートが必要となる。
- 投稿機能:
- アプリが投稿のアップロード中にエラーを返す場合、ユーザーにエラーメッセージと再試行のオプションを提供する。
- 自分の投稿を一覧で表示する機能:
- データベースエラーなどの問題により、ユーザーの投稿が正しく表示されない場合、サポートが必要となる。
- タイムライン機能:
- サーバーエラーやネットワーク接続の問題により、タイムラインが正しく読み込まれない場合、サポートが必要となる。
- リプライ機能:
- コメントの送信中にエラーが発生し、コメントが正しく投稿されない場合、ユーザーにエラーメッセージと再試行のオプションを提供する。
- 「いいね」機能:
- 「いいね」の送信中にエラーが発生し、反応が正しく記録されない場合、ユーザーにエラーメッセージと再試行のオプションを提供する。
- 投稿削除機能:
- 削除の際にエラーが発生し、投稿が正しく削除されない場合、ユーザーにエラーメッセージと再試行のオプションを提供する。
- ユーザー検索機能:
- 検索エンジンのエラーやサーバーエラーにより、検索結果が正しく表示されない場合、サポートが必要となる。
- 新規アカウント作成機能:
- アカウント作成時に必須情報を提供しない場合、ユーザーに情報の提供を促すエラーメッセージを表示する。
- アカウント削除機能:
- アカウント削除時に問題が発生した場合、アカウントが正しく削除されない可能性があり、サポートが必要となる。
- セキュリティ:
- セキュリティ違反やハッキングの試みが検出された場合、セキュリティ対策が必要となる。
- フォロー機能:
- フォローの操作中にエラーが発生し、フォローが正しく記録されない場合、ユーザーにエラーメッセージと再試行のオプションを提供する。
アクティビティの相互関係
-
ログイン機能:
- ユーザーがアプリにログインすることで、個人のプロフィール情報やアクティビティにアクセスできます。
- ログイン後、ユーザーセッションが開始され、他のユーザーとのコミュニケーションが可能になります。
-
ログアウト機能:
- ログアウトを行うことで、ユーザーセッションが終了し、アプリからログアウト状態になります。
-
投稿機能:
- ログインユーザーはテキストのコンテンツを投稿できます。
- これらの投稿はユーザーのプロフィールに表示され、他のユーザーが閲覧できます。
-
タイムライン機能:
- ユーザーは自分とフォローしている他のユーザーの最新の投稿をタイムラインで表示できます。
- タイムラインは最新の投稿から順に表示され、ユーザーは投稿に対するリアクションを行うことができます。
-
リプライ機能:
- ユーザーは他のユーザーの投稿に対してコメントやリプライを投稿できます。
- これにより、投稿とコメントの関連付けが行われ、会話が形成されます。
-
「いいね」機能:
- ユーザーは他のユーザーの投稿に「いいね」を付けることができます。
- 投稿に「いいね」がついた回数が表示され、ユーザーは他のユーザーの投稿に対する反応を確認できます。
-
投稿削除機能:
- ユーザーは自分の投稿を削除できます。この際、リプライや「いいね」も削除されます。
-
ユーザー検索機能:
- ユーザーは他のユーザーをユーザー名やプロフィール情報から検索できます。
- 検索結果に基づいて他のユーザーのプロフィールを閲覧できます。
-
新規アカウント作成機能:
- 新しいユーザーはアカウントを作成できます。アカウント作成時にユーザー名とパスワードを設定します。
-
アカウント削除機能:
- ユーザーはアカウントを削除でき、これによりアカウントへのアクセスが制限され、ユーザーの情報とデータが永久的に削除されます。
- セキュリティ:
- パスワードのハッシュ化とセッション管理により、ユーザーのセキュリティとプライバシーが確保されます。
- フォロー機能:
- ユーザーは他のユーザーをフォローすることができ、フォロー一覧からフォローしたアカウントを閲覧できるようになります。