slor8 / iBookTracker

0 stars 0 forks source link

Final Code Review #6

Open agoldbin opened 6 years ago

agoldbin commented 6 years ago

Design/Code Review 3

Project:

Developer: See Lor

Reviewer: Aaron Goldbin

Category Criteria Rating/Comments
Project Overview
Which planned functionality has been met? Full CRUD implemented, authentication for users and admins.
What planned functionality has not been met? API not yet implemented Describe the GitHub history and what it demonstrates about the project progress during the semester. There has been consistent progress.
Describe how peer and instructor feedback/recommendations were incorporated into the project.
Other comments/notes?
JSPs
Evaluate the JSPs for templating, business logic, data validation, overall look and feel. Site could use a little styling, but everything is functional and easy to follow.
Other comments/notes?
Java code quality Evaluate the code quality for the following and identify specific areas for improvement (class, method or line number)
  • single-purpose methods
  • well-structured project
  • descriptive naming of packages, classes, methods, variables
  • classes appropriately-sized (no monster classes)
  • CPD (copy paste detection, meaning are the same lines of code repeated?)
  • are there candidates for super/subclass relationships, abstract classes, interfaces?
  • are any values hard-coded that should be in a properties file?
  • proper exception handling
  • proper error reporting to the user
  • code documentation
  • Doesn't seem to be redundant code or methods doing multiple functions
    Other comments/notes?
    Logging Evaluate the use of logging, for example:
  • appropriate use of logging statements in the code for error logging and debugging
  • logging levels used - info, debug, error
  • no occurrences of System.out.printlns or printStackTrace()
  • logging works on AWS deploy
  • Logging used in place of System.out.println used Other comments/notes?
    Unit Tests Evaluate the unit tests, for example:
  • tests are truly a unit test rather than a high level functional test
  • test data is appropriately cleaned up or handled
  • there is full coverage of methods that perform business logic or utility functions
  • redundant code is eliminated by using set up and tear down methods, i.e., @Before, @After
  • Unit testing appears good with good code coverage. Other comments/notes?
    Security Evaluate authentication/authorization: Look good
    Is it implemented correctly and working locally as well as on AWS? Yes
    Other comments/notes?
    Web Service/API integration Evaluate the service/api integration, for example:
  • Which service/api is implemented?
  • How is error handling of the service implemented? For example, what happens if the service is not available?
  • Still not implemented.
    Other comments/notes?
    Independent research topic What is the independent research topic?
    Is the independent research topic/technique implemented in the project?
    Other comments/notes?
    Deployment Has the application been successfully deployed to AWS? Application been successfully deployed to AWS
    Is the hosted application fully functioning? Yes
    Other comments/notes?