Welcome Page

Table of Contents

1. Project Management

a. Team Working Agreement

b. Individual Responsibility Agreement

c. Project Schedule

d. Meeting Notes

2. Business Plan

a. User Identification and Interviews

b. Electronic/Print Advertisement

c. Pitch Video With Demonstration

3. Software Documentation

a. Introduction

b. User Manual

c. Program Description for Developers

d. Final Algorithm/Flowchart/Psuedocode

e. Final Program with Comments

f. Discussion

g. Conclusions and Reccomendations

h. References



Executive Summary

The purpose of the Software Design Project was to challenge students to solve problems in MATLAB, using combined knowledge of task-solving, MATLAB programming, and real-world software design. In this project, two classic games, Connect 4 and Over7 / Under7, were reproduced in MATLAB by Team H, and the process was documented. This project allowed the team members to demonstrate their programming knowledge and problem-solving skills in a realistic application.

At first, based on the first User Interview, the initial design schemes of both games were planned out. The planning stage consisted of flowcharts and pseudocode of both games that presented the logics of the game programming. After the planning stage, both games were programmed in MATLAB using methods and skills such as while/for loops, if statements, arrays, matrices, user inputs, etc. Through the first several testings of both two games, some problems and bugs were found. For example, the diagonal-win situation and a tie situation could not be correctly recognized by the Connect 4 program and the user could not end the game by entering a $0 to bet in the Over 7 / Under 7 program. Through the process of optimization, some new methods were applied to both programs and finally those bugs were fixed by the team members. Additionally, a second user interview was performed, and all issues found during this user interview were revised.

Both games were accurately reproduced in MATLAB with both a visual component and a user input component. After the final demonstration, the user manual and the program description for developers were created to instruct users and developers know the rules of the games and the mechanism behind the code. Moreover, a smart computer was recommended to the Connect 4 program to make the user decide to be played by two users or to be played by one person with the computer player. A better playing platform such as playing on iPads with shaking to roll the dice was recommended to the Over 7 / Under 7 program to improve the users’ experience. The team was able to demonstrate their programming, critical thinking, and team work abilities.