COLAB33 - Mobile App

aParent

aParent is a communication and collaboration platform for parents and teachers, designed to connect them to children's education.

Problem Background  

Imagine being parents of a 7-year-old, eager to stay involved in their education, but every day feels like a maze of emails, apps, and portals just to keep up. Parents want to stay informed about their child's progress and find ways to offer support, but the constant juggling between systems often leads to feeling disconnected. They are not alone. With 25 million children in this age group across the U.S., more than 60% of parents feel overwhelmed by the chaos of fragmented communication.

At this age, kids need their parents’ guidance more than ever. Yet, the tools meant to keep parents informed are failing. Research shows that when parents are engaged, their kids are twice as likely to succeed. But with updates scattered across different platforms, many parents struggle to stay in the loop, missing key moments where their involvement matters most.

That’s why we chose this challenge. We believe parents deserve a simple way to stay connected and support their child’s journey. By unifying these scattered systems, we aim to empower parents with the real-time information they need to be there every step of the way.

~For more details, check out the spec document~

User Pain Points

To validate the accessibility issue related to communication between parents and schools, we began with a two-part research approach that included both qualitative and quantitative methods.

First, we conducted in-depth interviews with six parents who met our target demographic—parents in the U.S. with children aged 6 to 12. During these interviews, we uncovered a consistent theme: parents were facing communication challenges across various platforms used by schools to update them on their child’s progress. Many described having to navigate multiple communication channels, leading to confusion and frustration. One parent noted, "I sometimes miss important updates because I get notifications from different apps at different times." Others shared that paywalls and access issues compounded the problem, making it difficult to stay informed without additional costs or delays. This qualitative research highlighted that inconsistent communication across platforms was a significant pain point.

To confirm the findings from the interviews, we followed up with a quantitative survey, targeting a group of 10 parents who fit the same demographic. The survey asked about their preferences and challenges when it came to tracking their children’s academic progress. The results reinforced our earlier insights: 40% of respondents expressed a strong need for a centralized communication platform that could streamline updates. Another 35% highlighted the importance of receiving regular, real-time updates, indicating that timeliness was a key factor in their satisfaction. Finally, 25% of respondents emphasized the necessity for the platform to be easy to use and stable, reflecting a demand for intuitive, reliable tools.

Together, these findings provide a clear picture of the issues parents are facing and the features they would value in a solution. 

~ For more details, check out the user research ~

Competitive Analysis

We conducted a competitive analysis of six key competitors through comprehensive research, examining each platform down to the feature level. This analysis allowed us to identify key takeaways regarding strengths, gaps, and opportunities for differentiation within our solution.

Key takeaway: All platforms shared common features like messaging/communication tools and mobile accessibility.

~ For more details, check out the competitive analysis ~

Solution Space

After conducting thorough user research and analyzing our competitors, we held a brainstorming session with the problem statement: “How might we improve communication and collaboration for parents with teachers so that parents can effectively track their kids' progress in their studies at school?” to devise solutions that would fully address the pain points of our users while setting our platform apart in a competitive landscape. 

We focused on creating a more advanced feature set by offering 

  • A centralized communication hub (integrating messaging, meeting scheduling, and calling). 
  • Real-time class announcements from teachers.
  • Access to students' academic progress.
  • Free resources from experts, enable parents to assess life skills and support their child's study at home.

~ For more details, check out the solution space ~

Execution

Methodologies

We adopt Agile methodologies with a sprint-based approach to manage the project, ensuring iterative feature delivery and continuous improvement. To gather valuable user feedback, we use a combination of qualitative and quantitative methods, including in-depth interviews and surveys with nearly 50 users. This allows us to continuously refine and optimize our product based on real user insights.

We implemented the solution through an iterative design process, starting with early testing on low-fidelity prototypes, refining them into mid-fidelity mockups, and conducting further rounds of testing and improvements before finalizing the high-fidelity versions.

Utilizing a React Native frontend and a Firebase NoSQL database, the team prioritized rapid development with a single codebase for cross-platform deployment. By focusing on key features like class announcements, a centralized communication system, and real-time updates, they aligned development with user needs. 

Regular testing and feedback informed feature refinement, ensuring both technical feasibility and user satisfaction throughout the process.

Iterative Design Learnings

We implemented the solution through an iterative design process, starting with early testing on low-fidelity prototypes, refining them into mid-fidelity mockups, and conducting further rounds of testing and improvements before finalizing the high-fidelity versions.

Lofi Mockup

~ For more details, check out the Lofi Mockups ~

Midfi Mockup

After we showcased our prototype to the users again, we learned that the following features need to be improved:

  • Sign form/payment flow: awkward process both the money and signing form
  • Notification: useful but looks confusing
  • Need evidence for the ranking/grades including teacher comments

~ For more details, check out the Midfi testing ~

Hifi Mockup

~ For more details, check out the Hifi design ~

Technical Implementation 

Where is it hosted? 
  • The Database is Hosted on Firebase
What is your tech stack? 
  • Backend Framework: Node.JS & Express.JS
  • Frontend Framework: React-Native
  • CSS Framework: React-Native Paper
  • Database Choice: NoSQL Firebase
  • Other Tools: Redux toolkit, Expo Go, Gifted Chat, ChartKit, react-native-calendars

Backend framework, frontend framework, CSS frameworks, database choice, and other tools and technologies used High-level journey of a request Talk about why you chose the tools used and how you can improve the application's design. 

We Chose to Move Forward on the application with React Native as the frontend framework of application because, with the limited amount of time given for the product development, we thought it made the most sense to stick with something of familiarity ie; React and Hybrid mobile frameworks allow us to use only one code base for an app that could be accessed on both the google play store and on The IOS App Store. In contrast, if we had continued development with either of these 2 operating systems' native languages (java & Kotlin for Android) and (Swift For IOS) we would have had to make separate code bases for each type of application which would have meant twice as much time on development which isn't a sacrifice we could make for better performance.

We Chose Node.JS and Express.JS to interact with the Firebase Database somewhat out of necessity as we had previously fully built the database in both Django and Postgres. In Flask With MySQL, But when it came time to connect the database to the Frontend. We were having trouble with the connectivity and could not connect to the developer's console on the application due to it being mobile-based rather than web-based so we decided to pivot to Firebase as we already had the connection created for User Authentication Purposes. Also since Firebase is NoSQL we would not have to recreate the schemas with Node to link the backend making the development process much faster and easier.

Some of the Supplementary Packages we use, are Various React-Native Chart Libraries to allow us to give the user a high-level overview of the performance of the child in several sectors of their academic career and expo go to allow us to run the application while it is still in development without having to push it to a web server.

As far as the high-level overview of the request goes, most users will never realize they are making a request as it is done automatically and loads all of the user data based on the authentication. So, the requests for data are just made for the user when the pages load.

The application has similar CRUD functionality to any other web application but it pulls from Collections and documents rather than Tables and rows as one would utilizing a SQL based Database, here is an overview of the key components and screens and some of the crud functionality they entail:

(i) Authentication

  • LoginScreen: Handles User Login using a retrieve function
  • RegisterScreen: handles user registration

(ii) Main Screens

  • WelcomeScreen.js: Entry Point With Navigation Routers into login and register screens
  • GradesScreen.js: Makes Retrieval Requests using the user authentication to retrieve the grade data for all of the students associated with the logged-in user
  • MessagesScreen: Displays chat items with the logged-in user as one of the connection links and then displays the chats that are associated with that chat connection.
  • ParentResourcesScreen: Displays Hard-Coded Resources for parents to access for their child 
  • AssignmentsScreen: Displays all the assignments from the classes that are linked to the associated children of the user with a retrieval request
  • TeacherScreen: At the moment it is empty
  • ParentScreen: Displays all new items from the user children's classes in a timeline-style manner with a retrieval request

Challenges 

What was the hardest part of development? 

  • The Hardest Part of development for our team was without a doubt the setup and getting started phase, as it is very difficult to look at a blank canvas and know where to start painting.

Does your app have any scaling issues? 

  • The app has no scaling issues from our knowledge the data displays seamlessly in a manner that can handle any amount of data 

What are some key takeaways?

  • Some key takeaways from the development of this application are that communication is key to asynchronous development and that you should never be afraid of a swift pivot if things aren't going to plan.

Outcomes

We successfully built the MVP, incorporating key features such as class announcements, academic tracking for children, parent resources, and a messaging platform for parents and teachers. All features functioned as intended and met the outlined requirements. To measure the platform’s performance, we used the CSAT (Customer Satisfaction) score as our primary metric. 

Future Steps

While we will not be continuing the project beyond this stage, our efforts within the scope of Co.Lab resulted in the successful development of a parent-focused communication and collaboration platform. Moving forward, there is significant potential to expand the platform by building out features for the teacher's side. This would allow parents and teachers to collaborate more seamlessly through features such as in-app calls, meeting scheduling, and enhanced messaging capabilities.

Moreover, introducing real-time push notifications will ensure that parents receive instant updates on their child's class activities and academic progress. Additional features like a classroom camera feed could allow parents to observe their child's learning environment remotely, offering more peace of mind.

Further development could include a child-friendly interface that empowers students to share their thoughts and classroom experiences with their parents. Resources and tools that parents can use to support learning at home would also enhance the platform, creating a more comprehensive ecosystem for education support.

Additionally, we see an opportunity to implement micro-learning through gamification, allowing children to reinforce their learning at home in an engaging, fun way. This approach would help maintain their interest in lessons and support continuous learning outside the classroom.

Learnings

Product Manager Learnings:

Lam Pham

I learned to enhance my communication with leadership while maintaining balance within a cross-functional team. It was crucial to guide all team members toward meeting customer needs and aligning with business goals. This approach ensures that the team works cohesively toward common objectives, focusing not only on creating attractive designs or delivering numerous features but also on fulfilling business requirements. Since some teammates lacked experience in a Product team, it was challenging to align everyone. Despite occasional misalignments, we prioritized clear, straightforward, and transparent communication. I also improved my ability to communicate with people from diverse backgrounds, each with different priorities and expectations.

Designer Learnings:

Nevin Winter

I learned how to work with a full product team, gaining valuable insights into effective collaboration. Ensuring alignment with the team was crucial, as each member brought unique perspectives to the design. To ensure clarity, thorough documentation and communication were essential. Additionally, I learned to be flexible and adapt to changes as they arose, prioritizing the product's core user experience. Successful hand-offs with developers relied on detailed communications, fostering productive team discussions. This experience highlighted the impact of cross-functional teamwork, demonstrating how diverse strengths, intentional effort, and consistent communication drive project success.

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:

Blake McGuire

I learned How to work asynchronously with a team of multi-disciplinary team members and how important it is to communicate with fellow team members and stay aligned with the team on the project vision in order to deliver a successful product.

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:

Sydney Stiward

&

There’s a lot I’ve learned throughout the past few weeks, but most importantly I feel that I have learned that though they say communication is everything, I really learned that communication is very much the key! Working asynchronously has taught me that lesson and knowing that not everyone might have the same point of view is important in order to attack certain tasks and how to go about it. Staying aligned is the tip in the arrowhead.

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

Communication is the key.