Professional Documents
Culture Documents
PROJECT REPORT
AS A PARTIAL REQUIREMENT
FOR THE DEGREE OF
MASTER OF COMPUTER
APPLICATION
(M.C.A. 6TH SEMESTER)
YEAR : 2020-21
ORGANIZATION
BBD India Pvt. Ltd.
Pune, India
SportsGeek (Fantasy Cricket
Game) & Asset Management System
Jain Rushabh D.
112
20 21
Acknowledgement
The success and outcome of this project required a lot of guidance and
assistance from many people, and I am extremely privileged to have got
this all along the completion of my project. All that I have done is only due
to such supervision and assistance and I would not forget to thank them.
Firstly, I would like to express my deep sense of gratitude towards
Department of Computer Science, VNSGU, Surat for providing me the
opportunity to work on live project at the company. I am very thankful to
Dr. Apurva Desai (Head of Department) for his keen interest and for
providing all facilities to carry out the project work.
I am extremely thankful to BBD India Pvt. Ltd., for providing me an
opportunity to do the project work in Pune and giving all support and
guidance, although they had busy schedule managing the corporate affairs.
I owe my deep gratitude to company project guide, Mr. Chetan Korat
(Technical Lead), who took keen interest on project work and guided me
all along, till the completion of project work by providing all the necessary
resources for developing a good system.
I heartily thank my internal project guide, Prof. Gargi Shah, Assistant
Professor, Department of Computer Science for her guidance and
suggestions during the project work.
I am also thankful to and fortunate enough to get constant encouragement,
support and guidance from all teaching staff of Department of computer
Science, who helped me in successfully completing my project work.
Last but not least, my heartfelt appreciation goes to all those not named here,
but who have rendered their co-operation, little or more, directly or
indirectly in this project.
Thanking All.
Jain Rushabh D.
INDEX
1
Project 1
SportsGeek
(Fantasy Cricket Game)
2
2.1 About the Project
This project is a mobile application project for Fantasy Cricket Game. The game is just for
the entertainment of employees of the organization.
The application can be used for various cricket tournaments like IPL (Indian Premier
League), World Cup, ODI, etc. But, the application is developed keeping in mind IPL as
the tournament.
Before the start of the cricket season, all users are given same points. E.g. 500 points.
After the cricket season starts, Users can put their contest on daily matches. Users can put
contest on any of the two teams and for any number of points.
Based on the result of the match, the total contested points of all users is distributed among
winners in the proportion of their share of contest points. Losers will not get any points.
Simple principle : “Winners win what losers lose in that match”
There are two levels of users for the application, whose roles are given below :
1. Admin :
• Admin can manage tournaments, teams, matches, venues, players, users, recharge,
etc.
• Admin can approve users from the list of registered users.
• Admin can update the match result after the match is finished.
• In addition, admin can do whatever user can do.
2. User :
• User can view upcoming matches schedule, place contest, view other’s contest.
• User can read the rules of the game in the Fantasy section.
• User can view live matches and results of past matches.
• User can view his available points, winning points and losing points.
• User can send messages in chat window. Chat window also shows other’s contests
when they place or update their contest.
• User can view other users position and his/her own position among them in
LeaderBoard.
• User can manage his own profile including profile picture. User can change the
password, and can reset it if he/she forgets password.
3
2.2 System Engineering
The mobile application uses tabs for navigation between different screens. There are 5 tabs
as below :
1. Home : Displays some images of cricket in carousel.
2. Fantasy : Displays the Schedule of upcoming matches and allows user to place or update
his/her contest by clicking on the card of the particular match.
3. Chat : Displays the chat messages sent by other users and also allow user to send text
message in chat. Chat window also displays the contest logs.
4. LeaderBoard : Displays list of all users with their current points with the user with
highest points at the top and lowest points at the bottom.
5. My Matches : Displays Upcoming Matches, Live Matches and Results of past matches.
In addition to above tabs, there is a profile screen which displays user profile information.
It also displays available points, winning points and losing points of the logged in user.
Also allows user to update profile information or change password.
User can place or update contest until the Match Start Timestamp. Once the match starts,
users are not allowed to manipulate contest of that particular match.
Whenever the user places or updates the contest, one entry is stored in the “ContestLog”
tab to keep track of contests.
4
2.2.2 Proposed System
➢ Objectives :
The main objective of the project is to develop a completely transparent system which
allows employees of the organization to have some entertainment by a playing game based
on cricket.
Not just watching cricket, but have some entertainment with it.
The points of all users will be transparent to other users and no cheating is possible.
5
➢ Frameworks used in Project :
1. Spring Boot :
6
2. React Native :
7
2.2.3 UML Diagrams
8
Admin Use Case
9
➢ Sequence Diagrams :
10
User Authentication (Sign in)
11
Reset Password on Forget Password
12
User Account Approval by the Admin
13
Add and Update Contest
14
Update User Profile
15
➢ Robustness Diagrams :
16
User Authentication (Sign in)
17
Reset Password on Forget Password
18
Matches Schedule
19
Leader Board
My Matches
20
Get User Details for Update Profile
21
Update Password
22
Chat
23
➢ Class Diagram :
24
2.3 System Design
25
5. Table Name : User
Primary Key : UserId
Sr. No Field Name Data Type Width Description
User Identification Number
1 UserId int unsigned
(P.K. & Auto Increment)
2 FirstName varchar 50 First name of User
3 LastName varchar 50 Last name of User
F.K. refers to GenderId in
4 GenderId tinyint unsigned
Gender table
5 Username varchar 50 Username for login
6 Password varchar 100 BCrypt Encrypted Password
7 ProfilePicture varchar 200 Profile picture of User
F.K. refers to RoleId in Role
8 RoleId tinyint unsigned
table
Available Points of user (can be
9 AvailablePoints int unsigned
used to place a contest)
Status of user (if user is enabled
10 Status boolean
or disabled)
11 CreatedOn timestamp Timestamp of User creation
26
8. Table Name : Player
Primary Key : PlayerId
Sr. No Field Name Data Type Width Description
Player Identification Number
1 PlayerId int unsigned
(P.K.)
F.K. refers to TeamId in Team
2 TeamId int unsigned
table
3 Name varchar 50 Name of Player
F.K. refers to PlayerTypeId in
4 TypeId tinyint unsigned
Player table
5 ProfilePicture varchar 200 Profile picture of Player
6 CreatedOn timestamp Timestamp of Player creation
27
11. Table Name : Matches
Primary Key : MatchId
Sr. No Field Name Data Type Width Description
Match Identification Number
1 MatchId int unsigned
(P.K.)
F.K. refers to TournamentId in
2 TournamentId tinyint unsigned
Tournament table
3 Name varchar 100 Name of match
4 StartDatetime timestamp Match start Timestamp
F.K. refers to VenueId in Venue
5 VenueId int unsigned
table
F.K. refers to TeamId in Team
6 Team1 int unsigned
table
F.K. refers to TeamId in Team
7 Team2 int unsigned
table
TeamId of the Winner Team
8 WinnerTeamId int unsigned F.K. refers to TeamId in Team
table
Result of the match. Values can
be from the following :
9 ResultStatus tinyint unsigned • 0 : draw
• 1 : winner
• 2 : match canceled
Minimum contest points for the
10 MinimumPoints int unsigned
match
11 CreatedOn timestamp Timestamp of match creation
28
13. Table Name : Contest
Primary Key : ContestId
Sr.
Field Name Data Type Width Description
No
Contest Identification
1 ContestId int unsigned Number (P.K. & Auto
Increment)
F.K. refers to UserId in User
2 UserId int unsigned
table
F.K. refers to MatchId in
3 MatchId int unsigned
Matches table
F.K. refers to TeamId in
4 TeamId int unsigned
Team table
5 ContestPoints int unsigned Points contested by user
Points win by user in this
6 WinningPoints int unsigned
match
Timestamp of contest placed
7 ContestTimestamp timestamp
by user
Timestamp of last contest
8 UpdateTimestamp timestamp
update by user
29
15. Table Name : PublicChat
Primary Key : PublicChatId
30
2.3.2 ER Diagram
31
2.3.3 UI Screens Design
Splash Screen, Login Screen and Sign Up Screen
32
Profile photo Selection, Email Validation in Sign Up
33
Sign Up and then try to Login
34
Email sent to User after Sign Up
35
Home Screen and Matches schedule screen (with rules)
36
Contest Screen
37
Contest Screen
Chat
38
Leader Board and My Matches
39
User Profile
40
2.4 Future Enhancements
41
Project 2
Asset Management
System
42
3.1 About the Project
43
3.2 System Engineering
44
3.2.2 Proposed System
➢ Objectives :
The main objective of the project is to develop a system which can efficiently manage all
the assets of the organization.
The application also has advanced search facility. User can search data of any column via
single textbox.
The application also provides sorting facility by clicking on the column headings of the
table.
45
3.2.3 UML Diagrams
46
Admin Use Case
47
➢ Sequence Diagrams :
48
Reset Password on Forget Password
49
Update Employee Details
50
Employee CRUD
51
➢ Robustness Diagrams :
52
Reset Password on Forget Password
53
Update Profile
Update Password
54
View Assign Assets to Employee
55
Bid on Asset
Add Employee
56
3.3 System Design
57
4. Table Name : AssetType
Primary Key : AssetTypeId
Sr. No Field Name Data Type Width Description
Asset Type Identification
1 AssetTypeId int unsigned Number (P.K. & Auto
Increment)
2 AssetType int unsigned Name of Asset Type
3 Status int Status of Asset Type
Timestamp of AssetType
4 CreatedOn Timestamp
creation
58
7. Table Name : Asset
Primary Key : AssetId
Sr. No Field Name Data Type Width Description
Asset Identification Number
1 AssetId int unsigned
(P.K. & Auto Increment)
F.K. refers to AssetTypeId in
2 AssetTypeId int Unsigned
AssetType table
3 PurchaseDate date Date of purchase of asset
Defines whether the asset is
4 Discarded boolean
discarded or not
5 CreatedOn timestamp Timestamp of Asset creation
59
10. Table Name : Auction
Primary Key : AuctionId
Sr.
Field Name Data Type Width Description
No
Auction Identification Number
1 AuctionId int unsigned
(P.K. & Auto Increment)
F.K. refers to AssetId in Asset
2 AssetId int unsigned
table
MinimumBid Minimum Bid Amount for the
3 int unsigned
Amount auction
4 StartDate timestamp Timestamp of start of auction
5 EndDate timestamp Timestamp of end of auction
6 SaleBidId F.K. refers to BidId in Bid table
Timestamp of sale of asset in
7 SaleDate timestamp
auction
Defined whether the auction is
8 Status boolean
active or not
9 CreatedOn timestamp Timestamp of Auction creation
60
3.3.2 ER Diagram
61
2.3.3 UI Screens Design
Login Page
Loading…
62
Invalid Login Credentials
Admin Dashboard
63
Update self Profile
Manage Employees
64
List of Employees
Inactive Employees
65
Search
66
Asset Types
67
Properties
68
Manage Assets
Asset Details
69
Assign / Return Assets
Unassigned Assets
70
Manage Auctions
71
User Login :
User Dashboard
72
View Returned Assets
73
Active Auctions
74
Place bid with less than minimum bid amount
Place bid with greater than minimum bid amount, but less than current highest bid
amount
75
Bid added
List of Bids sorted by Bid Amount with highest bid at the top
76
3.4 Future Enhancements
77
4. Bibliography
Books :
1) Name : Java – The Complete Reference
Author : Herbert Schildt
Publication : Oracle Press
Webliography
1) https://docs.oracle.com
2) https://docs.spring.io
3) https://reactjs.org/docs
4) https://reactrouter.com
5) https://reactnative.dev/docs/getting-started
6) https://www.npmjs.com
7) https://adminlte.io
8) https://dev.mysql.com/doc/refman/8.0/en
9) https://www.mysqltutorial.org
10) https://firebase.google.com
11) https://sweetalert2.github.io
12) https://projectlombok.org
13) https://the-hive.bbd.co.za
14) https://www.tutorialspoint.com
15) https://www.w3schools.com
16) https://www.javatpoint.com
17) https://www.stackoverflow.com
18) https://medium.com
19) https://www.geeksforgeeks.org
20) https://www.codejava.net
21) http://www.java2s.com
22) https://www.cricapi.com
78