Iteration 3: First Implement / Test

  • The goal for this iteration is to have your dev stack stood up, with a few core features working and passing unit tests.
  • You must have a fully automated build of your project with your top-level README.md describing how to build it, and all files needed for the build must be in your repository. So e.g. for Java you will need a Maven or Gradle build file, etc.
  • By iteration 4 You must use TravisCI or other continuous integration tool/service to automatically run all of your tests at each push to your repository; iteration 3 is a good time to start working on that goal. See the tools page for details on Travis. The only exception to this requirement is if your framework is not Travis-friendly. For example IOS and Android are not Travis-friendly. Get approval from your advisor if you believe you cannot use Travis.
  • For this and subsequent iterations you are required to use the GitHub issue tracker to manage bugs, features, etc. See the OOSE Git Page for more concrete suggestions on how to use the issue tracker.
  • For this and subsequent iterations you are required to use GitHub's project boards to keep track of your progress.
    • See The GitHub project boards help pages for documentation.
    • Make a different column for each iteration in your project (Iteration 3, Iteration 4, etc), and either make notes or assign issues to these columns.
    • You should have either a note or issue for each proposed feature of your app that was in your iteration 2 feature list, and assign it to an iteration.
    • Make sure to integrate your project boards with your GitHub issues - the project board lets you directly post issues there as cards.
    • Don't worry about getting it perfect, you can easily move features/issues between iteration columns as things evolve.
  • For this and subsequent iterations we require that a changelog to be kept in a top-level file CHANGELOG.md in your repo. See keepachangelog for information on how to do it; here is a good example - Dolphin Changelog
  • You need to have a codebase pushed to master on your team's GitHub repository for our inspection.