Submission 1 Grading Expectation Explanation
Program Purpose and Function Describes the purpose of the program, describes the program’s functionality, and can take an input and return an output. The purpose of this program is to provide the user with an entertaining and competitive experience through the gameplay of several virtual games like chess and battleship along with a game history page where users are able to view previous games and view an analysis of the gameplay.
Data Abstraction Shows how data has been stored in a collection and shows data from that collection as it contributes to the overall purpose of the program. Identifies the name of a variable representing the collection being used and describes what the data contained in the collection represents in the program. Our program abstracts data through the creation of records that are accessed in a backend database. The purpose of this database is to store crucial information about a user such as the moves inputted and previous gameplay. This value can be used in our program to construct a history of games with the login information that they use for their account. We will also store a UserID, Name, and Password to identify users and authenticate their account to be able to save gameplay and revisit it.
Managing Complexity Shows a collection of data that manages complexity. Explains an alternative method that would have been more complex and explains why that method could not be used or how it would have to be written differently. There will be multiple ways that we have complexity in our website as we have a variety of different games that will be functioning and live with another local player. This allows a unique variety of code as well and is all managed under the category of games.
Procedural Abstraction Shows a student-developed procedure with at least one parameter that has an effect on the functionality of the procedure, and shows where that procedure is called. Describes how the procedure contributes to the functionality of the program. This may be found in every game we create because they are all sufficiently complex to need a function with a parameter.
Algorithm Implementation Includes a student-developed algorithm that includes sequencing, selection, and iteration. Explains how the algorithm works in detail enough to where someone could recreate it. The games we create for the online arcade will have enough algorithms to satisfy this need.
Testing Describe two calls to the selected procedure in response 3c. Each call must pass a argument that causes different outputs. Describes conditions being tested by each call. Identifies the result of each call. In each game, we’ll test two distinct features that examine various aspects of the java backend and produce various outputs.

We must complete all project requirements, including appropriateness and the demonstration of programming abilities through a written report and a video, as part of the College Board performance assignments. To demonstrate mastery of the project and the AP CSP curriculum, this includes demonstrating the program’s function and purpose, managing complexity, applying algorithms and procedures, testing, and providing thorough descriptions. For our CPT group project, we have been developing a website that resembles an arcade where users may connect and play chess or battleship with other players. It will contain a variety of gaming elements, including moves, victories, and user impacts. Additionally, there will be a need that individuals sign in before playing so that their profile can reflect their victories and losses. For our CPT group project, we have been developing a website that resembles an arcade where users may connect and play chess or battleship with other players. It will contain a variety of gaming elements, including moves, victories, and user impacts. Additionally, there will be a need that individuals sign in before playing so that their profile can reflect their victories and losses. I will be concentrating on the website’s game development as my personal contribution to this project. I’ll make sure to score well on each and every component of the CPT rubric, and I believe I’m doing well in that regard. I’ve already decided on the program’s functionality and goal, and I’ll be specific about it in both my write-up and my video. In addition, I’ll be able to test it, and after building the score and time tracker page’s backend and making sure it works properly, I’ll be able to go into more detail about the algorithms used, how complexity was managed using lists, and how my backend is secure and makes use of a variety of complex programming methodologies. In the video, I’ll demonstrate how your profile will change depending on what object you click.