Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

20 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

🌱 GardenSync – Community Garden Management System (CGMS)

License Status SDLC Platform

GardenSync (Community Garden Management System - CGMS) is a web-based software solution designed to simplify the management of community gardens. The system enables administrators, garden managers, and volunteers to efficiently organize gardens, manage plots, register volunteers, track harvests, and monitor gardening activities from a centralized platform.

This project was developed as part of the Software Management and Development course at the University of Palestine, following a complete Software Development Life Cycle (SDLC) process.


πŸ“– Project Overview

Community gardens are often managed using spreadsheets and paper forms, making it difficult to organize volunteers, monitor crops, and maintain accurate records.

GardenSync digitizes these processes by providing a centralized management platform that allows organizations to:

  • Manage multiple community gardens
  • Organize garden plots
  • Register and manage volunteers
  • Track volunteer working hours
  • Record harvests
  • Generate dashboard summaries
  • Maintain secure user management

🎯 Objectives

  • Replace manual garden management processes.
  • Improve volunteer coordination.
  • Simplify plot and crop tracking.
  • Record harvest history.
  • Provide role-based system access.
  • Improve data accuracy and organization.

πŸ‘₯ User Roles

πŸ” Administrator

  • Manage user accounts
  • Assign user roles
  • Activate or deactivate users
  • Maintain system security

🌿 Garden Manager

  • Create and manage gardens
  • Manage garden plots
  • Record harvests
  • Invite volunteers
  • Monitor volunteer activities
  • View dashboard statistics

🀝 Volunteer

  • Browse available gardens
  • Register for a garden
  • Log volunteer hours
  • View registration status
  • Deregister when needed

✨ Features

User Management

  • User Authentication
  • Login / Logout
  • Password Reset
  • Role-Based Access Control
  • User Administration

Garden Management

  • Create Garden
  • Edit Garden
  • Archive Garden
  • Manage Garden Capacity
  • Garden Dashboard

Plot Management

  • Add Garden Plots
  • Record Crop Information
  • Update Plot Status
  • Planting Date Tracking
  • Harvest Status

Volunteer Management

  • Browse Gardens
  • Search & Filter Gardens
  • Register for Garden
  • Capacity Validation
  • Log Volunteer Hours
  • Deregistration

Harvest Logging

  • Record Harvest
  • Harvest History
  • Seasonal Statistics
  • Dashboard Summaries

πŸ— System Modules

GardenSync
β”‚
β”œβ”€β”€ User Management
β”œβ”€β”€ Garden Management
β”œβ”€β”€ Plot Management
β”œβ”€β”€ Volunteer Management
└── Harvest Logging

πŸ› System Architecture

GardenSync follows a Client–Server Architecture, separating the application into three main layers:

  • Presentation Layer (UI)
  • Application Layer (Business Logic)
  • Data Layer (Database)

Benefits

  • Easy maintenance
  • Centralized data management
  • Better scalability
  • Improved security
  • Supports multiple concurrent users

πŸ—„ Database Design

Main database entities include:

  • User
  • Garden
  • Plot
  • Volunteer Registration
  • Volunteer Hours
  • Harvest Log

These entities are connected using relational database principles to maintain data integrity and consistency.


πŸ“± User Interface

The prototype includes professionally designed UI screens for:

  • Login
  • Garden Manager Dashboard
  • Profile Information
  • Create Garden
  • My Gardens
  • Volunteer Management
  • Invite Volunteer
  • Harvest Dashboard
  • Volunteer Dashboard
  • Garden Registration
  • Registration Confirmation

πŸ” Security Features

  • Password Hashing
  • HTTPS Communication
  • Session Expiration
  • Role-Based Authorization
  • Secure Authentication

βš™ Functional Requirements

  • User Authentication
  • Role Management
  • Garden CRUD Operations
  • Plot Management
  • Volunteer Registration
  • Harvest Recording
  • Dashboard Analytics

πŸš€ Non-Functional Requirements

  • Responsive Interface
  • High Availability
  • Fast Performance
  • Scalability
  • Maintainability
  • Security
  • Cross-Browser Compatibility

πŸ§ͺ Testing

The project includes multiple testing phases:

Unit Testing

  • Login
  • Garden Creation
  • Volunteer Registration
  • Form Validation
  • Capacity Checking

System Testing

  • Volunteer Sign-up Workflow
  • Registration Validation
  • Deregistration
  • Navigation Testing

Security Testing

  • Access Control
  • Input Validation
  • Injection Prevention
  • Authentication Security

🐞 Bug Tracking

Example bugs documented:

  • Login validation issue
  • Incorrect registration dialog data
  • Form validation inconsistencies

Each bug includes:

  • Bug ID
  • Description
  • Severity
  • Steps to Reproduce
  • Expected Result
  • Actual Result

πŸ›  Technologies

Design

  • Figma

Documentation

  • Software Requirements Specification (SRS)
  • System Design Document
  • UML Diagrams
  • Testing Documentation

Architecture

  • Client-Server Architecture

πŸ“‚ SDLC Deliverables

βœ” Software Requirements Specification (SRS)

βœ” Stakeholder Analysis

βœ” Functional Requirements

βœ” Non-functional Requirements

βœ” Use Case Diagram

βœ” MoSCoW Prioritization

βœ” High-Level Design (HLD)

βœ” Low-Level Design (LLD)

βœ” Database Design

βœ” Class Diagram

βœ” UI/UX Prototype

βœ” Testing Plan

βœ” Bug Reports


πŸŽ“ Academic Project

Course

Software Management and Development

University

University of Palestine

Department

Software Engineering


πŸ‘¨β€πŸ’» Team Members

  • Haitham Mohammed Abu Draz
  • Khalil Mamdouh Abu Agina
  • Anas Suhail Omar
  • Ahmed Jehad Al-Mobayed

Supervisor:

Dr. Hanin Alqam


πŸš€ Future Improvements

  • Email Notifications
  • SMS Notifications
  • Interactive Garden Maps
  • Mobile Application
  • QR Code Volunteer Check-In
  • Harvest Analytics Dashboard
  • Weather Integration
  • AI Crop Recommendation
  • AI Harvest Prediction
  • Volunteer Performance Analytics

πŸ“„ License

This repository is intended for academic and educational purposes.


⭐ Support

If you found this project useful, consider giving the repository a ⭐ on GitHub.

Made with ❀️ by the GardenSync Team

About

GardenSync is a web-based platform that streamlines community garden management by enabling administrators, garden managers, and volunteers to manage gardens, plots, harvests, and volunteer activities through a centralized system built using the Software Development Life Cycle (SDLC).

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages