Web Application Development: Tools, Processes and Examples
Web application development is classic problem solving and need fulfillment in action. It’s about creating seamless integrations and ensuring flawless performance while facilitating intuitive, pleasant user experiences (UX). Developers encounter lots of challenges throughout the courses of different projects, some of them common and others less expected.
Many challenges arise from things like outdated platforms and requirements to integrate existing processes, maximize flexibility, and accommodate a variety of features and users.
Radian Developers encounters all of these obstacles, and we use several web application development tools and processes to overcome them while exceeding client expectations. Below are a few examples of how we’ve done it.
Updating Technology
Keeping an existing web app on its current platform can often seem like the obvious choice — especially to clients — simply because it’s the less expensive, faster path of least resistance. But if the platform is outdated, it’s more than worthwhile to spend the time and effort up front to move the app onto a current or more widely used technology.
After all, nobody wants to fight with a new app because of obsolete or inflexible technology. It creates a bad experience for developers, clients, and end users alike.
Home Water Works Calculator
With the help of a grant from The Home Depot Foundation, the Alliance for Water Efficiency, a Chicago-based nonprofit dedicated to efficient and sustainable water use, created the Home Water Works website to help consumers understand the volume and impact of their daily water usage.
The main feature of the site is a Water Calculator created by The Field Museum. Radian Developers’ task was to help the Alliance modify the Water Calculator (in cooperation with The Field Museum) for the new website.
Originally developed in Flash, the Water Calculator needed a new platform to bring it up to date and make sure it’s compatible across devices. Switching to JavaScript and HTML5 allowed Radian to integrate the calculator into the Drupal-based website while including features like:
- An algorithm that calculates water usage based on users’ data input
- A tool that develops a carbon footprint
- Incorporation of Google Analytics
- Comparisons to other homes with tailored recommendations for how to improve efficiency
Radian also developed an iframe for the Water Calculator to make it available for licensing on other websites and to allow utilities to use it for their own analytics. Beyond the Home Water Works website, the East Bay Municipal Utility District, San Diego County Water Authority, Aquarion Water and the Region of Waterloo, Canada all deploy the Water Calculator for their own specific uses.
Home Water Works Calculator
Home Water Works Water Use Report
Avoiding Disruption
Existing databases can play a big role in new web application development, and they’re often critical to a client’s business processes and need to remain in use throughout the development process. In cases like this, developers need to do all they can to avoid data corruption and performance issues.
When the Salt Lake City Department of Public Utilities (SLCDPU) needed an intranet web application developed, Radian had to ensure we didn’t tamper with the live database they used every day while incorporating it into the new app.
Salt Lake City Department of Public Utilities Water Demand Information System
To manage it’s water supply and ensure efficiency, the Salt Lake City Department of Public Utilities (SLCDPU) needed a demand information system for their intranet to deliver detailed categorization and usage analytics for commercial, industrial and institutional (CII) water user by market. The system had to include a categorization portal, a customized database, a billing data API, and a comprehensive reporting tool.
Radian tackled the project using Python to develop a Windows-based web application with an MS SQL database. And since Python is so flexible in terms of deployment, if SLCDPU ever decides to switch to a Linux or other type of server, for example, it can run the same code with a few simple modifications.
The client was also already using a SQL database on their server that contained data Radian wanted to use for development, which was part of the reason we elected to use SQL for the app. But rather than accessing their data directly, we created a cloned instance of a subset of their data to eliminate risk and avoid adding additional load to the database SLCDPU employees were using on a daily basis.
Salt Lake City Public Utilities CII Reporting Tool
Maximizing Flexibility
It probably goes without saying that the main reason apps exist is to make everyday tasks, whether for work or our home lives, more convenient. Therefore, flexibility is a huge component of web application development, whether it’s in terms of deployment, integration, troubleshooting, or end use.
In creating an iPad app for irrigation system evaluators to use in the field, Radian had to keep all of these things in mind.
Water Check iPad App
As part of a statewide effort to conserve water, the Utah State University (USU) Extension’s Water Check program sends trained evaluators to consumers’ homes and businesses to conduct analyses on their automated sprinkler irrigation systems. Evaluators collect data on soil type, grass root depth, sprinkler distribution uniformity, water pressure, and more during the one- to one and a half-hour process.
In addition to a robust, stable interface for mobile data collection and reporting, USU needed a system that would integrate, normalize, and update data from their existing database of Water Check participant information that had been collected manually.
Radian developed an iPad app for the program with a Python-based web application back end for flexibility. Data is stored on Amazon Web Services in a virtualized container, making it easy to move, duplicate, or redeploy if necessary. It also includes a front-end web query tool and analytics.
By associating the irrigation system data with SLCDPU billing information, USU water conservation professionals can determine their program’s water savings and, ultimately, effectiveness. The detailed reporting portal also integrates with a communications portal to enable conservation-based outreach to Water Check program participants.
Water Check App Interface
WaterCheck App Irrigation System Data Collection
Excerpt of Homeowner Irrigation System Report
Accommodating Multiple Data Sources and Payment Options
The more complicated and varied the required features, functions, and users are on a project, the more complicated the web application development process. Radian used a variety of tools and techniques to create a portal that links water conservation efforts to charitable donations.
Conserve2Enhance Water Conservation and Calculation Portal
The University of Arizona Water Resources Research Center’s Conserve2Enhance (C2E) program allows participants to use the money they save through water conservation education to fund local environmental enhancement projects.
Radian built a water conservation and calculation portal for the C2E website using a Drupal CMS, JavaScript, PHP, and HTML. Customized user and administrator dashboards compare program users and their aggregate savings, calculate scores for each user, and separate indoor and outdoor water usage for optimal insight.
The program collects water usage data in a variety of ways. C2E participants can manually enter their own data, and administrators can upload CSV files with participants’ usage information.
After choosing an environmental enhancement project to support, participants monitor their dashboards in an effort to reduce their water consumption and donate the resulting savings to their chosen project. The portal allows them to make one-time, multiple, or recurring donations via PayPal.
Conserve2Enhance Website
Conserve2 Enhance Reporting Tool