0% found this document useful (0 votes)
7 views8 pages

Capstone Event MGMT

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
7 views8 pages

Capstone Event MGMT

Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 8

🔥

Application 🔥
Event Management

The project is an event management application that allows event organizers to create
and manage events, sell tickets, and track ticket sales analytics. Attendees can browse
and search for events, purchase tickets, and receive event updates and notifications.
The application includes features such as payment integration, customizable invitations,
event logistics management, and real-time analytics for event organizers to make
informed decisions about future events.

🎯 Product Backlog
Following User Stories are categorized with the perspective of experienced developer;
to you easy might be difficult or difficult might be easy. Consider difficulty as per your
discretion. You are free to change, difficulty level, given level is just a guide line.
You need to implement any 10 user stories to complete this project.
😝 Easy, 🙂 Moderate, 🙃 Difficult
Sr User Story Level

1 As an event organizer, I want to be able to create an event 😝

🔥 Event Management Application 🔥 1


page on the application so that I can provide information
about the event, such as date, time, location, and
description.

As an event organizer, I want to be able to sell tickets for


2 my event through the application so that attendees can 😝
easily purchase tickets online.

As an event organizer, I want to be able to integrate

3
payment systems into the application so that attendees can
securely purchase tickets with their preferred payment
😝
method.

As an event organizer, I want to be able to set up different


4 ticket types and prices for my event, such as early bird 😝
pricing, VIP tickets, and group discounts.

As an event organizer, I want to be able to manage ticket


5 sales and view real-time ticket sales analytics through the 😝
application.
As an event organizer, I want to be able to create and send

6
invitations to potential attendees through the application,
with options for customizing the invitation and tracking
😝
RSVPs.

As an event organizer, I want to be able to manage event


7 logistics, such as scheduling speakers and vendors, 🙂
through the application.
As an event organizer, I want to be able to create and
8 display an event agenda on the application, so that 🙂
attendees can view the schedule of events.
As an event organizer, I want to be able to send

9
notifications to attendees through the application, such as
reminders about upcoming events or updates to the event
🙂
schedule.
As an event attendee, I want to be able to browse and
10 search for events on the application, based on location, 🙂
date, and type of event.

As an event attendee, I want to be able to purchase tickets


11 for events through the application, with options for 🙂
selecting ticket types and making payments.
12 As an event attendee, I want to be able to receive tickets 🙂
🔥 Event Management Application 🔥 2
through the application and have them stored
electronically, for easy access at the event.
As an event attendee, I want to be able to view the event
13 schedule and details on the application, such as speakers, 🙃
vendors, and event logistics.
As an event attendee, I want to be able to receive
14 notifications about event updates, such as changes to the 🙃
schedule or location.

As an event organizer, I want to be able to view analytics

15
on event performance, such as ticket sales, attendance,
and engagement metrics, to help me make informed
🙃
decisions about future events.

🎯 General Architecture
You need to implement following things

🤜 Front End, create low fidelity screens, which should have complete functionality,
validations, screen navigations etc. You can use HTML5, CSS3, Bootstrap 5 and
Javascript. Front end needs to communicate with backed properly.

🤜 Backend, Write full-fledged backed in Spring Boot. Create REST Apis, create
Spring Data Entities along with proper validations.

🤜 Database Schema, Complete database schema, would be generated using


Java Entities and Spring Data. Use Spring Data Repositories for creating queries. If
required, you may write native sqls, but that too using Spring Data Repositories.

⚠ Hints given below are for understanding purpose only, you


might need to add/modify certain things, or you might need to do
every thing from scratch. Do not consider hints as final/polished
requirements, use your logic before you work on it. Hints might be
useless to you. Again remember, hints are just guidelines, use it
for understanding purpose only.

🎯 Hint for Database


Table: User

🔥 Event Management Application 🔥 3


Column Name Data Type Description

id INTEGER Primary key

name VARCHAR(255) User's name

email VARCHAR(255) User's email address

password VARCHAR(255) Hashed password for user authentication

Table: Event

Column Name Data Type Description

id INTEGER Primary key

name VARCHAR(255) Name of the event

description TEXT Description of the event

start_date DATE Start date of the event

end_date DATE End date of the event

location VARCHAR(255) Location of the event

organizer_id INTEGER Foreign key referencing User.id

Table: Ticket_Type

Column Name Data Type Description

id INTEGER Primary key

name VARCHAR(255) Name of the ticket type

description TEXT Description of the ticket type

Table: Ticket

Column Name Data Type Description

id INTEGER Primary key

ticket_type_id INTEGER Foreign key referencing Ticket_Type.id

event_id INTEGER Foreign key referencing Event.id

price DECIMAL(10,2) Price of the ticket

quantity_available INTEGER Quantity of available tickets

start_date DATE Start date of the ticket availability

end_date DATE End date of the ticket availability

🔥 Event Management Application 🔥 4


Table: Order

Column Name Data Type Description

id INTEGER Primary key

user_id INTEGER Foreign key referencing User.id

ticket_id INTEGER Foreign key referencing Ticket.id

quantity INTEGER Quantity of tickets ordered

order_date DATETIME Date and time of the order

Table: Invitation

Column Name Data Type Description

id INTEGER Primary key

event_id INTEGER Foreign key referencing Event.id

sender_id INTEGER Foreign key referencing User.id

recipient_id INTEGER Foreign key referencing User.id

message TEXT Invitation message

status ENUM('accepted', 'rejected', 'pending') Invitation status

Table: Schedule

Column Name Data Type Description

id INTEGER Primary key

event_id INTEGER Foreign key referencing Event.id

start_time DATETIME Start time of the scheduled event

end_time DATETIME End time of the scheduled event

speaker_id INTEGER Foreign key referencing User.id

topic VARCHAR(255) Topic of the scheduled event

description TEXT Description of the scheduled event

Table: Notification

Column Name Data Type Description

id INTEGER Primary key

🔥 Event Management Application 🔥 5


user_id INTEGER Foreign key referencing User.id

event_id INTEGER Foreign key referencing Event.id

message TEXT Notification message

created_date DATETIME Date and time the notification was created

Table: Analytics

Column Name Data Type Description

id INTEGER Primary key

event_id INTEGER Foreign key referencing Event.id

ticket_sales INTEGER Number of tickets sold for the event

attendance INTEGER Number of attendees for the event

Metrics for measuring attendee engagement at the


engagement_metrics TEXT
event

🎯 Hints for REST Apis


1. Create Event: POST /events

2. Get Event Details: GET /events/{eventId}

3. Update Event Details: PUT /events/{eventId}

4. Delete Event: DELETE /events/{eventId}

5. Get Ticket Types: GET /events/{eventId}/ticket-types

6. Create Ticket Type: POST /events/{eventId}/ticket-types

7. Update Ticket Type: PUT /events/{eventId}/ticket-types/{ticketTypeId}

8. Delete Ticket Type: DELETE /events/{eventId}/ticket-types/{ticketTypeId}

9. Get Attendee List: GET /events/{eventId}/attendees

10. Add Attendee: POST /events/{eventId}/attendees

11. Update Attendee: PUT /events/{eventId}/attendees/{attendeeId}

12. Delete Attendee: DELETE /events/{eventId}/attendees/{attendeeId}

13. Get Event Analytics: GET /events/{eventId}/analytics

🔥 Event Management Application 🔥 6


14. Get Event Agenda: GET /events/{eventId}/agenda

15. Send Invitation: POST /events/{eventId}/invitations

🎯 Hints for Screens


1. Home Screen - Displays a list of upcoming events and featured events.

2. Event Details Screen - Displays detailed information about a specific event, such as
event name, date, time, location, description, ticket types, and prices.

3. Ticket Selection Screen - Allows the user to select the number and type of tickets
they want to purchase for an event.

4. Payment Screen - Displays the total cost of tickets selected and prompts the user to
enter their payment details.

5. Ticket Confirmation Screen - Displays confirmation of the user's ticket purchase,


including a QR code for electronic ticket storage and access.

6. My Tickets Screen - Displays a list of all the tickets the user has purchased for
various events, with options for electronic ticket storage and event check-in.

7. Event Schedule Screen - Displays the schedule of events for a specific event,
including information about speakers, vendors, and event logistics.

8. My Events Screen - Displays a list of all the events the user has purchased tickets
for, along with the event details and electronic ticket storage options.

9. Event Creation Screen - Allows event organizers to create a new event and enter all
the necessary details, such as event name, date, time, location, description, and
ticket types and prices.

10. Event Management Screen - Allows event organizers to manage their events,
including ticket sales, attendee information, and event logistics.

11. Invitation Creation Screen - Allows event organizers to create and send invitations
to potential attendees, with options for customization and RSVP tracking.

12. Analytics Screen - Displays event performance analytics, such as ticket sales,
attendance, and engagement metrics, to help event organizers make informed
decisions about future events.

🔥 Event Management Application 🔥 7


🔥 Event Management Application 🔥 8

You might also like