Sept 2016 to Dec 2016
Java,  Bash
Team Members:
Kevin Chan,  Niki Lin

SimBank is the name for the software developed for the course project in CISC 327 Software Quality Assurance. It is a simple interactive banking system, but the emphasis was not on the software itself, but rather the process in building the system.

In other words, it was an exercise in various development techniques and methodologies. Over the course of this project, we utilized techniques and methodologies such as:

  • eXtreme programming
  • test-driven development (TDD)
  • pair programming
  • unit testing of all code
  • maintained test suites as requirements and quality control
  • continuous redesign and re-architecting
  • constant, face-to-face communication with client to refine requirements (in this case, the client is Prof. Cordy and TAs)

The project involved implementing two parts a front-end and a back-office. The front-end consists of interacting with customers at banking machines. The back-office processes transactions and maintains a database of accounts and transactions. Both parts were implemented as command-line interfaces in Java, with scripts written in Bash used to automate testing (using diff, for example) and to simulate transactions.

For the final/production software files and a README with instructions on compiling the source code for execution, see please visit the repository on Github Github.