Individual Pursuits

April 2022
Please note all names and identifying information in application screenshots are generated names not linking to actual individuals.
Problem Background and Project Description

Individual Pursuits is a community social services organization specializing in both residential supports and community inclusion programs for persons with a developmental disability. For goal tracking, they use a paper-based system that is difficult to maintain and track. The goal of this project is to create a web application that will allow staff to track goals and progress for each individual.

The web application will allow staff to create goals for each client and track their progress based on their goals. The application had to meet FOIPPA security requirements as this application will be storing personal information. The application will have role based access control to ensure that only specific staff can access pertinent information


Elicitation Phase

I initially met with business stakeholders to gather requirements and create a project plan over a year before development began. As the scope of the project was broad I drafted a Requirements Specification Document that was chipped away at in weekly meetings. These meetings consisted of myself and two business stakeholders. The document carefully outlined the different user roles and permissions, use cases and user stories, basic wireframes, and ER diagrams. The document was updated as the project progressed and was expected to be used as a reference for the development team.


Development Phase

The development team was comprised of myself, along with another student from my program I had worked with previously on school projects and had a valuable skillset for the project. I split the development tasks into four sprints, each lasting two weeks. There was also weekly meetings with stakeholders, and daily standups with the developers to ensure that the project was on track. The initial prototype was completed within the expected timeframe. The project was then deployed locally on the company network, where it was tested by the business stakeholders.

  • Next.js

    Frontend Framework

  • Material UI

    React Component Library

  • Express.js

    Backend Framework built with TypeScript

  • Auth0

    Authentication Service

  • Prisma

    Object-relational mapping tool for TypeScript

  • PostgreSQL

    Relational Database

The frontend was built using Next.js, a React framework with built-in routing and server-side rendering capabilities, along with Vercel's simple and cost effective deployment features. Material UI was used as the component library for the frontend for its ease of use and familiar design for end users.

The backend was built using Express.js, a Node.js framework with TypeScript utilizing REST. Auth0 was used for authentication and authorization, integrated into our backend using Auth0's Node.js SDK.

The database was built using PostgreSQL, a relational database. Prisma was used as an ORM to simplify database interactions and to ensure that the database schema was consistent with the application schema.


Project Status

The application is currently in the user testing phase, where it is being tested by the business stakeholders. The application is expected to be deployed in the coming months to either DigitalOcean or AWS, and Vercel.