GreenGuardian - Project Onboarding
Reading Only

Team Onboarding

You're hired as the sole admin/developer for the San Francisco Arboretum & Botanical Gardens. The Director of Technology and Operations has put together a team to build a garden management application in Salesforce that they're calling "Green Guardian".

The product team has put together user stories outlining the 16 requirements that are needed for the app to go live in production. You're asked to use Flows, Triggers, and/or Validation Rules to build the automation needed for the application. It's totally up to you. Use a combination of clicks and code, or go all in on one.

The requirements will be implemented in your connected org, and Camp Apex will act as your QA (Quality Assurance) team. Once you've built out the requirement, click the "Run Tests" button to verify and validate you've met the requirements.

Project Onboarding

Green Guardian will help the gardening team oversee the gardens in the Arboretum. Every garden is represented by a Garden sObject, which defines limits on the number of plants it can accommodate and displays its status, reflecting its capacity and health. Each garden is assigned a manager, configured as a Salesforce user, who will be tasked with specific responsibilities to efficiently manage their respective gardens.

The Plant sObject represents each plant in a garden. The plant record looks up to the garden record of its respective garden. It contains fields detailing its sunlight, soil, water, and health status.

Implementation Details

This is the data model that has been built out for you already. You'll be prompted to install the GreenGuardian managed package in the UI for the first user story. Take some time to understand this model because you'll be writing automation to read from and update these fields.

datamodel

Some additional information is available in the Object Manager under the Setup Menu.

Some of the QA tests will create garden and plant records in bulk. In these scenarios, hundreds of plant and garden records will be created and updated to put the system under the stress of large data volumes. Whether you choose clicks or code, make sure your automation is bulkified.

Self Testing

Use your Trailhead org to your advantage. Launch the "Green Guardian" application from the App Launcher to visualize the requirements before building and for creating your own records to test the automation. You can also write your own debug statements or set up your own debug logs to troubleshoot as you go.

app

Caveats

Fields like Capacity and Health Index would be good use cases for formula fields. However, I chose not to implement them in this way, aiming to shift your attention towards triggered automation using Flows and Apex. There may be other implementation details that could be solved in other ways; if you feel strongly about any in particular, let me know.

This is my first attempt at the project format. Love it, hate it or see issues? Let me know, please. Also, if you like the content & found it helpful, please consider pitching in to help cover Camp Apex's server cost.

I hope this project helps you reach your goals. Good luck!