Developing a Reliable and Economical Web Portal for Meals on Wheels; “Move Fast and Break Things”: How Modern Software Development Practices Leave Some Users Behind

Author:
Strawser, Nathanael, School of Engineering and Applied Science, University of Virginia
Advisors:
Neeley, Kathryn, EN-Engineering and Society, University of Virginia
Ibrahim, Ahmed, EN-Comp Science Dept, University of Virginia
Abstract:

My technical project involved redesigning a web portal for Meals and Wheels of Charlottesville to allow the staff members to organize volunteer efforts and keep track of historical data in the form of reports. My STS research examined current software development practices and analyzed the unintended consequences that agile methodology can have when users with different needs are not taken into account during the design process.

Meals on Wheels of Charlottesville is an organization that delivers meals up to five days a week to over 200 recipients with the help of over 400 volunteers. Managing this operation involves coordinating several complex tasks, including assigning routes to volunteers, ordering customers along routes, keeping track of volunteer and customer information, allowing for substitutions when volunteers can no longer work, and keeping a historically accurate log of previous billing and routes. Another UVA CS Capstone team created a web portal a few years ago to help manage this operational complexity. However, over several years, this application became unmaintained, slow, and bloated with technical debt. Our team rewrote this application from scratch, improved the feature set, reduced loading times, reduced the total data stored, and updated the user interface. I would advise future fourth-years to select a technical project that allows them to have an impact, rather than optimizing for a high course grade. This project gave me the ability to create something that helps members of the Charlottesville community and will outlive my time at UVA.

Our team utilized agile methodology throughout this process, which emphasizes incremental development, quick iteration, and face-to-face customer interaction, among other principles. A consequence of this pattern is that software developers begin to prioritize quick iteration and decreasing time-to-market over producing stable, tested software, which is what I focused on in my STS research. Some users find that their needs are not accounted for in software that should be production-ready. User interfaces, for example, are often difficult for elderly users to navigate. As a consequence, people’s ability to use websites decreases steadily each year from ages 25 to 60.

My technical work highlighted many of the challenges of software development discussed in my STS research. While both staff members and volunteers can use the web application, we were only able to interact directly with the staff at Meals on Wheels, making it difficult to anticipate the specific needs of volunteers. Broadly, my research analyzed the drawbacks of agile methodology and how it can affect cross-generational user bases, and I had the ability to work directly on an application with cross-generational users while utilizing agile methodology. My STS research gave me insight that I was able to apply in practice, and my technical work demonstrated the multi-faceted challenges of producing stable, feature-rich software on time.

Degree:
BS (Bachelor of Science)
Keywords:
agile, software development, Meals on Wheels
Notes:

School of Engineering and Applied Science
Bachelor of Science in Computer Science
Technical Advisor: Ahmed Ibrahim
STS Advisor: Kathryn Neeley
Technical Team Members: Michael Benos, Alexander Hicks, Kyle Leisure, Kevin Naddoni, Maxwell Patek, Joshua Santana

Language:
English
Rights:
All rights reserved (no additional license for public reuse)
Issued Date:
2020/05/11