Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| report:dvp [2026/06/10 10:24] – [Functional Testing Results] team3 | report:dvp [2026/06/13 19:30] (current) – [Tests & Results] team3 | ||
|---|---|---|---|
| Line 16: | Line 16: | ||
| Here the team already had the idea of keeping the components on the bottom of the bottle, but a more square bottle was kept in mind with a handle that would be comfortable for the user's hand. | Here the team already had the idea of keeping the components on the bottom of the bottle, but a more square bottle was kept in mind with a handle that would be comfortable for the user's hand. | ||
| - | The second ideation of TRAQUA already has a more " | + | The second ideation of TRAQUA already has a more " |
| <WRAP centeralign> | <WRAP centeralign> | ||
| Line 39: | Line 39: | ||
| The team also had a few changes in their flyer before coming up with the definite solution. Below we will explore the different flyers the TRAQUA design team came up with. | The team also had a few changes in their flyer before coming up with the definite solution. Below we will explore the different flyers the TRAQUA design team came up with. | ||
| - | The team's first flyer had no QR code; the text idea was already there, but the text just lies in boxes that feel out of place alongside the TRAQUA water bottle (Figure | + | The team's first flyer had no QR code; the text idea was already there, but the text just lies in boxes that feel out of place alongside the TRAQUA water bottle (Figures |
| Line 48: | Line 48: | ||
| </ | </ | ||
| </ | </ | ||
| + | |||
| <WRAP centeralign> | <WRAP centeralign> | ||
| - | <figure fig:design1> | + | <figure fig:design2> |
| {{: | {{: | ||
| - | < | + | < |
| </ | </ | ||
| </ | </ | ||
| Line 57: | Line 58: | ||
| <WRAP centeralign> | <WRAP centeralign> | ||
| - | <figure fig:design1> | + | <figure fig:design3> |
| {{: | {{: | ||
| - | < | + | < |
| </ | </ | ||
| </ | </ | ||
| Line 232: | Line 233: | ||
| </ | </ | ||
| </ | </ | ||
| + | |||
| + | The final design is shown in Figures {{ref> | ||
| <WRAP centeralign> | <WRAP centeralign> | ||
| - | <figure fig:model8> | + | <figure fig:finaldesign> |
| - | {{ :report:StressSim.png?600 |}} | + | {{:report:image_traqua.png?400|}} |
| - | < | + | < |
| </ | </ | ||
| </ | </ | ||
| <WRAP centeralign> | <WRAP centeralign> | ||
| - | <figure fig:model8> | + | <figure fig:finalinside> |
| - | {{ :report:assembly-drop_test_1-image-1.jpg?600 |}} | + | {{:report:bottle_updated.png?400|}} |
| - | < | + | < |
| </ | </ | ||
| </ | </ | ||
| - | Finite Element Analysis (FEA) was carried out in SolidWorks to evaluate the bottle' | ||
| - | Next, a 1.5-meter drop test was simulated. In this dynamic scenario, the maximum stress peaked at 133.7 MPa, with the impact forces heavily concentrated along the bottom edge of the bottle. To properly protect the internal electronics, | + | Finite Element Analysis (FEA) was carried out in SolidWorks to evaluate |
| + | Next, a 1.5-meter drop test was simulated (Figure {{ref> | ||
| + | <WRAP centeralign> | ||
| + | <figure fig: | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | <WRAP centeralign> | ||
| + | <figure fig: | ||
| + | {{ : | ||
| + | < | ||
| + | </ | ||
| + | </ | ||
| === Smart System === | === Smart System === | ||
| Line 479: | Line 495: | ||
| <figure fig: | <figure fig: | ||
| {{: | {{: | ||
| - | < | + | < |
| </ | </ | ||
| </ | </ | ||
| Line 587: | Line 603: | ||
| - | < | + | < |
| + | <WRAP third column> | ||
| <figure fig: | <figure fig: | ||
| - | {{: | + | {{: |
| < | < | ||
| </ | </ | ||
| Line 595: | Line 612: | ||
| - | Smart device firmware — main loop (loop) | + | < |
| - | + | ||
| - | + | ||
| - | < | + | |
| <figure fig: | <figure fig: | ||
| - | {{: | + | {{: |
| < | < | ||
| </ | </ | ||
| </ | </ | ||
| - | Mobile application — BLE connection and data flow | ||
| - | + | < | |
| - | < | + | |
| <figure fig: | <figure fig: | ||
| - | {{: | + | {{: |
| < | < | ||
| </ | </ | ||
| </ | </ | ||
| + | </ | ||
| + | |||
| + | |||
| === Tests & Results === | === Tests & Results === | ||
| + | |||
| + | This chapter summarizes the testing strategy, the executed test cases, and their outcomes. The full detail lives in the TRAQUA Test Plan and Test Report; what follows is a condensed overview. | ||
| + | |||
| + | == Test Management Strategy == | ||
| + | |||
| + | Testing for TRAQUA followed a structured, iterative approach aligned with the development sprints and the operational requirements of the smart bottle. Tests were planned, documented, executed, and evaluated at both the component and system levels, and synchronized with project milestones so they stayed current as functionality and architecture evolved. | ||
| + | |||
| + | The following Table {{ref> | ||
| + | |||
| + | <WRAP centeralign> | ||
| + | <table tab: | ||
| + | < | ||
| + | <WRAP box center> | ||
| + | | Team Member | Role | Responsibility | | ||
| + | | Bernardo Alves | Test lead | Oversees the testing process, ensures milestones are met, coordinates review and approval | | ||
| + | | Bernardo Alves | Backend test coordinator | Designs and executes tests | | ||
| + | | Maria Włodarczyk | Documentation coordinator | Manages test plan/report consistency, | ||
| + | | Maximilian Salmi | Data and component tester | Prepares and maintains tests, ensures components meet the standard | | ||
| + | | Guillem Rolduá | Stress tester | Stress tests each component to determine its limits | | ||
| + | | Rieke Platthaus | Frontend test supporter | Validates interface feedback | | ||
| + | | Inès Margand | Frontend test supporter | Validates interface feedback | | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | == Testing Approach and Criteria == | ||
| + | |||
| + | The strategy centers on **state-transition testing**, verifying the system' | ||
| + | |||
| + | * **Entry criteria:** use-case documentation approved, test environment configured to mirror production (latest code in the main branch, React Native 0.80, Expo), valid/ | ||
| + | * **Exit criteria:** all relevant test cases executed successfully, | ||
| + | * **Suspension criteria:** scope change, critical defects, the base product failing to run on a testing device, or unavailable external dependencies/ | ||
| + | |||
| + | == Testing Resources == | ||
| + | |||
| + | * **Hardware: | ||
| + | * **Software: | ||
| + | * **Tooling: | ||
| == Hardware tests == | == Hardware tests == | ||
| Line 621: | Line 674: | ||
| == Software tests == | == Software tests == | ||
| - | Our software testing framework directly addresses functionality, | + | |
| - | Software tests comprise: | + | Our software testing framework directly addresses functionality, |
| - | (i) functional tests regarding the identified use cases / user stories; | + | |
| - | (ii) performance tests regarding exchanged data volume, load and runtime (these tests are usually repeated 10 times to determine the average and standard deviation results); | + | **Functional Testing:** We validate our identified use cases and user stories by verifying the system' |
| - | (iii) usability tests according to the [[https://www.usability.gov/how-to-and-tools/methods/system-usability-scale.html|System Usability Scale]]. | + | |
| - | | + | **Performance Testing:** To evaluate speed, responsiveness, |
| + | |||
| + | **Usability Testing:** To ensure the system is intuitive and accessible, we conduct usability testing according to the System Usability Scale (SUS). This allows our frontend team to validate interface feedback, evaluate how easily a user can understand their water safety status (Safe, Warning, Unsafe, Unknown), and confirm that the mobile application provides clear, responsive alerts. | ||
| + | |||
| + | Software tests comprise: | ||
| + | | ||
| + | | ||
| + | | ||
| + | |||
| + | == Test Cases == | ||
| + | |||
| + | The following Table {{ref> | ||
| + | |||
| + | <WRAP centeralign> | ||
| + | <table tab:testcases> | ||
| + | < | ||
| + | <WRAP box center> | ||
| + | | ID | Input Condition | Expected Action | Expected Result | | ||
| + | | TC01 | Connect to the ESP32 | Log result | Connection successful | | ||
| + | | TC02 | Wrong ID in connection | Log result | Connection not successful | | ||
| + | | TC03 | Get TDS value | Log result | TDS value within 50–200 range | | ||
| + | | TC04 | Get temperature value | Log result | Temperature value read in the app | | ||
| + | | TC05 | Gravity sensor | Log result | Reads whether the bottle is tilted | | ||
| + | | TC06 | LED light changes color | Log result | LED shows either green or red | | ||
| + | | TC07 | Pressure sensor estimates water | Log result | Reads total water in the bottle | | ||
| + | | TC08 | UVC light runs | Clean water | Water is cleaned | | ||
| + | | TC09 | Reed switch | UVC to turn on/off | UVC must not run while the switch is connected | | ||
| + | </WRAP> | ||
| + | </table> | ||
| + | </WRAP> | ||
| + | |||
| + | == Results Summary == | ||
| + | |||
| + | A total of 9 test cases were executed, all of which passed. It must be noted that some aspects of the code could not be tested directly on hardware and were instead validated through simulation. | ||
| + | |||
| + | The following Table {{ref> | ||
| + | |||
| + | <WRAP centeralign> | ||
| + | <table tab: | ||
| + | < | ||
| + | <WRAP box center> | ||
| + | | Result | Number | Percentage | | ||
| + | | **Passed** | 9 | 100% | | ||
| + | | **Failed** | 0 | 0% | | ||
| + | | **Total** | 9 | 100% | | ||
| + | </ | ||
| + | </ | ||
| + | </ | ||
| + | |||
| + | All nine test cases (TC01–TC09) returned **Passed** with no recorded defects. | ||
| ==== Summary ==== | ==== Summary ==== | ||
| - | //Provide here the conclusions | + | This chapter followed |
| + | * UV-C sterilisation | ||
| + | * Temperature monitoring | ||
| + | * Water-Quality sensing | ||
| + | * Hydration Tracking | ||
| + | * Mobile app connection over bluetooth | ||
| + | |||
| + | The design team chose the materials created a three-part structure and developed the look. They also made 3D models. Used computer analysis | ||
| + | |||
| + | |||
| + | On the side the team specified the hardware, including an ESP32 chip that controls the sensors UV-C module and power. They also worked on the software creating an app with React Native, a web shop with Svelte and a backend with FastAPI. The team made sure the Bluetooth communication is secure, with pairing, encryption and input checks. They also came up with a eco-friendly packaging solution using recycled airbags. | ||
| + | |||
| + | oving from design to prototype introduced several practical deviations: a ready-made flask replaced the custom body, the battery system shifted from a 3S to a 4S configuration due to the components received, charging was omitted, and an OLED display was added. Functional testing validated almost every subsystem — sensors, power delivery, UV-C control, and ESP32 communication all passed — with the charger being the single failure, caused by the battery-configuration mismatch. | ||
| + | |||
| + | Overall, the prototype meets its primary functional requirements and demonstrates the viability of the TRAQUA concept. The next chapter | ||