Closed ohodovaniuk1 closed 3 weeks ago
This user story outlines the implementation of real-time data visualization on the dashboard for temperature, humidity, and soil moisture. Key features include:
Data Display: Real-time data shown in both table and graph formats. Automatic Refresh: Dashboard updates every 10 seconds. Responsive Design: Works on both desktop and mobile devices. Error Handling: Displays a message if data retrieval fails and pauses refresh. Testing Scenarios: Normal Flow: User logs in, data is retrieved, and displayed correctly. Error Scenarios: S-1: If data can't be retrieved, an error message is shown. S-2: Refresh rate adjusts if there are delays.
Real-Time Data Visualization on the Dashboard with graphs
User Story
As a user, I want to view real-time sensor data (temperature, humidity, and moisture) on my dashboard so that I can monitor environmental conditions instantly.
Description
This use case involves implementing real-time data visualization on the user dashboard, where the latest sensor data (temperature, humidity, and soil moisture) is displayed. The dashboard should refresh automatically to show updated data at regular intervals (e.g., every 10 seconds). The data will be displayed in both table and graph formats for ease of understanding.
Acceptance Criteria
Testing
Normal Flow of Events
The user logs into their account and navigates to the dashboard. The system retrieves real-time sensor data from the backend API. The dashboard displays the temperature, humidity, and moisture levels in table and graph formats. The data refreshes every X seconds to show the latest readings.
Alternate/Exceptional Flows:
S-1: Failure to retrieve real-time data
The system fails to retrieve data due to backend or network issues. The system displays an error message: "Unable to retrieve live data. Please try again later." The dashboard stops automatic refresh until the data is available again.
S-2: Slow or delayed data refresh
Data refresh is delayed due to high server load or large datasets. The system adjusts the refresh rate dynamically to maintain performance.