ASSESSMENT
When we came across the README.md file for the project "BAC Calculator", the file accurately describes the function of the program. However, the README file could also use a few additional features, such as information about the developers, when the program was created, and screenshots to give a preview of the project. Upon examining the build.xml, everything looks good. All targets perform the desired functions, and we were easily able to compile and run the program without issues. The build.xml file also included numerous targets including dist, download, jar, javadoc, jws, publish, and test. The program itself works perfectly fine in performing its function in giving the right BAC and stating whether the user is safe to drive. In addition, the developers included a test file which has good coverage in testing all data types. Despite this, we read the issues section on the original GitHub repository and found the suggested comments to have a great potential in improving the code. The first issue pointed out had to do with the programs output, which displayed the expected BAC, but did so in a confusing manner where varying entries could not be easily distinguished. Another issue suggested adding an option for the user to input their weight in kilograms as well, which could benefit international users. The last issue encouraged adding an additional feature to estimate the time it takes before the user can legally drive again, improving the functionality of the program. Other than that, some minor issues we noticed were button sizing/placement; some text fields were off-center and/or difficult to read.
PLAN TO IMPROVE CODE
- README - add development information(authors, date), screenshots of program, build/execute instructions.
- Fix program output to display information in a less confusing manner; refresh program output after each entry.
- Add a drop-down menu in input for the user to specify their weight in pounds or kilograms.
- Add a feature that outputs the time befoe the user can legally drive again.
- Expand test coverage to test for additional features.