Product Design, User Research, Competitive Analysis, Rapid Iteration, Wireframes, Interaction Design
This design was the product of a design challenge I completed for an on-site interview at a large software company in Dallas.
The task was to design a digital solution for a paper-based, no-kill cat shelter, to solve business problems revolving around volunteer management, animal check-in and tracking, and time management.
Research
After reviewing the problem, my first step was to familiarize myself with the industry as much as possible. To that end, I looked up local animal shelters, reading through their mission statements and functions, and the different services they offered.
I also found several scholarly research papers that spoke about volunteering trends, challenges, as well as many articles that talked about the current state of the industry, and the challenges posed by over-breeding of animals, lack of funding and proper facilities, and new initiatives designed to ease some of these issues.
(Note: After several failed attempts to schedule user interviews and site visits, I decided to only use publicly available research resources, in the interest of time. Although in-person research would’ve been very valuable, I believe there is enough available data to validate my initial assumptions, which can be refined later through contextual inquiry.)
These were some of the challenges I learned about:
There are more animals euthanized or outright rejected than taken in by shelters.
Shelters are mostly staffed by volunteers, who tend to struggle with the emotional aspects of volunteering in an animal control environment.
Shelters process roughly 6-8 million pets annually.
Volunteers felt emotionally burned-out, and burnout was a motivation to quit their volunteer duties.
Volunteers complained about not having a clear idea as to what their day to day tasks were, noting that they would waste time by showing up to complete a task only to find out another volunteer was already there or had completed the task.
Volunteers felt satisfaction when they could help an animal find their “forever home”.
Volunteers felt frustrated that their current electronic systems, if they used any at all, were outdated and cumbersome, and had a steep learning curve.
Shelter managers were frustrated by the high turnover rate of volunteers, as well as the low on-boarding rate of new volunteers.
Based on these and other findings, I crafted motivation statements for the two proto-personas: volunteers and managers.
Volunteers
I want to be able to quickly and humanely process animal intakes.
I want clear and consistent communication from shelter management.
I want to feel like my efforts are appreciated.
I want to know that I’m doing things that are in the animals’ best interest.
I want to quickly and easily check the status of an animal.
I want to be able to know exactly what tasks are assigned to me to ensure I don’t double up with another volunteer.
Managers
I want to retain my volunteers for as long as possible.
I want to communicate effectively with my volunteers, even if not on-site
I want to place animals with foster families quickly and efficiently, to free up space and use our resources more effectively.
I want to assign tasks to my volunteers, and be able to know when said tasks are complete.
I want to be able to consistently track my volunteers’ activities and time spent on shelter business, and be able to generate reports on said activity.
I chose these motivation statements, as opposed to full blown personas, as I was unable to gather enough data to fully create a persona. I believe the data I had at this point would provide me enough context to begin designing a useful solution.
Competitive Analysis
I began looking for existing shelter management solutions, to study how they solved these problems; I discovered dozens of different solutions. A large number of them did not provide screenshots or sample software, but from my research, I learned several important details:
With the exception of ONE product, they all exhibited disconcerting level of feature bloat, stacking multiple iterations of similar functionality on top of the others, and creating massive cognitive load on the user.
The interfaces appeared to be purely desktop based, and were designed in the Windows 95 style: lots of options, menus and data, without much regard to readability, scanability, usability, or system feedback.
The applications appeared to be designed for a professional administrative power user, with the associated steep learning curve, but my research indicated that the majority of shelter employees were volunteers, many with very little experience in the world of animal shelter professional operations.
Based on all this information, and the objectives presented in the exercise, I began generating ideas for features that could solve those problems.
Feature ideation whiteboard
Solution Viability
My goal from the beginning was to design a solution that required the shortest amount of training to understand, and provided the volunteers a way to complete frequently performed tasks easily.
This solution is intended as a native mobile app, to take advantage of available API’s and maximize performance. However, all of the design patterns and intended functionality are easily ported to a mobile web format, with minor changes, should that type of implementation be desired.
To lower entry costs, and prevent shelters from having to maintain on-site computer systems and servers, this is a BYOD solution. Based on volunteer demographics data gathered by the US Department of Labor Statistics, and a smartphone usage study conducted by the Pew Research Center, I observed a significant overlap in both populations, and inferred a fairly strong correlation between volunteer activities and smartphone usage. I believe this data justifies, in the absence of first hand user data, a native app solution that would serve the most volunteers.
Interactions and Visual Design
The application is centered around three main functional areas: Animals, Fosters, and Tasks.
Animals
Provides a scrollable list of all animals assigned to the shelter, with pertinent details about each pet, as well as separation of lists by animal location (on-site and off-site). It also gives users the ability to add a new pet (create new intake) right from the application.
Fosters
Lists all approved foster parents, and provides information on each family such as preferences, home size, etc., that are necessary when making fostering decisions. It also gives users the ability to send a foster parent application via email to a prospective foster.
Tasks
Lists tasks for the shelter, separated into assigned tasks (assigned to the particular user) and general tasks (can be completed by the first available volunteer). It also provides the ability for a user to create a new task and assign it to either themselves or another approved user.
I used several design and interaction patterns consistently through the application, namely:
Footer menu
Primary action buttons in each section
Card overlay/popovers for buttons that trigger actions, such as adding a record or sending a communication.
Banner notifications signaling successful completion of a particular action.
My initial flow and interaction sketches
Workflows
I created several wireflows to document functionality and workflows for the application. I chose wireflows as they allowed me to streamline my deliverables.
…
Animals List View and Expanding Single Item Detail
After the login sequence (not scoped in this exercise), the Animals list view is the first screen seen by the user.
Users have the ability to search for a particular pet by tapping on the search bar; this expands the field to the right and surfaces the native keyboard.
Users can also filter and sort the results with parameters that match the fields within the list detail for each pet record.
The Settings icon is visible at the top right.
The record details expanded view sections are user editable, and fields can be defined by an administrator.
Create a New Intake
This functionality allows users to easily add a new pet to the database (intake).
Fields are editable by an administrator, to fit the shelter’s specific needs.
Upon saving intake, user gets feedback through a banner, a micro-interaction intended to provide feedback as well as a sense of satisfaction from completing the task.
Fosters List View, Detail View, Contact Actions, and Pet Assignment
The Fosters section, accessed through the footer menu, behaves in an identical fashion to the Animals section. The CTA is the “New Foster Application” button above the footer.
Once expanded, the record allows easy viewing and editing of foster information. Users can also perform two additional actions: assign a pet to that foster family and contact the family. Both buttons surface modals that allow the user to perform those tasks quickly, following the same sliding card interaction pattern set previously.
The pet assignment action invokes the Animals list, allowing the user to search and select the pet(s) they want to assign to the family. The modified circular checkbox, a recognizable design pattern, provides an affordance of multi-select.
Upon selecting and pressing “Assign” the card retracts and the user is taken back to the foster family details, and given feedback that the pet they selected has been indeed added to the foster’s record.
Send New Foster Application
This feature functions like the new task creation: a CTA invokes a card with the requisite fields.
The user sends an online foster application to the prospective foster family, which is then sent to an administrator once completed.
Once approved, the foster family will appear in the Foster Families list.
Send new Foster application wireflow
Create New Task
This function allows users to add new tasks to their task queue, or assign tasks to other volunteers.
It utilizes the same CTA button to surface a card modal with the required fields for a new task; the fields are administrator-editable.
Mark Task Complete
This feature allows the user to mark a Task as complete from the Task record detail view.
In the expanded view, the Task Information section in non-editable by users to prevent erroneous changes in status or due dates.
Back Office Component
The second part of this solution (which was not scoped in this exercise) is the admin tool. This would allow shelter managers to assign tasks to volunteers, generate reports on different activities, and manage foster applications.
Managers generally do the vetting for new foster families, so the foster applications that are sent via the app would generate an application that the prospective foster applicants would then send back to the administrator account, allowing for managers to do their verifications.
The administrator account would also give managers the ability to customize task assignment and animal intake forms, allowing for a tailored experience for the shelter.
This account would be accessed via a web portal.
Metrics
The primary performance metrics for this solution would be time on task, amount of cats fostered, and volunteer retention rates.
A reduction in time-on-task would indicate an overall improvement in the volunteers’ efficiency in checking in pets. The amount of cats fostered would go up, as the process to evaluate and approve fosters would be optimized by using a digital solution. And finally, volunteer retention rates would indicate greater satisfaction from volunteers due to the process improvements and communication that a task manager would bring, as well as improved effectiveness in their roles.