vangkyle / PersonalFinance

Tracking personal finance
0 stars 0 forks source link

Code Review 1 #2

Open bmodahl87 opened 7 years ago

bmodahl87 commented 7 years ago

Design/Code Review 1

Project: Expense Tracker

Developer: Kyle

Reviewer: Brandon

Category Criteria Rating/Comments
Problem Statement Does it exist? Yes
Does the problem statement accurately describe project purpose? Yes, good explanation.
Is the problem statement professional? Think of prospective employers viewing this as part of the developer's portfolio. I think so; good info, not over-the-top.
What is good? Gives a good base with room to expand.
What could be improved? Just keeping up to date as you go along.
Design Documentation Does it exist? Yes
Is the navigation/flow through the application logical and easy to use? Yes, familiar feel.
Is the order in which the fields are displayed and form fields entered logical and easy to use? Yep, makes sense
What data is missing? Nothing
Is there data that is not used? No
What is good? I like the dashboard idea
What could be improved?
Data model Does it exist? Yes
Is everything on the screens represented in the model? Yes
Does the model represent good database design? Yes
What is good? Relationships look good
What could be better? Nothing yet, but maybe if anything else is added.
Additional design documents
Application structure in IntelliJ Does it exist? Yes
Is the structure correct for a Maven project? Yes
Are packages and classs appropriately named? Yes
Other comments/notes?
JSPs Do they exist? A few
Is templating used (for example, header.jsp, footer.jsp, etc.)? Yes
Is there business logic mixed in the JSPs? Dont think so
CSS? Dont think so
Other comments/notes?
Entities/DAOs/Controllers Do they exist? Not yet
Java code quality Are methods single-purpose?
Are classes appropriately-sized classes (no monster classes)?
Are the same lines of code repeated at all?
Do any classes perform very similar functions that could be candidates for super/subclass relationships?
Are any values hard-coded that should be in a properties file?
Are variable names descriptive?
Are there many branches or loops that could be simplified or broken up into smaller methods?
Do the DAOs use Hibernate? No hard-coded sql!
Other comments/notes?
Logging Has log4J been added? Not yet
Are there logging statements in the code?
Are appropriate logging levels used? Info, debug, error, for example.
Are there any System.out.printlns in the code?
Other comments/notes?
Unit Tests Do they exist? Not yet
Do the tests pass?
What is the current code coverage?
Is each test truly a unit test or are they functional tests?
Other comments/notes?
Web Service/API integration Has a web service/api been selected? jFreeChart
What web services/apis might work well with this application? not sure
Independent research topic Has a topic been selected? jFreeChart
What topic/s might fit well in this application? not sure