| huaiyong's profile二楞子和二妮儿的快乐生活——嘿嘿!PhotosBlogLists | Help |
|
|
May 25 Sopra Projekt 1几天的没睡觉,今天组里终于把程序跑了起来,虽然有些功能还没能完全实现,但是主要的功能能运行。这次干到最后这样时间紧,原因很简单,就是设计阶段耽误的时间太长了,导致最后没有时间进行代码实现和测试。马上就要下一个Projekt了,这次感觉没有第一个难,是给大学语言班编制一个报名管理的System,要求用java和Excel完成。本周五开始分工,下周一做客户调查。 April 20 Problembereichsmodell (Klassdiagramm)MetroDie Klasse Metro stellt den Controller dar. Von dort wird das Model verwaltet, also der Bezug zu einem Spiel, dem Highscore und der Grafik hergestellt. HighscoreDie Klasse repraesentiert die 10 verschiedenen Highscorelisten, die ueber type beschrieben werden. So ist es moeglich Highscores zu Spielen mit verschiedenen Eigenschaften wie Anzahl der Spieler und groesse des Spielfelds zu verwalten. HighscoreEntryDiese Klasse repraesentiert einen Eintrag in der Highscoreliste. Dabei besteht eine Liste aus genau 10 Eintraegen. Ein Eintrag besteht aus dem Namen des Spielers und der erreichten Punktzahl. SessionDie Session beschreibt eine Partie. Dabei soll es moeglich sein eine neue Partie starten, zu laden, zu speichern oder zu beenden. Eine Partie besteht aus genau einem Spielbrett, abhaengig von der groesse des Bretts aus entsprechend vielen Schienenplaettchen, aus 2 bis 6 Spielern und den zugehoerigen Bahnhoefen. CardDie Klasse Card repaesentiert ein Schienenplaettchen. Die Anzahl der Plaettchen haengt von der Groesse des Spielfelds ab. In dem Attribut image wird die Grafik gespeichert, die auf dem Plaettchen dargestellt wird. In der Variable routing wird gespeichert welcher Eingang zu welchem Ausgang fuehrt. Dabei hat jede Seite eines Plaettchens einen Eingang und einen Ausgang. PlayerDie Klasse repaesentiert den Spieler. Pro Partie kann es zwischen 2 bis 6 Spielern gegen. Jeder Spieler hat einen aktuellen Punktestand, einen Namen und einen typ, der beschreibt, ob es sich um einen menschlichen oder einen Computergegner handelt. Im zweiten Fall soll aus dem typ auch die Staerke des Gegner hervorgehen. Jeder Spieler hat mindestens 4 aeussere Bahnhoefe. Die Anzahl der Bahnhoefe die jeder Spieler erhaelt haengt von der groesse des Spielfelds ab. BoardDie Klasse Board beschreibt das Spielfeld. Pro Partie gibt es ein Spielfeld und abhaengig von der Groesse des Spielfelds viele Schienenplaettchen. Die Groesse wird in dem Attribut size gespeichert. Ausserdem gibts es Bahnhoefe auf dem Spielfeld. Diese befinden sich entweder am Rand des Feldes (OuterStations) oder in der mitte (Stations). Das Feld besteht zudem aus Feldern. On sich in einem Feld ein Bahnhof oder ein Schienenplaettchen oder garnichts befindet, wird in der fields Matrix gespeichert. StationDurch diese Klasse wird ein Bahnhof beschrieben. Jeder Bahnhof hat einen Namen und befindet sich auf dem Spielfeld. Die Anzahl der Bahnhoefe haengt von der Groesse des Spielfelds ab. OuterStationDie Klasse OuterStation beschreibt einen aeusseren Bahnhof, dieser erbt alle Eigenschaften der Klasse Station, also eines Bahnhofs. OuterStation erweitert den Bahnhof in dem Sinne, dass er einem Spieler zugeordnet ist und dass er sich am Rand des Spielfelds befinden muss.
Programm_beenden (Anwedungsfallbeschreibungen)AnwendungsfallProgramm_beenden Kurzbeschreibungbeendet das programm, sichert ggf. das Spiel und Konfigurationen VorbedingungDas Programm laeuft Nachbedingung-- FehlersituationDas Programm wurde nicht beendet Nachzustand im FehlerfallStartzustand Akteure
Standardablauf
Alternativablaeufe-- AusloeserEin Spieler waehlt programm beenden aus AktivitaetsdiagrammHighScore Anzeigen (Anwedungsfallbeschreibungen)AnwendungsfallHighScore Anzeigen Kurzbeschreibungder Spieler kann erfahren, wie die aktuelle HighScore aussieht. Vorbedingungder Spieler initiiert die HighScore Anwendungsfall. Nachbedingungdie Information von HighScore wird angezeigt. Fehlersituationnicht vorhanden Nachzustand im Fehlerfallnicht vorhanden AkteureSpieler Standardablauf
Alternativablaeufenicht vorhanden AusloeserSpieler aktiviert "HighScore" Aktivitaetsdiagramm
Stationsnamen_aendern (Anwendungsfallbeschreibungen)AnwendungsfallStationsnamen_aendern KurzbeschreibungDieser Anwendungsfall charakterisiert den Ablauf der Aenderung eines Stationsnamens durch den Benutzer. VorbedingungDer Benutzer befindet sich im Optionsmenue bzw. dieses ist geoeffnet. NachbedingungDer Benutzer befindet sich im Optionsmenue bzw. dieses ist geoeffnet. Es sind ggf. Stationsnamen modifiziert. FehlersituationNicht definiert. Nachzustand im FehlerfallNicht definiert. AkteureDer Benutzer.StandardablaufDas System blendet ein Editierfenster ein, in welchem alle Stationen mit Namen angegeben sind. AlternativablaeufeDas System blendet ein Editierfenster ein, in welchem alle Stationen mit Namen angegeben sind. AusloeserDer Benutzer klickt auf "Stationsnamen aendern". AktivitaetsdiagrammGrundeinstellung_aendern (Anwendungsfallbeschreibungen)AnwendungsfallGrundeinstellung_aendern KurzbeschreibungDer Spieler hat hier die Moeglichkeit sich mit dem Feldgroesse des Spiels, der Information des Spielers (Name und Art), Stationnamen des Spiels zu aendern. VorbedingungProgramm aktiv NachbedingungProgramm im Hauptmenue Aenderungen gesichert. FehlersituationNachzustand im FehlerfallAkteureSpieler Standardablauf
Alternativablaeufe
AusloeserSpieler ruft Grundeinstellung_aendern auf AktivitaetsdiagrammSpielstand_laden (Anwendungsfallbeschreibungen)AnwendungsfallSpielstand_laden KurzbeschreibungEin zuvor unterbrochenes Spiel wird fortgesetzt. VorbedingungProgramm aktiv NachbedingungGespeicherter Spielstand wurde reaktiviert FehlersituationSpeicherstand beschaedigt Nachzustand im FehlerfallAkteureSpieler Standardablauf
Alternativablaeufe4* Ungueltiges Dateiformat AusloeserSpieler klickt auf "Spielstand laden" Spielstand_speichern (Anwendungsfallbeschreibungen)AnwendungsfallSpielstand_speichern KurzbeschreibungEine angefangene aber noch nicht beendete Partie wird gespeichert, um sie spaeter fortsetzen zu koennen. VorbedingungEs wurde eine Partie begonnen und noch nicht beendet. Nachbedingung
FehlersituationErstellen des Speicherstands nicht moeglich (zb mangels Speicherplatz) Nachzustand im Fehlerfall
Akteure
Standardablauf
Alternativablaeufenicht vorhanden AusloeserSpieler aktiviert "Speichern" AktivitaetsdiagrammTip_geben_lassen (Anwendungsfallbeschreibungen)AnwendungsfallTip_geben_lassen KurzbeschreibungDer Anwendungsfall charakterisiert den Ablauf der Ereignisse wenn der Benutzer vor seinem Spielzug wuenscht sich einen Tip fuer die naechste Kartenplatzierung geben zu lassen. VorbedingungDer Benutzer, der den Tip anfordern moechte (im Nachfolgenden schlicht der Benutzer genannt), ist gerade mit seinem Zug an der Reihe und hat noch keine Karte gelegt. Der Anwendungsfall wird also vom Benutzer initiiert. NachbedingungDer Benutzer hat eine Karte auf dem Spielfeld platziert und die Tipmarkierung wurde wieder entfernt. FehlersituationDer Benutzer hat keine Karte verfuegbar (d.h. er hat keine auf der Hand und kann nicht ziehen) und waehlt den Tip-Button. Nachzustand im FehlerfallDer Benutzer wird vom System darueber informiert, dass das Spiel fuer ihn bereits zu Ende ist. Abbruch der Tip-Aktionen. AkteureInitiiert vom Benutzer. StandardablaufDas System prueft, ob das Spiel nicht (fuer den Benutzer) ggf. bereits zu Ende ist, d.h. es sind keine Karten mehr verfuegbar fuer diesen Benutzer. AlternativablaeufeDas System prueft, ob das Spiel nicht (fuer den Benutzer) ggf. bereits zu Ende ist, d.h. es sind keine Karten mehr verfuegbar fuer diesen Benutzer. AusloeserDer Benutzer ist am Zug und klickt auf den "Tip geben"-Button. Aktivitaetsdiagramm
April 19 Plaetchen legen (Anwendungsfallbeschreibungen)AnwendungsfallPlaetchen legen KurzbeschreibungDas legen eines Plaetchens auf das Spielfeld VorbedingungDer Spieler hat ein eindeutiges Plaetchen das er nun legen will NachbedingungDas Plaetchen wurde gelegt FehlersituationDas Spiel wird beendet Nachzustand im FehlerfallDas Spiel ist beendet Akteure
Standardablauf
Alternativablaeufe--- Ausloeser--- Aktivitaetsdiagramm Spielzug_taetigen (Anwendungsfallbeschreibungen)AnwendungsfallSpielzug_taetigen KurzbedingungDer Spielzug läuft nach diesem Schema ab, dabei kann an zwei Stellen ein Tipp gegeben lassen werden. Die Punkte werden gegen Ende berechnet. VorbedingungProgramm aktiv, Session (Spiel) gestarten NachbedigungEin Plaettchen mehr auf dem Spielbrett oder Spiel beendet. FehlersituationTipp wird nicht gegeben. AkteureSpieler Standardablauf
Alternativabläufe
Auslöservorheriger Spieler ist fertig AktivitätsdiagrammNeues Spiel_starten (Anwendungsfallbeschreibung)AnwendungsfallNeues Spiel starten KurzbeschreibungEine neue Partie des Spiels soll gestartet werden, die Einstellungen für das Spiel getätigt und das Spiel vorbereitet werden. VorbedingungDas Spiel ist gestartet. NachbedingungDas Spiel ist in der Ausgangssituation. Fehlersituation- Nachzustand im Fehlerfall- AkteureSpieler Standardablauf
Alternativablaeufe2.* Standardkonfiguration wird ausgewählt (durch diese Auswahl wird Spieleranzahl, -art, Spielfeldgröße aufgrund einer vorher bestimmten Einstellung bestimmt) weiter bei 5. 3. und 4. sind vertauschbar 6. - 8. sind vertauschbar AusloeserSpieler wählt "Neues Spiel starten" AktivitätsdiagrammSpielregeln_anzeigen (Anwendungsfallbeschreibungen)AnwendungsfallSpielregeln_anzeigen KurzbeschreibungDer Spieler hat hier die Moeglichkeit sich mit dem Regelwerk des Spiels vertraut zu machen oder Unklarheiten nachzulesen. VorbedingungProgramm aktiv Nachbedingungkeine Veraenderung des eigentlichen Programmzustands hervorgerufen FehlersituationNachzustand im FehlerfallAkteure
Standardablauf
Alternativablaeufekeine AusloeserSpieler ruft Spielregeln auf AktivitaetsdiagrammAnwedungsdiagramm
Anwendungsfälle
|
||||||||||||||
|
|