Posts

Group K’s Software Design Project

Table of Contents

Project Management: contains information describing the project management of the game software design project.

  • Team Working Agreement: ensures the team is on the same page for how the project will be run and completed
  • Individual Responsibility Agreement: identifies the responsibilities of each team member to make sure the project is completed
  • Project Schedule: identifies when each part of the project needs to be completed and how much is done so far
  • Meeting Notes: keeps track when meetings occur and what is discussed in each meeting 

Business Plan: This section contains information about the user identification and marketing materials necessary to make the software a success with users, investors, and developers.

  • User Identification and Interviews: interviews possible users to asses what they prefer in a gaming experience
  • Electronic/Print Advertisement: provides a flashy but informative advertisement to attract users to play the developed game
  • Pitch Video with Demonstration: short videos that entice users, investors, and developers to become involved in the project and a demonstration of how each game works

Software Documentation: This section contains all documentation for the coding and development process of the design project.  It includes an introduction to the project, manuals for the project, detailed discussion of the code, and the results.

  • Introduction: provides insight into the basic idea of each developed game
  • User Manual: explains how to play the game using a coding software like MATLAB to the user in terms anyone could understand
  • Program Description for Developers: provides the context for each variable and command used in the code in terms that developers could understand
  • Final Algorithm, Flowchart, or Pseudocode: provides the original basic outline for the code of each game
  • Final Program with Comments: provides the exact MATLAB code used to run each game
  • Discussion: explains the process of coding for each game and any problems/solutions reached throughout testing
  • Conclusions and Recommendations: comes to a final conclusion of how the game was developed, tested, and completed while giving improvement suggestions
  • References: includes any sources used throughout the game development process

Executive Summary

Throughout the Software Design Project, the task was to plan and develop a computer game of a certain complexity score using MATLAB.  This project combined problem-solving skills, the engineering design process, and coding to solve a real-world scenario in which programming could be used in a team setting.  By developing and documenting a simple game, this project included the involvement of users, developers, and investors in the design process.  The coded game could also be used to develop more advanced versions if the product were to be produced on a full-scale.

Before deciding what games to create, interviews were conducted to figure out what a player wants in a game. Then each team member chose a game that could be coded in a reasonable time period. The games chosen were Hangman, Over/Under 7, and Blackjack. Pseudocode was then created to outline the general form of each game. After, each game was coded iteratively by testing and debugging until they worked properly.  Throughout this process, each step was documented to explain the design project in thorough detail.

Following the development of Hangman and Over/Under 7, it was concluded that both games could easily be incorporated into further development to create more complex versions of the games.  Because of the simple nature of each code and the popularity of a MATLAB/C++ coding language, both games are a reasonable option for investors, developers, and users alike.  It provides a quick and easy form of entertainment for users, a popular service for investors to contribute to, and a working code for developers to enhance for a better user experience.  These single-player, continuous games provide a user-friendly experience that does not overcomplicate the process of development or game usage.  In order to produce this product on a full-scale, it is recommended that more visuals be introduced to keep the user engaged.  The games should also be made accessible to players on a variety of different formats (app, website, etc.) rather than simply running a code on MATLAB.  Overall, these simple games are a prominent first step in the development process, but they need to be more visual, polished, and detailed to ensure long-term usage.