{"id":6330,"date":"2026-11-03T16:10:38","date_gmt":"2026-11-03T07:10:38","guid":{"rendered":"https:\/\/smilesoftware.org\/?p=6330"},"modified":"2026-11-03T16:48:41","modified_gmt":"2026-11-03T07:48:41","slug":"%e7%b5%a6%e6%b9%af%e5%99%a8%e3%81%a8%e9%80%a3%e6%90%ba%e3%81%99%e3%82%8bios%e3%82%a2%e3%83%97%e3%83%aa%e3%81%ae%e9%96%8b%e7%99%ba%e4%ba%8b%e4%be%8b","status":"publish","type":"post","link":"https:\/\/smilesoftware.org\/en\/ios-app-development-water-heater-integration\/","title":{"rendered":"Case Study: Developing an iOS App Connected to a Water Heater"},"content":{"rendered":"<div class=\"wp-block-group smile-post-content\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><header class=\"smile-article-header\"><div><span class=\"smile-category-pill\">Project<\/span><span class=\"smile-date\">2026.10.27<\/span><\/div><h1 class=\"smile-article-title\">Case Study: Developing an iOS App Connected to a Water Heater<\/h1><p class=\"smile-excerpt\"><\/p><\/header>\n\n\n<p class=\"ticss-6be6cfe8 has-text-color has-link-color wp-elements-334320a70d39ed1f880b6b35248b3cdd wp-block-paragraph\" style=\"color:#475569;font-size:17px\">We developed an iOS app for a customer in Japan that connects to a water heater. Users can schedule water heating and bathtub temperature maintenance from their smartphones and view monthly electricity, water, and gas usage. The app brings equipment controls and usage information together in one place.<\/p>\n\n\n\n<ul style=\"color:#475569\" class=\"wp-block-list has-text-color has-link-color wp-elements-4cfac0df01fb6cb4f419d7e2ba3e481c\">\n<li style=\"font-size:17px\"><strong>Scope of work:<\/strong> Requirements analysis, screen layout design, high-level and detailed design, implementation, design and code reviews, planning and execution of unit and integration tests, and project management<\/li>\n\n\n\n<li style=\"font-size:17px\"><strong>Team Size:<\/strong> Our team member served as deputy lead.<\/li>\n\n\n\n<li style=\"font-size:17px\"><strong>Technologies Used:<\/strong> Swift (iOS) and GRDB (a SQLite library for Swift)<\/li>\n<\/ul>\n\n\n<nav class=\"smile-toc\" aria-label=\"Table of Contents\"><h2 class=\"smile-toc__title\">Table of Contents<\/h2><div class=\"smile-toc__grid\"><a class=\"smile-toc__item\" href=\"#section-1\"><b class=\"smile-toc__number\">01<\/b><span class=\"smile-toc__label\">Customer Challenges<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-2\"><b class=\"smile-toc__number\">02<\/b><span class=\"smile-toc__label\">Project Objectives<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-3\"><b class=\"smile-toc__number\">03<\/b><span class=\"smile-toc__label\">SMILE\u2019s Scope of Support<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-4\"><b class=\"smile-toc__number\">04<\/b><span class=\"smile-toc__label\">Key Development and Improvement Points<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-5\"><b class=\"smile-toc__number\">05<\/b><span class=\"smile-toc__label\">Technologies Used<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-6\"><b class=\"smile-toc__number\">06<\/b><span class=\"smile-toc__label\">Technical Challenges and How We Addressed Them<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-7\"><b class=\"smile-toc__number\">07<\/b><span class=\"smile-toc__label\">Implementation Benefits<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-8\"><b class=\"smile-toc__number\">08<\/b><span class=\"smile-toc__label\">Key points for an offshore development structure<\/span><\/a><a class=\"smile-toc__item\" href=\"#section-9\"><b class=\"smile-toc__number\">09<\/b><span class=\"smile-toc__label\">Conclusion<\/span><\/a><\/div><\/nav>\n\n\n<div id=\"section-1\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">01<\/div><h2 class=\"smile-section__title\">Customer Challenges<\/h2><\/div>\n\n\n<p class=\"ticss-11ab313b wp-block-paragraph\">Users needed a way to adjust their water heater and bath temperature settings and check household resource consumption from a smartphone. The app needed to support timers for hot water and bath temperature maintenance, as well as monthly views of electricity, water, and gas usage.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-2\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">02<\/div><h2 class=\"smile-section__title\">Project Objectives<\/h2><\/div>\n\n\n<p class=\"ticss-1cf91efd wp-block-paragraph\">The goal was to connect the water heater to a smartphone so users could adjust everyday settings and check monthly usage in the app.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-3\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">03<\/div><h2 class=\"smile-section__title\">SMILE\u2019s Scope of Support<\/h2><\/div>\n\n\n<p class=\"ticss-0ff56222 wp-block-paragraph\">SMILE developed the iOS app, covering requirements analysis, screen layout design, high-level and detailed design, implementation, design and code reviews, unit and integration test planning and execution, and project management. A SMILE team member served as deputy project lead.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-4\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">04<\/div><h2 class=\"smile-section__title\">Key Development and Improvement Points<\/h2><\/div>\n\n\n<p class=\"ticss-4f1ceffe wp-block-paragraph\">The app lets users set timers for hot water and bathtub temperature maintenance and view monthly electricity, water, and gas usage. It brings everyday equipment controls and monthly usage information together in one app, making the information users need accessible from their smartphones.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-5\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">05<\/div><h2 class=\"smile-section__title\">Technologies Used<\/h2><\/div>\n\n<div class=\"smile-evidence-panels\"><article class=\"smile-evidence-panel\"><div class=\"smile-evidence-panel__mark\"><span class=\"smile-evidence-panel__icon\" aria-hidden=\"true\"><svg class=\"smile-ui-icon smile-ui-icon--replace\" viewbox=\"0 0 64 64\" aria-hidden=\"true\" focusable=\"false\" stroke=\"currentColor\"><path d=\"M14 18h22v16H14z\"\/><path d=\"M28 30h22v16H28z\"\/><path d=\"m42 16 8 8-8 8\"\/><path d=\"M34 24h16\"\/><\/svg><\/span><\/div><div class=\"smile-evidence-panel__body\"><h3 class=\"smile-evidence-panel__title\">iOS App<\/h3><p>Developed using Swift.<\/p><\/div><\/article><article class=\"smile-evidence-panel\"><div class=\"smile-evidence-panel__mark\"><span class=\"smile-evidence-panel__icon\" aria-hidden=\"true\"><svg class=\"smile-ui-icon smile-ui-icon--data\" viewbox=\"0 0 64 64\" aria-hidden=\"true\" focusable=\"false\" stroke=\"currentColor\"><path d=\"M12 18c0-5 9-9 20-9s20 4 20 9-9 9-20 9-20-4-20-9z\"\/><path d=\"M12 18v14c0 5 9 9 20 9s20-4 20-9V18\"\/><path d=\"M12 32v14c0 5 9 9 20 9s20-4 20-9V32\"\/><\/svg><\/span><\/div><div class=\"smile-evidence-panel__body\"><h3 class=\"smile-evidence-panel__title\">Data access<\/h3><p>Uses GRDB, a SQLite library for Swift.<\/p><\/div><\/article><\/div><\/div><\/div>\n\n\n\n<div id=\"section-6\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">06<\/div><h2 class=\"smile-section__title\">Technical Challenges and How We Addressed Them<\/h2><\/div>\n\n\n<p class=\"ticss-9bafa327 wp-block-paragraph\">The app lets users set timers for hot water and bathtub temperature maintenance and view monthly electricity, water, and gas usage. SMILE developed the iOS app in Swift and used GRDB for data access. The work also included design and code reviews, plus planning and execution of unit and integration tests.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-7\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">07<\/div><h2 class=\"smile-section__title\">Implementation Benefits<\/h2><\/div>\n\n\n<p class=\"wp-block-paragraph\">The app lets users schedule water heating and temperature maintenance and check monthly electricity, water, and gas usage from their smartphones, making it easier to control the equipment and understand household energy use. We have not included quantitative claims, such as reduced consumption or time saved, because the available materials do not verify them.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-8\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">08<\/div><h2 class=\"smile-section__title\">Key points for an offshore development structure<\/h2><\/div>\n\n\n<p class=\"wp-block-paragraph\">SMILE handled the project from requirements analysis and screen layout design through high-level and detailed design, implementation, design and code reviews, unit and integration test planning and execution, and project management. A SMILE team member served as deputy project lead.<\/p>\n<\/div><\/div>\n\n\n\n<div id=\"section-9\" class=\"wp-block-group smile-section\"><div class=\"wp-block-group__inner-container is-layout-constrained wp-block-group-is-layout-constrained\"><div class=\"smile-section__head\"><div class=\"smile-section__number\">09<\/div><h2 class=\"smile-section__title\">Conclusion<\/h2><\/div>\n\n\n<p class=\"wp-block-paragraph\">We developed an iOS app that connects to a water heater, allowing users to schedule hot water and bath temperature maintenance and view monthly electricity, water, and gas usage. The project brings equipment controls and usage information together on a smartphone.<\/p>\n<\/div><\/div>\n\n\n<section class=\"smile-article-cta\"><div class=\"smile-article-cta__label\">SMILE Support<\/div><h2>Start a Consultation on GX and DX Initiatives<\/h2><p>From assessing your current situation to implementing systems and improving operations, we work with you to design an approach that fits your company\u2019s needs.<\/p><ul class=\"smile-list\"><li>We can help clarify issues in your current operations and data.<\/li><li>You can design implementation steps that fit your organization\u2019s structure.<\/li><li>You can continue building a framework that remains easy to operate after implementation.<\/li><li>You can use data to verify results and make ongoing improvements.<\/li><\/ul><a class=\"smile-article-cta__button\" href=\"\/en\/contact\/\">Contact us<\/a><\/section><\/div><\/div>","protected":false},"excerpt":{"rendered":"<p>\u65e5\u672c\u306e\u304a\u5ba2\u69d8\u5411\u3051\u306b\u3001\u7d66\u6e6f\u5668\u3068\u9023\u643a\u3059\u308biOS\u30a2\u30d7\u30ea\u3092\u958b\u767a\u3057\u307e\u3057&hellip;&nbsp;<a href=\"https:\/\/smilesoftware.org\/en\/ios-app-development-water-heater-integration\/\" class=\"\" rel=\"bookmark\">Read More &raquo;<span class=\"screen-reader-text\">Case Study: Developing an iOS App Connected to a Water Heater<\/span><\/a><\/p>","protected":false},"author":2,"featured_media":6329,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"neve_meta_sidebar":"","neve_meta_container":"","neve_meta_enable_content_width":"","neve_meta_content_width":0,"neve_meta_title_alignment":"","neve_meta_author_avatar":"","neve_post_elements_order":"","neve_meta_disable_header":"","neve_meta_disable_footer":"","neve_meta_disable_title":"","_price":"","_stock":"","_tribe_ticket_header":"","_tribe_default_ticket_provider":"","_ticket_start_date":"","_ticket_end_date":"","_tribe_ticket_show_description":"","_tribe_ticket_show_not_going":false,"_tribe_ticket_use_global_stock":"","_tribe_ticket_global_stock_level":"","_global_stock_mode":"","_global_stock_cap":"","_tribe_rsvp_for_event":"","_tribe_ticket_going_count":"","_tribe_ticket_not_going_count":"","_tribe_tickets_list":"[]","_tribe_ticket_has_attendee_info_fields":false,"_themeisle_gutenberg_block_has_review":false,"_ti_tpc_template_sync":false,"_ti_tpc_template_id":"","footnotes":""},"categories":[17],"tags":[45,34],"class_list":["post-6330","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-project","tag-iot","tag-mobile"],"acf":[],"rttpg_featured_image_url":{"full":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured.png",1672,941,false],"landscape":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured.png",1672,941,false],"portraits":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured.png",1672,941,false],"thumbnail":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-150x150.png",150,150,true],"medium":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-300x169.png",300,169,true],"large":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-1024x576.png",1024,576,true],"1536x1536":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-1536x864.png",1536,864,true],"2048x2048":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured.png",1672,941,false],"trp-custom-language-flag":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-18x10.png",18,10,true],"neve-blog":["https:\/\/smilesoftware.org\/wp-content\/uploads\/2026\/10\/redmine-1924-featured-930x620.png",930,620,true]},"rttpg_author":{"display_name":"\u7b20\u539f \u840c","author_link":"https:\/\/smilesoftware.org\/en\/author\/chinh-man\/"},"rttpg_comment":0,"rttpg_category":"<a href=\"https:\/\/smilesoftware.org\/en\/category\/project\/\" rel=\"category tag\">Project<\/a>","rttpg_excerpt":"\u65e5\u672c\u306e\u304a\u5ba2\u69d8\u5411\u3051\u306b\u3001\u7d66\u6e6f\u5668\u3068\u9023\u643a\u3059\u308biOS\u30a2\u30d7\u30ea\u3092\u958b\u767a\u3057\u307e\u3057&hellip;&nbsp;Read More &&hellip;","_links":{"self":[{"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/posts\/6330","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/comments?post=6330"}],"version-history":[{"count":9,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/posts\/6330\/revisions"}],"predecessor-version":[{"id":6403,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/posts\/6330\/revisions\/6403"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/media\/6329"}],"wp:attachment":[{"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/media?parent=6330"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/categories?post=6330"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/smilesoftware.org\/en\/wp-json\/wp\/v2\/tags?post=6330"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}