Project Links

Project Main Page

Project Proposal

We propose to develop a database application that represents a garden. The domain will be a typical home garden.


Application Specifications:

You will be able to create a virtual garden that allows for optimization of resources and provides a reference tool for Garden care. Each aspect above will be related to the other aspects in the database and information will be displayed as necessary.

Project Roles:

We will attempt to split the labor as evenly as possible so each group member gets exposed to all of the development process.


Project Descrition Section 4. We have faith in your scheduling. We will also be meeting once or twice a week as necessary to coordinate.


We'll use various media forms to create a virtual garden that is both modular and accesible without being too complex.

ER Diagram:


Relational Schema:



We are creating a database that contains information of what user wants to plant in the garden, such as the name, nutrition, color, size and so on. Then, we will have the more specfic information about what kind of enviorment the plant needs, such as season,sunlight,soil type, water usage and so on. We also have the entity called schedule for the user to keep track during the planting. It helps the user to know when to watering, harvest and so on. To be more precise, we have an entity that called supplies. This entity contains the information of what the plant needs for cultivation, such as tools, fertilizers and structure. The database will help the user manage the garden scientifically.

Formal Specification:

Tables required will be Plant, Environment, Schedule, Supplies, and Sets. They will consist of the following:

Table Name (value: constraint,)*
Plant PlantId: string(256), Nutrition: string(256), Color: string(256), Size: string(256), Classification: string(256), Name: string(256)
Environment EnvoId: string(256), Soil: string(256), Sunshine: string(256), Season: string(256), Water Usage: string(256), Temperature: int
Schedule SchedID: string(256), Planting Time: string(256) [1-12]-[1-31], Weeding: int, Pruning: int, Watering Frequency: int, Harvest Period: int
Supplies SupID: String(256), Tools: string(256), Structure: string(256), Fertilizer: string(256)


Care Calendar: After selecting which plants are in your garden a calendar will be generated with the specific watering schedule and harvest periods of the selected plants.
Master List: Basically, all the tables combined into one master list that can be sorted by any attribute the user wants. This will allow the user to see which plants share similar attributes, e.g. similar harvest period, soil, tool requirements.

Division of Labor

Remains the same

Completed Project Report

Our Garden project is able to present a database that storage all the information for build a home garden scientifically. It has the functionality table to tell the user about information about each plant, and their schedules, planting environment and supplies that are needed. The plant table keeps track of plants’ characteristics. The environment table keeps track of the environment variables. The schedule table keeps track of such watering frequency and scheduled work that needed to be done by the user. So the user will not forget to take care of the garden. And the supplies table will have all the specific supplies needed for the user to grow one specific plant.

We planted to do the calendar to tell the user about the information. But due to the schedule of time and the difficulties we met during the working, we couldn not get it to work in time.