homeSoftwaredesign Softwaredesign: Modell eines Scrabble-Spiels Prof. Dr. Uwe Schmidt FH Wedel

Modell eines Scrabble-Spiels


weiter

Modell eines Scrabble-Spiels

Aufgabe
In dieser Aufgabe geht es darum, ein Scrabble-Spiel zu beschreiben. Scrabble ist ein Brettspiel. Auf das Spielfeld können waagerecht und senkrecht Wörter gelegt werden. Jede zusammenhängende Folge von Wörtern, egal ob waagerecht oder senkrecht, muss ein Wort aus einem vorgegebenen Wörterbuch sein.
weiter
Brett
Ein Brett kann folgende Gestalt haben:
Layout
Dieses ist das Layout des Original-Bretts. In dem Modell in dieser Aufgabe soll es aber möglich sein, mit unterschiedlichen Brettgrößen, auch mit beliebigen Brettformen, also nicht nur mit quadratischen oder rechteckigen Brettern zu spielen. Jedes Feld auf dem Brett wird durch eine Koordinate eindeutig bestimmt.
Statische Eigenschaften
Ein Brett hat statische Eigenschaften, die Größe und Form, außerdem wird zur Bewertung von gelegten Wörtern jedes Feld mit einem Wert markiert. Wie im Original sollen hier fünf Markierungen möglich sein, der normale Buchstabenwert, ein doppelter oder ein dreifacher Buchstabenwert oder ein doppelter oder dreifacher Wortwert. Diese Markierungen werden zur Berechnung der Punktzahl eines Zuges benötigt. Diese Werte sollen in diesem Modell den Positionen frei zugeordnet werden können, also nicht genau der Belegung aus dem Original entsprechen.
Spielzustand
Der Zustand eines Brettes ist gerade die aktuelle Belegung des Brettes, er ändert sich bei jedem Zug mit dem Legen von neuen Buchstaben.
 
Weiter gehört zu einem Spiel eine Menge von Spielsteinen, ein Alphabet. Dieses Alphabet soll eine Teilmenge der zur Verfügung stehenden Zeichen (Char) sein. Jedes Zeichen aus dem Alphabet bekommt einen (Buchstaben-)wert, mit dem zum Beispiel das Legen von Wörtern mit selten vorkommenden Buchstaben belohnt werden kann. Das Alphabet und die Bewertung der Buchstaben soll ebenfalls konfigurierbar sein. Aus den Steinen müssen Wörter gebildet werden, diese müssen zulässig sein, also in einem Wörterbuch stehen.
 
Zu einem Spiel gehört ein Brett, ein Sack mit zu verteilenden Steinen und beliebig viele Spieler. Diese besitzen alle einen eindeutigen Namen. Ein Spieler hat immer eine gewisse Menge von Steinen (Buchstaben) zur Verfügung. Diese werden nach jedem Zug aus dem Sack aufgefüllt. Außerdem ist jedem Spieler eine Punktzahl zugeordnet, die aus den bisher gelegten Wörtern errechnet wird.
Modell
Entwickeln Sie ein Datenmodell für dieses Spiel in Haskell-Notation. Gehen Sie dabei schrittweise vor und beschreiben Sie bitte als erstes die statischen Eigenschaften:
Statischer Teil
Alphabet, Layout, Wörterbuch
Dynamischer Teil
Brettzustand, Spieler, Steine

Letzte Änderung: 29.04.2014
© Prof. Dr. Uwe Schmidt
Prof. Dr. Uwe Schmidt FH Wedel