Residence

Helping RAs communicate so all residents feel safe and supported.

Team

David Domalik - Front-End Developer & User Researcher
Nathan Blinn - Back-End Developer & Database Manager
Noah Yeo - Developer

Tools

SwiftUI
Xcode 12
Alamofire
Flutter
VMware
Figma

Timeline

Mobile Application Design & Development
Fall 2020

Domain

Mobile Application Development
Agile Software Development
Front-End Development
Visual Design
User Research

Problem
The COVID-19 pandemic makes it harder for RAs and residents to form relationships.

COVID-19 has caused universities to take precautions in campus housing. Residents don't have roommates and are discouraged from spending time in lounges, increasing cases of loneliness. This gives RAs fewer chances to interact with each resident while they take on additional responsibility enforcing COVID policies.

Goal
Create a tool for RAs to better connect with their residents.

RAs needed additional tools to help them meet the expectations set forth in their job descriptions. Most RAs needed a way to keep track of interactions, communicate COVID violations to other RAs on staff, and generally wanted ways to save time completing their duties.

Solution
A mobile app that tracks resident interactions and COVID violations, streamlining RA responsibilities.

Our app lets RAs record these data points anytime and anywhere. They then receive convenient insights as to who still needs contacted and who to watch for COVID violations. It also reduces the number of tools RAs need to do their jobs.

Problem Space

Residence was a course project I completed my junior year in Carnegie Mellon's Information Systems program. Students were assigned to teams and asked to develop a mobile application for iOS devices using Swift and taught the basics of mobile app development, including the Model-View-ViewModel framework.

As a resident assistant (RA) myself, I understood many of the struggles RAs were having due to restrictions in place during the COVID-19 pandemic. After considering a few options, my team settled on an app that would help address many of those pain points.

01
App Design
Five main interactions for RAs within our app.

Through a combination of brainstorming and user research, we generated and prioritized a list of features for our app. The core of our app would be a tracking system for resident interactions and COVID policy violations, and thus these features were our top priority, but our app also includes three other tools to help RAs.

Viewing a list of all residents and individual resident details

Viewing a list of all residents and individual resident details

After logging in, the first page RAs see is a list of their residents' names along with a profile picture and room number. This list corresponds to each individual RA's floor number to only show the residents they are responsible for. Tapping a resident opens their Details page containing basic information entered by the resident such as their major and clubs. This info can be used as a conversation starter during interactions with residents. Residents can be reached by tapping the icons to the right of their profile picture.

Marking an interaction with a resident

Marking an interaction with a resident

We realized early on that our app is only effective if RAs regularly track their interactions with residents. Thus, we needed the process to be as quick and painless as possible. To mark an interaction, users just have to swipe left on the resident's row and tap the 'Interact' button. Successful transactions are confirmed with a pop-up.

Viewing residents in a grid view and reporting a COVID violation

Viewing residents in a grid view and reporting a COVID violation

To help identify residents who the RA isn't familiar with, we provided a grid view that focuses on faces rather than names. Interactions and violations can both be marked from this screen; in this case, a COVID violation is being submitted in the additional form.

Viewing interaction and COVID insights

Viewing interaction and COVID insights

The data the RAs log is put to use on the Insights page. The 'No Interactions' insight lists all residents who haven't had an interaction marked in the past week. Those residents can be contacted quickly using the provided message icons. The 'COVID Watchlist' takes data from all RAs in the house and adds it to show which residents frequently go against COVID policy. This solves the problem where one resident could be caught 10 times, each time by a different RA, and always receive a light warning because the RA is unaware of previous violations.

Checking in to a duty shift

Checking in to a duty shift

One of the duties of an RA is to answer the 'duty phone,' a phone number that all residents can call in case of emergency. Duty happens every night and usually switches between RAs nightly. RA staffs currently use a separate service to operate the duty phone, but our app simplifies things by having the feature built-in. With the press of a button, an RA takes over the duty phone and all RAs and residents have access to their phone number.

Residents also have a version of the app with a limited feature set. They have a directory page that contains important phone numbers and the RA on duty. Their profile page looks similar to the RA settings page and is necessary to allow residents to edit the profile details that RAs have access to.

02
User Research
Always keeping the target user involved in the development process.

Talking with our users was imperative to having a successful app. At the highest level, we needed to know that this tool was actually fulfilling a need and that our design would be enjoyable to use. I spoke with RAs before development even began to confirm the former, and we reconnected with Figma wireframes for the latter. Our discussion confirmed that the issues I was experiencing as an RA were widespread and not isolated to only me. It also revealed some quantitative insight: about 7 in 10 RAs have no way to track resident interactions, and on average RAs use 6-7 different services to communicate with residents and each other.

These tests with RAs also led to some of our most useful recommendations. The grid view was a request from an RA who struggled to identify all residents by name. The inclusion of room numbers was a suggestion from an RA who said they often file violations that involve multiple residents based on the room the violation occurred in. And though the Duty feature isn't necessary for the app to function, it was repeatedly met with excitement when we discussed it with RAs, leading us to increase its priority.

03
Mobile Mindset
Designing around the strengths of the mobile platform.

Not all applications work well on a mobile device, while others wouldn't make sense on a desktop. Residence falls into the latter category; it fits well as a mobile application but would fail on a stationary device. This is due to a number of factors that make up the mobile mindset:

  • Spontaneous Use - Interactions happen at all times of day all throughout the dorm. Our app must always be available to the user so they can log an interaction or violation whenever one occurs.
  • Quick Actions - Our app is only effective if the user frequently adds data. To encourage RAs to mark every interaction, we needed the recording process to be as quick and painless as possible. This includes powering on the device and opening our app; two actions that are much quicker on mobile devices.
  • Communications - Mobile phones are already our primary communication devices. Since our app revolves around interacting with others, it makes sense to integrate and utilize these existing communication features.
04
Innovative
Ensuring our app is desirable, feasible, and viable.

Rather than simply build a theoretical app for a class grade, we wanted our project to encapsulate the qualities of a successful innovation. This meant it had to be desirable to our users, feasible for the development team, and viable to stakeholders.

  • Keeping in touch with RAs throughout the development process ensured that we created a tool that they desired. We took their advice and prioritized their favorite features, like the grid view and duty indicator. Their visible excitement in every testing session let us know we were going in the right direction.
  • The app consisted of a Django REST API hosted on Heroku and SwiftUI files. Most app functionality is glorified CRUD transactions. These technologies fit into the skill set of our team, and we have a functional app to prove that the idea is feasible to build.
  • Though our app's users will change yearly as new RAs are hired, the overall lifespan of our app is indefinite. As long as the job of Resident Assistant exists, our app will be useful. The COVID violation feature can be converted to a general housing policy violation tracker after the pandemic ends. There are additional features that could be added as well; we discussed building an announcements board that brings greater functionality to the resident version of the app. Residence can be used at any college or university with RAs - a huge user base. Overall, our app has a lot of potential that investors wouldn't want to miss out on.