Das Notes Forum

Lotus Notes / Domino Sonstiges => Java und .NET mit Notes/Domino => Thema gestartet von: flaite am 27.11.09 - 20:08:03



Titel: [WM-2010] Simulat. der Gruppenausl. als Eclipse Projekt oder ausführbares jar
Beitrag von: flaite am 27.11.09 - 20:08:03
[30.11. 10:44 Uhr] NEUE VERSION IN POSTING WEITER UNTEN]

da man als "Senior Consultant" kaum noch zum Programmieren kommt, sondern entweder debugt, liest, Prosa schreibt, Diagramme malt oder redet, hier nun eine kleine Übung. Wirklich nix großes.

gemäss wie hier die Auslosung der WM 2010 beschrieben wird:
http://www.gamesbids.com/forums/index.php?showtopic=16016

Das Programm liefert einem dann mögliche Gruppen. Nix dolles. Hab 2 Stunden gebraucht. Gibt die Ergebnisse in der Konsole aus.
Es ist mit java6 kompiliert. Option a) geht aber sicher auch mit Java5.

2 Optionen:
a) gruppenAuslosung.zip:  als Projekt in Eclipse (3.5) importieren und de.aja.wm.auslosung.client.Client starten (hat eine main-Methode).
b) wmAuslosung.zip: excecutable jar (vom Namen her .zip) abhängen und mit cmd oder shell starten: java -jar wmAuslosung.zip

Eventuelle Updates bis zur wirklichen Auslosung tu ich reinposten (und altes ersetzen).
Geplant sind:

Geschäftslogik:
- Anwender kann den Teams Stärken auf einer Skala von 1 bis 7 zuweisen.
 - Die Gruppen werden dann sortiert nach der Gesamtstärke
 - Programm kann für jedes Land die maximal stärkste und schwächste mögliche Gruppe zusammenstellen (basierend auf der Einschätzung der Stärke)

Refactoring:
- Trennung der Klasse Fifa in die Klassen DrawBuilder und Draw

Integration:
- Daten zu Teams können in Excel Datei eingegeben werden
- aus dem ganzen wird eine EJB3 Anwendung mit Web Frontend (vermutlich keine Zeit)
- aus dem ganzen wird eine EJB3 Anwendung mit einem Flex Frontend (sehr, sehr, sehr unwahrscheinlich)




Ein paar Ergebnisse:

A
---
South Africa
Serbia
Chile
Australia

B
---
Italy
Netherlands
Cameroon
USA

C
---
Spain
Denmark
Paraguay
Honduras

D
---
Germany
Portugal
Cote d’Ivoire
North Korea

E
---
England
Greece
Algeria
Mexico

F
---
Argentina
Slovenia
Uruguay
New Zealand

G
---
Brazil
Switzerland
Ghana
Japan

H
---
France
Slovakia
Nigeria
South Korea


-------------------------

A
---
South Africa
Portugal
Uruguay
Honduras

B
---
Argentina
Denmark
Cameroon
New Zealand

C
---
Spain
Slovakia
Cote d’Ivoire
Mexico

D
---
Brazil
Greece
Chile
Japan

E
---
France
Slovenia
Nigeria
North Korea

F
---
Germany
Netherlands
Ghana
USA

G
---
England
Switzerland
Algeria
South Korea

H
---
Italy
Serbia
Paraguay
Australia




Titel: Re: [WM-2010] Simulat. der Gruppenausl. als Eclipse Projekt oder ausführbares jar
Beitrag von: MadMetzger am 27.11.09 - 22:11:24
Damit es auch mit dem Eclipse-Projekt klappt, muss man im Build-Path des Projekts die JRE-System-Lib auf die eigene setzen, damit das Projekt erfolgreich kompiliert.


Titel: Re: [WM-2010] Simulat. der Gruppenausl. als Eclipse Projekt oder ausführbares ja
Beitrag von: flaite am 30.11.09 - 10:07:19
Hi,


das ist natürlich richtig.


Hier ist die neue Version.
Das OO-Design ist nach wie vor lachhaft. Mir gings erstmal um die features. Praktisch eine Art Exploration der fachlichen Domain.

Neue Features:
1. Die Gruppen werden jetzt in einer kognitiv einfacher wahrzunehmenden (Marketing-Leute würden vermutlich sagen: haptischeren) Tabelle wiedergegeben (s. Screenshot).
2. Die Medium und Mean Stärken der Gruppe (aggregiert von den Team-Members) werden neben dem Gruppennamen angezeigt.
3. Neue Regeln wurden eingeführt: südamerikanische und afrikanische Teams können nicht auf einem Gruppenkopf aus ihrem Verband treffen (Argentinien, Brasilien bzw. Südafrika). AFAIK entspricht das den Regeln der Auslosung.
4. Man kann den Teams eigene Stärkeneinschätzungen zuweisen, ohne den sourcecode zu verändern. Dafür wird eine Datei wmAuslosung.ini erzeugt, die sich im selben Verzeichnis wie das jar bzw. im Root des Eclipse Projekts landet (in Eclipse: Refresh auf Projekt-Root, sonst sieht man das File nicht).
5. Manchmal  erscheint die Nachricht Ooopsie ... starting again. Ein feature, kein bug. Hat damit zu tun, wie das Programm mit Punkt 3 umgeht.
6. Mit einem Integer als Parameter (Beispiel: java jar wmAuslosung.zip 4) kann man direkt mehrere Auslosungsrunden auf einmal durchführen.
7. Die Gruppen werden sortiert nach ihrer aggregierten Stärke ausgebegen. 

Nächste Schritte:
- Standardabweichung pro Gruppe ermitteln und ausgeben.
- Vernünftige OO-Struktur.   
- Eventuell:

Hab unten mein ini File rangehängt (mit txt Endung, wg. Atnotes-Restriktion). Könnt ihr in wmAuslosung.ini umbenennen und in das selbe Verzeichnis kopieren, in dem das zip liegt. Muß aber nicht. Das Programm erzeugt eine eigene wmAuslosung.ini Datei, wenn es keine findet. Die könnt ihr editieren, um eine eigene Abschätzung der Stärken abzugeben.

Der richtige Wahnsinn kann natürlich losgehen, wenn erst einmal die realen Gruppen ausgelost sind.
Man kann etwa den Spielplan in eine Datenbank abspeichern. User können dann den einzelnen Teams Stärken-Parameter für Verteidigung, Mittelfeld, Angriff zuweisen. Man könnte damit eine ganze WM simmulieren.

Gruß