Beruflich Dokumente
Kultur Dokumente
Website: https://cs353group18.blogspot.com.tr/?m=1
Let’s name two friends as Jack and Lou. Jack purchases and online game through
our platform. He likes it and refers the game to his friend, Lou. Taking his advice, Lou also
purchases the game. They enjoy the game together. As they complete each game, they
make more and more purchases. Over time, they play the games with more and more
friends.
Database System:
For our project, we will implement a database system. In the next section of this
report, this system will be explained in detail. Information about what the database holds,
the tables and the entities with their attributes will be detailed.
Requirements
The use of this program will require a computer and internet connection. The users
will be required to download the application to their desktop and launch it. They will be
asked to register and create an account. Once they log in, they can add other people as
friends by providing their usernames. For purchases, the banking APIs will be required to
process transactions. Furthermore, servers will be needed to host the players during
online games.
Limitations
As more and more users join our platform, the database might need to be extended.
The servers need to be maintained to produce a smooth gaming environment. We also
cannot safeguard against foul language during online interactions. For the users to feel
safe and secure (and have fun!) the chatting systems need to be constantly watched, faulty
behavior reports evaluated and an optional language filtering should be implemented.
In this section of the report, the preliminary design for the database will be
explained. The following tables are the results of an initial design process and they are
subject to change with further development of the project. The main goal here is to give an
abstract view of how the database is approximately going to look like.
User Entity
Plays Relation
sessionID: (integer 24) Stores a session ID for the game being played. Other players
can join the game using this session ID.
gameID: integer (10) Stores a unique ID for each game. This is also the primary
key.
name: char (255) Stores the name of the game.
price: integer (3) Stores the price of the game in the preferred currency of the user.
release_date: char (50) Stores the release date of the game.
rating: integer (3) Stores the rating of the game based on the reviews, out of 100.
reviews: char (255) Stores the reviews of the game by other users.
prequel_games: char (255) If the game is part of a series and has preceding games,
this attribute stores that game(s).
sequel_games: char (255) If the game is part of a series and has follow-up games,
this attribute stores that game(s).
required_age: integer (3) If the game has an age limit, this attribute stores the age.
no_of_players: integer (2) Stores the number of required players to play the game,
from 1 up to 22.
Has Relation
userID: integer (24) Stores the ID of the user which has the credit card.
entity2UserID: integer (24) Stores the user ID for the beholder of the card. This is a
foreign key.
card_number: integer (16) Stores the credit card number. This is a primary key.
cvc2: integer (3) Stores the 3-digit security code of the credit card.
expr_date: char (10) Stores the expiration date of the credit card.
Creates Relation
userID: integer (24) Stores the user ID for the creator of the game. This is a foreign
key.
entityUserID: integer (24) Stores the user ID for the creator of the game request.
This is a foreign key.
request_id: integer (10) Stores a unique request ID. This is a primary key.
gameID: integer (24) Stores the ID of the game for which a request is created.
no_of_players: integer (2) Stores the number of required players to play the game,
from 1 up to 22.
name: char (255) Stores the name of the game.
request_time: integer (10) Stores the time the request was created.
recipient_email: char (50) Stores the recipient’s email, a unique identifier.
recipientID: integer (24) Stores the recipient’s ID, a unique identifier.
elapsed_time: integer (10) Stores the time elapsed since the creation of the request.
no_of_players: integer (2) Stores the number of required players to play the game,
from 1 up to 22.
gameID: integer (24) Stores the ID of the game for which a request is created.
sessionID: integer (24) Stores the ID of the session. Other players can join in using
this ID.
hostID: integer (24) Stores the ID of the host player.
GameRequestrequest_id: integer (10) Stores a unique request ID. This is a foreign
key.
elapsed_time: integer (10) Stores the time elapsed since the creation of the request.
no_of_players: integer (2) Stores the number of required players to play the game,
from 1 up to 22.
gameID: integer (24) Stores the ID of the game for which a request is created.
sessionID: integer (24) Stores the ID of the session. Other players can join in using
this ID.
hostID: integer (24) Stores the ID of the host player.
GameRequestrequest_id: integer (10) Stores a unique request ID. This is a foreign
key.
Invites Relation
sessionID: integer (24) Stores a unique reference ID. This helps identify which user
sent the invitation. This is a primary key.
Friend Entity