Welcome Page

TABLE OF CONTENTS

1.  PROJECT MANAGEMENT

2.  BUSINESS PLAN

3.  SOFTWARE DOCUMENTATION

EXECUTIVE SUMMARY

There are many different applications of coding. One can analyze data, generate outputs, calculate complex equations, and draw conclusions from various applications of code. One such program is MATLAB. In MATLAB, one can do a variety of things, from creating various programs such as a tip calculator to creating vectors and making graphs with data loaded from other sources. For our purposes, We will be introducing MATLAB in a different way: creating a program that would allow one to play the card games War and Blackjack.

In this project, we were assigned to design software based around a card game. We had the choice to choose from a selection of card games, or propose a different one to the TAs and the professor. For our choice, we selected War and Blackjack. We had some resources to work with, in particular a reference file that would allow us to generate the cards necessary for playing War and Blackjack. We first developed the pseuedocode in order to gain an idea of how to go about creating these programs. From there, it was a little of trial and error as well as looking back at previous MATLAB assignments in order to draw inspiration. We met as a group multiple time over the course of this project.

Over the course of the project, our code evolved over time to become more advanced and intuitive to the user. We first wanted to set the base of each game, where it would work at a basic level, and then add features on top of it. Some of the features we had planned didn’t make it into the final release, as we had some issues with some features not working with what we had.

After many attempts and a bit of luck, we finally had a working program for War and Blackjack each. We demonstrated our programs to the professors and the GTA and were awarded full points as well as some extra credit. Our code worked as designed, and allowed for options to replay the game as well as playing against the computer.

In conclusion, we learned a lot over the course of this project. We needed to collaborate effectively as a team and work with each other in order to accomplish what we needed to do. Some limitations that we encountered were conflicting schedules as well as a slight lack of communication as far as finding a time to meet in order to work on the project. In addition, our programs could be a little more advanced with more options if we were allotted more time. Some possible options we could add would be a more advanced AI, options for a two player game, among other possibilities.