COLAB9 - Web App

Olive Branch

Olive Branch is a communication tool that makes it easier for loved ones to reach out to each other after a conflict.

Problem Background

The desire for human connection is a core human need.  However, when couples fight, that empathic connection to each other is temporarily lost which can lead to a further breakdown in communication. While most market offerings attempt to directly resolve the conflict, our team was curious about how effective communication techniques can help couples stay in connection with one another in these moments of disconnection. Our hypothesis, inspired by Marshall Rosenberg’s Nonviolent Communication, is that helping couples re-establish an empathic connection to one another first would help them reconcile more effectively.

 

Our Problem Statement

How might we help couples re-establish an empathic connection with one another after a conflict, so that they can communicate more effectively towards resolution?

 

Research Insights

As our research relied on participants speaking openly about this topic, our team utilized qualitative research methods to learn how users cope after a fight. We conducted 10 user interviews and generated the following key insights:

1.     We validated our problem space:

  • Fights are followed by a short breakdown in communication.
  • People are highly motivated to eliminate these uncomfortable moments and to start the reconciliation process.

2.    Partners are emotionally disconnected from one another after a fight

  • Participants described feeling “angry”, “frustrated”, and a sense of “hopelessness” toward their partners.

3.    People lack the emotional bandwidth to effectively resolve the issue and have a productive conversation with their partner immediately after a conflict.

4.    People tend to seek support from 3rd parties (e.g. experienced friends, parents).

5.    One partner needs to take the initiative to jump-start the reconciliation process.  This doesn’t always go as planned, especially if both people haven’t had adequate time to “cool off”.

 

Explanation of the Solution

To solve these user pain points, we developed Olive Branch, a web-based app that allows users to deliver compassionate messages to their partners after a fight. Users provide their basic information, upload their favorite photo as a couple, and record a voice memo for their partner. Users then can preview a personalized “Olive Branch” message before sending this to their partner as a text message or multimedia message.

The outcome of Olive Branch is not about encouraging partners to respond. Rather, the aim is to remind the users (and their partners) of the commitment and trust embedded in their relationship. By restoring their emotional connection to one another, couples are more likely to start communicating and taking a step towards reconciliation.

Lofi & Hifi Mockups

Iterative Design Learnings

Lo-fi prototype testing revealed that users felt overwhelmed by the amount of information on key screens. As our team refined our design, we kept this feedback in mind and strived to develop a minimalistic and relaxing user experience.

 

Implementation Details

Technical implementation

Olive Branch is built with Next.js, React, JavaScript and SCSS and hosted on Netlify.

High-level journey of a request

Users navigate through the app in a linear way, providing content such as photos and audio which can be sent to their partners via SMS/MMS.

 

Technical challenges

What was the hardest part of development?

  • Deciding on the tech stack based on the timeline and technical scope of the product
  • iPhones not being able to natively play mp3 files directly on messaging app

 

Does your app have any scaling issues?

  • Cost of maintaining an app with MMS features.
  • Since we focused on creating a web-based application, we need to make our application accessible on different devices through responsive design.

 

What are some key takeaways?

  • Don’t be married to a singular vision for implementation, because chances are that you’ll have to make multiple pivots and changes along the way.

 

Future Steps

Our team will continue to improve our product’s design and usability based on the user feedback that we gathered when testing our product. Our priority is to implement a responsive design so users can access Olive Branch across different devices. Next, we plan on addressing usability issues such as adding a “back” button and allowing users to verify the information they provided. As we continue to improve our user experience, we intend on developing additional features that will allow our users to customize their Olive Branch and create more impactful messages.

Learnings

Product Manager Learnings:

Alexander Lee

I learned the value of not jumping directly into solutions and really taking the time to adequately explore the problem space. This allowed us to hone in our problem and focus on doing one thing really well instead of trying to mediocrely fix every aspect of a vague problem. 

Designer Learnings:

Cheng Guo

I learned that by involving different functions early in my design process, the team would benefit from a shared understanding of design intentions and constraints. As a result, we were able to communicate very efficiently.

Designer Learnings:

Jo Sturdivant

  1. Adapting to an Established Team: Joining the team in week 6 of 8 was challenging, as I had to quickly adapt to existing workflows, dynamics, and goals. This mirrors real-world situations where you often integrate into teams mid-project, and flexibility is essential.
  2. Work-Blocking for Efficiency: With only two weeks to complete the project, I learned the importance of a structured work-blocking system. This approach allowed me to manage my time effectively and meet deadlines under pressure.
  3. Making Data-Driven Design Decisions: Unlike my past projects, I had to rely on research conducted by others. This was a valuable experience in using pre-existing data to guide design decisions, helping me focus on the core insights without starting from scratch.

Developer Learnings:

Marissa Okazaki

I learned how to simplify and manage our technical scope by focusing on our product’s core features and building from there.

Developer Learnings:

Vanady Beard

&

As the back-end developer, I learned how important it is to create efficient and reliable systems that support the entire application. This experience also taught me the importance of optimising the database and ensuring the backend is scalable and easy to maintain.

Developer Learnings:

Stephen Asiedu

&

As a back-end developer, I've come to understand the importance of being familiar with various database systems and modules. This knowledge enables me to build diverse applications and maintain versatility in my work. I've also learned that the responsibility for making the right choices rests on my shoulders, guided by my best judgement.

Developer Learnings:

Ken Tanoue

&

I learned about the roles of a Product Manager and Designer and how their roles integrated with the development lifecycle as well as my developer role.

I also learned how to better gauge time estimation for tasks and to implement new technologies quickly. 

Developer Learnings:

Maurquise Williams

&

  1. Process of Creating an MVP: Developing a Minimum Viable Product (MVP) taught me how to focus on delivering core functionalities balancing between essential features and avoiding scope creep.
  2. Collaboration in a Real-World Tech Setting: This experience taught me how to collaborate efficiently in a fast-paced tech environment, keeping the team aligned and productive, even while working remotely across time zones.
  3. Sharpening Critical Thinking and Problem-Solving Skills: This experience honed my ability to think critically and solve problems efficiently. By tackling challenges and finding quick solutions, I sharpened my decision-making and troubleshooting skills in a dynamic, real-world setting.

Developer Learnings:

Jeremiah Williams

&

All in all this experience was very awesome I learned that in coding with others being transparent is key

Developers Learnings:

Justin Farley

&

I learned how important communication is when working with a team. Communication provides understanding, advice, ideas, and much more. While working with the product team, I’ve found that communication keeps everything flowing smoothly. Working with a team also showed me that every member brings something different to the table and we all have to work together in order to align and meet our end goal.

Full Team Learning

Before Co.lab, each member of our team worked solely within their discipline and never collaborated in a cross-functional team.  Our experience of transitioning from siloed work to being a part of a multidisciplinary team was like changing from driving in a straight line to switching lanes against incoming traffic.

Collectively, we learned that constant over-communication is key to working in a collaborative environment. Individually, we also gained valuable insight and deepened our understanding of one another’s roles and responsibilities.