Skip to content
pzitnick edited this page Nov 29, 2017 · 21 revisions

Welcome to the Button wiki!

How We Address NFRs

The given NFRs our team is highlighting is as follows:

  1. The system shall quickly and consistently update the total point count of a user, syncing incremented points with our database.
  2. The system shall use SHA encryption to encrypt each user’s username/password for the security of our user’s data.
  3. The system shall be web-based in order to be compatible with many platforms. This makes our game portable because any application can simply display the game’s webpage’s inside of an application wrapper.
  4. The system shall support at least 5000 users at a time.
  5. The system shall use icons as wordless prompts to the user so that it is accessible to all users regardless of language or literacy level.

We address each in the following ways:

  1. We use an asynchronous update to keep our database and the user's system in sync as the user clicks the button and increments their points.
  2. We use cryptographic libraries to securely generate keys and sign and verify user data.
  3. We developed our game specifically to run as a web-based app.
  4. We use an asynchronous update with our server so that many users can interact with the game at once without overloading our server or causing backlog.
  5. We rely heavily on GUI interface, using symbols instead of text or audible or visual cues and animations to entertain or inform the user.

Class Diagram


Activity Diagrams


State Diagrams

Bug Report State Diagram

Button State Diagram


Deployment/Component Diagram


Proposed Architectural Design