Skip to content

Project 1: Roadmap

In this multi-stage project, you’ll build a command-line Java program that processes text files and outputs detailed reports. You’ll design, code, test, submit, and present your work—just like in a real-world development team.

You’ll complete Project 1 in four stages:

  • Plan → Understand the requirements, design your classes, and write pseudocode.
  • Build → Write the code that meets the specifications and passes all tests.
  • Submit & Reflect → Take screenshots, push to GitHub, and write your project reflection.
  • Code Review → Walk through your code, explain decisions, and get feedback.

Part 1 – Plan

Go to Project 1 Plan

  • Read and re-read the requirements.
  • Complete the starter class diagram.
  • Write pseudocode for FileAnalysis.

📦 Deliverables: Class diagram screenshot, pseudocode file, GitHub issue with reflection.


Part 2 - Build

Go to Project 1 Code Requirements

  • Set up your Java project structure.
  • Follow all specifications for classes, methods, and outputs.
  • Handle errors and document code.

📦 Deliverables: Fully functional program, passes all tests, correct output files, complete JavaDoc.


Part 3 - Submit & Reflect

Go to Project 1 Submission & Reflection

  • Take all required screenshots.
  • Push code to GitHub.
  • Create “Project 1 ready for review” issue with reflection.

📦 Deliverables: Screenshots, GitHub repo updated, reflection completed.


Part 4 – Code Review

Go to Project 1 Code Review

  • Walk through your code and answer key questions via Teams meeting, in-person, or recorded video.
  • Use correct Java terminology and explain your design choices.
  • Take notes and respond to feedback.

📦 Deliverables: Code review completed, notes saved, corrections made if needed.

Note: you need to complete 2 code reviews to pass the course. If you are in an in-person class, code-reviews can be completed during class time.


Pro Tips

  • Pace yourself → Spread the work over the unit; don’t cram at the end.
  • Commit often → Use Git commits to show progress (this also shows me your coding process!).
  • Ask early → Post questions in Slack’s #help channel.
  • Check specs often → Small details (like file names and output formatting) matter.

By the end of Project 1, you’ll have:

  • A complete, working Java program that processes text files efficiently.
  • Experience designing classes, writing pseudocode, and handling large files.
  • A polished submission with professional documentation.
  • Confidence presenting and explaining your code.