{"id":380,"date":"2024-11-12T07:29:49","date_gmt":"2024-11-12T07:29:49","guid":{"rendered":"https:\/\/farislabs.com\/?page_id=380"},"modified":"2024-11-16T04:13:30","modified_gmt":"2024-11-16T04:13:30","slug":"in-home-smart-thermostats","status":"publish","type":"page","link":"https:\/\/farislabs.com\/index.php\/in-home-smart-thermostats\/","title":{"rendered":"Smart Thermostat System with Configuration Management"},"content":{"rendered":"\n<div class=\"wp-block-group alignfull has-custom-light-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-669513ed wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-1da03c2a wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-stretch is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<div class=\"wp-block-group is-vertical is-content-justification-stretch is-layout-flex wp-container-core-group-is-layout-444d5ee8 wp-block-group-is-layout-flex\" style=\"min-height:100%\">\n<p class=\"has-heading-font-family has-xx-large-font-size\" style=\"line-height:1.2\">Smart Thermostat<\/p>\n\n\n\n<div class=\"wp-block-group has-global-padding is-content-justification-left is-layout-constrained wp-container-core-group-is-layout-9fe8ed88 wp-block-group-is-layout-constrained\">\n<p class=\"wp-container-content-0733e5d0\">The &#8220;Smart Thermostat System with Configuration Management&#8221; project was developed as part of a Software Engineering course. The primary goal was to design a user-friendly smart thermostat system that enhances the overall user experience while providing efficient temperature control and scheduling capabilities.<\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:50%\">\n<figure class=\"wp-block-image size-full has-custom-border is-style-default wp-duotone-unset-1\"><img loading=\"lazy\" decoding=\"async\" width=\"623\" height=\"623\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-8-1.png\" alt=\"\" class=\"has-border-color wp-image-382\" style=\"border-color:#ffffff00\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-8-1.png 623w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-8-1-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-8-1-150x150.png 150w\" sizes=\"auto, (max-width: 623px) 100vw, 623px\" \/><\/figure>\n\n\n\n<p><strong>Set Time<\/strong>: Options for scheduling temperature changes.<\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-cover alignfull has-parallax has-custom-content-position is-position-top-left\" style=\"margin-top:0;padding-top:1vw;padding-right:17vw;padding-bottom:1vw;padding-left:17vw;min-height:21.1vh;aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-custom-heading-background-color has-background-dim-90 has-background-dim\"><\/span><div class=\"wp-block-cover__image-background wp-image-382 has-parallax\" style=\"background-position:50% 50%;background-image:url(https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-8-1.png)\"><\/div><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<div class=\"wp-block-group wp-container-content-9cfa9a5a is-vertical is-nowrap is-layout-flex wp-container-core-group-is-layout-2890af74 wp-block-group-is-layout-flex\">\n<p class=\"has-text-align-left has-base-2-color has-text-color has-source-serif-pro-font-family\" style=\"font-size:clamp(72.137px, 4.509rem + ((1vw - 3.2px) * 9.152), 160px);font-style:italic;font-weight:900;letter-spacing:-4px;line-height:0.8;text-transform:none\"><strong>UI Mockups<\/strong><\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-group is-horizontal is-content-justification-center is-nowrap is-layout-flex wp-container-core-group-is-layout-2256e7f1 wp-block-group-is-layout-flex\">\n<figure class=\"wp-block-image size-full is-resized has-custom-border is-style-rounded is-style-rounded--2\" style=\"margin-top:0;margin-right:0;margin-bottom:0;margin-left:0\"><img loading=\"lazy\" decoding=\"async\" width=\"512\" height=\"512\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/figma.png\" alt=\"\" class=\"wp-image-605\" style=\"border-radius:0px;aspect-ratio:1.3333333333333333;object-fit:contain;width:137px;height:auto\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/figma.png 512w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/figma-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/figma-150x150.png 150w\" sizes=\"auto, (max-width: 512px) 100vw, 512px\" \/><\/figure>\n\n\n\n<p>The user interface for the Smart Thermostat System was meticulously designed using Figma. This powerful design tool allowed me to create intuitive and user-friendly mockups, ensuring a seamless and efficient user experience. The use of Figma facilitated collaboration, prototyping, and iterative improvements based on user feedback.<\/p>\n<\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-container-core-group-is-layout-149bbe71 wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--30);padding-right:var(--wp--preset--spacing--40);padding-bottom:var(--wp--preset--spacing--30);padding-left:var(--wp--preset--spacing--40)\">\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-ff4b9c61 wp-block-columns-is-layout-flex\" style=\"margin-top:0;margin-bottom:0\">\n<div class=\"wp-block-column is-layout-flow wp-container-core-column-is-layout-8a368f38 wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full is-resized has-custom-border is-style-rounded is-style-rounded--3\"><img loading=\"lazy\" decoding=\"async\" width=\"623\" height=\"623\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-3-1.png\" alt=\"Main Screen: Displays the current and set temperatures.\" class=\"wp-image-397\" style=\"border-radius:0px;aspect-ratio:1.3333333333333333;object-fit:contain;width:599px;height:auto\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-3-1.png 623w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-3-1-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-3-1-150x150.png 150w\" sizes=\"auto, (max-width: 623px) 100vw, 623px\" \/><\/figure>\n\n\n\n<p class=\"has-text-align-left\"><strong>Main Screen<\/strong>: Displays the current and set temperatures.<\/p>\n\n\n\n<div style=\"height:var(--wp--preset--spacing--50)\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full is-resized is-style-rounded is-style-rounded--4\"><img loading=\"lazy\" decoding=\"async\" width=\"623\" height=\"623\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-6.png\" alt=\"\" class=\"wp-image-399\" style=\"aspect-ratio:0.75;object-fit:contain;width:598px;height:auto\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-6.png 623w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-6-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-6-150x150.png 150w\" sizes=\"auto, (max-width: 623px) 100vw, 623px\" \/><\/figure>\n\n\n\n<p><strong>Enter PIN to Change Settings<\/strong>: Security feature for accessing settings.<\/p>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-layout-flow wp-container-core-column-is-layout-8a368f38 wp-block-column-is-layout-flow\">\n<div style=\"height:var(--wp--preset--spacing--50)\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full is-style-rounded is-style-rounded--5\"><img loading=\"lazy\" decoding=\"async\" width=\"623\" height=\"623\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-5.png\" alt=\"\" class=\"wp-image-398\" style=\"aspect-ratio:3\/4;object-fit:contain\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-5.png 623w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-5-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-5-150x150.png 150w\" sizes=\"auto, (max-width: 623px) 100vw, 623px\" \/><\/figure>\n\n\n\n<p><strong>Adjust Temperature<\/strong>: Interface for setting desired temperatures.<\/p>\n\n\n\n<div style=\"height:var(--wp--preset--spacing--50)\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-full is-resized is-style-rounded is-style-rounded--6\"><img loading=\"lazy\" decoding=\"async\" width=\"623\" height=\"623\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-7.png\" alt=\"\" class=\"wp-image-400\" style=\"object-fit:cover;width:749px;height:auto\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-7.png 623w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-7-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Frame-7-150x150.png 150w\" sizes=\"auto, (max-width: 623px) 100vw, 623px\" \/><\/figure>\n\n\n\n<p><strong>Set Time and Schedule<\/strong>: Options for scheduling temperature changes.<br><\/p>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-custom-light-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-edc2874e wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--50)\">\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-06670bbc wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-stretch is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<div class=\"wp-block-group is-vertical is-content-justification-left is-layout-flex wp-container-core-group-is-layout-8c3a5bbe wp-block-group-is-layout-flex\" style=\"min-height:100%\">\n<h2 class=\"wp-block-heading has-text-align-left has-xx-large-font-size\" style=\"margin-right:0;margin-left:calc( var(--wp--preset--spacing--20) * -1);line-height:1;writing-mode:horizontal-tb\"><strong>UML CASE DIAGRAM<\/strong><\/h2>\n\n\n\n<p class=\"wp-container-content-9cfa9a5a\">This design shows how a homeowner can use the thermostat. The thermostat can be controlled directly or via a phone app connected to a cloud network. It records temperatures for energy analysis, helping homeowners track usage. Changes to settings require PIN verification. The system settings backed up to the cloud and controlled the furnace, air conditioning, and fan.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\">\n<figure class=\"wp-block-image size-full is-style-rounded wp-duotone-unset-8 is-style-rounded--7\" style=\"margin-top:0;margin-right:0;margin-bottom:0;margin-left:0\"><img loading=\"lazy\" decoding=\"async\" width=\"970\" height=\"970\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/uml-case-diagram-01-1.png\" alt=\"\" class=\"wp-image-599\" style=\"aspect-ratio:3\/4;object-fit:contain\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/uml-case-diagram-01-1.png 970w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/uml-case-diagram-01-1-300x300.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/uml-case-diagram-01-1-150x150.png 150w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/uml-case-diagram-01-1-768x768.png 768w\" sizes=\"auto, (max-width: 970px) 100vw, 970px\" \/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group alignfull has-global-padding is-content-justification-center is-layout-constrained wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0\">\n<div style=\"height:var(--wp--preset--spacing--20)\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group alignwide is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-5c8fb865 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top has-global-padding is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-95996b15 wp-block-column-is-layout-constrained\">\n<h2 class=\"wp-block-heading has-xx-large-font-size\">UML Sequence Diagram<\/h2>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p>A UML sequence diagram, also known as an event diagram, visualizes the flow of messages between classes. These diagrams are particularly effective for modelling run-time scenarios, helping developers validate their designs and identify interactions between classes that might otherwise be overlooked.<\/p>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1324\" height=\"883\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/UML-sequence-diagram-01-2.png\" alt=\"\" class=\"wp-image-626\" style=\"aspect-ratio:16\/9;object-fit:contain\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/UML-sequence-diagram-01-2.png 1324w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/UML-sequence-diagram-01-2-300x200.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/UML-sequence-diagram-01-2-1024x683.png 1024w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/UML-sequence-diagram-01-2-768x512.png 768w\" sizes=\"auto, (max-width: 1324px) 100vw, 1324px\" \/><\/figure>\n\n\n\n<p>In this sequence diagram, I illustrated the following:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Turn-On Response<\/strong>: The thermostat sends a turn-on response and requests PIN verification from the homeowner.<\/li>\n\n\n\n<li><strong>PIN Verification<\/strong>: If the PIN is valid, the thermostat returns a &#8220;PIN OK&#8221; response; if not, it prompts the homeowner to try again.<\/li>\n\n\n\n<li><strong>Heat Control<\/strong>: The thermostat can turn the heat on, interacting with the furnace. The furnace then updates the cloud settings to indicate it is on. If the furnace is off, the cloud can send a message to turn it on, and the furnace will notify the thermostat, which then informs the homeowner.<\/li>\n\n\n\n<li><strong>AC Control<\/strong>: The same process applies to the air conditioning.<\/li>\n\n\n\n<li><strong>System Settings<\/strong>: Changes to system settings can be made through the thermostat, which updates the cloud settings, and vice versa.<\/li>\n<\/ul>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-cover alignfull is-light has-border-color has-custom-light-border-color\" style=\"padding-top:0;padding-right:var(--wp--preset--spacing--60);padding-bottom:0;padding-left:var(--wp--preset--spacing--60);aspect-ratio:unset;\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-custom-light-background-color has-background-dim-100 has-background-dim\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-container-core-cover-is-layout-3b6b8c66 wp-block-cover-is-layout-flow\">\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile is-vertically-aligned-center\" style=\"grid-template-columns:59% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"700\" height=\"500\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Deployment-Thermostat-System-01.png\" alt=\"\" class=\"wp-image-600 size-full\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Deployment-Thermostat-System-01.png 700w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Deployment-Thermostat-System-01-300x214.png 300w\" sizes=\"auto, (max-width: 700px) 100vw, 700px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h2 class=\"wp-block-heading has-custom-heading-color has-text-color has-xx-large-font-size\"><strong>UML Deployment Diagram<\/strong><\/h2>\n\n\n\n<p class=\"has-text-color\" style=\"color:#000000;font-size:clamp(15.747px, 0.984rem + ((1vw - 3.2px) * 0.86), 24px);\">UML deployment diagrams help understand the relationships between hardware (nodes), software (components), and software products (artifacts). They show dependencies, interfaces, and nested nodes.<\/p>\n\n\n\n<p>This diagram illustrates:<\/p>\n\n\n\n<ul style=\"color:#000000;font-size:clamp(15.747px, 0.984rem + ((1vw - 3.2px) * 0.86), 24px);\" class=\"wp-block-list has-text-color\">\n<li>Devices connected to the thermostat.<\/li>\n\n\n\n<li>Internal components of the thermostat.<\/li>\n\n\n\n<li>Connections to an external server.<\/li>\n\n\n\n<li>Deployment of the system with an executable file.<\/li>\n<\/ul>\n<\/div><\/div>\n<\/div><\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<div class=\"wp-block-group alignfull has-global-padding is-content-justification-center is-layout-constrained wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0\">\n<div style=\"height:var(--wp--preset--spacing--20)\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-group alignwide is-layout-flow wp-block-group-is-layout-flow\">\n<div class=\"wp-block-columns alignwide are-vertically-aligned-top is-layout-flex wp-container-core-columns-is-layout-5c8fb865 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-top has-global-padding is-content-justification-left is-layout-constrained wp-container-core-column-is-layout-95996b15 wp-block-column-is-layout-constrained\">\n<h2 class=\"wp-block-heading has-xx-large-font-size\">DATA FLOW CHART<\/h2>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<p>This diagram shows how data moves through the smart thermostat system, including interactions between the user, the thermostat interface, and external devices.<\/p>\n<\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"1145\" height=\"510\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/dataflowdiagram.png\" alt=\"\" class=\"wp-image-384\" style=\"aspect-ratio:16\/9;object-fit:contain\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/dataflowdiagram.png 1145w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/dataflowdiagram-300x134.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/dataflowdiagram-1024x456.png 1024w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/dataflowdiagram-768x342.png 768w\" sizes=\"auto, (max-width: 1145px) 100vw, 1145px\" \/><\/figure>\n<\/div>\n<\/div>\n\n\n\n<div style=\"aspect-ratio:unset;\" class=\"wp-block-cover alignfull is-light has-border-color has-custom-light-border-color\"><span aria-hidden=\"true\" class=\"wp-block-cover__background has-background-dim-100 has-background-dim\" style=\"background-color:#ffffff\"><\/span><div class=\"wp-block-cover__inner-container is-layout-flow wp-block-cover-is-layout-flow\">\n<div class=\"wp-block-media-text alignwide is-stacked-on-mobile is-vertically-aligned-center\" style=\"grid-template-columns:59% auto\"><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"1316\" height=\"610\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/State-Chart.png\" alt=\"\" class=\"wp-image-385 size-full\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/State-Chart.png 1316w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/State-Chart-300x139.png 300w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/State-Chart-1024x475.png 1024w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/State-Chart-768x356.png 768w\" sizes=\"auto, (max-width: 1316px) 100vw, 1316px\" \/><\/figure><div class=\"wp-block-media-text__content\">\n<h2 class=\"wp-block-heading has-custom-heading-color has-text-color has-xx-large-font-size\"><strong>State Chart<\/strong><\/h2>\n\n\n\n<p class=\"has-text-color\" style=\"color:#000000;font-size:clamp(15.747px, 0.984rem + ((1vw - 3.2px) * 0.86), 24px);\">The state chart outlines the various states the thermostat can be in (e.g., idle, heating, cooling) and the transitions triggered by user actions or system conditions.<\/p>\n<\/div><\/div>\n<\/div><\/div>\n\n\n\n<div class=\"wp-block-group alignfull has-custom-light-background-color has-background has-global-padding is-layout-constrained wp-container-core-group-is-layout-669513ed wp-block-group-is-layout-constrained\" style=\"margin-top:0;margin-bottom:0;padding-top:var(--wp--preset--spacing--50);padding-right:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50);padding-left:var(--wp--preset--spacing--50)\">\n<div class=\"wp-block-columns alignwide is-layout-flex wp-container-core-columns-is-layout-d0846407 wp-block-columns-is-layout-flex\">\n<div class=\"wp-block-column is-vertically-aligned-stretch is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:40%\">\n<div class=\"wp-block-group is-vertical is-content-justification-left is-layout-flex wp-container-core-group-is-layout-9f125c94 wp-block-group-is-layout-flex\" style=\"min-height:30%\">\n<h2 class=\"wp-block-heading has-text-align-left has-xx-large-font-size\" style=\"margin-right:0;margin-left:calc( var(--wp--preset--spacing--20) * -1);line-height:1;writing-mode:horizontal-tb\"><strong>Activity Diagram<\/strong><\/h2>\n\n\n\n<p class=\"wp-container-content-0733e5d0\">This diagram maps out the steps a user takes to interact with the thermostat, from accessing the main screen to adjusting settings and saving preferences.<\/p>\n<\/div>\n<\/div>\n\n\n\n<div class=\"wp-block-column is-vertically-aligned-top is-layout-flow wp-block-column-is-layout-flow\" style=\"flex-basis:60%\">\n<figure class=\"wp-block-image size-full is-style-rounded wp-duotone-unset-10 is-style-rounded--9\"><img loading=\"lazy\" decoding=\"async\" width=\"499\" height=\"814\" src=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Activity-Diagram-3.png\" alt=\"\" class=\"wp-image-396\" style=\"aspect-ratio:3\/4;object-fit:contain\" srcset=\"https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Activity-Diagram-3.png 499w, https:\/\/farislabs.com\/wp-content\/uploads\/2024\/11\/Activity-Diagram-3-184x300.png 184w\" sizes=\"auto, (max-width: 499px) 100vw, 499px\" \/><\/figure>\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n\n<p><\/p>\n\n\n\n<div class=\"wp-block-group has-global-padding is-layout-constrained wp-block-group-is-layout-constrained\">\n<h3 class=\"wp-block-heading has-xx-large-font-size\"><strong>Results<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Testing Outcomes<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Usability Testing<\/strong>: Gathered user feedback to improve ease of use and overall experience.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>User Feedback<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Positive Aspects<\/strong>: Users appreciated the intuitive interface and the ability to easily adjust settings.<\/li>\n\n\n\n<li><strong>Areas for Improvement<\/strong>: Some users found the PIN entry for changing settings cumbersome, suggesting a more streamlined security feature.<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading has-xx-large-font-size\"><strong>Reflection<\/strong><\/h3>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Learnings<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>System Design<\/strong>: Gained a deeper understanding of designing complex systems with multiple interacting components.<\/li>\n\n\n\n<li><strong>User Experience<\/strong>: Learned the importance of user feedback in refining the interface and functionality.<\/li>\n\n\n\n<li><strong>Testing<\/strong>: Recognized the challenges of comprehensive testing, especially in simulating real-world conditions and user behaviour.<\/li>\n<\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><strong>Preparation for Future Challenges<\/strong><\/h4>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Problem-Solving Skills<\/strong>: Enhanced ability to identify and address potential issues in system design and user experience.<\/li>\n\n\n\n<li><strong>Adaptability<\/strong>: Developed skills to adapt designs based on user feedback and testing outcomes.<\/li>\n\n\n\n<li><strong>Collaboration<\/strong>: Improved collaboration skills by working with team members and incorporating diverse perspectives into the project.<\/li>\n<\/ul>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>Smart Thermostat The &#8220;Smart Thermostat System with Configuration Management&#8221; project was developed as part of a Software Engineering course. The primary goal was to design a user-friendly smart thermostat system that enhances the overall user experience while providing efficient temperature control and scheduling capabilities. Set Time: Options for scheduling temperature changes. Main Screen: Displays the [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":0,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"","meta":{"footnotes":""},"class_list":["post-380","page","type-page","status-publish","hentry"],"_links":{"self":[{"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/pages\/380","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/comments?post=380"}],"version-history":[{"count":28,"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/pages\/380\/revisions"}],"predecessor-version":[{"id":627,"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/pages\/380\/revisions\/627"}],"wp:attachment":[{"href":"https:\/\/farislabs.com\/index.php\/wp-json\/wp\/v2\/media?parent=380"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}