This is a collaborative project developed by a team of five members: Fatma Said, Madonna Mosaad, Ammar Yasser, Mohamed Salah, and Mohamed Walid. The project aims to create a chess game with a graphical user interface (GUI) and additional features such as user authentication and a score table.
Contribution: UML Diagram creation, GUI Wireframe creation, Bug fixes, Logic implementation (Move, checkmate, stalemate), Chessboard, Pieces, Squares finalization. Description: Fatma played a significant role in the project. She helped create the UML diagram and GUI wireframe during the design phase. Fatma contributed to bug fixing and improving the codebase. She implemented the Move class to handle piece movement and highlight valid moves. Additionally, Fatma developed the checkmate and stalemate logic and finalized the Chessboard, Pieces, and Squares classes.
Contribution: User Authentication, Score Table implementation, GUI Design for login/register and score table. Description: Madonna implemented user authentication for the project, creating the login/register functionality allowing users to access the game. She also developed the Score class, which manages a table to record game results, including winners, losers, draws, and game durations. Additionally, Madonna was responsible for designing the GUI for the login/register page and the score table.
Contribution: Intital Chessboard implementation, Player class development, Documentation writing. Description: Ammar was responsible for the initial implementation of the Square class and drawing squares on the Chessboard. He also wrote the documentation for the project. Ammar developed the Player class and incorporated Mohammed Walid's timer code into it. Additionally, he played a role in finalizing the Chessboard GUI.
Contribution: UML Diagram creation, GUI Wireframe creation, Logic implementation (highlight valid moves, piece movement), Square and Chessboard finalization. Description: Mohammed Salah made significant contributions in the early stages of the project. He helped create the UML diagram and GUI wireframe during the design phase. He worked on implementing key features such as highlighting valid moves and moving pieces. Mohammed Salah also played a role in finalizing the Square and Chessboard classes, which form the core structure of the chess game.
Contribution: Timer functionality implementation, README documentation writing. Description: Mohammed Walid implemented the timer functionality, managing time limits for each player's turn. He also wrote a detailed README documentation file to provide comprehensive information about the project.
The chess game project incorporates the following features:
- Chessboard: The Chessboard class represents the game board and manages the placement and movement of chess pieces.
- Pieces: Different chess pieces such as pawn, rook, knight, bishop, queen, and king are implemented as separate classes.
- Move: The Move class handles the movement of chess pieces and highlights valid moves for the selected piece.
- User Authentication: The project includes a login and registration system to allow users to access the game with their own accounts.
- Score Table: The Score class manages a table to record game results, including winners, losers, draws, and game durations.
- Graphical User Interface: The GUI provides an interactive and visually appealing interface for the chess game, including the login/register page, the game board, and the score table.
- Timer Functionality: A timer is implemented to manage time limits for each player's turn, enhancing the gameplay experience.