Determine and build documentation of:
Determine Initial Actors (use-cases)
Build alpha Procedural version of project
Turn-in: Basic version of number guessing game
Determine Object Structures (Classes) to be used in beta
Turn-in: Class UML
Build a command-line OOP beta version of program
Turn-in: OOP beta version of program
Add file handling for storage
Add nested structures, overrides, and overloads as needed (i.e. clean up)
test, test, test SHIP!
Turn-in: Final project with file "top scorers!"
-
plan project
-
ensure artifacts due and due dates are known
-
build plan for alpha program (first deliverable: Flowchart)
-
Build procedural Alpha Version which:
-
Randomly generate a number between 1 and 15
-
Track each round's score (which starts at 10)
-
Track the player's total score
-
Take in input:
-
Player Name (First/Last/MI but get full) I.e. I would enter: "Josiah S Greenwell"
-
Player's DoB (get as MM/DD/YYYY) Store as 3 separate variables
-
Player's guess
-
Validate Player guess (should be between..)
-
Determine if Player guess is high/low/correct
-
If correct: output score
-
If incorrect: Subtract 1 from score Determine if score is 0 Return a "You lose" message with computer's number
-
If Score >0: Determine if high/low and output correct message for these If the Player did not lose: Ask Player if they want to play again and repeat game or exit based on answer If new game: add round score to total If exit or they lost: output total score
-
Turn-in: Alpha Version of Program
-
Add appropriate classes
-
Single Responsibility Principle should be followed
-
Ensure methods and properties are created and follow DRY Principle
-
Turn-in: Class UML created for planning
-
Refactor Procedural Alpha Project to OOP Beta
-
Add appropriate overrides, overloads, and nested collections
-
Add file handling to record the top 5 high scores!
-
And read/print them at start of the game.
-
Turn-in: Beta Version of project