Cookie Management

Team Name

Girl Scout Cookie Management

Timeline

Fall 2024 – Spring 2025

Students

  • Corey Carlson – Computer Science
  • Tres Eberle – Software Engineering
  • Nancy Edegbe – Computer Science
  • Tin Ngo – Software Engineering
  • Omar Khan – Computer Science

Abstract

The Girl Scout Cookie Manager is a web-based system designed to streamline
cookie sales, inventory management, and order tracking for Girl Scout troops. It
features role-based access for troop leaders, parents, and cookie managers, real-time
inventory updates, cookie booth reservations, and a machine learning model (Decision
Tree) for predicting order quantities. Built with React, Node.js, and Firebase, the system
aims to reduce manual errors, improve communication, and enhance fundraising
efficiency.

Background

Girl Scout cookie sales are essential for troop fundraising, but many troops have
relied on outdated, manual methods like paper forms and spreadsheets. These
approaches often lead to errors, miscommunication, and disorganization-especially
during the busy cookie season. To solve this, we developed a web/mobile application
that streamlines inventory management, order tracking, sales coordination, and booth
scheduling. This platform includes digital order forms and data visualization tools to
provide clear insights into sales progress. By digitizing and simplifying the cookie sales
process, our system reduces chaos and helps scouts focus on reaching their
fundraising goals more effectively.

Project Requirements

  • Secure account validation and creation – Users will create and verify their accounts using Firebase’s authentication features.
  • Defined troop roles and permissions – Troop leaders have access to inventory counts and troop join requests/approval.
  • Order form creation and listing – Troop parents are able to fill out a virtual order form for the troop leader to view and update.
  • Order tracking and completion status – Troop parents view their previously submitted orders and check the status of order completion.
  • Cloud-based database storage and retrieval – Troop members and orders are stored using Firebase’s Firestore Database to ensure secure access.
  • Inventory management for Troop leaders – Troop leaders can set and view their troop’s cookie stock for accurate order quantity representation.
  • Booth location creation and claiming – Troop leaders can create and specify a booth location for troop parents to claim.
  • Order sorting methods for existing orders – Users can view and sort their previously placed orders by date and time.
  • User-friendly application UI – Application is focused on ease of use with an intuitive design.
  • Mobile webpage support – Application has a mobile-friendly UI format for modern smartphones.

Design Constraints

  • Accessibility: The design must be accessible on both mobile and desktop platforms, ensuring that the layout adjusts appropriately for different screen sizes. The system must also comply with accessibility standards to
  • accommodate users with disabilities.
  • Extensibility: The modular design should not add excessive complexity to the codebase, and any future enhancements must be backward-compatible to avoid disrupting current users.
  • Functionality: Real-time processing must not cause a delay or timeout during peak sales traffic.
  • Legal considerations: The website must be accessible on modern web browsers such as Google Chrome, Mozilla Firefox, and Safari. The system must be compatible with Android 12 and above, and iOS 15 and above.
  • Maintainability: Comprehensive user manuals, troubleshooting guides, and FAQs must be provided for both users and system maintainers. These documentation must be clear, concise, and regularly updated to reflect any system changes or new features.
  • Safety & Welfare: Sensitive user data will be inaccessible to anyone not critical to database management and support; Users will not be prompted to enter payment information at any time; Anyone accessing and modifying existing records will have all changes logged within a revision list to be reviewed by web application administrators.
  • Schedule: Maintenance must not disrupt system availability for more than 5 hours during peak sales periods (cookie season). Scheduled maintenance should be done during low-traffic times. Unexpected downtime due to server or network issues must be resolved within 3 hours to avoid disruptions.

Engineering Standards

  • OSHA Compliance
  • WCAG 2.1 AA accessibility standards
  • OWASP guidelines for secure authentication
  • NIST standards for password policies
  • Firebase’s Terms of Service

System Overview

The Girl Scout Cookie Manager is built on a three-layer architecture: a
Presentation Layer (React-based UI for web/mobile with role-specific dashboards), an
Application Layer (Node.js backend handling order processing, booth assignments, and
business logic), and a Data Layer (Firestore Database for real-time inventory and order
tracking). Key features include real-time inventory updates, cookie booth reservations,
troop role management, and a Decision Tree-based ML model for predicting order
quantities. The tech stack leverages React, Node.js, Python (for ML), Firebase, and
GitHub for CI/CD, with Figma driving UX design. The system prioritizes mobile
responsiveness and accessibility compliance.

Results

Functional testing confirmed successful Firebase authentication, real-time
inventory synchronization, and end-to-end workflow validation using a sandbox Troop
(#12456). Challenges like ML model overfitting and data formatting inconsistencies
were resolved, enabling accurate sorting and predictions. Demo results showcased
dynamic sales tracking for troop leaders, seamless order placement for parents, and
automated inventory adjustments. Security testing validated role-based access controls
(RBAC) and data integrity via Firebase.

Future Work

  • Improve mobile experience by refining the UI/UX and potentially developing a dedicated mobile app.
  • Implement further data displaying charts and diagrams for the main dashboard
  • Adding cookie pictures to the order form to further represent each item
  • Expand role permissions to accommodate additional features
  • Enhance existing order viewing UI with additional visual representation.

Project Files

Project Charter
System Requirements Specification
Architectural Design Specification
Detailed Design Specification
Poster

References

  1. React API Reference. Meta, https://react.dev/reference/react. Accessed 17 Apr. 2025.
  2. “Get Started with Firebase Authentication on Websites.” Google, Google, firebase.google.com/docs/auth/web/start. Accessed 19 Apr. 2025.
  3. Node.js v20.11.1 Documentation. Node.js, https://nodejs.org/docs/latest/api/. Accessed 17 Apr. 2025.
  4. “CSS: Cascading Style Sheets.” MDN Web Docs, Mozilla, https://developer.mozilla.org/en-US/docs/Web/CSS. Accessed 17 Apr. 2025.
  5. OWASP Foundation. “OWASP Authentication Cheat Sheet.” OWASP Cheat Sheet Series, 2024,
  6. https://cheatsheetseries.owasp.org/cheatsheets/Authentication_Cheat_Sheet.html.
  7. World Wide Web Consortium (W3C). “Web Content Accessibility Guidelines (WCAG) 2.1.” W3C, 2018, https://www.w3.org/TR/WCAG21/. Accessed 13 Oct. 2024
  8. National Institute of Standards and Technology (NIST). “Digital Identity Guidelines.” NIST Special Publication 800-63-3, 2017, https://pages.nist.gov/800-63-3/sp800-63b.html.

Steven McDermott