Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Project Review #5

Open
ivananb opened this issue Feb 13, 2024 · 0 comments
Open

Project Review #5

ivananb opened this issue Feb 13, 2024 · 0 comments

Comments

@ivananb
Copy link

ivananb commented Feb 13, 2024

1. General

1.1. How creative is the project?
1: not creative

1.2. How difficult was it to implement the project?
4: complex

1.3. List 3 positive aspects of the project. Motivate your selection.

  1. The program works well with all the variables I tested. It never crashes, maps are always generated, everything works as expected.
  2. The documentation is complete and clearly structured. It is easy to follow and run the program
  3. The code is well written and clean

1.4. List 3 negative aspects of the project. Motivate your selection.

  1. The cursor doesn't resize as in the demo video. The result is seeable, but the cursor doesn't change size when I click + or -. Maybe it's a problem with my computer
  2. The changes that are applied to the 2D map after the 3D map has been generated, aren't visible in the 3D map. The user must generate a new 3D map to see them
  3. Saving and loading maps is not intuitive. The keyboard buttons works as expected, but many some graphic buttons in the app would simplify the process

2. Programming techniques

2.1. Evaluate how well 5 programming techniques we learned throughout the course were adopted in the project. Assign a mark from 0 to 5 to each technique, where 0 means completely incorrect usage and 5 means perfect usage.

  1. Try-Catch-Blocks - 5
  2. Method Overriding - 5
  3. Castings - 5
  4. Test Hooks - 5
  5. Collections - 5

3. Git repository

3.1. How appropriate is the .gitignore file of the project?
5

3.2. How appropriate is the README.md file of the project?
4

4. Maven

4.1. Can you compile the project via Maven?
2: yes

4.2. Can you clean the project via Maven?
2: yes

4.3. Can you run the project via Maven? Check README.md on how to
run the project.
2: yes

4.4. Are the project's dependencies appropriately configured in pom.xml?
2: yes

4.5. Are all Maven plugins appropriately configured in pom.xml?
2: yes

4.6. Does the project adopt Maven's standard directory layout?
2: yes

5. Testing

5.1. Are all tests passing? Run mvn test.
2: yes

5.2. How well do the tests cover the code?
4: all important methods

5.3. Do the tests actually verify the expected behaviour of the program?
4: most do

5.4. How well can you understand what the tests are supposed to verify?
4: most do

6. Documentation

6.1. How understandable is the Javadoc written for classes, fields and methods of the program?
4: good

6.2. How useful is the Javadoc written for classes, fields and methods of the program?
4: useful

6.3. Can you generate documentation files for this project? Run mvn javadoc:javadoc.
2: yes

6.4. How adequate are the non-javadoc comments written throughout the code?
2: mostly adequate

7. Code quality

7.1. Is the code style adopted throughout the project consistent? Consider how whitespace is represented (spaces or tabs), tab size, naming conventions for classes, methods and variables, indentation, braces usage, line width. See Google Java Style Guide as an example of code style guidelines.
2: yes

7.2. How would you rate the project in terms of code duplication?
3: no code duplication / only justifiable duplication

7.3. How easy it is to understand how the program works by looking at the source code?
2: not hard, but not easy

7.4. Is the program excessively inefficient?
3: almost no method

7.5. Does the program crash unexpectedly (e.g. by an uncaught exception)?
3:never

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant