SSFINAL Report
SSFINAL Report
A
Project Report
on
SPORTSPLASH
BTech-IT, Sem VI
Prepared By:
Savalia Priyanshi Kailashbhai (IT127)
Sangani Kevinkumar Hiteshbhai (IT124)
Guided By:
Prof. Anand K. Patel
Dept. of Information Technology
April, 2024
1
CANDIDATE’S DECLARATION
We further declare that to the best of our knowledge the report for B.Tech. VI semester
does not contain part of the work which has been submitted either in this or any other
university without proper citation.
Candidate’s Signature:
Candidate’s Name: Savalia Priyanshi Kailashbhai
Student ID: 21ITUOS102
Candidate’s Signature:
Candidate’s Name: Sangani Kevinkumar Hiteshbhai
Student ID: 21ITUOS067
2
DHARMSINH DESAI UNIVERSITY
NADIAD-387001, GUJARAT
CERTIFICATE
This is to certify that the project carried out in the subject of Project-I, entitled
“SPORTSPLASH” and recorded in this report is a bonafide report of work of
1) Savalia Priyanshi Kailashbhai Roll No. IT127 ID No : 21ITUOS102
2) Sangani Kevinkumar Hiteshbhai Roll No. IT124 ID No: 21ITUOS067
of Department of Information Technology, semester VI . They were involved in
Project work during academic year 2023 -20 24.
3
ACKNOWLEDGEMENT
Special thanks are due to Prof. Anand K. Patel , our project supervisor, for their
invaluable insights, constant motivation, and constructive feedback throughout the
duration of this endeavor. Their dedication and mentorship have been instrumental in
shaping our project and refining our research methodologies.
We extend our heartfelt thanks to the Prof. (Dr.) Vipul K. Dabhi for their leadership
and continuous support throughout our project journey. Their guidance and
encouragement have been invaluable in shaping our academic endeavors.
We extend our appreciation to all the staff members of the [Department Name] for their
assistance and cooperation whenever needed. Their willingness to assist us with
technical issues and administrative matters has been immensely helpful in the smooth
execution of our project.
This project has been a fulfilling learning experience for us, and we are truly grateful
to everyone who has been a part of this journey.
4
ABSTRACT.....................................................................................................................................7
TABLES..........................................................................................................................................8
1. List Of Figures...........................................................................................................................8
2. List Of Tables...........................................................................................................................9
1. INTRODUCTION.......................................................................................................................10
1.1 PROJECT DETAILS: BROAD SPECIFICATIONS OF THE WORK ENTRUSTED TO YOU.....10
1.2 PURPOSE........................................................................................................................10
1.3 SCOPE............................................................................................................................10
1.4 OBJECTIVES..........................................................................................................................10
1.5 TECHNOLOGY AND LITERATURE REVIEW....................................................................11
2. PROJECT MANAGEMENT.....................................................................................................12
2.1 FEASIBILITY STUDY........................................................................................................12
2.1.1 TECHNICAL FEASIBILITY...........................................................................12
2.1.2 TIME SCHEDULE FEASIBILITY..................................................................12
2.1.3 OPERATIONAL FEASIBILITY......................................................................13
2.1.4 IMPLEMENTATION FEASIBILITY.............................................................13
2.2 PROJECT PLANNING......................................................................................................13
2.2.1 PROJECT DEVELOPMENT APPROACH AND JUSTIFICATION.......13
2.2.2 PROJECT PLAN................................................................................................14
2.2.3 MILESTONES AND DELIVERABLES..........................................................14
2.2.4 ROLES AND RESPONSIBILITIES.................................................................15
2.2.5 GROUP DEPENDENCIES................................................................................15
2.3 PROJECT SCHEDULING..................................................................................................16
3. SYSTEM REQUIREMENTS STUDY.....................................................................................17
3.1 STUDY OF CURRENT SYSTEM........................................................................................17
3.1.1 PROBLEMS AND WEAKNESSES OF CURRENT SYSTEM...................17
3.1.2 USER CHARACTERISTICS............................................................................17
3.1.3 HARDWARE AND SOFTWARE REQUIREMENTS..................................18
3.2 CONSTRAINTS................................................................................................................18
3.2.1 REGULATORY POLICIES.............................................................................18
3.2.2 HARDWARE LIMITATIONS..........................................................................19
3.2.3 INTERFACES TO OTHER APPLICATIONS...............................................19
3.2.4 PARALLEL OPERATIONS.............................................................................19
3.2.5 HIGHER ORDER LANGUAGE REQUIREMENTS....................................19
3.2.6 RELIABILITY REQUIREMENTS..................................................................20
3.2.7 CRITICALITY OF THE APPLICATION......................................................20
5
3.2.8 SAFETY AND SECURITY CONSIDERATION............................................20
3.3 ASSUMPTIONS AND DEPENDENCIES............................................................................20
4. SYSTEM ANALYSIS................................................................................................................21
4.1 REQUIREMENTS OF NEW SYSTEM..................................................................................21
4.1.1 USER REQUIREMENTS............................................................................................21
4.1.2 SYSTEM REQUIREMENTS...............................................................................22
4.2 FEATURES OF NEW SYSTEM.........................................................................................24
4.3 CLASS DIAGRAM............................................................................................................25
4.4 ACTIVITY DIAGRAM............................................................................................................26
4.5 SEQUENCE DIAGRAM..........................................................................................................27
4.6 USE CASE DIAGRAM............................................................................................................28
4.7 DATA MODELING.................................................................................................................29
4.7.1 DATA DICTIONARY.................................................................................................29
4.7.2 ER DIAGRAM.............................................................................................................31
5. IMPLEMENTATION PLANNING...........................................................................................32
5.1 IMPLEMENTATION ENVIRONMENT (SINGLE VS MULTIUSER, GUI VS NON GUI)...........32
5.2 PROGRAM AND MODULES SPECIFICATION........................................................................32
5.3 CODING STANDARDS...........................................................................................................32
6. TESTING....................................................................................................................................33
6.1 TESTING PLAN.....................................................................................................................33
6.2 TESTING STRATEGY..............................................................................................................33
6.3 TESTING METHODS..............................................................................................................33
6.4 TEST CASES.........................................................................................................................34
7. USER MANUAL........................................................................................................................35
8. LIMITATION AND FUTURE ENHANCEMENT.............................................................44
9. CONCLUSION AND DISCUSSION...................................................................................45
9.1 CONCLUSION.......................................................................................................................45
9.2 DISCUSSION..........................................................................................................................45
9.2.1 SELF ANALYSIS OF PROJECT VIABILITIES................................................45
9.2.2 PROBLEMS ENCOUNTERED AND POSSIBLE SOLUTIONS.....................45
9.2.3 SUMMARY OF PROJECT WORK......................................................................46
REFERENCES...............................................................................................................................47
6
ABSTRACT
7
TABLES
1. List Of Figures
8
2. List Of Tables
9
1. INTRODUCTION
Developed a dynamic sports platform utilizing React for frontend and Spring Boot for
backend. Features include match creation, tournament management, and live score
updates. Designed to provide users with a seamless experience for organizing and
following sports events.
1.2 PURPOSE
The purpose of the project is to offer a comprehensive and interactive sports platform
that enables users to efficiently create and manage matches and tournaments while
providing real-time score updates, enhancing engagement and convenience for sports
enthusiasts and organizers alike.
1.3 SCOPE
1.4 OBJECTIVES
Goals:
1. Incorporate future scopes for player data storage and addition of new games.
2. Streamline team management by allowing direct use of existing team data.
3. Ensure scalability and flexibility to accommodate future expansions and
enhancements.
Exclusions:
1. No live match streaming.
2. No financial transactions or betting features.
3. No commentary or in-depth match analysis.
10
1.5 TECHNOLOGY AND LITERATURE REVIEW
1. Employing React.js for frontend development and Spring Boot for backend
development, facilitated by Visual Studio Code (VSCode) for frontend and
IntelliJ IDEA for backend development, to create a dynamic sports platform.
11
2. PROJECT MANAGEMENT
Viewing our project from a technical point of view (thinking various tools and
technologies being used in developing the system). We have decided that the
following technologies will be more than enough to develop a complete working
system (including tech. & tools used for project tracking, monitoring, etc. along
with development).
For Frontend development: VS Code
For Backend development: Intellij IDEA
Frontend: React JS
Backend: Spring boot
Database: MySql database
For testing: Postman
We are equipped with basic workflows of each tool and tech. and capable to explore
further if required. Each of the above technologies is freely available and some of
the skills are yet to be learned but it is manageable. From this, it is clear that our
project is technically feasible.
We have planned the steps for the completion of our project in the given duration.
Firstly, we will perform requirement gathering & analysis by the mid of January
2023. We will prepare the SRS document and the GUI design tentatively by
January 2023 ending. The diagrams required for the design as well as the database
design will be tentatively completed by February 2023. For coding and unit
testing, 4 weeks and for system and integration testing another 2 weeks will be
required. Hence tentatively by the end of March 2023. We will be able to
complete the project and ready for its demonstration at starting of April 2023.
Being a 2 members team, we will be able to complete our project in the estimated
time.
12
2.1.3 OPERATIONAL FEASIBILITY
We will be working on developing a full Web application for the first time. So
we need to learn the basics of the React js and Spring boot. Also, we need to learn
how to connect our project with database MySql and Learn some other things
which can be useful in our project.
Since we are well aware of the basics of React js and Spring boot we just need
to learn how to implement it according to our needs which will take around 2 or 3
weeks and be completed before starting implementation.
We would be using the Agile model for project development. Agile methods break
tasks into smaller iterations or parts that do not directly involve long-term
planning. The project scope and requirements are laid down at the beginning of
the development process. Plans regarding the number of iterations, the duration,
and the scope of each iteration are clearly defined in advance.
Following are the phases in the Agile model are as follows:
1. Requirements gathering
2. Design the requirements
3. Construction/ iteration
4. Testing/ Quality assurance
5. Deployment
6. Feedback
13
Fig 2.2.1 Agile Methodology
14
7. Deployment and Launch: Deploy the platform to production environment and
provide documentation.
8. Post-Launch Support: Establish support procedures, address issues, and
perform regular maintenance.
15
2.3 PROJECT SCHEDULING
16
3. SYSTEM REQUIREMENTS STUDY
Organizers:
These users are responsible for creating and managing sports matches and
tournaments within the platform.
They have privileges to schedule matches, define tournament rules, and manage
participant registrations.
Players:
Players actively participate in sports matches and tournaments organized within
the platform.
They interact with the system to register for events, view match schedules, and
access live score updates during games.
Spectators:
Spectators follow sports events organized on the platform but do not actively
participate as players or organizers.
They use the system to match schedules, access live score updates, and follow
game progress in real-time.
17
3.1.3 HARDWARE AND SOFTWARE REQUIREMENTS
3.2 CONSTRAINTS
1. Data Protection: Ensure compliance with data protection laws (e.g., GDPR,
CCPA) for handling user data, including personal information collected during
registration and participation.
2. Intellectual Property Rights: Respect copyrights and obtain proper licensing
for third-party content used on the platform to avoid infringement and legal
issues.
3. Compliance Monitoring and Reporting: Implement continuous monitoring and
reporting procedures for regulatory compliance, particularly concerning the
online platform's operations and user data management.
18
3.2.2 HARDWARE LIMITATIONS
There are limitations of this web app, the device must have a browser and JDK
installed on it.
The dynamic sports platform allows concurrent operations such as match creation,
tournament management, and live score updates. Utilizing React for the frontend
and Spring Boot for the backend facilitates parallel processing, ensuring seamless
execution of tasks like player data storage and game expansion while maintaining
platform stability and responsiveness.
The platform requires robust concurrency support for smooth operations in match
creation, tournament management, and live score updates. It must scale efficiently
to handle increased data and user load while seamlessly integrating with external
systems for player data storage and sports API access. Additionally, a modular and
extensible architecture is vital to facilitate future enhancements without extensive
redevelopment efforts.
19
3.2.6 RELIABILITY REQUIREMENTS
Real-Time Functionality:
The application's ability to provide real-time match creation, tournament
management, and live score updates is critical, as any delays or disruptions could
adversely impact user experience and the integrity of sports events.
Data Integrity and Reliability:
Ensuring the integrity and reliability of data, including match records and live
scores, is crucial for maintaining the accuracy and credibility of the platform,
thereby preserving user trust and satisfaction.
Data Encryption:-
Ensure robust encryption for data transmission to safeguard sensitive information
and prevent unauthorized access.
Authentication and Authorization:-
Implement secure authentication methods to verify user identity and enforce
proper access controls, enhancing platform security and protecting against
unauthorized actions.
20
4. SYSTEM ANALYSIS
21
4.1.2 SYSTEM REQUIREMENTS
Functional Requirements:
1. User Login:
Input: User provides registration details such as username, email, and password.
Output: Confirmation of successful registration and redirection to home page.
3. Match Creation:
22
4.4 Matches:
Input: User select matches option.
Output: Get all the matches for that tournament.
Post Condition: Tournament will be added to that user profile who has create
that tournament. Tournament will be added to the home page and tournaments.
4.5 Start Match:
Input: Click on start match option.
Output: User will redirect to the match page where user can add points for
teams.
Post condition: Users can see live scoring of matches in matches section from
home page.
4.6 End Match:
Post condition: Users will be able to see key points of the match.
5. User Dashboard:
23
6. Contact US:
Input: User fills out the contact form with message details.
Output: Email is sent to the creators of the website with the user's message.
7. Profile Management:
In the Profile page, User can see matches and tournaments created by them.
Input: User clicks on the logout button.
Output: Session is terminated, and user is redirected to the home page.
Non-Functional Requirements:
1. Performance: Ensure quick response times and scalability to handle concurrent
users and data loads efficiently.
3. Scalability: Design the system to scale seamlessly with user growth and
feature expansion without compromising performance.
24
Social Sharing and Engagement Features:
1. Enable users to share match results, tournament updates, and player
achievements on social media platforms directly from the platform.
2. Foster community engagement by allowing users to like, comment, and share
content within the platform.
25
4.4 ACTIVITY DIAGRAM
26
4.5 SEQUENCE DIAGRAM
27
4.6 USE CASE DIAGRAM
28
4.7 DATA MODELING
User:
Attributes:
Email (Email address of the user)
FirstName (First name of the user)
LastName (Last name of the user)
University (University affiliation of the user)
Password (Encrypted password for authentication)
MobileNo (Mobile number of the user)
Tournament:
Attributes:
TournamentID (Unique identifier for each tournament)
TournamentName (Name of the tournament)
TeamSize (Maximum number of players per team)
Teams (List of teams participating in the tournament)
IsDefault (Flag indicating if the tournament is default or custom)
StartDate (Date when the tournament begins)
EndDate (Date when the tournament ends)
Team:
Attributes:
TeamID (Unique identifier for each team)
TeamName (Name of the team)
Player:
Attributes:
PlayerID (Unique identifier for each player)
PlayerName (Name of the player)
29
TeamID (ID of the team to which the player belongs)
Match:
Attributes:
MatchID (Unique identifier for each match)
Team1Score (Score of team 1)
Team2Score (Score of team 2)
StartTime (Start time of the match)
EndTime (End time of the match)
Winner (ID of the winning team)
30
4.7.2 ER DIAGRAM
31
5. IMPLEMENTATION PLANNING
To make the system coding easy, easy to remember, and reduce the chances of errors,
some techniques are used at the time of coding of the application which is called
coding standard. The coding standard which we adopted during the coding is
explained as follows:
1. Each nested block should be properly indented and spaced.
2. The code should be properly commented on for understanding easily.
3. Comments regarding the statements increase the understandability of the code.
4. Better to avoid the use of digits in variable names. The names of the function
should be written in camel case starting with small letters.
5. The name of the function must describe the reason for using the
function clearly and briefly.
32
6. TESTING
The testing technique that is going to be used in the project is White box testing. In
White box testing the Tester knows the internal structure of the code or the program of
the software.
The development process repeats this testing subprocess several times for the
following phases.
a) Unit Testing.
b) Integration Testing
Unit Testing tests a unit of code (module or program) after the coding of that unit is
completed.
Integration Testing tests whether the various programs that make up a system,
interface with each other as desired, fit together and whether the interfaces between
the programs are correct.
Testing is carried out in such a hierarchical manner to ensure that each component is
correct and the assembly/combination of components is correct. Merely testing a
whole system at the end would most likely throw up errors in components that would
be very costly to trace and fix.
In white-box testing knowledge of internal structure and logic is exploited. Test cases
are presented such that possible paths of control flow through the software item are
traced. Hence more defects than black-box testing are likely to be found.
33
Out of the 2 methods for testing, black box testing and white box testing, we would be
using the white box testing as we are well aware of the internal functionalities of our
application unlike the black box testing, where we require a 3rd party to test our cases
and the internal details are hidden from him.
34
7. USER MANUAL
User Manuals are manuals that enable the user of a system or application to
understand the working of the system and help them to use them efficiently. It is
usually written by a technical writer, although user guides are written by
programmers, product or project managers, or other technical staff, particularly in
smaller companies.
Follow below mentioned steps to work with the app:
Home Page:
35
Now, Click on the create button , You will get two options create match and
create Tournament.
Create Match:
Click on the Create Match , you will get cards for selecting game.
36
After selecting game , you will get dialogue box for adding match
information.
Click on the submit button and you will be redirected to that match page.
37
Click on the start match, Enter the required score for Badminton Match.
38
You can see Live Score in the Matches.
39
Create Tournament:
By Selecting on the Game, You will get the dialogue box for adding
tournament information.
40
Click on the add team.
41
Click on the Create ,Match will be created.
42
Contact :
Profile:
43
8. LIMITATION AND FUTURE ENHANCEMENT
• Limitations:
Future Enhancement:
44
9. CONCLUSION AND DISCUSSION
9.1 CONCLUSION
According to us, this project gave all of us the confidence to believe in ourselves and
a great experience of how to work as a team. It also boosted our requirement
gathering, system analysis, designing aspects, technical coding as well as time
management skills. Also we learned how to work together as a team & collaborate for
making ends meet for our web app. We also got an insight into how we would have to
work in future at job or startup & how we have to contribute for the good of the entity
we are working.
9.2 DISCUSSION
According to us, this project is absolutely a good start for gaining hands-on
experience on projects. It is useful if it is managed according to the goal for which it
is made.
Problems:
1. Maintenance of Website: The website faces technical challenges related to
regular maintenance tasks, updates, and ensuring optimal performance over
time.
2. Data Redundancy: Technical issues arise concerning redundant data storage,
leading to inefficiencies in data management and storage utilization.
3. Effective Teamwork: Non-technical challenges emerge in fostering effective
collaboration and coordination among team members, impacting project
progress and productivity.
Solutions:
1. Maintenance of Website: Implement automated maintenance scripts and
regular performance audits to streamline upkeep tasks and ensure consistent
functionality.
2. Data Redundancy: Employ database normalization techniques and data
cleanup processes to optimize storage efficiency and eliminate redundant data
entries.
45
3. Effective Teamwork: Foster open communication channels, establish clear
roles and responsibilities, and encourage teamwork through regular meetings
and collaborative tools.
46
REFERENCES
Stackoverflow: https://stackoverflow.com
Youtube: YouTube
DevUI: https://www.devui.io/
Npm: https://www.npmjs.com/
Draw.io: https://draw.io/
Geeksforgeeks: https://www.geeksforgeeks.org/
https://github.com/Kevin0403/SportSplash
47