{"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-73128380 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-a0d91a25 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-c042bc37 wp-block-group-is-layout-flex\" style=\"min-height:100%\">\n<p class=\"has-heading-font-family has-xx-large-font-size wp-block-paragraph\" 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-1292ae2f wp-block-group-is-layout-constrained\">\n<p class=\"wp-container-content-0733e5d0 wp-block-paragraph\">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 class=\"wp-block-paragraph\"><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-532bc383 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 wp-block-paragraph\" 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-a440227c 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 class=\"wp-block-paragraph\">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-bff8fb7e 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-694ead9e 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-c6aab7f7 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 wp-block-paragraph\"><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 class=\"wp-block-paragraph\"><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-c6aab7f7 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 class=\"wp-block-paragraph\"><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 class=\"wp-block-paragraph\"><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-3ea92faf 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-5a989b3a 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-b2212c43 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 wp-block-paragraph\">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-fa1d03ce 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-ef7f9200 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 class=\"wp-block-paragraph\">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 class=\"wp-block-paragraph\">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-0ea653cb 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 wp-block-paragraph\" 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 class=\"wp-block-paragraph\">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-fa1d03ce 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-ef7f9200 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 class=\"wp-block-paragraph\">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 wp-block-paragraph\" 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-73128380 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-32aa975b 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-e4c6512d 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 wp-block-paragraph\">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 class=\"wp-block-paragraph\"><\/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}]}}