CPP Assignment3 1
CPP Assignment3 1
1 Sept 2023
This design document outlines the Object-Oriented Design (OOD) methodology applied to the Congregation
Event Management System. The system is designed to handle multiple large-scale congregations such as games,
concerts, conferences, and conventions. The requirements include the ability to manage multiple congregations,
venues, and events while ensuring data consistency and validation.
2 Relationships:
1. Congregation-Reservation: A congregation can have multiple reservations, but each reservation is associ-
ated with one congregation.
2. Venue-Reservation: A venue can be reserved by multiple congregations, but each reservation is tied to one
venue.
3. Venue-Event: A venue can host multiple events, each associated with a specific congregation.
4. Calendar-Event: A calendar maintains a list of events for a venue.
3 Design Considerations:
• Modularity: The system is designed using a modular approach, where each class is responsible for a
specific part of the functionality. This ensures that the system is easy to maintain and extend.
• Encapsulation: Each class encapsulates its attributes and provides methods to manipulate them, ensuring
data integrity and preventing unauthorized access.
• Validation: The system includes validation mechanisms for dates, times, and reservation constraints to
ensure that all inputs are consistent and valid.
• Flexibility: The design allows for future extensions, such as adding new types of congregations or events
without significant changes to the existing codebase.
4 Conclusion:
The design presented here meets the requirements for managing multiple congregations, venues, and events. The
use of object-oriented principles ensures that the system is robust, flexible, and maintainable. The accompanying
UML diagram visually represents the relationships between the entities, providing a clear overview of the
system’s architecture.