Skip to content

Project 3: Submit & Reflect

Rubric

Before submitting double-check that you've met each of the grading criteria below.

All of the following must be satisfied to achieve a "Met" status

Criteria Met Status
Screenshots
  • Screenshots clearly show tests passing, expected output, error handling, and no JavaDoc errors.
  • Screenshots clearly show your servlets running in the browser.
  • HTTP Request screenshot clearly shows the querystring and queryParameter values.
Debugging & Problem-Solving Code is free from errors, and all provided tests pass without any issues.
Code Quality Code is exceptionally clean, efficient, and maintainable. Follows best practices, coding standards, and programming principles.
Efficiency The Analyzer should run with search tokens if, and, for, the on the BigFile in under 10 seconds.
Properties The properties have been used in the application in place of hard-coded values.
Constructors Each class has an empty constructor.
Git and GitHub You have consistently uses Git and GitHub for version control. Commits are meaningful and atomic. At least 25 commits messages have been made during Unit 3.
Java IO Correct Java IO classes are used to read and write data to files.
Exception Handling Exception handling is used correctly throughout the application, including providing user-friendly error messages. Try-with-resources is implemented correctly.
Collections The appropriate concrete implementation of the Collections interface is used, such as Sets and Lists.
Functionality The FileSummaryAnalyzer, DistinctTokensAnalyzer, LargestTokensAnalyzer, and DistinctTokensAnalyzer still produce the correct output with the BigFile.
The TokenLengthsAnalyzer and TokenSearchAnalyzer produce the correct output with the BigFile.
  • Tokens with length of 1: 218539
  • Tokens with length of 27: 1
  • Search locations for token: and 29, 181, 189, 198...
  • Search locations for token: the 1, 21, 47...
Code Documentation All classes, methods, instance variables, and constructors are thoroughly documented with accurate descriptions and proper JavaDoc comments.
Web App
  • Sign design has been utilized with templates
  • Relative URLs are used.
  • JavaDoc is included for all methods and classes
  • EL is used to display the properties
External Sources External sources (websites, classmates, AI tools, etc), if utilized, are referenced and documented within the code as comments.
Reflection Issue created correctly with thoughtful answers to the reflection questions.

Screenshots

Place all screenshots the screenshots/project-3 directory.

For screenshots 1-2, you may choose to show all results (tests, build, and exception handling) in one screenshot of your console. If you go this route, name the screenshot, project03Success.png.

  1. testsPass.png show all the unit tests passing in the console.

  2. successfulBuild.png show the program builds without errors.

  3. tokenLengths.png the top of your token_lengths.txt file after analyzing the bigFile.txt.

  4. tokenLocations.png the top of the tokens_locations.txt file when searching for the tokens: the, and, for, and adsfjdj.

  5. httpRequest.png the full results HTTP Request Data Servlet running in the browser. YOU MUST show results for both the query string and query parameter.

  6. propertiesServlet.png the properties servlet running in the browser.

  7. javaDoc.png show the JavaDoc script running without errors.


Push your code to GitHub

  1. Stage all your changes for the next commit.

    git add .
    
  2. Commit your code with a meaningful message

    git commit -m "some meaningful message here
    
  3. Push your code to your remote repository

    git push
    

GitHub Issue & Reflection

  1. Create a new issue in GitHub, title it: "Project 3 ready for review".
  2. Reflect on Project 3: Copy the below text and paste it into the "Add a description" textarea.

Note on Question #2

Question 2 can be submitted in any format! If you would rather tell your Project 3 story through audio, video, drawings/FigJam, or whatever you have in mind, let me know!

Suggestion: Work on this reflection in another document and copy it all to your issue once complete.

@kkschumacher

## Project 3 Reflection

#### 1. Are you completing a code review for this project? If yes, place an "X" between the brackets [] to indicate which review you plan to complete.
- [ ] MS Teams
- [ ] Recorded video

#### 2. Tell your Project 3 "story". Describe how it unfolded, from its overall learnings to the obstacles and pitfalls you encountered along the way, whether they made you cringe, caused frustration, or left you exclaiming "oh no!" Your commit history should help you reflect on your project journey. Elaborate on the creative approaches and solutions that took you from "oh no!" to "I got this!". Emphasize the significant takeaways and knowledge you acquired throughout the project's journey.


#### 3. Time how long it takes for you Analyzer application to run when using the search tokens "if, and, for, the"? Record the time here.


#### 4. Look back at your commit history. How many git commits did you create during this unit? Do your commit message show the process and progress through the project, if yes, how so? What, if any, improvements have you made to committing frequently and creating meaningful commit messages.



#### 5. Now that you have finished your code, look back at your planning document. What about your plan was correct? What was incorrect?



#### 6. Look back at the Project 2 reflection in your closed issues. Have you made progress in the areas you chose to improve on? Explain.



#### 7. List three things you want to focus on by the end of the semester. Reference the course competencies (located in the syllabus) for assistance in choosing areas to focus on.


#### 8. If you haven’t already watched the challenge presentations for the JSP Scripting Elements or MVC Application, do so now. What new insights or knowledge did you gain from the presentation(s)? What, if any, questions do you have on the topics? Post your insights and questions in the Slack channel as a thread.

Schedule Code Review

See Project 3 Code Review for details on the parts to code review.


Making Corrections

If you receive a "Not Yet" mark on your project code, you are encouraged to make corrections to your code.

  1. Using the verbal feedback your instructor gives during the code review or written feedback in GitHub, make the necessary updates to your project code.

  2. Add, commit, and push all your changes before the due date.

  3. Reply to your GitHub Issue and include the list of the changes/corrections you made.

  4. I will review your changes and reply to your issue with any additional feedback.