- You will work with the student who reviewed your code in the code review
assignment. You should both have some familiarity with your code: you
because you wrote it, and your partner because they reviewed it.
- You and your partner only need to address the code review suggestions for,
and perform maintenance on, one of your projects. Decide which one and
**post the repository URL in the answer field for the Canvas assignment**.
## Assignment
### Address the Code Review
1. Select six (6) of the improvement comments from the code review.
1. Navigate your web browser to your repository on `git.unl.edu` and open
the Issue Tracker (On the left side-menu, click on `Issues`).
1. For each selected suggestion, create an Issue.
As with your original development on the Yatzy Game,
use the ability to assign issues to developers to coordinate who is
working on which parts of the code: you should only work on an issue
after it's assigned to you.
Note:
- It is possible, even probable, that the issues will be of unequal
difficulty; if one student works on more than three issues and the
other works on fewer than three issues, that does not mean that you
aren't contributing equally.
1. Modify the code to address each of the issues.
1. Test the game (both automated unit test and manual system tests) to confirm
that you didn't break any existing code.
- Fix any faults you accidentally created.
1. As you finish each issue, commit the code and close the issue.
### Perform Software Maintenance
Procrastination Pastimes has concluded that:
- The terms "Small Straight" and "Large Straight" are confusing to players
who are accustomed to the Yahtzee® definitions of Small & Large Straights
- The market for 6-sided dice games is saturated
You have been tasked with changing the game from Yatzy to Ya7zy, in which the
player can choose to play the game with either 6-sided or 7-sided dice, as
geometrically unlikely as that seems.
**As you work on this portion of the assignment, keep track of the how many
lines you change.**
- Keep track of how many lines you add
- Keep track of how many lines you delete
- Keep track of how many lines you modify (not including indentation changes)
- Do not count `import` lines
These values will not affect your grade, but I do want you to report them at
the end of this assignment.
5. Navigate your web browser to your repository on `git.unl.edu` and open
the Issue Tracker. Create an issue for each of:
- Rename "Small Straight" and "Large Straight"
- Add faces file for 7-sided dice
- Allow player to chose the dice to play with
- Display the correct dice, based on the number of die sides
- Display correct scoring categories, based on the number of die sides
- New scoring categories are scored correctly
1. Rename the "Straights" from "Small Straight" and "Large Straight" to
"1st Straight" and "2nd Straight," respectively. That is, the ordinal should correspond to the first value in the sequence (*e.g.*, "1st Straight" is 1-2-3-4-5)
- You may want to take advantage of the `icu4j` library. Notice, for
example, that `NumberScoringCommand.toString` uses this library to
produce the strings "Ones," "Twos," "Threes," etc through a
`RuleBasedNumberFormat` object declared in
`AbstractDieBasedScoringCommand`.
- To generate ordinals, create a `RuleBasedNumberFormat` object,
passing `RuleBasedNumberFormat.ORDINAL` to its constructor.