jbjohnson2 / indieProject

0 stars 0 forks source link

Peer review 2 #24

Open BryceAllard opened 4 months ago

BryceAllard commented 4 months ago

Design/Code Review 2

Project: Campsite Reviewer

Developer: Jennifer Cecil

Reviewer: Bryce Allard

Areas for Improvement Criteria Items Met or Exceeded
Project effectively utilizes the technologies and techniques specified in the project objectives Using technologies you mentioned and we practiced working with in class
Planned MVP Functionality Project does everything you described in your statement and exceeds project requirements. Nice work!
Logging framework used, i.e., no System.out.println() or printStacktrace() statements. No printStackTrace or system.out.printlns
Hibernate used for all data access. X
Authentication implemented and adds value to the application. X
Consumes at least one web service or public api using Java. Finding your proximity to a campsite is a cool feature and good way to consume an API
Application is database-driven using full CRUD. X
Database includes multiple one to many relationships. X
Deployed to AWS for public access. Played around with the deployed site, looks great!
Implements best practices (for example, data validation) X
Synthesis of multiple concepts in unfamiliar situations requiring research beyond the scope of the class X
Experiments individually, exhibits independence and drive, shows originality in the solution. X
Implemented technologies or techniques not covered in course materials. X
Code quality - Evaluate code quality for the following and identify specific areas for improvement (class, method or line number). Be sure to list which code quality plugins/tools you used to assist with this analysis
Single-purpose methods X
Well-structured project X
Descriptive naming of packages, classes, methods, variables X
Classes appropriately-sized (no monster classes) X
CPD (copy paste detection, meaning are the same lines of code repeated? X
Are there candidates for super/subclass relationships, abstract classes, interfaces X
are any values hard-coded that should be in a properties file? X
Proper exception handling X
Proper error reporting to the user - custom error pages? Nice error page, this is something I'd like to add.
Code documentation Good documentation throughout
Is there code in the servlet doGet/doPost that should be refactored into testable classes or methods? X
Evaluate the JSPs for templating, data validation, overall look and feel. index page looks nice
JSPs use JSTL and EL, no java code X
Unit tests are truly a unit test rather than a high level functional test X
Test data is appropriately cleaned up or handled X
There is full coverage of methods that perform business logic or utility functions X
Redundant code is eliminated by using set up and tear down methods, i.e., @Before, @After X
Other comments/notes?
Demonstrates initiative and thoughtful planning to leverage available resources (time, equipment, external expertise) to meet milestones and project objectives. X
Evidence of significant revision and incorporation of feedback. X
What does github history and insights demonstrate about the work on this project? Good descriptive commit messages.
Project complexity
Consider the user display exercise to be a simple project; how does this project compare? difficult
What aspects of the project add complexity? AWS cognito for verification, one-to-many relationships, consuming a complex web service
Additional Comments I love the idea! Project works great and it's clear you put a lot of thought and effort into this. If I had to be nitpicky, the styling was a little inconsistent/ off on certain pages. I understand this is not a priority for this class though and like I said, it's the only criticism I could come up with. Great work!!
pawaitemadisoncollege commented 4 months ago

Hi @BryceAllard - thanks for sharing your review of @jbjohnson2's project here.

The specificity you provide here, "If I had to be nitpicky, the styling was a little inconsistent/ off on certain pages. I understand this is not a priority for this class though and like I said, it's the only criticism I could come up with. ", is a detailed, actionable piece of feedback. It's also on target, and shows that you "get" what is most important in terms of the class and our goals.

In some cases, there's an "X" indicating a given item was achieved; some additional detail in some cases would be helpful. For example, "Implemented technologies or techniques not covered in course materials." - which tech was implemented? There's no need for revision here, instead I'm providing this feedback for you to keep in mind as you find yourself reviewing work on the job.

Last thing - I appreciated that you acknowledged what you took away from the review that will help you in your project, such as error pages.

jbjohnson2 commented 4 months ago

Thank you for the feedback @BryceAllard. I appreciate your thoughtful review of my project