Mr. Gottsacker
Computer Programming
The final project for this class will take place over several weeks, and via several stages. The entire process will emulate the Agile software development methodology. Each stage will have an accompanying review practice, through which students' peers and the instructor will provide feedback that should be addressed in the next development iteration.
The foundational project instructions are straightforward: students will build a piece of software that accomplishes some sort of nontrivial goal. On an individual project basis, we (the instructor and each student) will agree on how that should appear. A standard requirement will certainly be clean, well-structured, well-documented Java code.
There will be three deliverables spaced out over the last three weeks of the 2020 Spring semester. The third deliverable is the final version of the project. Each deliverable will have an accompanying review session with the instructor and another student. The review sessions will require each student to present his work toward the given deliverable. In a meeting, he must demonstrate his progress toward his goal, including:
Deliverable review meetings will occur on the same day each week for the same pairs of students. Sign up for a day and time on this Google Sheet starting at 3:00 PM on Monday 04-20.
Review meetings will only have the required members. Anyone may attend Deliverable 3 presentations, as these are the final project presentations. All students must attend at least eight presentations in addition to their own.
Start thinking critically about the software you might want to construct. Think about the software you use everyday. Think about the programming concepts you have learned how to use this semester. How can you apply those in a novel way?
Some ideas:
Complete this Google Doc with details about your project. You will not be able to edit it directly; instead, download it, fill it out, and upload it to the same folder where you upload assignments.
Your proposal will be graded on the following criteria:
Because of its temporal proximity to the project proposal submission, this deliverable will likely not hold as much coding progress as subsequent deliverables. There should, however, be clear evidence of a software development approach (top-down or bottom-up), and some progress made on the final version's foundational technical problems.
Materials to be submitted to instructor by 5:00 PM the day before the meeting:
This deliverable should possess a very real shape that closely resembles the project's final form. Most of the heavy development work should be done by this point. Ideally, there is mainly code clean-up and extra features added after this deliverable. All suggestions from the last deliverable review should be implemented.
Materials to be shared with instructor + peer by 5:00 PM the day before the meeting:
This is the final version of the project. All suggestions and feedback should be implemented. Projects should be polished and ready to display to peers in a five-minute presentation (+/- 1 minute), with two minutes for questions at the end (5 + 2 = 7 minutes total). Presentation talking points must include:
Materials to be submitted to instructor by 5:00 PM the day before the presentation:
Deliverables
Review meetings
Write a text adventure game in Java.
Your game must include all of the following: