Software Development Model Report – Pet Adopt Mobile Application

Introduction:

This capstone project involves the development of a mobile application for an animal association to help connect pets in need of adoption with potential adopters. The application, called Pet Adopt, is built using React Native with Expo and is intended for mobile users who wish to adopt pets, offer pets for adoption, or participate in animal-related events organized by the association. Many animal shelters currently rely on social media or manual processes to manage adoptions and events, which can be inefficient and difficult to track. This project aims to provide a centralized and easy-to-use mobile platform that improves communication between the animal association and pet lovers while increasing adoption visibility and engagement.

Project Description and Deliverables:

The project is divided into two main parts. The first part focuses on delivering the core functionality required for a working adoption platform, including user authentication, browsing pets available for adoption, viewing detailed pet profiles, submitting adoption requests, managing requests by the association, and viewing animal-related events. The application will primarily target Android devices, with iOS support possible through Expo. A detailed requirements document will further define system behavior and constraints.
If time permits, stretch features will be implemented to enhance user interaction and usability. These may include real-time chat between users and the animal association (or pet owners), advanced pet filtering and search options, push notifications for adoption updates or messages, and enhanced moderation tools. These features will only be implemented once the core functionality is complete.

Development Model and Tools:

An Agile and iterative development model has been selected for this project to support early feedback and continuous improvement. Development will focus on producing early working versions of the application, beginning with a functional prototype that demonstrates navigation, basic data flow, and core screens. Features will be refined incrementally using production-quality coding practices, even when initially simplified.
Work will be organized into two-week sprints, with features selected from a prioritized backlog based on importance and estimated effort. Progress will be reviewed at the end of each sprint, allowing adjustments to be made as needed. Jira (Clickup tool) will be used to manage the product backlog, plan sprints, and track tasks using an Agile workflow, while GitHub will be used for source code version control and collaboration. Two hardening periods will be scheduled near the end of the project to focus on bug fixing, performance improvements, and usability refinements.

 

Technology Stack:

The Pet Adopt mobile application is developed using the following technologies:
• React Native with Expo for cross-platform mobile development
• JavaScript and TypeScript for application logic and type safety
• Firebase for backend services, including database and file storage
• Clerk for user authentication and session management
This technology stack was selected to support scalability, maintainability, and efficient development.

Risks and Timeline:

A potential challenge of the agile approach is accurately estimating progress, especially in early sprints where limited historical data is available. Additionally, some technologies used in the project, such as mobile UI optimization or real-time features, may require additional learning. These risks are mitigated through incremental development, frequent reviews, and dedicated hardening periods.
The project is planned over a twelve-week period. The first four weeks focus on planning and early development, including documentation and an initial prototype. The remaining eight weeks focus on production development, feature completion, and final stabilization.

 

Leave a Reply

Your email address will not be published. Required fields are marked *