Concern requirements list using MDSOCRE notation. Here we show how the concrete concerns of our domain are expressed with the MDSOCRE approach.
A slot machines have 5 reels.
Reels spin when play button is pressed.
Prizes are awarded according to a pay table.
A slot machine has one or more devices for entering money.
As money is inserted credits are "assigned" to the player.
A slot machine must provide means for cashing the credits out.
It could be a ticket printer, a coin hopper.
Credit meter: shall at all times indicate all credits or cash
available for the player to wager or cashout (GLI 11 4.10.1)
Credit Meter Incrementing: The value of every prize (at
the end of a game) shall be added to the player's credit meter. The
credit meter shall also increment with the value of all valid coins, tokens,
bills, Ticket/Vouchers, coupons or other approved notes accepted. (GLI 11 4.10.5)
Accounting Meters (GLI 11 4.10.9): Coin In: a meter that
accumulates the total value of all wagers [...]. Games-played: accumulates
the number of games played; since power reset, since door close and
since game initialisation.
Meters should be updated upon occurrence of any event
that must be counted, including: play, cashout, bill in, coin in.
Information on at least the last ten (10) games is to be
always retrievable on the operation of a suitable external key-switch,
or another secure method that is not available to the player.
Last play information shall provide all information
required to fully reconstruct the last ten (10) plays. All values shall be
displayed; including the initial credits, credits bet, and credits won,
payline symbol combinations and credits paid whether the outcome
resulted in a win or loss. This information should include the final game
outcome, including all player choices and bonus features.
The G2S protocol is designed to communicate
information between a SM, and one or more host systems.
Meters within the G2S protocol: Each device is metered
separately. Meters are always available on a device-by-device basis.
(G2S 1.16)
Some G2S meters are: gamesSinceInitCn Number of
games since initialisation. WonCnt: Number of primary games won
by the player. LostCnt: Number of primary games lost by the player
Important events must be reported in real-time, including:
error conditions, tickets inserted, ticket printed.
The PCP communicates a SM with a host system.
It must report all meters of a SM.
Important events must be reported in real-time, including:
error conditions, tickets inserted, ticket printed.
After a program interruption (e.g., processor reset), the
software shall be able to recover to the state it was in immediately prior
to the interruption occurring.
Restoring Power. If a gaming device is powered down
while in an error condition, then upon restoring power, the specific error
message shall still be displayed and the gaming device shall remain
locked-up.
A SM must store all meter information in persistent
memory. (G2S 1.16)
Gaming devices shall be capable of detecting and
displaying error conditions and illuminate the tower light for each
or sound an audible alarm.
Error conditions should cause the gaming device to
lock up and require attendant intervention. Error conditions shall be
cleared either by an attendant or upon initiation of a new play
sequence after the error has cleared except for those deemed as
a critical error.
Error conditions are: coin jam, reverse coin in, stacker
full, bill jam, external doors open.
Video based games shall display meaningful text as to
the error conditions.
Error conditions shall be communicated to an on-line
monitoring and control system when this is available.
The Slot Machine must permit a a test, diagnostic or demo
mode, which permits gaming device (e.g., a hopper test) shall be completed on
resumption of normal operation.
If the gaming device is in a test, diagnostic or demo
mode, any test that incorporates credits entering or leaving the
gaming device (e.g., a hopper test) shall be completed on
resumption of normal operation.
There shall not be any mode other than
normal operation (ready for play) that increments any of
the electronic meters.
Any credits on the gaming device that
were accrued during the test, diagnostic or demo mode shall be
automatically cleared before the mode is exited.
Specific meters are permissible for these types of
modes provided the meters indicate as such (GLI 11 4.17.1).
The main cabinet door of the gaming device may
automatically place the gaming device in a service or test/diagnostic
mode. Test/diagnostics mode may also be entered, via an appropriate
instruction, from an attendant during an audit mode access. These
modes should not be accessible to the player (GLI 11 4.17.2).
When exiting from test-diagnostic mode, the game
shall return to the original state it was in when the test mode was
entered (GLI 11 4.17.3).
Test Games. If the device is in a game test mode,
the machine shall clearly indicate that it is in a test mode, not normal
play (GLI 11 4.17.4).
==== Composition rules ====
Composition rules are used to express crosscutting relationships. Here we show the
composition rules, consisting of a Constraint tag that defines how the
base requirements are constrained by aspectual requirements. The Constraint
tag has actions, operators and outcome elements, used to express in detail
how the base is affected.
1. Demo to Game: The demo requirements affect many of the definitions of the original requirements of Game, in order to alter the Game's behaviour for testing purposes.
2. Game Recall to Game: Game Recall requirements affect many aspects of the Game's behaviour, its requirements call for recording pieces of information regarding game play.
3.Meters to Game: Meters count activities of many functions defined in Game's requirements, for instance: game play, bill in, cashout, etc.
and
10.Dependency of G2S on Meters: Some data reported to the RS is stored or can be derived from meters. G2S needs the meters to be up to date in order to accomplish its purpose.
4.Program resumption to Game. Program resumption is analogous to persistence. It crosscuts all the places where important data, which needs to be restored, is changed.
5.G2S to Game: this concern cut across many Game's requirements, since several events in Game need to be reported, monitored and communicated to reporting system.
6.Error Conditions to Game: Requirements in Game that could raise an error condition vary: from a bill inserted to a door opened.
7.Proprietary Protocol to Game: This refers to another protocol used for the same purpose as G2S, that is to monitor the game's behaviour.
11.Mutex between G2S and Proprietary Protocol: There is overlapping functionality defined in the requirements of both protocols and they cannot be active at the same time.
12.Reinforcement of G2S with Error Conditions: Some parts of the G2S protocol are not mandatory for specific instances. When error conditions are tracked in the game, additional behaviour is made available in G2S, such as real time event reporting.