Festival to attendee... One to Many?

I had a question about the festival to attendee relationship. As we went into the junction objects, I realized: one festival does have many attendees, but couldn't an attendee be attending many festivals at different times? wouldn't this make the relationship many to many?

That question really needs to be considered at the very earliest stage of the project planning cycle. However the functionality you're suggesting, allowing for purchase of tickets to multiple festivals in one transaction, increases the complexity of the database design.

The trade-off is more functionality but at higher development and support costs. Also, your developers need to be able to internalize that functional requirement and figure out how to incorporate it in the actual design.

Developers that are new to Salesforce might struggle with the more complicated design and delay implementation or, ultimately, cancel the project if it turns out to be too difficult. In this case, a desired outcome of keeping the app design a bit simpler is that a higher number of students will complete the course!