Following the conclusion of the first project sprint, I’ve decided to adjust the expectations for the upcoming sprints. Each team must implement the following functionality:

  • a computer player for competition against a human player
  • a graphical user interface (GUI)

Rather than stipulating the sprint in which each feature will be implemented, you have freedom to choose the order in which your team completes them. That is, you may implement the computer player before the GUI or vice versa.

Regardless of the order in which features are developed, it is critical that you continue to work on your existing implementation. If your code has yet to be approved, moving ahead with new development inevitably increases the amount of rework required because any changes to the existing code must also be applied to new code. Thus, you might consider having at least one team member focus on updates to the existing code until that code has been approved. I will continue to review and to provide feedback pull requests as they’re updated.

As you think about the next sprint, remember to focus on the minimum viable product and improve upon it throughout the sprint. For example, the computer player might initially not place any walls and always try to move forward even when moving forward leads to a dead end. An initial version of a GUI might display the game board but require players to specify moves using the console. It’s better to have a simple implementation approved and followed up with incremental updates than a complex implementation that still requires a lot of work at the end of the sprint.

Finally, I have been actively working to address several common issues that I saw across multiple teams in the first sprint:

  • The “Proposed Change” and “Implementation” sections of the specification template have been revised to provide greater clarity regarding what’s expected in each section.
  • Text files will be automatically converted by Git to use Unix-style line endings, thus avoiding “trailing whitespace” being reported by the git diff --check CI job.
  • SpotBugs has been removed from the CI checks due to lack of output in the build log.

If you have suggestions or ways to address issues that you encountered during the first sprint, consider submitting them for potential extra credit.