Feature Category: Product Reviews & Ratings
Last Updated: 2025-01-20
Related Features: Review Submission, Review Display, Review Moderation
User Persona: Customer who purchased product
Goal: Share experience and rate product
Context: Customer received product, wants to leave review
-
Review Access
- Customer on product details page
- Customer scrolls to reviews section
- Customer clicks "Write a Review" button
- Or customer navigates from order history: "Leave Review" link
- Redirected to review submission page
-
Review Form Display
- Form shows:
- Product information (name, image)
- Order information (if from order)
- Rating selector (1-5 stars)
- Review title field
- Review text field (textarea)
- Image upload (optional, if implemented)
- Terms checkbox (if required)
- Form validation rules shown
- Form shows:
-
Filling Review Form
- Customer selects rating:
- Clicks star (1-5)
- Stars highlight up to selected rating
- Visual feedback (e.g., "Excellent" for 5 stars)
- Customer enters review title:
- Character limit shown (e.g., "200 characters")
- Counter updates as customer types
- Customer writes review:
- Character limit shown (e.g., "1000 characters")
- Counter updates
- Formatting options (if rich text editor)
- Customer uploads images (optional):
- Click "Add Images"
- File picker opens
- Images preview
- Can remove images
- Customer checks terms (if required)
- Customer selects rating:
-
Form Validation
- Real-time validation:
- Rating required
- Title required (min length)
- Review text required (min length)
- Errors shown immediately
- Submit button disabled until valid
- Real-time validation:
-
Submitting Review
- Customer clicks "Submit Review" button
- Button shows loading: "Submitting..."
- Review submitted to server
- If from order: Review linked to order
-
Review Submission Result
- If successful:
- Success message: "Thank you for your review! It will be published after moderation."
- Redirect to product page
- Review appears in "Pending" state (if moderation required)
- If error:
- Error message displayed
- Form retains input
- Customer can retry
- If successful:
-
Moderation Queue (if implemented)
- Review goes to moderation queue
- Staff/admin reviews
- Review approved or rejected
- Customer notified (if implemented)
- Ease of Use: Simple, intuitive form
- Guidance: Helpful hints and examples
- Validation: Clear validation messages
- Image Upload: Easy image upload with preview
- Mobile: Touch-friendly star rating, responsive form
User Persona: Customer wanting to update review
Goal: Modify previously submitted review
Context: Customer on product page or profile
-
Finding Review
- Customer on product page
- Customer finds their review in reviews list
- "Edit" button shown on own reviews
- Or customer navigates from profile: "My Reviews"
-
Edit Access
- Customer clicks "Edit" on review
- Edit form appears (modal or page)
- Form pre-filled with existing review data
-
Making Changes
- Customer updates:
- Rating (if allowed)
- Title
- Review text
- Images (add/remove)
- Changes highlighted
- Customer updates:
-
Saving Changes
- Customer clicks "Update Review"
- Loading state
- Review updated
- If moderation required: Review goes back to moderation queue
- Success message: "Review updated successfully"
- Edit Window: Time limit for editing (if implemented)
- Re-moderation: Reviews may need re-approval after edit
- History: Show edit history (if implemented)
User Persona: Customer researching product
Goal: Read reviews to make purchase decision
Context: Customer on product details page
-
Reviews Section
- Customer scrolls to reviews section on product page
- Section shows:
- Average rating (e.g., "4.5 out of 5 stars")
- Total review count (e.g., "Based on 127 reviews")
- Rating distribution chart (if implemented)
- Review list
-
Rating Overview
- Average rating displayed prominently
- Star visualization
- Rating breakdown:
- 5 stars: 60%
- 4 stars: 25%
- 3 stars: 10%
- 2 stars: 3%
- 1 star: 2%
- Visual bar chart (if implemented)
-
Review List
- Reviews displayed in list
- Each review shows:
- Reviewer name (or "Verified Customer")
- Rating (stars)
- Review title
- Review text (truncated if long, "Read more" link)
- Review date
- Verified purchase badge (if from order)
- Helpful count (if implemented)
- "Helpful" button (if implemented)
- Images (if uploaded)
- Default sort: Most recent first
-
Review Sorting
- Customer can sort by:
- Most recent
- Highest rated
- Lowest rated
- Most helpful
- Customer selects sort option
- Reviews reorder
- Customer can sort by:
-
Review Filtering
- Customer can filter by rating:
- Show only 5-star reviews
- Show only 4-star reviews
- etc.
- Customer selects filter
- Reviews update
- Active filter shown
- Customer can filter by rating:
-
Reading Full Review
- Customer clicks "Read more" on truncated review
- Review expands to show full text
- Or customer clicks review to view full details
-
Review Images
- If review has images:
- Thumbnails shown
- Customer clicks thumbnail
- Lightbox opens with full image
- Customer can navigate through images
- If review has images:
-
Helpful Votes
- Customer finds review helpful
- Customer clicks "Helpful" button
- Vote count updates
- Button shows "You found this helpful"
- Customer can undo vote
- Readability: Clear typography, good spacing
- Pagination: Handle many reviews
- Loading: Lazy load reviews
- Accessibility: Screen reader support
- Mobile: Responsive layout, touch-friendly
User Persona: Staff member moderating reviews
Goal: Approve or reject submitted reviews
Context: Staff navigates to review moderation
-
Moderation Access
- Staff navigates to review moderation (if separate page)
- Or staff sees moderation queue in admin dashboard
- Pending reviews list displayed
-
Review Queue
- Page shows:
- List of pending reviews
- Each review shows:
- Product name
- Reviewer name
- Rating
- Review title (preview)
- Submission date
- Actions (Approve, Reject, View)
- Filter options:
- By product
- By date
- By rating
- Page shows:
-
Viewing Review
- Staff clicks "View" on review
- Full review displayed:
- Complete review text
- Images (if any)
- Reviewer information
- Product information
- Order information (if linked)
-
Approving Review
- Staff reviews content
- If appropriate:
- Staff clicks "Approve"
- Confirmation: "Approve this review?"
- Staff confirms
- Review approved
- Review appears on product page
- Reviewer notified (if implemented)
-
Rejecting Review
- If inappropriate:
- Staff clicks "Reject"
- Rejection reason field (optional)
- Staff enters reason
- Staff confirms
- Review rejected
- Review removed from queue
- Reviewer notified (if implemented)
- If inappropriate:
-
Bulk Actions
- Staff can select multiple reviews
- Staff clicks "Approve Selected" or "Reject Selected"
- Bulk operation processes
- Results shown
- Efficiency: Quick approve/reject actions
- Guidelines: Review guidelines visible
- History: Track moderation actions
- Notifications: Notify reviewers of decisions
User Persona: Customer checking review history
Goal: View and manage submitted reviews
Context: Customer in profile section
-
Accessing Reviews
- Customer navigates to profile
- Customer clicks "My Reviews" link
- Redirected to review history page
-
Review History Display
- Page shows:
- List of customer's reviews
- Each review shows:
- Product name and image
- Rating given
- Review title
- Review status (Published, Pending, Rejected)
- Submission date
- Actions (View, Edit, Delete)
- Filter options:
- By status
- By product
- By date
- Page shows:
-
Viewing Review
- Customer clicks "View" on review
- Full review displayed
- Link to product page
- Edit and Delete options
-
Editing Review
- Customer clicks "Edit"
- Edit form appears
- Customer makes changes
- Customer saves
- Review goes to moderation (if required)
-
Deleting Review
- Customer clicks "Delete"
- Confirmation: "Are you sure you want to delete this review?"
- Customer confirms
- Review deleted
- Success message
- Easy Access: Quick link from profile
- Status Clarity: Clear status indicators
- Edit Window: Time limit for editing (if implemented)
User Persona: Admin analyzing review data
Goal: Understand review trends and product feedback
Context: Admin in reports section
-
Analytics Access
- Admin navigates to Reports & Analytics
- Admin clicks "Review Analytics"
- Review analytics page loads
-
Analytics Display
- Page shows:
- Total reviews count
- Average rating across all products
- Reviews by rating distribution
- Reviews over time (chart)
- Most reviewed products
- Products with highest ratings
- Products with lowest ratings
- Review moderation statistics
- Page shows:
-
Filtering Analytics
- Admin can filter by:
- Date range
- Product category
- Product
- Admin applies filters
- Analytics update
- Admin can filter by:
-
Exporting Data
- Admin clicks "Export to CSV"
- Review data exported
- CSV file downloads
- Visualization: Charts and graphs
- Insights: Key metrics highlighted
- Export: Easy data export
Flow:
- Customer attempts to submit second review for same product
- System checks for existing review
- If review exists:
- Error message: "You have already reviewed this product"
- Link to edit existing review
- Customer can edit instead
Flow:
- Customer submits review
- Review goes to moderation
- Staff rejects review
- Customer notified (if implemented)
- Customer sees rejection in "My Reviews"
- Rejection reason shown (if provided)
- Customer can contact support (if needed)
- Touch-friendly star rating
- Large text areas
- Easy image upload
- Simplified form layout
- Card-based layout
- Swipeable review images
- Collapsible review text
- Easy helpful voting
- Lazy load reviews
- Pagination for many reviews
- Cached average ratings
- Optimized queries
- Optimistic UI updates
- Background submission
- Error rollback if needed
End of Reviews & Ratings UX Scenarios
Feature Category: Product Reviews & Ratings
Last Updated: 2025-01-20
Related Features: Review Submission, Review Display, Review Moderation
User Persona: Customer who purchased product
Goal: Share experience and rate product
Context: Customer received product, wants to leave review
-
Review Access
- Customer on product details page
- Customer scrolls to reviews section
- Customer clicks "Write a Review" button
- Or customer navigates from order history: "Leave Review" link
- Redirected to review submission page
-
Review Form Display
- Form shows:
- Product information (name, image)
- Order information (if from order)
- Rating selector (1-5 stars)
- Review title field
- Review text field (textarea)
- Image upload (optional, if implemented)
- Terms checkbox (if required)
- Form validation rules shown
- Form shows:
-
Filling Review Form
- Customer selects rating:
- Clicks star (1-5)
- Stars highlight up to selected rating
- Visual feedback (e.g., "Excellent" for 5 stars)
- Customer enters review title:
- Character limit shown (e.g., "200 characters")
- Counter updates as customer types
- Customer writes review:
- Character limit shown (e.g., "1000 characters")
- Counter updates
- Formatting options (if rich text editor)
- Customer uploads images (optional):
- Click "Add Images"
- File picker opens
- Images preview
- Can remove images
- Customer checks terms (if required)
- Customer selects rating:
-
Form Validation
- Real-time validation:
- Rating required
- Title required (min length)
- Review text required (min length)
- Errors shown immediately
- Submit button disabled until valid
- Real-time validation:
-
Submitting Review
- Customer clicks "Submit Review" button
- Button shows loading: "Submitting..."
- Review submitted to server
- If from order: Review linked to order
-
Review Submission Result
- If successful:
- Success message: "Thank you for your review! It will be published after moderation."
- Redirect to product page
- Review appears in "Pending" state (if moderation required)
- If error:
- Error message displayed
- Form retains input
- Customer can retry
- If successful:
-
Moderation Queue (if implemented)
- Review goes to moderation queue
- Staff/admin reviews
- Review approved or rejected
- Customer notified (if implemented)
- Ease of Use: Simple, intuitive form
- Guidance: Helpful hints and examples
- Validation: Clear validation messages
- Image Upload: Easy image upload with preview
- Mobile: Touch-friendly star rating, responsive form
User Persona: Customer wanting to update review
Goal: Modify previously submitted review
Context: Customer on product page or profile
-
Finding Review
- Customer on product page
- Customer finds their review in reviews list
- "Edit" button shown on own reviews
- Or customer navigates from profile: "My Reviews"
-
Edit Access
- Customer clicks "Edit" on review
- Edit form appears (modal or page)
- Form pre-filled with existing review data
-
Making Changes
- Customer updates:
- Rating (if allowed)
- Title
- Review text
- Images (add/remove)
- Changes highlighted
- Customer updates:
-
Saving Changes
- Customer clicks "Update Review"
- Loading state
- Review updated
- If moderation required: Review goes back to moderation queue
- Success message: "Review updated successfully"
- Edit Window: Time limit for editing (if implemented)
- Re-moderation: Reviews may need re-approval after edit
- History: Show edit history (if implemented)
User Persona: Customer researching product
Goal: Read reviews to make purchase decision
Context: Customer on product details page
-
Reviews Section
- Customer scrolls to reviews section on product page
- Section shows:
- Average rating (e.g., "4.5 out of 5 stars")
- Total review count (e.g., "Based on 127 reviews")
- Rating distribution chart (if implemented)
- Review list
-
Rating Overview
- Average rating displayed prominently
- Star visualization
- Rating breakdown:
- 5 stars: 60%
- 4 stars: 25%
- 3 stars: 10%
- 2 stars: 3%
- 1 star: 2%
- Visual bar chart (if implemented)
-
Review List
- Reviews displayed in list
- Each review shows:
- Reviewer name (or "Verified Customer")
- Rating (stars)
- Review title
- Review text (truncated if long, "Read more" link)
- Review date
- Verified purchase badge (if from order)
- Helpful count (if implemented)
- "Helpful" button (if implemented)
- Images (if uploaded)
- Default sort: Most recent first
-
Review Sorting
- Customer can sort by:
- Most recent
- Highest rated
- Lowest rated
- Most helpful
- Customer selects sort option
- Reviews reorder
- Customer can sort by:
-
Review Filtering
- Customer can filter by rating:
- Show only 5-star reviews
- Show only 4-star reviews
- etc.
- Customer selects filter
- Reviews update
- Active filter shown
- Customer can filter by rating:
-
Reading Full Review
- Customer clicks "Read more" on truncated review
- Review expands to show full text
- Or customer clicks review to view full details
-
Review Images
- If review has images:
- Thumbnails shown
- Customer clicks thumbnail
- Lightbox opens with full image
- Customer can navigate through images
- If review has images:
-
Helpful Votes
- Customer finds review helpful
- Customer clicks "Helpful" button
- Vote count updates
- Button shows "You found this helpful"
- Customer can undo vote
- Readability: Clear typography, good spacing
- Pagination: Handle many reviews
- Loading: Lazy load reviews
- Accessibility: Screen reader support
- Mobile: Responsive layout, touch-friendly
User Persona: Staff member moderating reviews
Goal: Approve or reject submitted reviews
Context: Staff navigates to review moderation
-
Moderation Access
- Staff navigates to review moderation (if separate page)
- Or staff sees moderation queue in admin dashboard
- Pending reviews list displayed
-
Review Queue
- Page shows:
- List of pending reviews
- Each review shows:
- Product name
- Reviewer name
- Rating
- Review title (preview)
- Submission date
- Actions (Approve, Reject, View)
- Filter options:
- By product
- By date
- By rating
- Page shows:
-
Viewing Review
- Staff clicks "View" on review
- Full review displayed:
- Complete review text
- Images (if any)
- Reviewer information
- Product information
- Order information (if linked)
-
Approving Review
- Staff reviews content
- If appropriate:
- Staff clicks "Approve"
- Confirmation: "Approve this review?"
- Staff confirms
- Review approved
- Review appears on product page
- Reviewer notified (if implemented)
-
Rejecting Review
- If inappropriate:
- Staff clicks "Reject"
- Rejection reason field (optional)
- Staff enters reason
- Staff confirms
- Review rejected
- Review removed from queue
- Reviewer notified (if implemented)
- If inappropriate:
-
Bulk Actions
- Staff can select multiple reviews
- Staff clicks "Approve Selected" or "Reject Selected"
- Bulk operation processes
- Results shown
- Efficiency: Quick approve/reject actions
- Guidelines: Review guidelines visible
- History: Track moderation actions
- Notifications: Notify reviewers of decisions
User Persona: Customer checking review history
Goal: View and manage submitted reviews
Context: Customer in profile section
-
Accessing Reviews
- Customer navigates to profile
- Customer clicks "My Reviews" link
- Redirected to review history page
-
Review History Display
- Page shows:
- List of customer's reviews
- Each review shows:
- Product name and image
- Rating given
- Review title
- Review status (Published, Pending, Rejected)
- Submission date
- Actions (View, Edit, Delete)
- Filter options:
- By status
- By product
- By date
- Page shows:
-
Viewing Review
- Customer clicks "View" on review
- Full review displayed
- Link to product page
- Edit and Delete options
-
Editing Review
- Customer clicks "Edit"
- Edit form appears
- Customer makes changes
- Customer saves
- Review goes to moderation (if required)
-
Deleting Review
- Customer clicks "Delete"
- Confirmation: "Are you sure you want to delete this review?"
- Customer confirms
- Review deleted
- Success message
- Easy Access: Quick link from profile
- Status Clarity: Clear status indicators
- Edit Window: Time limit for editing (if implemented)
User Persona: Admin analyzing review data
Goal: Understand review trends and product feedback
Context: Admin in reports section
-
Analytics Access
- Admin navigates to Reports & Analytics
- Admin clicks "Review Analytics"
- Review analytics page loads
-
Analytics Display
- Page shows:
- Total reviews count
- Average rating across all products
- Reviews by rating distribution
- Reviews over time (chart)
- Most reviewed products
- Products with highest ratings
- Products with lowest ratings
- Review moderation statistics
- Page shows:
-
Filtering Analytics
- Admin can filter by:
- Date range
- Product category
- Product
- Admin applies filters
- Analytics update
- Admin can filter by:
-
Exporting Data
- Admin clicks "Export to CSV"
- Review data exported
- CSV file downloads
- Visualization: Charts and graphs
- Insights: Key metrics highlighted
- Export: Easy data export
Flow:
- Customer attempts to submit second review for same product
- System checks for existing review
- If review exists:
- Error message: "You have already reviewed this product"
- Link to edit existing review
- Customer can edit instead
Flow:
- Customer submits review
- Review goes to moderation
- Staff rejects review
- Customer notified (if implemented)
- Customer sees rejection in "My Reviews"
- Rejection reason shown (if provided)
- Customer can contact support (if needed)
- Touch-friendly star rating
- Large text areas
- Easy image upload
- Simplified form layout
- Card-based layout
- Swipeable review images
- Collapsible review text
- Easy helpful voting
- Lazy load reviews
- Pagination for many reviews
- Cached average ratings
- Optimized queries
- Optimistic UI updates
- Background submission
- Error rollback if needed
End of Reviews & Ratings UX Scenarios
Document Version: 1.0.0 Status: Published Audience: Developers, Stakeholders Maintained By: IoT Bay Documentation Team