Format

Group project and presentation.


Instructions

  1. Form a group of 2 to 5 people
  2. Choose a project.
    • One of the games listed below (not already chosen by another group)
    • A project of your choice (has to be approved)
  3. Work on the project.
    • The project should be hosted on GitHub (or a similar service)
    • You should practice Continuous Integration while working on the project (you can use Travis CI or other similar tools to implement the CI system)
    • To practice Continuous Integration you need automated tests. Use automated tests and Test Driven Development to grow your code.
    • Keep in mind the concept of Simple Design, code smells, S.O.L.I.D. Principles.
  4. Get ready for the exam.
    • Contact us to schedule the exam.
    • Send us the link of the project repository.
  5. Present your project.
    • Show a live demo (working software is the primary measure of progress)
    • Describe what steps you took, what tests you used (the commit history could help in doing this)
    • Show us the code, highlight design choices you made and why you made them
  6. Answer our questions about the project.
    • We will look at the objects in your systems to understand how they work together.
    • We will look at the tests to understand how they guided the development.
    • We will look for code smells, S.O.L.I.D. Principles violations, lack of clarity (both in production and test code).
    • We will look for functional style code (e.g., Java Streams).


Games

Develop a command-line version of one of the following pencil-and-paper games.

Last modified: Wednesday, 9 December 2020, 11:46 AM