Course Description:
Taught by Ms. Taricco, Computer Science introduces students to web design techniques and allows them to design and develop their own personal, professional websites. The course also helps students develop computational thinking and problem-solving skills through coding exercises and labs. Students explore various coding langauges, including HTML, CSS, and Java, and participate in coding competitions such as the American Computer Science League (ACSL). All these assignments provide students with skills to build, analyze, and improve software, as well as make real-world applications for society.
Line Art Lab
Using iteration and java graphic applets, this lab helped us practice for loops and if-else statements. Although the image (at the bottom of the document) appears to contain multiple curved lines, the entire graphic was created using just straight lines, creating an illusion using basic java coding skills.
AWT Lab
One of the first graphics lab we completed using Java Applet was this AWT lab, where we got to practice drawing different shapes and objects, such as a sphere fitting perfectly in a cube, a pacman flower, our initials, and an inscribed circle in triangle in circle. Although the actual code was simple to write, it was difficult to figure out what combinations of numbers would result in the correct image, so this was a perfect lab to practice those skills.
Apps for Good Project
Executive Summary
DiaBite: Diabetes Managed Easily is a mobile app designed by me, Adel Benchemam, Lilo Amer, and Varsha Alladi, under the guidance of Ms. Taricco. With over 38.4 million people in the U.S. and over 400 million worldwide living with diabetes, managing daily meal planning can be stressful, time-consuming, and overwhelming. DiaBite simplifies this process by generating diabetic-friendly meal plans tailored to the ingredients users already have at home. By providing reliable, accessible nutritional guidance, DiaBite empowers users to take control of their health and make smart food choices without the added burden of constant planning or grocery shopping.
Problem
Meal planning is one of the most difficult aspects of managing diabetes, often leading to stress, skipped meals, or poor dietary choices. Individuals must constantly monitor carbohydrate intake, portion sizes, and nutritional content—yet many lack access to reliable guidance or tools that adapt to their specific needs. Additionally, people often have limited ingredients at home and struggle to find diabetes-safe recipes that use what they already have, resulting in unnecessary grocery trips and dietary inconsistency. DiaBite addresses these challenges by offering customized, diabetes-friendly meal plans based on pantry ingredients, helping users maintain balanced diets with less effort and greater confidence.
Target Audience
DiaBite is designed for individuals with Type 1 or Type 2 diabetes who need support in daily meal planning. This includes newly diagnosed users learning to manage their condition, long-time diabetics seeking convenient tools, and caregivers preparing meals for diabetic family members. The app is also helpful for those with overlapping dietary restrictions or personal health goals such as weight management. By focusing on accessibility, customization, and simplicity, DiaBite serves anyone seeking practical, health-conscious meal planning tailored to diabetic needs.
Our App MVP and Features
The DiaBite application began with a focused and intentional design of a Minimum Viable Product (MVP), centered on solving the most immediate and universal pain point of our user base: the difficulty of diabetic meal planning using only the ingredients they already have. This core functionality forms the heart of the app. Upon launching DiaBite, users are prompted to input a list of items currently available in their pantry, refrigerator, or kitchen. The app then uses this data to generate a week-long meal plan consisting of breakfast, lunch, dinner, and snack suggestions that are both nutritionally balanced and diabetes-friendly. All recipes included in the plan adhere to guidelines established by diabetic health organizations, focusing on low glycemic index ingredients, complex carbohydrates, healthy fats, and portion-controlled servings to promote glucose stability. In its current version, DiaBite features a clean and intuitive user interface developed using Android Studio and Java, with local data storage managed through SQLite to ensure offline accessibility. Key features include: the ability to enter and save pantry items, automatically generate customized meal plans, and view detailed nutritional information for each suggested meal. Additionally, the app allows users to flag favorite meals for future reuse and will soon support user-specific preferences such as vegetarian, gluten-free, or low-sodium dietary modes. The overarching goal is to reduce cognitive load by replacing guesswork with personalized, data-driven suggestions that align with both health goals and available resources. Looking ahead, we plan to integrate real-time blood glucose monitoring, AI-based personalization, and expanded dietary customization to further enhance the user experience.
Test Plan
The DiaBite test case plan is a structured document designed to verify that the app functions correctly, reliably, and efficiently under various conditions. It outlines 70+ test cases across multiple categories, including installation, functionality, interface design, usability, compatibility, performance, services, interruptions, and operational reliability. Each test case includes a specific scenario, step-by-step instructions, and expected outcomes to ensure that all app features—such as ingredient input, recipe generation, calendar navigation, and offline functionality—work as intended. Tests confirm that the user interface is responsive and intuitive, inputs are validated correctly, and data such as ingredients and meal plans are saved across sessions and device states. The plan also simulates real-world usage scenarios like incoming calls, app restarts, and device orientation changes to ensure stability. Compatibility across different devices (phones, tablets, laptops) and performance under various conditions (e.g., low battery, dark mode) are thoroughly assessed.