Pushpa Laxman ePortfolio

SNHU CS499 - Computer Science Capstone

View project on GitHub

Weight Tracking App - Android Mobile Application

CS360 Mobile Architect & Programming

Overview

The Weight Tracker app is a small mobile weight-watching application created for Android. Users can enter their daily weights and track their progress toward their goals within the application. The app will notify the user when they have reached a target weight based on the weights they log daily. It will be easier for users to reach their weight goals if their past records are available. It features secure sign-up and sign-in functionality, as well as SMS text messaging capabilities. An SQLite database is used to store user weights. An SMS text message will notify the user that they have reached their target weight and congratulate them on their achievement.

The application was designed to be a weight-tracking application with at least three screens: Login, view daily weight, and enter daily weight. In this app, users can track their weight and calculate their ideal weight, while also viewing statistics and graphs to monitor their progress toward their target weight. Users can enter new weight details, update them, delete them, and set their target goals using this app. The app was designed to be user-friendly and help them achieve their target weight. An authentication security feature was implemented in the application to protect the data stored in the user’s database. The application requires a database with at least three tables: one to store daily weight, user logins, and passwords, and another to store the goal weight. Users who typically use weight loss tracking apps have different reasons for doing so. Users may set multiple goals, one of which may be to gain weight while the other may be to lose weight.

Weight Tracking App Final Paper- Narrative

Reflection

In my role as a designer and engineer, I initially plan and program the concept’s purpose and target audience. Creating an effective weight tracking application begins with recognizing and addressing the needs of your intended users. Different demographics will have distinct requirements and preferences, making it essential to tailor your app to meet their specific needs for optimal user engagement and retention. As a result of creating and developing a mobile application, I have demonstrated my abilities in software design, user requirements assessment, and translating these into a structured program of activities. Using my methodology, I produce applications that integrate the visual and layout components of the user interface with the coding phase.

Using this artifact, I have crafted a thoughtfully designed user interface that follows design principles aimed at fostering collaborative environments. Additionally, I have showcased my capability to apply well-established and creative techniques, skills, and tools in computing practices to develop computer solutions that provide value aligned with industry-specific objectives. The user interfaces I design for my software are aesthetically pleasing and aligned with the application’s requirements, while also ensuring precision in scale and design, and effectively simulating the effects of UI/UX.

Using algorithmic principles and computer science practices and standards appropriate to its solution, I designed and evaluated computing solutions that can solve a given problem, while managing the trade-offs involved in creating more realistic and captivating UI/UX designs for this weight-tracking application. I developed a security mindset that anticipates adversarial exploits in software architecture and designs to expose potential vulnerabilities, mitigate design flaws, and ensure privacy by implementing engineering practices and techniques for configuring user accounts and applying input validation 

There is much to learn, including applying advanced UI/UX design principles to create a user-friendly and aesthetically pleasing interface, incorporating web development concepts for data management, and features such as data synchronization. Building the app provides exposure to the entire software development lifecycle, from planning and design to coding, testing, and deployment. Android development, particularly with languages like Java and Kotlin, relies heavily on object-oriented programming (OOP) principles, which are fundamental to computer science.

Login Account Screenshot

Test Login Account Screenshot

Weight DetailsScreenshot

Weight Chart Screenshot