Several short exercises throughout the semester will provide you with experience using some of the core tools and techniques necessary for the software development process. These exercises will not make you an expert in using the tools and techniques they discuss. They will provide a common baseline of skill for all members of your team, regardless of what was taught in your previous programming or software engineering courses. In addition, the exercises will often contain references or links to additional material that you can explore in order to become an expert, guru, or wizard.

List of Exercises


Also note, these exercises are not enough to guarantee that you can effectively develop software and write good code. For example, the project in this class uses C++14, but you may have never used C++14 before. The exercises will not provide you with sufficient background or skill in using C++14 effectively. The videos on the links page will only help somewhat with that. Our in class code reviews, discussions, and critiques will help with that, but you should actively seek to improve your knowledge of such technologies on your own as a future software developer. If you are interested in finding additional resources to learn about a particular topic, let me know and I'll be happy to point you in a fruitful direction.