CPSC 481 Team K

View on GitHub

This is the Portfolio for Team K's group project for the Human-Computer Interactions course at the University of Calgary.



Current Stage of Progress

Stage Five

Instructor

Lorans Alabood

Tutorial Section and TA

Tutorial #2 - Philmo Gu

Team Goals

First and foremost our team goal is to get an A+ on this project. But more than that, we hope that by the end of the project we will have created an intuitive and effective UI design that we can all be proud of and include in a portfolio for prospective future employers. We also want to become more familiar with various prototyping tools, learn new skills which we can take beyond the course and obtain a stronger knowledge of user-centered design concepts and practises.

Stage 1

To view all relevant files for this stage, click the 'view on github' button in the top right corner
GitHub Repository Team Contract




Project Ideas

1. Map Activity and Events Recommender

Problem:

With many events happening around the city, it is often challenging to track and be aware of the available opportunities. Currently, people will learn about events through certain social media accounts, but this information is spread out and not consolidated anywhere. This is challenging when someone is either travelling to a new city looking for something to do, or is a current resident who is trying to learn about local events that they can attend, meet new people, and have fun at. notifications can alert the user anytime of events happening around them.

Importance:

As many organizations put great efforts into hosting events that help build a stronger sense of community, their work is often unnoticed as many people may be too busy to learn about what is happening around them in the city. This is a missed opportunity for people to come together to socialize and learn about different cultures and ways of life.
Many people in our society end up neglecting their social life due to work and other obligations. They forget to socialize and build meaningful relationships with others in their community, which is key to living a balanced, connected, happy, and healthy life.

Potential Solution:

A platform that consolidates all the events happening in a city and makes personalized recommendations to the user and notifies them of opportunities. This way, the problem of sparse and limited information can be resolved and people would have greater knowledge about events that they would be interested in attending. This can also help event hosters see more engagement and ultimately help build a stronger community.

System Type:

This would be in the form of a mobile application as push notifications can
alert the user anytime of events happening around them.


2. Fitness Planner App (Smart notification and planning system)

Problem:

When people begin pursuing fitness goals they can face a variety of challenges: People may not know what exercises will be best to achieve their fitness goals, have difficulty learning the motions of new exercises, have trouble staying committed to their workout schedule, and may not have the same equipment availability as others. Although a personal trainer helps solve a few of these problems, it can still be too expensive for many individuals.

Importance:

Physical fitness can be a very important tool as it helps lead to a healthier lifestyle and improve mental and physical well-being. Moreover a lack of physical fitness may lead to a higher risk of long term health issues that could prevent the user from living their desired life.

Potential Solution:

A mobile fitness app which will ask the user what their fitness goals and preferences are so it can construct a fitness plan. This plan will help achieve their goals based on things like availability, age, current fitness level, and equipment availability. The app would help individuals keep track of their fitness goals and also have the information that they need to achieve their goals.

System Type:

A mobile application will give notifications to help the user stay motivated and on track. A mobile application would be accessible anywhere and anytime so a user can get a workout whenever convenient for them, rather than being limited to working at home or at the gym.

3. Health Tracking App (Hydration, heart rate, food intake, and other health metrics)

Problem:

As people begin to live busier lives, it can be easy to forget about taking care of one’s well-being. Many individuals find it hard to monitor their health metrics and lifestyle with simple tasks such as forgetting to drink the necessary amount of water per day, getting the proper nutrients and vitamins, or failing to realize if vital organ functions are working correctly. The challenge here is to provide easy-to-understand health information so a user can take proactive approaches to living a healthier life.

Importance:

Fitness is crucial when it comes to taking care of health and avoiding illnesses or diseases. If individuals are unable to identify their health information, they may not be sure about their current fitness levels which could cause them to miss information that could have allowed them to take action sooner.

Potential Solution:

A mobile application could help those who are trying to keep their fitness metrics in check. Through interactive notifications, users can track if they are hydrated, eating the right amount, and moving enough in their day-to-day life. The health tracking app could gather and keep track of information about the user to personalize health plans. When someone doesn’t have good physical health, it can trickle down to other vital components such as mental health, which can affect the user’s overall life.

System Type:

A mobile application will be used to provide quick and easy recommendations to enhance the user’s wellbeing.

Stage 2

To view all relevant files for this stage, click the 'view on github' button in the top right corner
Project Description Users and Stakeholders User Tasks User Research




Project Description

Map Activity & Events Recommender

Our project is a mobile application available on iOS and Android that will connect event planners with individuals looking to participate in activities happening in their city. The app will display a map of the city the user is currently in, similar to Google Maps, with pins dropped in locations that correspond to activities such as “impromptu basketball”, “secret donut shop”, “city scavenger hunt” and other events. The system will be used when a user opens the application, explores the events happening around them, selects an event to view the location and details, and can click a button to open the address in Google Maps and navigate to the event location. For event planners, they will be able to tap a button to create an event, provide information like the address, time, and description, add keywords that describe the event, and press submit which will then drop a pin on the map for all users to see. The system is meant to be used by any individuals over the age of 18 that have spare time and an interest in exploring the city and participating in various activities. It will also be used by any small businesses or organizations that wish to put together events.

Users and Stakeholders

Event Organizers

  • Local Buisnesses

    These businesses may be interested in creating unique marketing campaigns that involve customers visiting their location. Examples of this include “Free donuts for first 50 customers” or “Spin the wheel to win a prize, while getting coffee from our shop”.

  • City Planners (Government Officials)

    The government may want to organize events such as firework shows during holidays like Canada Day. This app would allow them to design a more robust experience and inform more citizens of what is planned.

  • Charities and Non-Profit Organizations

    These organizations may put together charity events and fundraisers with games and activities to entice people to visit and get informed about their mission.

  • Everday People

    Our application is really intended for use by anyone who wants to organize an event, whether its something official and formal like a professional conference for a corporation or just an informal meetup between a group of freinds.

Event Participants

  • Any local citizen over the age of 18

    As this app is meant to be accessible by everyone over 18, this ensures the safety of individuals being able to check out any events that cater to them.

  • Any local citizen over the age of 18

    When a tourist is visiting a new city, they may be interested in checking out local events during the duration of their visit to make the most of their experience.

User Tasks

Must be Included Important Could be Included
The application home screen would have a map interface with pins that represent where events are happening. Application would have filters to select relevant events (example: filters like distance, length of activity, genre of activity, etc…) The user would be able to set their application mode to ‘active’ or ‘passive’. In active mode, they would be able to get live event recommendations and notifications depending on their time and location. In passive mode, the user has the ability to< manually search for events at their own discretion.
Application would allow users to post their own events on the app that other users could register and participate in. Event planners/organizers can set a range of participants, a maximum number of participants, edit the events page in the app, etc... Application could let users push out public invitations that other users within a reasonable radius, age, and similar interest would receive to come participate
Application will allow users to register for events that have limited capacity so that those events can manage all attendees Application could link to other social media applications (so we could outsource functionality like polls and forums and image sharing)

User Research

Ask - Surveys & Questionnaires

The questions were asked to ascertain certain characteristics and understand the users who would be interested in this product. We interviewed 26 people that could be potential users of the application, and we had a large variety of people ranging from different ages, backgrounds, lifestyles, etc. From the responses given, here are a few things that were noticed: The majority of users were not familiar with event planning applications. Many people only go to these events once or twice a week (mainly because they find out about these events from all over the place), and the average person who replied was not a full blown introvert or extrovert, the average was a 7. Doing a survey was very beneficial for our research as it did give us a better understanding of our audience (the average user), we could elicit replies quick and easy, and we were able to distribute the survey to many people. Combined, these factors are what went well for us. What went poorly was there was a misunderstanding with a question. When people were asked how they found their events, they didn’t seem to comprehend the question fully based on replies given. The wording was not clear, leading to lots of outliers. To improve, we could have changed the wording to be more clear and concise so the responders of the survey give more accurate answers. If we did that differently, the better responses would have helped.

Learn - Competitive Product Survey

Pre-existing products were reviewed in order to set a base for which features would need to be implemented, and which features are flawed and should not be implemented in our app. We reviewed four most frequently used event apps. By looking at these apps, we got a better idea of features that would need to be implemented within our system. As many of these competitive products have been around for a long time now, they can be used as a base point to build on and improve products. The features that we noticed that were impressive and we would like to implement and adopt can be found in the appendix. Competitive product surveys were beneficial as they allowed us to analyse, see and experience what similar apps in the market are currently looking like, and help define our own app’s functional requirements. One of the main issues that we encountered during this research was that a lot of apps had overlap, making it difficult to figure out which system or approach would be best implemented. Another issue looking into each product’s functionality and getting the pros and cons was time-consuming. For next time, it would be better if we did the competitive product survey with an audience and asked them questions about it to get more opinions.

Try - Scenario Testing

Three different scenarios were brainstormed to try and succinctly cover and express our application’s possible functionalities. At the same time we tried to tailor each of these scenarios to serve as an embodiment of different potential user perspectives like that of a tourist or small business owner. These were given to six potential users to elicit feedback and it was a great way to get feedback on the different functionalities that we would like to have in our app. In terms of what went well, some of the scenarios got the interviewees really excited about the application as they had either never heard of an event planner app like ours and really wanted to have something like it. The scenarios were good at eliciting more elaboration from some of the interviewees; getting what they thought about the application and based on the three scenarios, the interviewees had a good understanding of the system. Some participants thought that the scenarios were too specific and were confused, so they often needed guiding questions to give proper feedback. Others thought they were too general and they forgot the main functionality of the app and would get lost in them. Next time, we should first use some other more initializing research methods that can inform our scenarios and help us flesh them out better. Finally, having more than three scenarios with a good mix of specific and general cases could help us cover more ground as there seems to be a hit-and-miss for how general or specific the scenarios should be.





Project Description Users and Stakeholders User Tasks User Research

Stage 3

To view all relevant files for this stage, click the 'view on github' button in the top right corner
Project Description Horizontal and Vertical Tasks


Discussion of Cognitive Evaluation, Processes and Findings Reflection




Project Description

Map Activity & Events Recommender

Our project will be an event organization application intended for use on iOS and Android mobile platforms. The application will allow registered users to create, browse and find events in their local area or anywhere around the world. An intuitive and interactive map interface will be central to the app, allowing users to explore and learn about what events are going on in their region or city as well as how best to get there. Event planners will be able to create and work with highly customizable event pages that can be tailored to variable levels of detail in order to provide potential participants with all the information they need to engage in the event. Users searching for an event will have a choice between a robust search system or an active “Event Finder” feature. The Search system will allow users to explore a selection of events in their area based on a variety of search factors such as time, distance, event capacity, event type, organizer profiles and so on. To further enhance the power of the search system, events will be defined and categorized by tags as selected by event creators.

Horizontal and Vertical Tasks

Horizontal Tasks Creating and Managing profiles Connecting with social media Event Rating and Review System Rudimentary Chat System so users can ask Event Organizers questions Navigating to events/ getting directions to events Logging into Profiles Viewing events similar to event being currently viewed
Vertical Tasks Finding Events
  • Active Event Finder Feature (application will passively scan for events)
  • Traditional Search function via a search bar
  • Events relevant to user interest will be shown on homepage
  • Would involve an interactive map starting at current location (similar to google maps)
  • Map would serve as anchor for central hub to connect all other features in the application
  • By default, a prompt would show up to ask what categories you are interested in to display events relating to that category, but if the user doesn’t input an initial category/interest, show everything around them
Creating Events
  • Users have access to lots of basic attributes for the events such as date, time, location and description
  • Application will use a tag system for creating and classifying events. As an example the tags would be something like: sports, physics, electronics, swimming, art, etc...
Managing Events
  • Event creators will be able to delete and take down events they create
  • Event creators will be able to edit the details and tags of the events they create
  • Event creators and/or participants will be able to view a history of events they've created or atteneded in the past

Discussion of Cognitive Evaluation, Processes and Findings

From our analysis, we noticed that most of the tasks were easy to walk through however, there were some confusing icons and labels. Users might not understand what some icons mean such as the filter and event status symbols which would require them to learn and experiment. The user might also not immediately know just by looking which icons are clickable and interactive. We decided to modify this by using common icons like checks and exes to indicate yes and no. In addition, we added colour to certain icons so that green would indicate “good” and red would indicate “bad”. We also found that the ability to do a task in different ways, such as finding an event, was useful. The interface with the map is familiar to most people from apps like Google Maps, and it was intuitive that you could interact with the map and click on events. Compared to our tasks in stage two, we decided not to implement the “passive” and “active” status from stage two as it didn’t seem to match the actual use case of the core event finding functionality.

Reflection

What went well for this stage was our initial prototyping session where everyone created similar, yet different representations of the app. We all had a great, common understanding of the app’s objectives and this allowed us to have cohesive design elements. It was also easy to collaborate on integrating all of the prototypes together to show our vertical tasks since we used Balsamiq Cloud, though actual integration itself was still a challenge. Furthermore, it was helpful for our group to ask questions to Philmo who helped clarify information regarding the affinity diagrams and prototypes. What went poorly was that we felt slightly crunched for time due to the amount of tasks that were required which didn’t allow us to be as creative as we could have been. The amount of tasks required also led to some time management issues for our time. Additionally, the affinity diagram was hard to understand which made us spend too much time on the early portions of this stage. What we would do differently is to firstly have been more organized with our approach to this stage since there were so many tasks. We could have created a concrete schedule and structure, as well as had more frequent meetings with each other. Secondly, the prototyping portion helped us realize what was feasible and what was overly ambitious for this stage. As a result, we will more closely analyze the feasibility of our ideas in the future.





Project Description Horizontal and Vertical Tasks


Discussion of Cognitive Evaluation, Processes and Findings Reflection

Stage 4

To view all relevant files for this stage, click the 'view on github' button in the top right corner
Project Description Horizontal and Vertical Tasks


Heuristic Evaluation Reflection and Decisions




Project Description

Map Activity & Events Recommender

Our project will be an event organization application intended for use on iOS and Android mobile platforms. The application will allow registered users to create, browse and find events in their local area or anywhere around the world. An intuitive and interactive map interface will be central to the app, allowing users to explore and learn about what events are going on in their region or city as well as how best to get there. Event planners will be able to create and work with highly customizable event pages that can be tailored to variable levels of detail in order to provide potential participants with all the information they need to engage in the event. Users searching for an event will have a choice between a robust search system or an active “Event Finder” feature. The Search system will allow users to explore a selection of events in their area based on a variety of search factors such as time, distance, event capacity, event type, organizer profiles and so on. To further enhance the power of the search system, events will be defined and categorized by tags as selected by event creators.

Horizontal and Vertical Tasks

Horizontal Tasks (* Tasks will be implemented in stage five) View user’s social media accounts on their profile page Like events on the event view page Set filters when searching for events Log into the application Log out of the application View events similar to one currently being viewed* Chat and connect users with the event host to facilitate a conversation* View directions of how to get to the event*
Vertical Tasks Finding Events
  • Users will have access to a straightforward search functionality
  • Users will have relevant events displayed on their homepage map
  • Users can interact with a homepage map that would show their current location in relation to nearby relevant events
  • Would involve an interactive map starting at current location (similar to google maps)
Creating Events
  • Users will have access to a variety of attributes (such as the category of the event) to define their events with and make them easy to find
  • Users will be required to provide basic information about their event (date, time, location, description)
Managing Events
  • Users will have the option of deleting an event they have signed up for
  • Users can view upcoming events that they have signed up for
  • Users can view status information about the events
Managing Profile and Settings
  • Users can view basic information about their profile such as their name and age
  • Users can change their privacy and application settings
  • Users can identify if a profile is verified or not.
  • Users can view endorsements that have been given by other users

Heuristic Evaluation

Process

The goal of our evaluation was to gauge the usability of our app and find elements in its UI design that were confusing or unclear. We first got a feel for the app and saw how everything flowed. Then three of us individually utilized Nielsen’s ten usability heuristics as a guideline to come up with a scenario and tasks to evaluate our four main tasks for issues and success areas.

Scenario: The long weekend is coming up and Samantha wants to find some new activities to do. She is new to the city and she decides to download Xplore and registers with the hope of finding a dance competition event.

The qualitative part of the evaluation was performing a walkthrough of the system with each of us identifying what we think was a problem. With this, we identified several areas of improvement in the app’s functionality. At this point, the evaluation was subjective, and we had to turn this evaluation into quantitative data. So, we had two testers who rated the severity of the problems from 0 to 4. From those ratings we prioritized the major problems for our next iteration.

Based on the heuristic evaluation, the team will focus on iterating our prototype in this stage by doing the following:

  • Implement consistent colouring of buttons and design
  • Implement error messages for when the user wants to create an event but leaves fields empty
  • Indicate that horizontal scrolling is possible in the manage events sections
  • Implement more navigation options so user does not have to always reset

Review and Findings

There were many positive findings but also some major negative ones which needed to be fixed before moving on. The important things to note were that we did not have any issues that were classified as a level 4, which would indicate a usability catastrophe. The usability heuristics ‘visibility of system’s status’, ‘matching between system and real world’, and ‘recognition rather than recall’ had several positive findings that were compliant with the heuristic principles and enhanced the experience with our app. We found that there were plenty of indicators to let the user know what is happening when they do major tasks like signing up for an event, and the familiar icons and simple language made it fairly easy to use the system. Our negative findings lied with the ‘consistency and standards’, ‘error prevention’ usability heuristics. In our iteration we decided to implement consistent colouring of buttons and our main design in terms of layout of the buttons and text boxes. We also implemented error messages for when the user is creating an event but accidentally leaves critical fields empty.

Reflections & Decisions

What went well for this stage was how we were able to frequently meet up after reading break to deal with the time crunch. We were able to work around everyone’s schedules and kept in constant communication. Since we worked hard on stage three with our low-fi prototype, we were able to take those ideas and build on them, utilizing them as a foundation rather than starting from scratch. We also reviewed feedback from stage three to better understand the objectives of the stage. What went poorly was that Figma was initially difficult to learn and this slowed down the progression of the project. We also did not use all of Figma’s features effectively which may have led to many inefficiencies during our prototyping sessions, creating more work for ourselves than we needed. We also did not have sufficient meetings early on in stage four and this led to a time crunch near the end which complicated our workflow and stressed us out. In terms of what we would do differently, we would have planned more time to learn Figma by watching video tutorials and using additional online learning resources. We also would want to start our initial meetings earlier in the stage in order to prevent time crunches at the end.





Project Description Horizontal and Vertical Tasks


Heuristic Evaluation Reflection and Decisions

Stage 5

To view all relevant files for this stage, click the 'view on github' button in the top right corner
Executive Summary Introduction Hi-Fi Changes Made Conclusion




Executive Summary

Xplore is a mobile application prototype that allows users to find, create, and attend events happening around them. The purpose of the application is to build a greater sense of community by allowing users to create their own events or attend ones hosted by others. This report showcases our journey as we applied user-centred design principles to bring this idea closer to reality. Our group conducted user research by forming and analyzing surveys and questionnaires, competitive product surveys, and scenario testing. We then used the insights gathered from the user research to create a low-fi prototype using Balsamiq to highlight initial tasks and functionalities. Following this, we used Figma to create a hi-fi prototype that implemented six vertical tasks that were iterated upon based on feedback.

Introduction

Our team applied user-centred design principles to prototype an application that aimed to notify and connect individuals about local events and activities happening in their community.

The Design Problem

The problem we wanted to solve was based on the following observation: With many events happening around the city, it is often challenging to track and be aware of the available opportunities. Currently, people learn about events through social media accounts, but this information is spread out and not consolidated anywhere. This is challenging when someone is either travelling to a new city looking for something to do, or is a current resident who wants to learn about events where they can meet new people, and have fun.

The Design Solution

A potential solution to solve this problem consists of a mobile application that conveniently consolidates all events happening in a city that makes it easy to discover events. This way, people can easily access community-maintained pools of knowledge about events rather than having to access disparate sources. This platform would also help event planners to see and manage their events.

Changes

Changes made to the Hi-Fi Prototype

For this stage we wanted to give users ways to search for and browse events based on their established event interests. When a user shows interest in an event on the map and clicks on it to get further details, they will now also have the option to view other events similar to that one. We also provided users a quick way to view all of their favorite events from their profile, this way they aren’t restricted to viewing those events on the map or in the calendar view of their event manager. We also fixed a spacing issue that was present in the ‘create events’ section to help streamline the design and make it look cohesive to the other sections.

Future Changes that Could be Made

Some changes we could make include adding additional features to enhance the functionality of our app. One feature we could add is a passive event finder that would actively look for events on behalf of the user based on their interests, notifying them during their daily routine. This would just be a convenience feature that users could use when they don’t know precisely what kind of events to specifically search for or maybe don’t have time to browse themselves.

Future Changes that Should be Made

Some of the changes that should be made to the prototype primarily involve cleaning up how users create events in our application. Currently, when users create an event they must navigate through a sequence of event creation pages where they can only navigate to the next page, previous page, or very first page from where they currently are. This setup could be made more efficient by giving users a tab system that allows them to navigate to any event creation page from any other event creation page. This would also allow us to more easily alert the user to required but undisclosed information by having alert icons appear on the tabs corresponding to pages that are missing information.

Conclusion

Overall, by using user-centred design principles to create a prototype for our application, Xplore, we gained significant experience learning about creating a sleek and user-friendly mobile application user experience. Identifying problems and users, conducting user-research, creating low-fi and hi-fi prototypes using Balsamiq and Figma respectively, and conducting a heuristic evaluation were all exciting processes that ultimately taught us how to design applications that cater to the needs of users.