Lesson Weekend

This week we'll revisit the concept of Behavior-Driven Development covered in the latter half of Intro to Programming. We'll be practicing writing programs using that same process, but this time with one extra step. Instead of our specs being relegated to our README.md files, we'll be creating coded, automated tests for the behaviors we identify during the BDD process.

As we discussed in previous classes, writing great specs requires forethought, patience, and practice. So this week we'll be asking you to practice these skills. With each new project your given please resist the urge to jump right into code. Instead allow yourself and your partner time to come up with a game plan you are both equally clear about. Discuss points of disagreement or confusion. Practice being part of a great team by being a great pair with a great plan.

Independent Project Objectives

At the end of the week you will submit an independent project that will be reviewed for the following objectives:

  • Tests have complete coverage for the behaviors that need to be tested.
  • Tests begin with small behaviors and increase in complexity.
  • All tests are passing.
  • Getter and setter methods are present and functioning.
  • Logic is easy to understand.
  • Unnecessary files are discluded from Git with a .gitignore file.
  • Project is in a polished, portfolio-quality state.
  • You are able to discuss your code, and the concepts behind it with an instructor using the correct terminology.
  • Code and Git documentation follows best practices (descriptive variables names, proper indentation, detailed commit messages, well-formatted README.)